IP协议
网络层重点协议之一
- 4位版本号:指定IP协议的版本
- 4位首部长度:IP头部的长度是多少个32bit,也就是 length * 4 的字节
数。4bit表示最大的数字是15,因此IP头部最大长度是60字节。 - 8位服务类型:3位优先权字段(已经弃用),4位TOS字段,和1位保留字段(必须置为0)。4位TOS分别表示:最小延时,最大吞吐量,最高可靠性,最小成本。这四者相互冲突,只能选择一个。
- 对于ssh/telnet这样的应用程序,最小延时比较重要;
- 对于ftp这样的程序,最大吞吐量比较重要。
- 16位总长度:IP数据报整体占多少个字节。
- 16位标识:唯一的标识主机发送的报文。如果IP报文在数据链路层被分片了,那么每一个片里面的这个id都是相同的。
- 3位标志字段:
- 第一位保留(保留的意思是现在不用,但是还没想好说不定以后要用到)。
- 第二位置为1表示禁止分片,这时候如果报文长度超过MTU,IP模块就会丢弃报文。
- 第三位表示"更多分片",如果分片了的话,最后一个分片置为1,其他是0。类似于一个结束标记。
-
13位分片偏移:是分片相对于原始IP报文开始处的偏移。其实就是
在表示当前分片在原报文中处在哪个位置。实际偏移的字节数是这个值 * 8 得到的。因此,除了最后一个报文之外,其他报文的长度必须是8的整数倍(否则报文就不连续了)。 -
8位生存时间:数据报到达目的地的最大报文跳数。一般是64。每次
经过一个路由,TTL -= 1,一直减到0还没到达,那么就丢弃了。这个字段主要是用来防止出现路由循环。 -
8位协议:表示上层协议的类型。
-
16位头部校验和:使用CRC进行校验,来鉴别头部是否损坏。
-
32位源地址和32位目标地址:表示发送端和接收端。