0

是否可以在不使用 webrtc 的情况下实现此场景?

  1. 客户端 A 连接到服务器
  2. 客户端 B 连接到服务器
  3. 服务器向 B 和 A 发送信息以及彼此的信息
  4. A 和 B 开始使用相同的连接直接交谈(例如,通过使用新的端口/IP 地址转换他们的套接字信息)

注意:客户端 A 和 B 没有任何套接字服务器。他们只是客户

非常感谢你。

4

1 回答 1

1

如果至少有一个客户端可以接受传入的 TCP连接,则绝对可以建立直接的 TCP 连接。在这种情况下,服务器只需告诉另一个客户端要连接的 IP 地址和端口,然后两个客户端就可以直接通过新的 TCP 连接进行通信。

另一方面,如果两个客户端都在防火墙或 NAT 之后,事情就会变得更加不确定——在某些情况下,您可以使用TCP 打孔技术来启动直接 TCP 连接;在其他情况下,您只是不走运。

在任何情况下(AFAIK)都不能修改现有的 TCP 连接以拥有新的端点;TCP 连接的端点是固定的,要获得新的端点,您必须建立一个新的 TCP 连接。

于 2013-09-16T14:12:28.177 回答