TCP 负责重传、顺序和流量控制,但不保留应用消息边界。本文整理两个容易忽略的环节,作为日常使用时的检查参考。

TCP 提供有序可靠的字节流

TCP 负责重传、顺序和流量控制,但不保留应用消息边界。应用仍需要定义协议格式。连接建立与拥塞控制会影响实际体验,单看 ping 延迟不足以预测下载速度。

UDP 把更多责任交给上层

UDP 保留数据报边界,没有内建可靠传输保证。QUIC 等协议在 UDP 上实现自己的可靠性与拥塞控制,所以 UDP 并不等于不可靠应用,也不意味着天然更快。

日常使用的小结

测试防火墙和网络时要分别考虑 TCP 与 UDP。TCP 端口握手成功,不能证明同端口的 UDP 服务也可用。