众所周知,UDP 不支持重传以及其他一些事情。
我们也知道像 MTU 这样的东西,它基本上以以下方式工作——当源点和目标点之间路径上的一个网络设备不支持某种大小的数据包时,它就会丢弃它。
在 TCP 的情况下,这不是问题——它在握手后已经知道 MSS 总是小于 MTU(我对吗?),因此不可能发送大小大于 MTU 的数据包。
但是,我想知道在 UDP 的情况下它是如何工作的?正如我已经说过的,这个协议中没有重传,也没有像 MSS 这样的东西。那么当数据包由于超过 MTU 而被丢弃时会发生什么?
或者它只是因为 MTU 的性质而起作用(它实际上属于 IP 层,而不是像 UDP 或 TCP 这样的传输层协议)?那么IP层以更小的单位重建丢弃的数据包并再次发送它?