计算机网络(三)

一个IP包,其数据长度为4900字节,通过一个MTU为1220字节的网络时,路由器的分片情况如何?请用图表的形式表示出路由器分片情况。

已知 IP 包的数据长度为 4900 字节,IP 首部长度通常为 20 字节,所以整个 IP 包大小为 4900 + 20 = 4920 字节。

网络的 MTU 为 1220 字节,由于每个分片都要包含 20 字节的 IP 首部,那么每个分片的数据部分最大长度为 1220 - 20 = 1200 字节。

数据部分总长度为 4900 字节,每片数据部分最大长度为 1200 字节,则分片数量 (向上取整)5

  • 第 1 片 :
    • 首部长度:20 字节
    • 数据长度:1200 字节
    • 总长度(首部 + 数据):1220 字节
    • 片偏移(相对原始 IP 数据报数据部分开始处的偏移量,单位为 8 字节):0(因为是第一个分片)
    • MF(More Fragment,标识是否还有后续分片,1 表示有,0 表示最后一片):1
    • 第 2 片 :
      • 首部长度:20 字节
      • 数据长度:1200 字节
      • 总长度(首部 + 数据):1220 字节
      • 片偏移:1200 / 8 = 150(单位为 8 字节,因为上一片数据长度为 1200 字节)
      • MF:1
      • 第 3 片 :
        • 首部长度:20 字节
        • 数据长度:1200 字节
        • 总长度(首部 + 数据):1220 字节
        • 片偏移:(1200 * 2) / 8 = 300
        • MF:1
      • 第 4 片 :
        • 首部长度:20 字节
        • 数据长度:1200 字节
        • 总长度(首部 + 数据):1220 字节
        • 片偏移:(1200 * 3) / 8 = 450
        • MF:1
      • 第 5 片 :
        • 首部长度:20 字节
        • 数据长度:4900 - (1200 * 4) = 100 字节(剩余的数据部分)
        • 总长度(首部 + 数据):100 + 20 = 120 字节
        • 片偏移:(1200 * 4) / 8 = 600
        • MF:0(这是最后一片)
相关推荐
流浪0012 天前
计算机网络篇23:数据链路层——以太网帧格式与 MAC 地址,MTU 牵住 UDP 和 TCP,ARP 拿 IP 换 MAC
计算机网络·mac·数据链路层·arp·mtu·局域网通信
老秦包你会2 天前
计算机网络第二课 ----Socket(套接字)编程预备
开发语言·计算机网络·php
say_fall3 天前
【Linux网络编程】计算机网络基础:局域网与广域网、OSI七层模型与TCP/IP五层模型、封装解包与MAC/IP地址、端口号与socket编程接口
linux·网络·tcp/ip·计算机网络·信息与通信
流浪0013 天前
计算机网络篇21:网络层——网段划分与子网掩码,从分类地址到 CIDR 与可用主机数
计算机网络·子网划分·nat·子网掩码·cidr·网络层协议
咔_3 天前
有IPv6地址,为什么外面还是连不进来?让同一台服务分别卡在四个位置
linux·计算机网络
流浪0013 天前
计算机网络篇22:网络层——公网的三级地址划分与逐跳转发,从私网出口替换到 IP 分片组装
tcp/ip·计算机网络·路由器·公网搭建·报文分篇
Java成神之路-4 天前
TCP Socket 与 UDP Socket
tcp/ip·计算机网络·udp
流浪0015 天前
计算机网络篇20:网络层——IP 协议的定位与 IPv4 报头字段,从 20 字节首部到 TTL 防环
tcp/ip·计算机网络·ttl·网络层协议·ip报头
流浪0016 天前
计算机网络篇17:传输层——TCP 超时重传、三次握手与四次挥手,TIME_WAIT 为什么要等 2MSL
网络协议·tcp/ip·计算机网络·三次握手·四次挥手·超时重传
流浪0017 天前
计算机网络篇16:传输层——TCP 报头属性字段:16 位窗口大小撑起流量控制,六个标志位标识报文类型
网络协议·tcp/ip·计算机网络·urg紧急指针·tcp报头