我一直在 www 上阅读,但无法获得 P2P 最重要的基础知识。
图是这样的:
[peer1]<-->[dsl-router1]<-->[central server]<-->[dsl-router2]<-->[peer2]
我正在中央服务器上开发一个聊天软件。聊天消息现在通过中央服务器传输得很好,但是,我需要制作 p2p 文件共享功能,因为服务器的带宽(电缆带宽,而不是传输限制)应该只用于传输聊天消息。
问题是,我在中央服务器上的软件知道 router1 和 router2 的 IP 和端口,但不知道 peer1 和 peer2,因为这些对等点位于路由器后面并且没有 IP 地址。
如何在不让这些数据通过中央服务器的情况下实际将一些数据从 peer1 传输到 peer2,反之亦然?
(最坏的情况是peer和dsl-router之间有无线路由器)