我正在构建一个定制的第一层(使用射频无线电)。我正在建立一个tap/tun解决方案,在Linux上运行在无线电链接的两边,这样我就可以通过我的链接获得互联网。由于无线链路的性质(数据包长度等),我的MTU相当小(有时500或更少)。但它也随着时间和信号条件的变化而变化。如果一个接口有一个不断变化的MTU,程序会抱怨吗?这做法不好吗?
如果是这样的话,我应该在内部处理这个问题吗?例如,如果Linux认为MTU是1000个字节,但我的链接只支持500个字节,那么我是否应该自己将2个包粘合在一起,以确保MTU不经常更改?谢谢
发布于 2017-03-15 16:29:27
IP不能很好地处理不同的MTU。通常,每次MTU减少,就会有另一轮路径MTU发现,当MTU再次增加时,发送主机将无法发现这一事实。
此外,如果要支持IPv6,则需要至少1280字节的MTU。理论上说,IPv4应该支持的MTU减少到68个字节,但是使用这样小的MTU操作将是非常低效率的,并且不太可能得到很好的测试。
因此,是的,如果基础链接有一个短且可变的最大数据包大小,您应该在IP层下面执行自己的分段和重新组装。一旦你这样做,你也可以使IP 1500字节。
https://networkengineering.stackexchange.com/questions/20141
复制相似问题