博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IP分片在哪里重组? 为什么?
阅读量:4141 次
发布时间:2019-05-25

本文共 417 字,大约阅读时间需要 1 分钟。

         我们知道, IP层会分片传输, 这是受到了数据链路层MTU的限制, 那么, 分片后, 多个分片在哪里进行重组呢?

        在实际传输中, 不同的分片可能经过不同的路径达到最终的目的地, 所以,中间设备很可能值看到某个分片而已, 根本不可能由中间设备(比如路由器)来承担重组的操作。 这是根本的原因。 另外, 如果让中间设备进行重组, 也会加重中间设置的负担。

        所以, IP层的多个分片, 在最终的目的地才会重组。

        

        多说一点, 如果某个分片被弄丢了, 那么在最终目的地是没办法正确重组的。 整个IP包就是一个垃圾IP包, IP层也不会有重传机制。 如果上层是TCP,  那么TCP会负责重传。可以看到, 分片会带来一些问题, 所以TCP尽量避免分片, 而采用提前分段的方式。

        另外, 多个分片的达到顺序是无法保证的, 在实际的实现中, 发送方经常会故意捣乱这些分片(会有一些好处), 在最终的接收端, 是有足够能力重组这些分片的, 所以不用担心。

 

 

转载地址:http://tjwti.baihongyu.com/

你可能感兴趣的文章
对话周鸿袆:从程序员创业谈起
查看>>
Mysql中下划线问题
查看>>
Xcode 11 报错,提示libstdc++.6 缺失,解决方案
查看>>
idea的安装以及简单使用
查看>>
Windows mysql 安装
查看>>
python循环语句与C语言的区别
查看>>
vue 项目中图片选择路径位置static 或 assets区别
查看>>
vue项目打包后无法运行报错空白页面
查看>>
Vue 解决部署到服务器后或者build之后Element UI图标不显示问题(404错误)
查看>>
element-ui全局自定义主题
查看>>
facebook库runtime.js
查看>>
vue2.* 中 使用socket.io
查看>>
openlayers安装引用
查看>>
js报错显示subString/subStr is not a function
查看>>
高德地图js API实现鼠标悬浮于点标记时弹出信息窗体显示详情,点击点标记放大地图操作
查看>>
初始化VUE项目报错
查看>>
vue项目使用安装sass
查看>>
HTTP和HttpServletRequest 要点
查看>>
在osg场景中使用GLSL语言——一个例子
查看>>
laravel 修改api返回默认的异常处理
查看>>