TCP/UDP 分片问题

区别:

应用层调用TCP发送一个数据包,如果大小超过MTU,在TCP层会分片(其中会应用到PMTU Probe),然后调用函数ip_queue_xmit

来直接组装成IP包,发送出去;

如果是UDP,则直接调用ip_append_data,该函数把用户输入的一整个数据包分片,在接收方则IP组片成原来的UDP数据包。

 

直接的效果是:

TCP数据包是流式的,用户无法在应用层对数据包定界

而UDP包如果不超过IP包的最大(65535),则到达接收方时还是原来的数据包。

你可能感兴趣的:(TCP/UDP 分片问题)