zoukankan      html  css  js  c++  java
  • 数据报分片

    数据报分片原因:

    网络层的数据报需要借助于数据链路层来真正完成传输,但是数据链路层的MTU有限制,一般以太网的MTU是1500B。但是网络层的数据报大小可以不止MTU这么大,根据IP数据报的格式我们知道,总长度有16位,最大有2^16−1=65535B这么大,因此,必然牵涉到数据报的分片技术。

    分片主要借助标识(16位),标志(3位X | DF | MF)和片偏移(13位)三个数据来完成。

    标识告知接收端,是不是同一个数据报的分片。DF=0表示可以分片,MF = 1表示后面还有分片。片偏移表示这个分片在原来的IP数据报中的位置。

    数据报分片示例:

    一个长4000B的IP数据报,数据部分3980B,到达了一个路由,需要转发到一个MTU为1500B的链路上,这样就得分片了。分片数目是3片。每个片都是一个数据报。假设标识是777,那么数据报分片结果是:

    分片一:标识:777,MF=1,DF=0,片偏移=0,有效数据:1480B(编号0~1479)
    分片二:标识:777,MF=1,DF=0,片偏移=185,185*8=1480,有效数据:1480B(编号1480~2959)
    分片三:标识:777,MF=0,DF=0,片偏移370,370*8=2960,有效数据:1020B(编号2960~3979)

  • 相关阅读:
    湖湘杯2020misc
    BUUOJ(Misc)
    BUUOJ(Web)
    网络信息安全攻防学习平台
    CTFHub web部分题解
    BugkuCTF 部分WP(搬运了很多WP)
    Web安全之机器学习入门 第2章-第5章学习笔记
    结构体
    排序的使用
    字符串和日期
  • 原文地址:https://www.cnblogs.com/Hqx-curiosity/p/12160501.html
Copyright © 2011-2022 走看看