什么是计算机网络中的片偏移??如何计算的??

qrxbsd2011 2011-04-21 10:46:41
数据报长度4000字节 固定首部长度20字节 最长数据长度为1500字节 试问划分几个短数据报片?各数据报片的偏移字段为何值?
...全文
19709 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
昵称很不好取 2011-04-22
  • 打赏
  • 举报
回复 1
一个数据包放不下这么大的数据,需要用几个数据包,然后在接收端重组,如何重组?
这就需要在切割的时候记录下各个数据在原来数据报中的偏移,比如按1000字节切割,开头的数据偏移为0,第二段数据偏移为1000字节
little_angel 2011-04-22
  • 打赏
  • 举报
回复 1
这问题,其实你应该看看计算机网络这本书。在网络层,因为要向下传输,而低层会有最大传输值,超过这个值,就得将数据包分片。
a=1500+20=1700;(算出每片数据报的长度=最长数据长度+固定首部)
分片数目=总数据报长度 / 每片长度=4000 / 1700=2.4 取整数后是 3.
所以分为 3片。

第一片偏移值是 0; 占据0~1699字节。(长度是1700字节)
第二片偏移地址是0+1700=1700字节 ; 占据1700~3399 字节。(长度是1700字节)
第三片偏移地址是1700+1700=3400字节;占据3400~3999字节。 (长度是600字节)

说的很清楚了,希望对楼主有所帮助
weixin_47854458 2021-06-13
  • 举报
回复 16
@little_angel 你这......1500+20=1700

33,322

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧