【发布时间】:2017-09-24 16:28:13
【问题描述】:
我发现 webrtc 中媒体流的视频质量通过 UDP 连接明显更好。数据通道也是基于 UDP 的(对吗?)
假设两个对等点(都在 NAT 之后)通过 webrtc 技术相互连接,并且它们的 IP 地址向公众公开, webrtc 服务会不会容易受到网络攻击,尤其是 UDP 泛洪攻击?
【问题讨论】:
我发现 webrtc 中媒体流的视频质量通过 UDP 连接明显更好。数据通道也是基于 UDP 的(对吗?)
假设两个对等点(都在 NAT 之后)通过 webrtc 技术相互连接,并且它们的 IP 地址向公众公开, webrtc 服务会不会容易受到网络攻击,尤其是 UDP 泛洪攻击?
【问题讨论】:
像视频聊天这样的实时交互更喜欢 UDP 连接而不是 TCP 连接,因为通过 UDP 丢弃的数据包不会导致等待重新传输。音频或视频将被破坏,如有必要,接收方可以要求重复某些内容。这比在等待重传数据包时中断交互更可取。 WebRTC 更喜欢 UDP 连接,但也可以回退到 TCP 连接。对于数据通道也是如此。
我不熟悉 UDP 泛洪攻击的细节,但会尝试描述相关的 NAT 行为。当两个对等点从 NAT 后面进行交互时,NAT 上的每个连接只打开一个端口来接收传递给客户端的数据包。 NAT 的外部 IP 地址是公共的,但您不能发送到此 IP 上的随机端口并将数据包传送到客户端。此外,还有不同类型的 NAT 行为;将数据包发送到 NAT IP 的端口可能不足以将数据包发送到客户端,它们可能还需要来自已经与客户端交互的地址或端口。 See NAT types。攻击也可能试图压倒 NAT 单元本身。
【讨论】: