IPV4 报文格式

 

 ipv4

 

IPV4 报文格式_第1张图片

第一行

Version(版本)

字段长度为4位,标识了数据包的IP版本号

0100表示IP版本4     0110表示IP版本6 (其他所有版本号仅作为“历史产物”)

IHL(头部长度)

字段长度为4位(单位为4个字节),ip报头的最小长度为20个八位组,最大可以扩展到60个八位组

通过这个字段可以描述32位字长的最大长度

Type of Service(服务类型)

字段长度为8位 用来指定特殊的数据包处理方式。该字段实际上被分为两个字段:优先权和Tos。

IPV4 报文格式_第2张图片

Total Length(总长度)

字段长度为16位(单位为一个八位组),其中包括IP报头。接受者用总长度减去IP报头长度,就可以确定数据包数据有效载荷的大小。(用十进制表示最大到65535个)

Identification(标识符)

字段长度为16位,通常与标记字段和分段偏移字段一起用于数据包的分段。 如果数据包原始长度超过数据包所要经过的数据链路的最大传输 单元( MTU),那么必须将数据包分段为更小的数据包。例如,一个大小为 5000 字节的数据包在穿过网络时,如果遇到一条MTU为1500字节的数据链路,即数据帧最多容纳 容纳大小为1500 字节的数据 包。路由器需要在数据成 帧之前将数据包分段成多个数据 包,其中每个数据包长度不得超过1500 字节;然后路由器在每片数据包的标识字段上打上相同的标记,以便接收设备可以识别出属于一个数据包的分段。

IP Flags(标记)

字段长度为3位,第1位没有使用。第二位不分段位(DF),置1之后路由器不能对其分段处理,如果超过MTU值则路由器不能对其转发将其丢弃,并向源点发送错误消息。

Fragment Offset(分片偏移)

字段长度为13位,以 8个八位组为单位,用于指明分段起始点相对于报头起始点的偏移量。由于分段到达时可能错序,所以分段 偏移字段可以使接收者按照正确的顺序重组数据包。请注意,如果一个分段在传输中丢失,那么必 在网络中同一点对整个数据 包重新分段并重新发送。 因此,容易发生故障的数据链路会造成时延不成比例。 另外,如果由于网络拥塞而造成分段丢失, 那么 重传整组分段会进一步加重网络拥塞。

Time To Live(生存时间)

字段长度为8位,以前为时间。现在为跳数,传输时,每台路由器都会将TTL值减一,到0会向源点发送错误信息。(用于防环,trace追踪工具)

Protocol(协议)

字段长度为8位,它给出了主机到主机层或传输层协议 的“ 地址” 或协议号,协议字指定了数据包中信息的类型。当前已分配了 100 多个不同的协议号。

比较有名的 1:ICMP  4:IP  6:TCP  17:UDP  21:ftp  22:ssh  23:telnet  80:http  88:eigrp 89:ospf 

Header Checksum(头部校验)

是针对IP报头的纠错字段。校验和不计算被封装的数据,UDP、TCP和ICMP 都有各自的校验和。

Source Address(源地址) Destination Address(目的地址)

字段长度为32位,分别表示发送者数据包源点和目的地的 IP 地址。

IP Option(可选项)

松散源路由选择( Loose Source Routing)—— 它给出了一连串路由器接口的IP地址序列。数据包必须沿着IP地址序列传送, 但是允许在相继的两个地址之间跳过多台 路由器。   

严格 源 路 由 选择( Strict Source Routing)—— 它也给出了一系列 路由器接口的IP地址序列。不同于松散源路由选择,数据 包必要严格按照路由转发。如果下一跳不再列表中,那么 将会发生错误。   

记录 路 由( Record Route)—— 当数据包离开时为每台路由器提供空间记录数据包的出站接口地址,以便保存数据包经过的 所有路由器的记录。记录路由选项提供了类似于路由追踪的功能,但是不同点在于这里记录了双向路径 上的出站接口信息。   

时间 戳( Timestamp)—— 每台路由器除了会记录一个时间戳之外,时间戳选项十分类似于记录路由选项, 这样数据包不仅可以知道自己到过哪里,而且还可以记录到达的时间。

你可能感兴趣的:(网络)