我知道像 Skype 这样的 p2p 软件正在为此使用 UDP 打孔。但是,如果其中一个客户端是需要从另一个客户端(TCP 连接而不是 UDP)下载文件的 Web 浏览器怎么办?这种情况有什么技术吗?
我可以拥有一个可以与客户端结婚的中间公共服务器,但我无法承受这些客户端之间的所有流量都通过该服务器。公共服务器只能建立客户端之间的连接,就像 Skype 一样,仅此而已。这必须通过 TCP(更准确地说,HTTP)来让下载客户端成为 Web 浏览器。
不得要求两个客户端在其路由器中设置任何东西或类似的东西。
我打算用 C/C++ 编写这个代码,但我想知道这个想法是否可行。