IPv4数据报是网络协议中的一种,它是Internet协议族中的一员,负责将数据包从源地址传输到目标地址。IPv4数据报是一种面向无连接的协议,这意味着每个数据报都是独立进行处理的,而不需要像TCP协议那样建立连接。IPv4数据报的优点是传输速度快、传输效率高,但缺点是不可靠性较高,可能会出现丢包、重复发送等问题。
下面将介绍IPv4数据报的各个字段及其含义。
版本号
IPv4数据报的版本号占四位,其取值为4,代表IPv4协议。
首部长度
IPv4数据报的首部长度占四位,由于一个单位长度为32个字节,所以首部长度的最小值为0101,即20个字节,最大值为1111,即60个字节。若首部长度不是4字节的整数倍,后面的填充字段将自动填充补齐到4字节的整数倍。IPv4数据报的区分服务占八位,一般情况下没有实际用处。
总长度
IPv4数据报的总长度占16位,表示首部和数据的总和的长度,最大值为65535个字节。若传输的长度超过这个值,则需要分片。
IPv4数据报的标识占16位,表示一个数据报的计数器的值。当数据报由于长度超过网络的MTU而必须分片时,该值会被复制到所有的数据报片的标识字段中,等到重组的时候,相同标识符的值的数据报就会被重新组装成一个数据报。
标志
IPv4数据报的标志占三位,其中最低位叫做MF,MF=1表示后面还有若干个数据报,MF=0表示这已经是最后一个数据报了。中间位叫做DF,DF表示不能进行分片,DF=0才可以进行分片操作。
片偏移
IPv4数据报的片偏移占13位,表示一个片在原数据报中的相对位置,基本单位是8字节。每个分片的长度都是8字节的整数倍,最后一个分片不够八字节的一样是填充。
生存时间
IPv4数据报的生存时间占8位,即TTL(time to live),表明数据报在网络中的寿命,这个值被设定成跳数,即数据报可以经过多少个路由器的数量,每经过一个路由器,该值就减一,减到为零的时候就被抛弃。
协议
IPv4数据报的协议占8位,用来指明数据报携带了哪种协议。IPv4数据报的首部效验和占16位,用来效验数据报首部的正确性。IPv4数据报的IP源地址占32位,表示数据报的源地址。
目的地址
IPv4数据报的目的地址占32位,表示数据报的目的地址。
选项
IPv4数据报的选项可变长,最多包含40字节。可用的IP可选项有记录路由、时间戳、松散路由选择、严格路由选择等。
以上是IPv4数据报的各个字段及其含义,了解这些内容可以更好地理解IPv4数据报的工作原理。IPv4数据报的格式和字段信息是必须掌握的知识,对于从事网络或计算机相关工作的人员来说,更是必不可少的知识点。