您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > IP数据报的分片和重组
IP封装、分片与重组IP数据报与帧封装10:29IP封装、分片与重组IP数据报在互联网上传输的时候,它可能要跨越多个不同种类的异构网络。在IP层下面有各种各样的异构网络,即各种各样的数据链路层,每一种数据链路层都有其自己的特定帧格式,每一种帧格式所能容纳的数据量是不一样的。每种网络都规定了一个帧最多能够容纳的数据量,这一限制称为最大传输单元(MTU,maximumtransmissionunit)。一个IP数据报的长度只有小于或等于一个网络的MTU,才能在这个网络中进行传输。每种网络都规定了一个帧最多能够容纳的数据量,这一限制称为最大传送单元MTU(MaximumTransferUnit)。作为一种高层网络数据,IP数据报最终也需要封装成帧进行传输。当一个IP数据报封装成链路层的帧时,此数据报的总长度(即报头区加上数据部分)一定不能超过下层的数据链路层的MTU值,否则无法传输。10:29问题?IP数据报的分片发生在哪里?源点主机会对IP分组进行分片吗?10:29数据报的分片控制数据报的封装(以太网帧类型0800H)问题:每种网络有固定的MTU,若IP报文长度大于MTU,怎么办?数据分片(如何分片?)数据报首部数据报数据区帧头帧数据区10:29举例例:IP数据报长度1420字节(假如首部无选项),网络MTU620字节,如何分片?首部数据(1600字节)数据1(600字节)数据2(600字节)数据3(200字节)首部数据1(600字节)首部数据2(600字节)首部数据3(200字节)10:29问题?(1)如何标识同一个数据报的各个分片?(2)如何标识同一个数据报分片的顺序?(3)如何标识同一个数据报分片的结束?10:29标识DFMF信源机产生,每个数据报唯一解决了:标识同一数据报的各个分片标识分片在原来数据报文中的位置解决了:分片的顺序MF(MoreFragment):片未完位MF=0,是最后一片MF=1,不是最后一片解决了:分片的结束DF(DonotFragment):不分片位DF=1,强制不允许分片片偏移量10:29如何组装?组装时,需要重新设置首部的某些字段(1)修改分片标志和片偏移量字段(2)首部其它字段复制原来数据报首部的相应字段标识符片偏移量DFMF10:29首部数据1:偏移量=0,MF=1首部数据2:偏移量=75(600)MF=1首部数据3:偏移量=150(1200)MF=0首部数据(1600字节)数据1(600字节)数据2(600字节)数据3(200字节)首部数据1(600字节)首部数据2(600字节)首部数据3(200字节)10:29问题:分片首部如何设置?首部长度:若无选项,和原数据报相同,否则重新计算。ID、标志域和片偏移量:如前所述。总长度:分片首部的长度+分片数据部分的长度。校验和:必须重新计算。(为什么?)选项:EOL和NOP不可复制,LSR、SSR复制到所有分片中,记录路由和时间戳选项只能复制到第一个分片中。10:29问题:在何处重组分片?信宿机优点:不会反复分片/重组各分片可独立选路路由软件简化缺点:可能浪费带宽丢失可能性增加IPv6使用路径MTU发现机制,路由器不再分片10:29IP数据报分片—举例ID=x偏移=0段标识=0长度=4000ID=x偏移=0段标识=1长度=1500ID=x偏移=185段标识=1长度=1500ID=x偏移=370段标识=0长度=1040一个大数据报变为几个较小的数据报例子:4000字节数据报MTU=1500字节在数据字段1480字节偏移=1480/810:29偏移=0/8=0偏移=0偏移=1480/8=185偏移=2960/8=370148029603979295914793979需分片的数据报数据报片1首部数据部分共3980字节首部1首部2首部3字节0数据报片2数据报片314802960字节0IP数据报分片—举例10:29
本文标题:IP数据报的分片和重组
链接地址:https://www.777doc.com/doc-5119310 .html