【计算机网络 | 第十二篇】「网络层」概述与服务模型

文章目录

    • 网络层概述与服务模型
      • [1. 网络层的位置](#1. 网络层的位置)
      • [2. 网络层服务的实现](#2. 网络层服务的实现)
      • [3. 网络层的关键功能](#3. 网络层的关键功能)
        • [(1) 路由 ------ 控制面](#(1) 路由 —— 控制面)
        • [(2) 转发------ 数据面](#(2) 转发—— 数据面)
      • [4. 提供给运输层的服务](#4. 提供给运输层的服务)

网络层概述与服务模型

网络层 是计算机网络体系结构中的核心层次,主要负责将分组从源主机通过网络传输到目的主机。与数据链路层关注相邻节点间的通信不同,网络层关注的是主机到主机的逻辑通信。

1. 网络层的位置

在不同的体系结构模型中,网络层均处于核心地位:

  • OSI 七层模型:位于第 3 层,介于数据链路层与运输层之间。
  • TCP/IP 四层模型:称为网际层(IP),位于网络接口层之上。
  • 五层协议体系结构:为了便于分析,通常采用五层模型,网络层位于第 3 层。

2. 网络层服务的实现

网络层的主要任务是实现端系统之间的多跳传输。数据在传输过程中,通常需要经过多个中间设备(路由器)的转发。

  • 发送端:将运输层的数据单元封装在数据包中。
  • 中间节点(路由器):检查数据包首部,根据路由算法和转发表将数据包转发到下一个节点。
  • 接收端:解析接收到的数据包,取出运输层数据单元,交付给运输层。

值得注意的是,网络层功能不仅存在于每台主机中,也存在于网络核心的每一个路由器中。

3. 网络层的关键功能

网络层的功能在逻辑上可划分为两个层面:控制面(路由)数据面(转发)

(1) 路由 ------ 控制面
  • 性质:全局性操作。
  • 任务:通过运行路由选择协议和算法,确定数据报从源端到目的端的路径。
  • 产物:生成路由表(Routing Table),并据此计算出转发表。
(2) 转发------ 数据面
  • 性质:本地性操作。
  • 任务:路由器根据转发表,将从输入接口接收到的数据报,移动到正确的输出接口。
  • 过程:读取数据报首部的目的地址,查询本地转发表,决定下一跳出口。

4. 提供给运输层的服务

在计算机网络设计之初,关于网络层应提供何种服务(可靠性由谁负责)存在两种主要观点:

  1. 面向连接的服务(虚电路)

    • 认为网络应当提供可靠的交付。
    • 通信前必须建立连接(虚电路),网络节点需要维护状态信息。
    • 类似于传统电话网络。
  2. 无连接的服务(数据报)

    • 认为网络层应尽可能简单,可靠交付由端系统(运输层)负责。
    • 每个分组(数据报)独立发送,网络不维护连接状态。
    • 提供尽最大努力(Best-effort)交付,不保证不丢失、不重复、按序到达。

互联网采用了无连接的设计思路。网络层只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。这使得网络造价大大降低,运行方式灵活,能够适应多种应用需求。


下一章:网络层提供给运输层的服务:面向连接的服务的实现、无连接服务的实现、面向连接的虚电路、无连接的数据报等...

相关推荐
anxiao_m4 小时前
2026企业AI数字孪生选型攻略,不同场景对应不同解决方案
大数据·网络·数据库
彧azz5 小时前
数据结构:关于图的学习
c语言·数据结构·笔记·学习·算法
自小吃多5 小时前
高云 FPGA 添加时序约束笔记
笔记·fpga开发
xiaoye-duck5 小时前
《Linux 网络编程》深入理解 TCP 协议(二):序号、确认应答与流量控制机制详解
linux·网络·tcp
北京盛世宏博5 小时前
物联网传感器通信协议:帧字段规划、CRC 校验、异常包过滤方案
网络·物联网·php
dog2505 小时前
网络的时延抖动
linux·运维·网络
devpotato5 小时前
高可用系统如何定义可用性
服务器·网络·可用性测试
彧azz6 小时前
二叉搜索树学习记录
c语言·数据结构·笔记·算法
奇牙coding1236 小时前
GPT-5.5 升级 GPT-5.6 接入指南:流式调用配置与常见问题
java·网络·gpt·ai
stellanke6 小时前
Linux网络编程实战2:TCP Socket 基础与实践
linux·网络·c++