文章目录
- 一、网络层概念:服务模式与分层架构
-
- [1. 网络层的两大服务模式](#1. 网络层的两大服务模式)
- [2. 网络层的两个核心层面](#2. 网络层的两个核心层面)
- 二、网际协议IP:网络互联的基石
-
- [1. 虚拟互连网络:屏蔽异构网络差异](#1. 虚拟互连网络:屏蔽异构网络差异)
- [2. IP地址:网络中的唯一标识](#2. IP地址:网络中的唯一标识)
- [3. IP地址与MAC地址:分层寻址的配合](#3. IP地址与MAC地址:分层寻址的配合)
- [4. 地址解析协议ARP:IP地址到MAC地址的映射](#4. 地址解析协议ARP:IP地址到MAC地址的映射)
- [5. IP数据报的格式:分组传输的载体](#5. IP数据报的格式:分组传输的载体)
- 三、IP层转发分组:路由选择与转发机制
-
-
- [1. 基于终点的转发](#1. 基于终点的转发)
- [2. 最长前缀匹配原则](#2. 最长前缀匹配原则)
- [3. 转发表查找优化:二叉线索](#3. 转发表查找优化:二叉线索)
-
- 四、网际控制报文协议ICMP:差错报告与查询
-
-
- [1. ICMP报文的分类](#1. ICMP报文的分类)
- [2. ICMP的典型应用](#2. ICMP的典型应用)
-
- 五、IPv6:应对地址枯竭的解决方案
-
- [1. IPv6的基本首部](#1. IPv6的基本首部)
- [2. IPv6地址表示](#2. IPv6地址表示)
- [3. IPv4向IPv6的过渡](#3. IPv4向IPv6的过渡)
- [4. ICMPv6](#4. ICMPv6)
- 六、互联网的路由选择协议:动态路由的实现
-
- [1. 路由选择协议的基本概念](#1. 路由选择协议的基本概念)
- [2. 内部网关协议(IGP)](#2. 内部网关协议(IGP))
- [3. 外部网关协议(EGP)](#3. 外部网关协议(EGP))
- 七、网络层高级技术:多播、VPN与MPLS
-
- [1. IP多播:高效的一对多通信](#1. IP多播:高效的一对多通信)
- [2. 虚拟专用网(VPN)与网络地址转换(NAT)](#2. 虚拟专用网(VPN)与网络地址转换(NAT))
- [3. 多协议标签交换(MPLS):IP与面向连接的结合](#3. 多协议标签交换(MPLS):IP与面向连接的结合)
- 八、软件定义网络(SDN):网络架构的革新
-
- [1. SDN的核心组件](#1. SDN的核心组件)
- [2. SDN的特性](#2. SDN的特性)
一、网络层概念:服务模式与分层架构
1. 网络层的两大服务模式
数据链路层为网络层提供服务,将网络层的IP数据报封装成帧 ,传输给下一个相邻节点 ,它侧重于节点间 的数据传输;网络层要实现主机间的数据传输。
网络层的争议在于"如何向运输层提供服务",最终形成了两种主流模式:
-
虚电路服务 :模仿电信网络的面向连接模式,通信前需建立逻辑连接(虚电路VC),网络会预留资源并保证分组按序、无差错交付。所有分组沿同一条虚电路传输,仅在连接建立阶段使用完整终点地址,后续分组使用短虚电路号。但这种模式需网络承担可靠传输责任,导致网络层设计复杂,灵活性不足。

-
数据报服务 :互联网采用的无连接模式,网络层仅提供"尽最大努力交付",不保证分组的顺序、无差错和时限。通信前无需建立连接,每个分组携带完整终点地址,独立选择路由转发。可靠传输的责任由主机的运输层(如TCP协议)承担,这种设计让网络层更简洁高效,能适应复杂多变的网络环境。

两者的区别:虚电路服务强调网络保障可靠 ,数据报服务强调用户主机保障可靠 ,互联网最终选择数据报服务,正是看中其灵活性和低开销的优势。
2. 网络层的两个核心层面
网络层的工作可划分为数据层面和控制层面,二者协同实现分组转发与路由管理:
-
数据层面:路由器基于本地转发表,将收到的分组从对应接口转发出去,采用硬件实现,转发速度快且独立工作,不依赖其他路由器。
-
控制层面:通过路由选择协议(如RIP、OSPF)和路由算法,计算全网最优路由,生成并维护路由表,再由路由表推导转发表。控制层面采用软件实现,需路由器之间协同工作,适应网络拓扑变化。

软件定义网络(SDN)进一步强化了这种分层思想,通过远程控制器集中管理控制层面,统一计算路由并生成转发表,下发至各路由器的数据层面,实现路由的集中化管控,提升网络灵活性和可扩展性。
二、网际协议IP:网络互联的基石
IP协议是网络层的核心协议,负责实现异构网络的互联与IP数据报的传输。与IPv4配套的关键协议包括地址解析协议(ARP)、网际控制报文协议(ICMP)和网际组管理协议(IGMP),共同支撑IP协议的正常运行。
1. 虚拟互连网络:屏蔽异构网络差异
现实中的网络存在寻址方案、最大分组长度、接入机制等差异,如何实现异构网络互联?答案是"使用中间设备":
| 层次 | 中间设备 | 功能 |
|---|---|---|
| 运输层及以上 | 网关(gateway) | 连接不同协议体系的网络 |
| 网络层 | 路由器(router) | 实现网络互联,转发IP数据报 |
| 数据链路层 | 网桥/交换机 | 扩展局域网,转发数据帧 |
| 物理层 | 转发器(repeater) | 放大信号,扩展物理传输距离 |
只有使用路由器的互联才称为"网络互联",路由器会屏蔽下层网络的异构细节,让互联网上的主机通信时,仿佛在同一个网络中,这就是"虚拟互连网络"的核心思想。
2. IP地址:网络中的唯一标识
IP地址是TCP/IP体系中最基本的概念,用于标识互联网上主机或路由器的接口,没有IP地址就无法实现跨网络通信。
(1)IP地址的表示与结构
IPv4地址为32位二进制数,采用"点分十进制记法",将32位分为4组(每组8位),转换为十进制后用点分隔,例如128.11.3.31。IP地址采用两级结构:{网络号 + 主机号},网络号标识主机所在的网络,主机号标识网络内的具体主机,确保IP地址在全网唯一。
(2)分类的IP地址
为适应不同规模的网络,IPv4将地址分为A、B、C、D、E五类,核心分类如下:
| 类别 | 二进制前缀 | 网络号长度 | 主机号长度 | 地址范围 | 最大主机数 |
|---|---|---|---|---|---|
| A类 | 0 | 8位 | 24位 | 1.0.0.0~126.255.255.255 | 16777214(2²⁴-2) |
| B类 | 10 | 16位 | 16位 | 128.1.0.0~191.255.255.255 | 65534(2¹⁶-2) |
| C类 | 110 | 24位 | 8位 | 192.0.1.0~223.255.255.255 | 254(2⁸-2) |
| D类 | 1110 | - | - | 224.0.0.0~239.255.255.255 | 多播地址,无主机号 |
| E类 | 1111 | - | - | 240.0.0.0~255.255.255.255 | 保留地址,暂未使用 |
注:主机号全0表示网络地址,全1表示广播地址,均不分配给主机,因此需减去2;A类地址中网络号0和127为保留地址,不指派。
(3)无分类编址CIDR
分类IP地址存在地址分配不合理、地址枯竭等问题,无分类域间路由选择(CIDR)应运而生。CIDR消除了分类地址和划分子网的概念,核心特点如下:
-
采用"网络前缀 + 主机号"的两级结构,网络前缀长度n不固定(0≤n≤32),用斜线记法表示,例如
128.14.35.7/20(前20位为网络前缀)。 -
将网络前缀相同的连续IP地址组成"地址块",一个地址块包含的地址数为2^(32-n),需扣除全0和全1的主机地址(特殊场景除外)。
-
地址掩码(子网掩码)用于快速计算网络地址,由一连串1和后续的一连串0组成,1的个数等于网络前缀长度。例如
/20对应的地址掩码为255.255.240.0,通过IP地址与地址掩码的按位AND运算,即可得到网络地址。
CIDR的核心优势是"路由聚合"(超网),将多个连续的C类地址聚合为一个地址块,减少路由表中的路由项,降低路由器转发开销。例如16个连续的C类地址可聚合为192.24.0.0/20,路由表中仅需一条记录即可覆盖所有16个C类网络。
3. IP地址与MAC地址:分层寻址的配合
IP地址和MAC地址分属不同层次,承担不同的寻址职责:
-
IP地址:网络层及以上使用的逻辑地址(虚拟地址),用于标识跨网络的终点,如同"收件人地址",指明最终目的地。
-
MAC地址:数据链路层使用的硬件地址(物理地址),固化在网卡中,用于标识同一局域网内的相邻节点,如同"快递员的下一步配送地址",指明分组在局域网内的传输路径。
在分组传输过程中,IP地址始终不变(源IP和目的IP),而MAC地址会随每一跳转发更新(源MAC和目的MAC变为当前跳的相邻节点地址)。例如主机H1向另一网络的主机H2发送分组时,H1先通过ARP获取本网络路由器R1的MAC地址,将分组发送给R1;R1转发时,更新MAC地址为下一跳路由器R2的MAC地址,直至分组到达H2所在网络,再通过ARP获取H2的MAC地址,完成最终交付。
4. 地址解析协议ARP:IP地址到MAC地址的映射
ARP的核心作用是"已知IP地址,获取对应的MAC地址",其工作机制如下:
-
主机或路由器维护"ARP高速缓存",存储IP地址与MAC地址的动态映射表,映射项有生存时间(超时自动删除),确保信息时效性。
-
当主机A需向同一局域网的主机B发送分组时,先查询ARP缓存:若找到B的MAC地址,直接写入MAC帧;若未找到,广播发送ARP请求分组(包含A的IP、MAC和B的IP),局域网内所有节点接收后,仅B返回ARP响应分组(包含B的MAC地址),A收到后更新ARP缓存,后续即可直接通信。
若两台主机不在同一局域网,ARP仅用于获取本网络路由器的MAC地址,分组后续的转发由路由器完成。
5. IP数据报的格式:分组传输的载体
IP数据报由首部和数据两部分组成,首部包括固定部分(20字节)和可变部分(0~40字节),核心字段如下:
-
版本:4位,IPv4对应值为4。
-
首部长度:4位,单位为4字节,最大值为15(即首部最大60字节)。
-
总长度:16位,首部+数据的总长度,最大值为65535字节,需不超过物理网络的最大传输单元(MTU)。
-
标识、标志、片偏移:用于分组分片。当数据报长度超过MTU时,需分片传输,标识字段标识同一原始数据报,标志字段指示是否允许分片及是否为最后一片,片偏移指示分片在原始数据报中的相对位置(以8字节为单位)。
-
生存时间(TTL):8位,指示数据报可经过的最大路由器数,每经过一个路由器减1,为0时丢弃,防止分组在网络中循环。
-
协议:8位,指示数据部分对应的上层协议,例如TCP(6)、UDP(17)、ICMP(1)。
-
源地址和目的地址:各32位,标识数据报的发送端和接收端IP地址。
可变部分为选项字段,用于排错、测量等,实际使用较少,填充字段用于确保首部长度为4字节的整数倍。
三、IP层转发分组:路由选择与转发机制
分组在互联网中采用"逐跳转发"模式,路由器根据转发表决定分组的转发路径,核心机制包括基于终点的转发、最长前缀匹配和高效的转发表查找。
1. 基于终点的转发
路由器的转发表核心条目为(目的网络地址,下一跳地址),而非(目的地址,下一跳地址),通过聚合目的网络地址,大幅压缩转发表规模。转发过程如下:
-
主机发送分组前,通过IP地址与子网掩码的AND运算,判断目的主机是否在同一网络:若在,直接交付;若不在,发送至本网络的默认路由器。
-
路由器收到分组后,提取目的IP地址,查询转发表,找到匹配的目的网络地址,将分组转发至下一跳路由器或直接交付(目的网络在本路由器直连端口)。
2. 最长前缀匹配原则
由于CIDR的广泛应用,转发表中可能存在多个与目的IP地址匹配的网络前缀,此时遵循"最长前缀匹配"原则------选择网络前缀最长的条目作为转发依据。网络前缀越长,地址块越小,路由越具体,能更精准地定位目的网络。
例如,转发表中有128.1.2.128/25(前缀25位)和128.1.2.192/26(前缀26位),若目的IP为128.1.2.196,则匹配/26的条目(前缀更长),转发路径更精准。
3. 转发表查找优化:二叉线索
为提高转发表查找速度,路由器常采用二叉线索结构存储网络前缀。二叉线索的每一层对应IP地址的一位(0或1),从根节点到叶节点的路径对应网络前缀,查找时按IP地址的位序遍历线索,直至找到匹配的叶节点,最多需遍历32层(对应32位IP地址),大幅提升查找效率。
此外,转发表中还包含两种特殊路由:主机路由(a.b.c.d/32),用于指定特定主机的路由,优先级最高;默认路由(0.0.0.0/0),当无其他匹配条目时使用,转发至默认路由器。
四、网际控制报文协议ICMP:差错报告与查询
ICMP是IP层的辅助协议,用于报告网络层的差错情况和提供查询服务,其报文封装在IP数据报中传输,不属于上层协议。
1. ICMP报文的分类
ICMP报文分为差错报告报文和询问报文两类,核心类型如下:
| 报文类型 | 类型值 | 功能 |
|---|---|---|
| 终点不可达 | 3 | 目的网络/主机/端口不可达时发送 |
| 时间超过 | 11 | 分组TTL减为0或分片重组超时发送 |
| 参数问题 | 12 | IP首部参数错误时发送 |
| 回送请求/回答 | 8/0 | 测试目的主机是否可达(如ping命令) |
| 时间戳请求/回答 | 13/14 | 获取主机时钟信息,用于时钟同步 |
2. ICMP的典型应用
-
ping命令:基于ICMP回送请求/回答报文,测试两台主机之间的连通性,能显示分组往返时间(RTT)和丢包率,是网络排障的常用工具。
-
traceroute(tracert)命令:利用IP数据报的TTL字段和ICMP时间超过/终点不可达报文,跟踪分组从源主机到目的主机的转发路径,显示每一跳的路由器地址和延迟,可定位网络传输中的故障节点。
需注意:ICMP差错报告报文不会嵌套发送(即不对ICMP差错报文再发送差错报文),且不对多播地址、特殊地址(如127.0.0.0)的数据报发送差错报文。
五、IPv6:应对地址枯竭的解决方案
IPv4仅32位地址空间,随着互联网设备数量的爆炸式增长,地址枯竭问题日益严重,IPv6应运而生。IPv6采用128位地址空间,地址数量高达3.4×10³⁸,从根本上解决了地址短缺问题。
1. IPv6的基本首部
IPv6简化了IPv4的首部结构,基本首部固定为40字节,核心字段包括版本(6)、通信量类、流标号、有效载荷长度、下一个首部、跳数限制、源地址(128位)和目的地址(128位)。与IPv4相比,IPv6取消了首部长度、检验和等字段,用扩展首部实现选项功能,提高了转发效率。
2. IPv6地址表示
IPv6地址采用"冒号十六进制记法",将128位分为8组(每组16位),用十六进制表示,组间用冒号分隔,例如2001:0DB8:0:CD30:123:4567:89AB:CDEF。为简化表示,支持"零压缩"(连续的零组用::代替)和"点分十进制后缀"(兼容IPv4地址,如::128.10.2.1)。
IPv6地址分为单播(点对点通信)、多播(一点对多点通信)和任播(一点对最近节点通信)三类,无广播地址(由多播地址替代)。
3. IPv4向IPv6的过渡
由于IPv4和IPv6不兼容,过渡需采用渐进式策略:
-
双协议栈:主机或路由器同时运行IPv4和IPv6协议,根据目的地址选择对应的协议栈通信,是过渡初期的主要方式。
-
隧道技术:在IPv4网络中搭建"IPv6隧道",将IPv6数据报封装在IPv4数据报中传输,适用于IPv6孤岛之间的通信。
4. ICMPv6
ICMPv6是IPv6的配套控制协议,整合了ARP和IGMP的功能,分为差错报文、信息报文、邻站发现报文(ND协议)和组成员关系报文(MLD协议),为IPv6的运行提供支撑。
六、互联网的路由选择协议:动态路由的实现
路由选择协议是控制层面的核心,用于路由器之间交换路由信息,计算最优路由。互联网采用分层次的路由选择策略,将网络划分为自治系统(AS),AS内部使用内部网关协议(IGP),AS之间使用外部网关协议(EGP)。
1. 路由选择协议的基本概念
-
自治系统(AS):在单一技术管理下的网络、IP地址和路由器集合,内部使用统一的路由选择协议和度量标准,对外部表现为单一的路由策略。
-
静态路由与动态路由:静态路由由管理员手动配置,不适应网络拓扑变化,但开销小;动态路由通过协议自动调整路由,适应网络变化,但实现复杂、开销大,互联网均使用动态路由。
2. 内部网关协议(IGP)
IGP用于AS内部的路由选择,常用协议包括RIP和OSPF。
(1)路由信息协议(RIP)
RIP是基于距离向量算法的分布式路由协议,核心特点如下:
-
距离定义:以"跳数"为度量单位,路由器到直连网络的距离为1,非直连网络的距离为经过的路由器数+1,最大跳数为15(16表示不可达),限制了网络规模。
-
协议特点:仅与相邻路由器交换信息;交换的是完整路由表;每隔30秒定期交换,网络拓扑变化时触发更新。
-
距离向量算法:路由器收到相邻路由器的路由更新后,将下一跳改为该路由器,距离+1,再与本地路由表比较:若目的网络不存在,添加条目;若下一跳相同,替换条目;若距离更短,更新条目。
RIP的优点是实现简单、开销小,但存在"坏消息传播慢"(收敛时间长)、网络规模有限、路由信息开销大等缺点,适用于小型网络。
(2)开放最短路径优先(OSPF)
OSPF为克服RIP的缺点而设计,基于链路状态算法(Dijkstra算法),核心特点如下:
-
链路状态传播:路由器通过洪泛法向AS内所有路由器发送链路状态信息(相邻路由器、链路度量),仅在链路状态变化或每隔30分钟刷新时发送,开销小。
-
链路状态数据库:所有路由器维护一致的链路状态数据库,基于数据库构造最短路径树,生成路由表,收敛速度快。
-
区域划分:将AS划分为主干区域(0.0.0.0)和普通区域,区域边界路由器(ABR)连接不同区域,主干区域连通所有普通区域,减少路由信息传播开销,支持大规模网络。
OSPF支持多路径负载均衡、可变长子网划分、鉴权等功能,无"坏消息传播慢"的问题,是目前主流的IGP协议。
3. 外部网关协议(EGP)
EGP用于AS之间的路由选择,目前广泛使用的是BGP-4(边界网关协议第4版)。
-
协议特点:BGP-4是基于路径向量的协议,不追求"最佳路由",而是选择"可行路由"(避免兜圈子),需考虑AS之间的路由策略(如商业合作关系)。
-
路由信息:BGP路由条目包含前缀(目的网络)和属性(如AS路径、下一跳),通过AS路径属性避免路由环路(不接受包含自身AS号的路由)。
-
连接方式:BGP发言者(边界路由器)之间通过半永久性TCP连接(端口179)交换路由信息,分为eBGP(不同AS之间)和iBGP(同一AS内部)连接。
BGP适用于大规模互联网的域间路由选择,能灵活处理AS之间的复杂策略,是互联网骨干网的核心路由协议。
七、网络层高级技术:多播、VPN与MPLS
1. IP多播:高效的一对多通信
IP多播(组播)用于实现一个源点向多个终点的通信,相比单播(多次发送相同分组)和广播(向所有节点发送),能大幅节约网络带宽。
-
多播地址:使用IPv4的D类地址(224.0.0.0~239.255.255.255)标识多播组,一个D类地址对应一个多播组,主机通过加入多播组接收多播数据。
-
关键协议:网际组管理协议(IGMP)用于主机加入/退出多播组,通知本地多播路由器;多播路由选择协议(如PIM-SM)用于多播路由器之间协同,构建多播转发树,将多播数据报高效转发至所有多播组成员。
多播适用于视频会议、直播、软件分发等场景,当多播组成员数量较大时,优势尤为明显。
2. 虚拟专用网(VPN)与网络地址转换(NAT)
(1)VPN:基于公网的专用网络
由于IPv4地址短缺,企业常使用专用IP地址(RFC 1918规定)构建内部网络,专用IP地址仅在企业内部使用,无需向ICANN申请,且互联网路由器不转发目的地址为专用IP的分组。
VPN利用公用互联网作为企业各分支机构专用网之间的通信载体,通过隧道技术将内部数据报加密后封装在公网IP数据报中传输,实现"虚拟专用"的效果。VPN分为内联网(企业内部)、外联网(企业与合作伙伴)和远程接入VPN(员工远程访问)三类,兼顾安全性和成本效益。
(2)NAT:解决专用地址访问互联网
网络地址转换(NAT)用于实现使用专用IP地址的主机与互联网通信,核心原理是在NAT路由器上将专用IP地址转换为全球IP地址:
-
传统NAT:NAT路由器拥有少量全球IP地址,专用网内主机轮流使用,最多同时支持n台主机访问互联网(n为全球IP地址数)。
-
NAPT(网络地址与端口号转换):将专用IP地址+端口号转换为全球IP地址+新端口号,多台主机可共用一个全球IP地址通信,大幅节约全球IP地址,是目前最常用的NAT方式。
NAT的缺点是通信必须由专用网内主机发起,无法让互联网主机主动访问专用网内的主机(如服务器),需通过端口映射等方式解决。
3. 多协议标签交换(MPLS):IP与面向连接的结合
MPLS是一种IP增强技术,不取代IP,而是通过标签交换提升转发效率,核心特点如下:
-
标签交换:在MPLS域的入口节点,将IP数据报分类为转发等价类(FEC),为每个FEC分配固定长度的标签,后续路由器基于标签转发(硬件实现),无需解析IP地址,转发速度快。
-
标签交换路径(LSP):MPLS域内的路由器通过标签分配协议(LDP)交换标签信息,构建LSP(类似虚电路),分组沿LSP转发,实现显式路由选择。
-
应用场景:支持服务质量(QoS)、流量工程(负载均衡)、VPN等,适用于骨干网络。
新一代MPLS采用段路由选择协议(SR),无需LDP协议,由源节点指定路径并生成标签栈,进一步简化控制层面,提升灵活性。
八、软件定义网络(SDN):网络架构的革新
SDN是一种新型网络架构,核心思想是"控制与转发分离、软件定义控制",彻底改变了传统网络的管理模式:
1. SDN的核心组件
-
数据层面:由SDN交换机组成,负责分组转发,通过流表实现"匹配+动作"(如转发、丢弃、重写首部),流表由控制器管理。
-
控制层面:由SDN控制器组成,集中管理全网的拓扑信息、链路状态,计算路由并生成流表,通过南向接口(如OpenFlow)下发至交换机。
-
应用层面:由网络控制应用程序组成(如路由选择、负载均衡、防火墙),通过北向接口(如REST API)与控制器交互,实现网络功能的可编程。
2. SDN的特性
-
控制与转发分离:控制器集中管控,交换机仅负责转发,简化网络设备,降低硬件成本。
-
可编程性:通过软件编程实现网络功能,快速适配业务需求,无需修改硬件。
-
集中化管理:控制器全局视图,便于统一调度和优化网络资源,提升管理效率。
SDN已在数据中心、骨干网等场景广泛应用,是未来网络发展的重要方向。