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 来解决这个问题,绕过四元组。许多资料都有这里不展开了。

posted on 2021-03-09 10:54  tycoon3  阅读(319)  评论(0编辑  收藏  举报

导航