p2p客户端如何直接交换文件?

时间:2014-06-11 18:48:57

标签: sockets tcp network-programming p2p

因不知道正确的术语而提前道歉。

我想知道p2p(例如BitTorrent)客户端是如何直接交换文件的。

我的电脑在路由器后面。它没有公共IP,因此没有人能够从本地网络外部连接到它。

我目前的理解是,应该有一台具有公共可访问IP的计算机来为同行提供服务。但是,对等协议的重点是允许两个对等体之间的直接通信。

这是怎么做到的?

谢谢!

1 个答案:

答案 0 :(得分:1)

您的路由器拥有自己的公共IP,在与外界交谈时使用。如果没有,那么您的问题就没有意义,因为您只能与私人网络中的其他计算机传输数据,您将无法连接互联网等。

您要找的是NAT traversal。它允许通过路由器和其他NAT(网络地址转换)设备进行点对点连接。