计算机网络协议 第五课 IP

第四章网际协议IP

4.1 IPv4数据报

IPv4数据报格式

4.1.1 首部长度与总长度

  1. 问:某路由器接收到一个IP数据报,前8位如下:01000010,请解释它的含义
    答:将其看成0100,0010,前者值是4,后者值是2,前者是版本,4代表IPv4协议;后者是首部长度,以4字节为单位计数,所以首部长度为8字节,可是8字节不满足IP数据报的格式要求,所以这是个无效的报文
  2. 问:一个IP数据报的首部长度为0x5,总长度为0x28,则这个IP数据报封装多少字节数据?封装该IP数据报的以太网帧的总长度是多少字节?(十进制数)
    答:数据长度等于总长度减去首部长度,即0x28(十进制40)减去0x5(乘以单位4字节等于20),数据长度等于20。以太网帧的总长度在总长度的基础上加上首部和尾部共(6+6+2+4)18字节,此时共(40+18)58字节,因为不满足最小帧长64字节的需要,所以需要补上6字节
  3. 问:“总长度”字段存在的理由?
    数据部分的长度可以从总长度中减去首部长度得出

4.1.2 TTL与协议

  1. 问:某路由器收到一个IP数据报,前几位用16进制表示为45000028000100000201…,这个IP数据报还能跳多少跳?封装的是什么数据?
    答:该数据报中TTL的值为02,意味着还能再跳一跳,下一跳时TTL值变为01,将不能再跳了。协议字段的值为01,查表可知对应ICMP,下表中的所有协议字段对应关系应背诵IP数据报协议字段

  2. 问:链路层是否有类似TTL的机制?链路层中与“协议”字段具有类似作用的字段有哪些?
    答:链路层无类似TTL的机制,但他们使用生成树协议来解决类似问题。链路层中的类型字段你与“协议”字段相类似。

4.1.3 帧与MTU

帧的组成
问:路由器收到的帧格式和长度,是否与发出的帧格式和长度相同?
答:否,因为可能路由器的接口连接两种不同的网络,所以帧的格式可能不同。因为接口的MTU可能不同,导致长度不同。其中收到接口MTU大,发出接口MTU小,导致长度不同;收到接口MTU小,发出接口MTU大,长度不变。
MTU
其中MTU为576时,为IPv6网络最小MTU,分片长度小于它时将不会再被分片。

4.1.4 分片与重组

分片与重组

  1. 问:IP数据报总长度最大为多少字节?
    最大为2^16-1字节,也即64KB
  2. 问:何时何处进行分片和重组?
    分片的工作由源主机和中间路由器进行;重组的工作只由目的主机进行
  3. 问:每个路由器都必须计算检验和吗?
    中间路由器收到数据报时,也要先检验其完整性,以决定是否可以转发;如可以,则要重新计算检验和,并将其值置于首部检验和字段中然后转发。前者的工作由路由器的接收方完成,后者的工作由发送方完成
  4. 问:R1发出的和R2发出的IP数据报有何不同?
    R1和R2在网络中的位置不一样,导致了TTL的不同,因为接口的MTU不一样,所以检验和也不同

4.2 IP首部选项

选项的功能:用于网络测试和调试。包括:

  1. 记录数据报经过的路径、时间
  2. 由源端指定必须经过的路径

IP首部选项

4.2.1 选项的格式

选项的格式
其中的类别一项仅作了解,重点学习复制和编号两项。由上图可知,选项也是TLV格式的。值一项,跟选项内容有关,长度不一定。

4.2.2 无操作选项

无操作选项NO-OP:1字节,用作选项和选项之间填充符。
类型=1(0 00 00001)(仅在第一个分片中复制,数据报控制,无操作)
一般用于补充选项长度,用来对其下一个选项

4.2.3 选项结束选项

选项结束选项END-OP:1字节,用作选项字段结束时的填充。只能用作最后一个选项,只能使用一次。
类型=0(0 00 00000)

问:IP首部前面有20字节,再加一个EOOL和NOP共多少字节?(这里为课本上的名称)
答:22字节

4.2.4 记录路由选项

功能:记录IP数据报从源主机到目的主机所经过的各路由器出接口的IP地址。
工作原理

  • 源主机生成一个可存放多个IP地址的空表,并规定选项长度
  • 各路由器把主机的出接口IP地址依次填在表中
    记录路由选项格式

格式

  • 类型=7(0 00 00111)
    • copy=0(只要求第一个IP分片复制该选项内容)
    • 类别=0(00),编号=7(00111)
  • 长度:该选项的总长度,最多存放40字节(因为首部最大长度为(2^4-1)*4=60,前面的内容已经占了20字节)
  • 指针:指向下一个可存放IP地址的位置
  • IP地址表:存放IP数据报所经过的路由器IP地址,最多只能放9个路由器地址

记录路由的过程

  1. IP数据报离开源主机时,指针=4,IP地址表为空
  2. 当指针值<长度值时,中间路由器将IP数据报离开路由器的接口的IP地址记录在IP首部选项中,指针值+4
  3. 当指针值>长度值时,路由器不记录IP地址,直接转发数据报。

记录路由的过程

4.2.5 时间戳选项

功能:记录IP数据报经过每个中间路由器的时间戳
工作原理:IP数据报经过路由器时,路由器记录一个时间戳(标准时间)
时间戳选项格式
类型=68(0 10 00100)
长度:该选项的总长度,最多为40字节。因此最多只有4个路由器能记录IP地址和时间戳。
指针:指向下一个可存放IP地址和时间戳的位置
溢出:由于无空间而未能记下时间戳的路由器的个数
标志:

  • =0,只记录时间戳
  • =1,记录IP地址和时间戳
  • =3,由源主机填入IP地址,IP地址匹配的路由器填写时间戳

时间戳选项

4.2.6 源路由选项

功能:由源端指定一系列路由器的IP地址,以限定IP数据报的传输路径
用途:通常用于测试某特定路径,或绕开某危险网络等
源路由支持两种形式

  • 严格源路由:指定完备路径
  • 宽松源路由:指定路径要点
    两种路由比较
    当严格源路由记录:A-C-F,则IP数据报的传输路径必须是:A-C-F
    当宽松源路由记录:A-C-F,则IP传输的传输路径可以是:A-B-C-E-F
    源路由选项格式
    类型:(1 00 10001),(1 00 00011)
  • 137(严格源路由),131(宽松源路由)
  • COPY=1,每个分片均复制源路由选项

长度:该选项的总长度,最多为40字节
指针:指向当前比较的IP地址
IP地址表:由源主机生成,指定IP数据报经过的路径

4.2.7 源路由选项处理过程

源路由选项处理过程

  1. ping -k IP1 IP3 IP5 D
  2. 源主机指明IP数据报的目的地址和经过的路由清单(中间路由器的入口IP地址)
  3. 源主机的IP模块接收源路由清单后,
    1. 将IP包目的IP地址放在路由清单的最后一项
    2. 用清单中的第一个IP地址替换IP包的目的地址
    3. 指针指向清单中的第二个IP地址
    4. 发送该IP报
  4. 每个中间路由器检查收到数据报的目的IP地址:
    1. 如果不是自己接收该数据报的入口IP,则:
      1. 不改变IP数据报的首部内容,正常转发数据报(宽松源路由)
      2. 丢弃该数据报(严格源路由)
    2. 如果等于自己接收该数据报的入口IP,且指针值小于长度值,则:
      1. 用当前IP地址替换IP目的地址
      2. 用出口IP地址替换当前IP地址
      3. 指针值加4

4.2.8 与IP选项相关的命令

  • ping -r n IP地址 //记录路由选项
    n指记录路由器的个数,取值范围:1-9
  • ping -s n IP地址 //时间戳选项
    n指记录时间戳的个数,取值范围:1-4
  • ping -j IP地址列表 //宽松源路由
    最多9个IP地址
  • ping -k IP地址列表 //严格源路由
    最多9个IP地址

上一课:
第4课 ARP
下一课:第6课 IPv6

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用:1-7 小写和大写开头的英文名字internet和Internet在意思上有何重要区别? 以小写字母i开始的internet(互联网或互连网)是一个通用名词,它泛指由多个计算机网络互连而成的网络。在这些网络之间的通信协议(即通信规则)可以是任意的。 以大写字母I开始的Internet(因特网)则是一个专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,它采用TCP/IP协议族作为通信的规则,且其前身是美国的ARPANET。 引用:第一章 概述 1-1 计算机网络向用户可以提供哪些服务? 计算机网络是一种通信基础设施,向用户提供的最核心的服务就是信息交互服务和资源共享服务。利用计算机网络这个通信基础设施,计算机上运行的各种应用程序通过彼此间的通信能为用户提供更加丰富多彩的服务和应用,如文件传输、电子邮件、网络电视等待。 引用:1-5 因特网的发展大致分为哪几个阶段?请指出这几个阶段最主要的特点。 因特网的基础结构大体上经历了三个阶段的演进。第一阶段——从单个网络ARPANET向互联网发展。第二阶段——逐步建成了三级结构的因特网。第三阶段——逐渐形成了多层次ISP结构的因特网。 根据你提供的信息,我无法回答你的问题。请提供更具体的问题或者更多的引用信息,我将尽力帮助你解答。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值