网络层提供的两种服务
- 可靠的面向连接的网络服务(通过虚电路VC服务实现)
- 不可靠的无连接的网络服务(通过数据报服务实现)
网际协议IP
- 分类的IP地址
- IP地址与硬件地址
区别 | 物理地址是数据链路层和物理层使用的地址;IP地址是网络层和以上各层使用的地址,逻辑地址 |
---|---|
两类地址在各自层次中的作用 |
- ARP的作用:暂时省略
IP数据包格式
一个IP数据报由首部和数据两个部分组成。
其中首部的前一个部分是固定部分,长度固定共20字节,这是所有IP数据报必须具有的。后一部分是可变部分,其长度是可变的,不是必须的。
-
首部格式
-
固定部分
(1) 版本:占4位,指IP协议的版本。目前广泛使用的IP协议版本有两种IPv4和IPv6。
(2) 首部长度:占4位,其单位是4B。所以首部长度必须是4B的整数倍。如首部长度字段的4个二进制位分别是1111(对应十进制是15),则IP协议首部的长度是15 × 4B = 60B(字节)。由于IP数据报首部的固定部分长度固定是20,所以首部字段最小从0101开始。
(3) 区分服务:占8位,一般情况下不使用该字段。只有使用区分服务时,这个字段才起作用,如要求当前的数据报设置高优先级优先发送。
(4) 总长度:占16位,表示首部和数据部分长度之和,单位是字节。
(5) 标识、标志、片偏移是关于IP数据报分片的,见下文。
(9) 源地址和目的地址:各占32位。 -
可变部分
(1) 可选字段:长度可变,从1字节~40字节。可变部分是为了增加IP数据报的功能,如用来支持排错、测量以及安全等措施。
(2) 填充:IP数据报的首部长度必须是4B的整数倍,所以如果首部长度不满足4B整数倍时,就使用填充字段将首部填充到4B的整数倍。 -
IP数据报分片
标识:占16位,所有分片的数据报的标识必须要和原数据报的标识相同。假如一个数据报的标识是12345,这个数据报过大,分片后将它分为3个小的数据报,这3个较小的数据报的标识也必须是12345,可以理解这3个数据报是一个家族的。相同的标识字段的值可以使分片后的各个数据报最后能正确的重装成原来的数据报。标志:占3位,目前只有两位有意义。
片偏移:占13位,以8B为单位。其表示较长分组分片后,某一片在原分组中的相对位置,也就是说相对于用户数据字段的起点,该片从何处开始。这也就是说,除了最后一个分片,每个分片的长度一定是8B的整数倍。
-
片偏移计算例子
假设一个数据报的总长度是3820个字节,其数据部分为3800字节长(首部仅仅使用固定部分),需要分片为长度不超过1420字节的数据报片。因固定首部长度为20字节,因此每个数据报片的长度不超过1400字节。于是分为3个报片,其数据部分的长度分别为1400、1400、1000字节。原始数据报首部被复制为各个数据报的首部,但是必须修改有关字段。
对于原始数据报、数据报片1、2、3的首部部分信息如下图,(原始数据报的标识取12345)
注意区分几个字段的单位:
(1) 首部长度:单位是4B,表示数据报的首部的长度。
(2) 总长度 :单位是 B,标识整个数据报的长度。
(3) 片偏移量:单位是8B,表示某一分片相对于用户数据字段的起点。
- IP层转发分组:重要!!!135页
划分子网和构造超网
- 子网掩码
概念 | 是一个32位二进制值 |
---|---|
作用 | 可以屏蔽掉IP地址中的一部分。从而分离出网络部分和主机部分,基于子网掩码,管理员可以将网络进一步划分为若干子网。它必须结合IP地址一起使用 |
表示法 | 点分十进制 |
-
已知IP地址和子网掩码,计算IP地址的网络号
IP:192.168.0.1
子网掩码:255.255.255.0
化为二进制之后进行’与’运算,并化为十进制:192.168.0.0,即可得到网络号 -
无分类编址CIDR(构造超网): (CIDR 地址块分配方法–按照地址数降序或按子 网的优先级排序:包括每个地址块的主机号长度的确定、采用 ABC 分类法确定不冲突的子网 号、二进制星号表示法、地址块最大最小的地址或可用地址等) **重要!!!**141页
因特网的路由选择协议
- 内部网关协议RIP(距离矢量路由协议)
例子:
表1为当前路由器R6的路由表,现在收到了相邻路由R4发来的更新路由表,如表2,请更新R6的路由表
表1
目的网络 | 距离 | 下一跳路由器地址 |
---|---|---|
Net2 | 3 | R4 |
Net3 | 4 | R5 |
… | … | … |
表2
目的网络 | 距离 | 下一跳路由器地址 |
---|---|---|
Net1 | 3 | R1 |
Net2 | 4 | R2 |
Net3 | 1 | 直接交付 |
解题:
(1) 将表2进行修改
目的网络 | 距离 | 下一跳路由器地址 |
---|---|---|
Net1 | 4 | R4 |
Net2 | 5 | R4 |
Net3 | 2 | R4 |
(2) 将这个表与表1进行比较:
Net1没有,需要加进去;
Net2有,下一跳为R4,和原来相同于是更新信息;
Net3有,下一跳原来为R5,现在为R4, 但是现在的距离为2,于是也要更新
最后得到更新后的R6路由表
目的网络 | 距离 | 下一跳路由器地址 |
---|---|---|
Net1 | 4 | R4 |
Net2 | 5 | R4 |
Net3 | 2 | R4 |
- 内部网关协议OSPF(开放式最短路径优先)
特点 |
---|
"开放"表明OSPF协议不是受某一家厂商控制,而是公开发表的 |
"最短路径优先"是使用了SPF算法 |
采用了分布式的链路状态协议 |
三个要点:
向本自治系统中所有路由器发送信息,这里使用的是洪泛法
发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息
只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息
-
外部网关协议BGP
BGP是不同自治系统的路由器之间交换路由信息的协议 -
IPV6特点:暂时省略
虚拟专用网VPN和网络地址转换NAT
- VPN:暂时省略
- NAT的作用:暂时省略