参考引用
- 计算机网络微课堂-湖科大教书匠
- 计算机网络(第7版)-谢希仁
1. 网络层概述
-
网络层的主要任务是实现网络互连,进而实现数据包在各网络之间的传输
-
要实现网络层任务,需要解决以下主要问题
- 网络层向运输层提供怎样的服务 (“可靠传输”还是“不可靠传输”)
- 网络层寻址问题
- 路由选择问题
-
因特网 (Internet) 是目前全世界用户数量最多的互联网,它使用 TCP/IP 协议栈
- 由于 TCP/IP 协议栈的网络层使用网际协议 IP,它是整个协议栈的核心协议,因此在 TCP/IP 协议栈中网络层常称为网际层
2. 网络层提供的两种服务
2.1 面向连接的虚电路服务
- 可靠通信由网络来保证
- 必须建立网络层的连接:虚电路 VC(Virtual Circuit)
- 通信双方沿着已建立的虚电路发送分组
- 通信结束后,需要释放之前所建立的虚电路
- 目前并未采用这种设计思路
2.2 无连接的数据报服务
- 可靠通信应当由用户主机来保证
- 不需要建立网络层连接
- 每个分组可走不同的路径
- 每个分组的首部必须携带目的主机的完整地址
- 这种通信方式所传送的分组可能误码、丢失、重复和失序
- 由于网络本身不提供端到端的可靠传输服务,这就使网络中的路由器可以做得比较简单,而且价格低廉 (与电信网的交换机相比较)
- 因特网采用了这种设计思想,也就是将复杂的网络处理功能置于因特网的边缘 (用户主机和其内部的运输层),而将相对简单的尽最大努力的分组交付功能置于因特网核心
3. IPv4 地址
3.1 概述
-
在 TCP/IP 体系中,IPv4 地址就是给因特网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的 32 比特的标识符
-
IP 地址由因特网名字和数字分配机构 ICANN(Interet Corporation for Assigned Names and Numbers) 进行分配
- 我国用户可向亚太网络信息中心 APNIC(Asia Pacific Network lnformation Center) 申请 IP 地址,需要缴费
- 2011年2月3日,互联网号码分配管理局 IANA (由 ICANN 行使职能)宣布,IPv4 地址已经分配完毕
- 我国在 2014 至 2015 年也逐步停止了向新用户和应用分配 IPv4 地址,同时全面开展商用部署 IPv6
-
IPv4 地址的编址方法经历了如下三个历史阶段
-
32 比特的 IPv4 地址不方便阅读、记录以及输入等,因此 IPv4 地址采用点分十进制表示方法以方便用户使用
-
8 位无符号二进制整数转十进制数
-
十进制正整数转 8 位无符号二进制数
3.2 分类编址的 IPv4 地址
- 只有 A 类、B 类和 C 类地址可分配给网络中的主机或路由器的各接口
- 主机号为 “全 0” 的地址是网络地址,不能分配给主机或路由器的各接口
- 主机号为 “全 1” 的地址是广播地址,不能分配给主机或路由器的各接口
-
A 类地址(网络号占 1 个字节,主机号占 3 个字节)
- 最小网络号 0,保留不指派
- 第一个可指派的网络号为 1 ,网络地址为 1.0.0.0
- 最大网络号 127,作为本地环回测试地址,不指派
- 最小的本地环回测试地址为 127.0.0.1
- 最大的本地环回测试地址为 127.255255254
- 最后一个可指派的网络号为 126 ,网络地址为 126.0.0.0
- 可指派的网络数量为
2
(
8
−
1
)
−
2
=
126
2^{(8-1)}-2=126
2(8−1)−2=126
- 减 2 的原因是除去最小网络号 0 和最大网络号 127
- 每个网络中可分配的 IP 地址数量为
2
24
−
2
=
16777214
2^{24}-2= 16777214
224−2=16777214
- 减 2 的原因是除去主机号为全 0 的网络地址和全 1 的广播地址
- 减 2 的原因是除去主机号为全 0 的网络地址和全 1 的广播地址
-
B 类地址(网络号和主机号各占 2 个字节)
- 最小网络号也是第一个可指派的网络号 128.0,网络地址为 128.0.0.0
- 最大网络号也是最后一个可指派的网络号 191.255,网络地址为 191.255.0.0
- 可指派的网络数量为 2 ( 16 − 2 ) = 16384 2^{(16-2)}= 16384 2(16−2)=16384
- 每个网络中可分配的 IP 地址数量为
2
16
−
2
=
65534
2^{16}-2=65534
216−2=65534
- 减 2 的原因是除去主机号为全 0 的网络地址和全 1 的广播地址
- 减 2 的原因是除去主机号为全 0 的网络地址和全 1 的广播地址
-
C 类地址(网络号占 3 个字节,主机号占 1 个字节)
- 最小网络号也是第一个可指派的网络号 192.0.0,网络地址为 192.0.0.0
- 最大网络号也是最后一个可指派的网络号 223.255.255,网络地址为 223.255.255.0
- 可指派的网络数量为 2 ( 24 − 3 ) = 2097152 2^{(24-3)}=2097152 2(24−3)=2097152
- 每个网络中可分配的IP地址数量为
2
8
−
2
=
254
2^{8}- 2 =254
28−2=254
- 减 2 的原因是除去机号为全 0 的网络地址和全 1 的广播地址
- 减 2 的原因是除去机号为全 0 的网络地址和全 1 的广播地址
-
示例
解析
- 根据地址左起第一个十进制数的值,可以判断出网络类别
- 小于 127 的为 A 类,128~191 的为 B 类,192~223 的为 C 类 - 根据网络类别,就可找出地址中的网络号部分和主机号部分
- A 类地址网络号为左起第一个字节,B 类地址网络号为左起前两个字节,C 类地址网络号为左起前三个字节 - 以下三种情况的地址不能指派给主机或路由器接口
- A 类网络号 0 和 127
- 主机号为 “全0”,这是网络地址
- 机号为 “全1”,这是广播地址
- 根据地址左起第一个十进制数的值,可以判断出网络类别
3.3 划分子网的 IPv4 地址
-
32 比特的子网掩码可以表明分类 IP 地址的主机号部分被借用了几个比特作为子网号
- 子网掩码使用连续的比特 1 来对应网络号和子网号
- 子网掩码使用连续的比特 0 来对应主机号
- 将划分子网的 IPv4 地址与其相应的子网掩码进行逻辑与运算就可得到 IPv4 地址所在子网的网络地址
-
示例:已知某个网络的地址为 218.75.230.0,使用子网掩码 255.255.255.128 对其进行子网划分,请给出划分细节
- 默认的子网掩码是指在未划分子网的情况下使用的子网掩码
3.4 无分类编址的 IPv4 地址
-
背景
- 划分子网在一定程度上缓解了因特网在发展中遇到的困难,但是数量巨大的 C 类网因为其地址空间太小并没有得到充分使用,而因特网的 IP 地址仍在加速消耗,整个 IPv4 地址空间面临全部耗尽的威胁
- 为此,因特网工程任务组 IETF 又提出了采用无分类编址的方法来解决 IP 地址紧张的问题,同时还专门成立 IPv6 工作组负责研究新版本 IP 以彻底解决 IP 地址耗尽问题
- 1993年,IETF 发布了无分类域间路由选择 CIDR(Classless Inter-Domain Routing) 的 RFC 文档:RFC1517~1519 和 1520
- CIDR 消除了传统的 A 类、B 类和 C 类地址,以及划分子网的概念
- CIDR 可以更加有效地分配 IPv4 的地址空间,并且可以在新的 IPv6 使用之前允许因特网的规模继续增长
-
用法
-
CIDR 使用 “斜线记法”,或称 CIDR 记法。即在 IPv4 地址后面加上斜线 “/”,在斜线后面写上网络前缀所占的比特数量
-
CIDR 实际上是将网络前缀都相同的连续的 IP 地址组成一个 CIDR 地址块,只要知道 CIDR 地址块中的任何一个地址,就可以知道该地址块的全部细节
- 地址块的最小地址
- 地址块的最大地址
- 地址块中的地址数量
- 地址块聚合某类网络 (A 类、B 类或 C 类) 的数量
- 地址掩码 (也可继续称为子网掩码)
-
-
示例
- 请给出 CIDR 地址块 128.14.35.7/20 的全部细节 (最小地址,最大地址,地址数量,聚合 C 类网数量,地址掩码)
- 请给出 CIDR 地址块 128.14.35.7/20 的全部细节 (最小地址,最大地址,地址数量,聚合 C 类网数量,地址掩码)
-
路由聚合(构造超网)
- 网络前缀越长,地址块越小,路由越具体
- 若路由器查表转发分组时发现有多条路由可选,则选择网络前缀最长的那条,这称为最长前缀匹配,因为这样的路由更具体
3.5 IPv4 地址的应用规划
- 变长的子网掩码 VLSM
4. 路由选择协议
-
因特网所采用的路由选择协议的主要特点
- 自适应:动态路由选择,能较好地适应网络状态的变化
- 分布式:路由器之间交换路由信息
- 分层次:将整个因特网划分为许多较小的自治系统 AS(Autonomous System)
-
常见的路由选择协议
-
路由器的基本结构
5. 虚拟专用网 VPN 与网络地址转换 NAT
5.1 虚拟专用网 VPN(Virtual Private Network)
-
利用公用的因特网作为本机构各专用网之间的通信载体,这样的专用网又称为虚拟专用网
- 由于 IPv4 地址的紧缺,一个机构能够申请到的 IPv4 地址数量往往远小于本机构所拥有的主机数量。因此,虚拟专用网中的各主机所分配的地址应该是本机构可自由分配的专用地址,而不是需要申请的、在因特网上使用的公有地址
- 专用地址只能用于一个机构的内部通信,只能用于本地地址而不能用于全球地址
-
内联网 VPN
- 同一机构内不同部门的内部网络所构成的虚拟专用网 VPN
-
外联网 VPN
- 有时一个机构的 VPN 需要有某些外部机构 (通常就是合作伙伴) 参加进来,这样的 VPN 就称为外联网 VPN
-
远程接入 VPN
- 在外地工作的员工需要访问公司内部的专用网络时,只要在任何地点接入到因特网,运行驻留在员工 PC 中的 VPN 软件,在员工的 PC 和公司的主机之间建立 VPN 隧道,即可访问专用网络中的资源
5.2 网络地址转换 NAT(Network Address Translation)
- 虽然因特网采用了无分类编址方式来减缓 IPv4 地址空间耗尽的速度,但由于因特网用户数目的激增,特别是大量小型办公室网络和家庭网络接入因特网的需求不断增加,IPv4 地址空间即将面临耗尽的危险仍然没有被解除
- 1994 年提出了一种网络地址转换 NAT 的方法再次缓解了 IPv4 地址空间即将耗尽的问题
- NAT 能使大量使用内部专用地址的专用网络用户共享少量外部全球地址来访问因特网上的主机和资源