7.计算机网络_IP包头

IP数据报的整体格式:

  • 版本:IPv4、IPv6。下述包头是IPv4的包头,版本为4
  • 首部长度:占4个bit,首部大小 = 首部长度 * 4
  • 区分服务:一般不使用
  • 总长度:首部+数据的长度,16字节最大为65535。长度不可超过MTU

MTU就是数据报的最大长度,MTU<=65535

  • 标识:它是一个随机数,相同标识的数据报代表为一组
  • 标志:MF=1代表之后有分片,MF=0代表该数据报为最后一个分片,DF=0代表允许分片
  • 片偏移:偏移单位8字节。片偏移 = TCP中位置 / 8分析见"片偏移过程"
  • 生存时间:TTL,指示数据报在网络中可通过的路由器个数的最大值。防止出现循环路由但到达不了目标地址的情况。
  • 协议:TCP、UDP,标注了是运输层的谁传给的网络层

什么是分片:

就像TCP接收应用层数据将数据抽象成一字节一字节并以一段一段的方式进行传输一样,IP接收到TCP的数据,也会将大的数据抽象成一段一段的数据进行处理。这一段一段的数据就叫IP数据报分片。

分片的过程:

假设TCP传输的本次数据共有3800个字节,IP数据报的长度MTU为1400个字节。那么第一个分片就是0~1399,第二个就是1400~2799,第三个就是2800~3799。偏移就是首地址/4

相关推荐
萧鼎5 分钟前
深入解析 Python 的 pytun 库:虚拟网络接口与隧道技术实战指南
服务器·网络·python
Yuki’1 小时前
网络编程---UDP
c语言·网络·网络协议·udp
鲸屿1951 小时前
python之socket网络编程
开发语言·网络·python
天天年年天天。1 小时前
TCP/IP、HTTP 和 HTTPS简介
网络
想睡hhh2 小时前
网络原理——传输层协议UDP
网络·网络协议·udp
lsnm3 小时前
【LINUX网络】IP——网络层
linux·服务器·网络·c++·网络协议·tcp/ip
楠枬4 小时前
ARP 协议
网络·网络协议·arp
IT成长日记4 小时前
【Linux基础】Linux系统配置IP详解:从入门到精通
linux·运维·tcp/ip·ip地址配置
wanhengidc4 小时前
云手机就是虚拟机吗?
运维·网络·安全·智能手机
疾风铸境4 小时前
项目研发实录:电子称SDK封装dll给到QT和C#调用
linux·服务器·网络