我是靠谱客的博主 欢喜枕头,最近开发中收集的这篇文章主要介绍【TCP/IP详解】IP报文格式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我将工作中用到的报文格式进行了汇总,方便查阅:

    【TCP/IP协议】各层报文首部数据格式汇总


 

解析:

  • 4位版本:目前的协议版本号是4,因此IP有时也称作IPv4。
  • 4位首部长度:普通的IP首部长为20个字节,除非含有选项字段。最高位在左边,记为0 bit;最低位在右边,记为31 bit。
  • 8位服务类型(TOS):字段包括一个3 bit的优先权子字段(现在已被忽略),4 bit的TOS子字段和1 bit未用位,但必须置0。4 bit的TOS分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。 4 bit中只能置其中1 bit。如果所有4 bit均为0,那么就意味着是一般服务。注意:现在大多数的TCP/IP实现都不支持TOS特性。
  • 16位总长度:总长度字段是指整个IP数据报的长度,以字节为单位。由于该字段长16比特,所以IP数据报最长可达65535字节。
  • 16位标识:标识字段唯一地标识主机发送的每一份数据报。通常每发送一份报文它的值就会加1。
  • 3位标志:共3位。R、DF、MF三位。目前只有后两位有效,DF位:为1表示不分片,为0表示分片。MF:为1表示“更多的片”,为0表示这是最后一片。
  • 13位偏移:IP分片包,本分片在原先数据报文中相对首位的偏移位。(需要再乘以8)
  • 8位生存时间(TTL):字段设置了数据报可以经过的最多路由器数。它指定了数据报的生存时间。 TTL的初始值由源主机设置(通常为32或64),一旦经过一个处理它的路由器,它的值就减去1。当该字段的值为0时,数据报就被丢弃,并发送ICMP报文通知源主机。
  • 8位协议:该字段可以识别是哪个协议向IP传送数据。
  • 16位首部检验和:首部检验和字段是根据IP首部计算的检验和码
  • 32位源IP地址:标识IP数据报的源端设备。
  • 32位目的IP地址:标识IP数据报的目的地址。
  • ------- 上述总计20字节 -------
  • 选项(如果有):

 

最后

以上就是欢喜枕头为你收集整理的【TCP/IP详解】IP报文格式的全部内容,希望文章能够帮你解决【TCP/IP详解】IP报文格式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部