我一直在阅读www,但不能得到P2P的最重要的基础知识。P2P的最重要的基础知识
图是这样的:
[peer1]<-->[dsl-router1]<-->[central server]<-->[dsl-router2]<-->[peer2]
我正在开发的中央服务器上一个聊天软件。聊天消息到目前为止通过中央服务器传输,但是,我需要制作P2P文件共享功能,因为服务器的带宽(有线带宽,而不是传输限制)只能用于传输聊天消息。
问题是,我的中央服务器上的软件知道router1和router2的IP和端口,但不是peer1和peer2,因为这些对等设备在路由器后面,并且没有IP地址。
如何实际上将一些数据从peer1转移到peer2,反之亦然,而不通过中央服务器传递数据?
(和最坏的情况是,有对等体和DSL路由器之间的无线路由器)
我*假设*该路由器的用户侧网络网关,对不对?或者他们是某种形式的匿名构造? –
是的,这些路由器是由ISP提供的DSL路由器 – jondinham
您可以使用UPnP或类似的客户端来打开从WAN到LAN的端口。它在以前为我传输UDP数据。但这是一个非标准领域。 – ActiveTrayPrntrTagDataStrDrvr