首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

IP协议头部格式

4位版本号: 指定IP协议的版本,对于IPV4来说,就是4(通常是4,ipv4和ipv6不兼容)

4位首部长度: 表示IP协议的头部长度是多少个32bit(4字节),4位能表示的最大数为15,即首部长度最大为60字节(和TCP类似)

8位服务类型: 前面三个比特位表示优先权,已经弃用了。后面4位TOS字段, 和1位保留字段(必须置为0).

4位TOS分别表示: 最小延时, 最大吞吐量, 最高可靠性, 最小成本. 这四者相互冲突, 只能选择一个为侧重点. 对于ssh/telnet这样的应用程序, 最小延时比较重要; 对于ftp这样的程序, 最大吞吐量比较重要.

8位协议: 标识传输层使用什么协议,在数据分用的时候,通过该字段决定将有效载荷交给谁(将数据交给相应的协议)

16位总长度: 标识IP数据包的整体长度。

将首部长度读上来,总长度 - 首部长度就是有效载荷长度(分离报头与有效载荷)

16位标识: 表示当前UDP数据包分片是属于哪一个完整的UDP报文,同一个UDP数据包当中的所有分片具有相同的标识

3位标志:由3比特构成,表示包被分片的相关信息。每一位的具体含义请参考下表。

13分片偏移: 用来标识分片在原来数据之中的位置,用于接收方进行组装

由13比特构成,用来标识被分片的每一个分段相对于原始数据的位置。第一个分片对应的值为0。由于FO域占13位,因此最多可以表示8192(=2 13 )个相对位置。单位为8字节,因此最大可表示原始数据8×8192=65536字节的位置 ->UDP最大长度就是2^16字节,因此可以表示UDP的每一个位置

8位生存时间(Time To Live TTL): 数据在传输过程中,允许经过的路由器的个数(TTL也叫跳数)

TCP只会存在于发送端和接收端,网络之中只能看到IP报文。

每经过一个路由器,TTL–; 硬件也有BUG,可能导致循环路由,这样网络中就会存在大量的废弃的游离报文,TTL解决了这些游离报文问题(TTL为0,数据包被丢弃)

16位首部校验和: 使用CRC进行检验,来鉴别头部是否损坏(数据的可靠性是由TCP保证的,所以IP只进行头部的鉴定,不会对数据进行鉴定)

32位源/目的IP地址: 表示发送端和接收端,一般在网络之中是不会改变的

路由查找的基本过程,是先找到目标网络,然后进行报文转发,再找到目标主机,应该根据目的IP进行路由(比如去故宫玩,首先先去北京)

IP66在线查IP地址位置:https://www.ip66.net/?utm-source=LJ&utm-keyword=?1146

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230421A04PMY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券