IP协议总结

特色:

无状态 无链接 不可靠

IPv4头部结构:

4位版本号 4位头部长度 8 位 服 务 类型 16位总长度
16位标识 3位标志/ 13位片偏移
8位生存时间(TTL) 8位协议 16位头部校验和
32 位源端IP地址
32位目的端IP地址
选项 最多四十字节

a. 4位版本号,IPV4的版本号为4,其余IP协议的扩展协议(SIP和PIP协议)都有不一样的版本号。算法

b. 4位头部长度,表示头部有多少个32bit(4字节),最大为15个32bit,因此IPV4协议的头部最大为60字节。视频

c. 8位服务类型,前3位是优先权字段,接下来4位是TOS字段,每一个位分别表明最小延时、最大吞吐量、最高可靠性和最小费用。最多只能一个为1。最后一位是保留字段。路由

d. 16位总长度,表明该IP数据包的总大小,单位是字节,因此以此能够获得IP数据包的大小最大为2的16次方 - 1,65535字节。it

e. 16位标识,惟一标识主机所发的每个数据报,初始值由系统生成,没发送一个就加一,同一个数据报的不一样分片具备相同的标识。table

f. 3位标志,第一位保留,第二位(DF)表示禁止分片,若是设置了该标志位,数据报就不会分片,若是长度超过了MTU,那么IP模块就会丢弃该数据报,而后返回一个ICMP擦错报文。第三位表示更多分片,除了IP分片的最后一个,其余分片的该标志位都置为1。音频

g. 13位片偏移,是指分片相对于该数据报开始位置的位移。实际上的值都是该值向左移三位以后的值,由于除了最后一个分片,每个分片数据部分的大小都保证是8的倍数。扩展

h. 8位生存时间(TTL),初始值由源端设置,通常为64,每通过一个路由就会减一,减为0时就会丢弃该数据报而且返回一个ICMP差错报文。TTL保证了数据报不会陷入路由循环。路由器

i. 8位协议,用来区分上层协议。/etc/protocols中定义了全部上层协议对应的protocol字段的值。其中ICMP是1,TCP是6,UDP是7.循环

g. 16位头部校验和由发送端填充,接收端进行CRC算法以检验IP头部数据的完整性。方法

h. 32位源端IP地址和32位目的端IP地址用来标识数据报的发送和接受端。

k.可变长的可选信息,最长40个字节。选项内容包括:

(1) 记录路由,告诉数据报途径的全部路由器都将本身的IP地址填入到IP头部的选项部分,这样咱们能够跟踪数据报的传递路径。

(2) 时间戳,告诉每一个路由器都将数据报被转发的时间(或者时间和IP地址对)填入选项部分,咱们能够跟踪数据传递的时间。

(3) 松散源路由选择,指定一个路由器IP地址列表,数据发送过程必须通过这些路由。

(4) 严格源路由选择,数据报只能通过被指定得路由器。

IPv6固定头部结构

4位版本号 8位通讯类型 20位流标签
16位净荷长度 8位下一个包头 8位跳数限制
128位源端IP地址
128位目的端IP地址
a. 4位版本号,IPv6的版本号是6。

b. 8位通讯类型,和IPv4中的8位服务类型相似,表示数据通讯类型和优先权,TOS字段。

c. 20位流标签,是IPv6新增长的字段,用于对链接的服务质量有特殊要求的通讯,好比音频、视频等实时数据传输。

d. 16位净荷长度,表示IPv6的扩展头部和数据长度之和,不包括固定头部长度。

e. 8位下一个包头,指出紧跟固定包头后的包头类型,如扩展包头或者上层协议头。相似于IPv4的8位协议字段,且相同取值有相赞成义。

f. 8位跳数限制,和IPv4的TTL含义相同。

g. 128位源端IP地址和128位目的端地址,和IPv4的32位IP地址相同,只不过IP地址的表示方法不一样。

相关文章
相关标签/搜索