quic NAT

NAT 网关对 TCP 的映射是根据 source_ip:port 和 destination_ip:port 来做的,经过 NAT 网关的 TCP 流量都通过这个四元组做识别,监听 SYN 和 ACK 可以确定 TCP 链接是否建立是否断开;而 NAT 网关对 UDP 流量的处理却没有这么可靠,对于 UDP 流量,NAT 的端口映射可能在某次传输超时之后就被重新分配了,这本来对 UDP 的不可靠的流量也不那么严重,但 QUIC 基于这种实际情况下做,某个建立好要复用的链接,对 NAT 内部机器来说流量来源的端口是会发生变化的,从而四元组做链接标识的事情就 GG 了。

下面是 QUIC 基于 UDP 在经过 NAT 网关时候的示意图



 
 QUIC 使用一个通用的 QUIC Connection ID 来解决这个问题,绕过四元组。许多资料都有这里不展开了。
原文地址:https://www.cnblogs.com/dream397/p/14504338.html