2011-08-23 183 views
-1

我知道有几个类似的问题,如this之一。我需要在两台计算机之间建立连接并能够发送大文件。让我解释我在阅读类似帖子时遇到的问题:p2p文件传输通过互联网

1)很多人谈论了tcp连接。我能够发送数据,但大部分时间我无法发送大量数据。 2)大多数在本地网络中创建的例子。我可以通过tcp示例通过Internet在两个不同的网络上发送数据,但是我必须在路由器上打开端口并将它们转发到我想要与之通信的计算机。 3)图书馆,如monotorrent或bitsharp很难找到,我没有找到好的例子。我无法让他们工作的地方。

简而言之,我只需要通过互联网将文件从一台计算机发送到另一台计算机,我不想在路由器上打开端口,也不需要进行任何类型的端口转发。人们在使用limewire时不必在路由器上打开端口,而是从别人的电脑上下载文件。如果有人能够提供一个关于如何设置服务器以及如何使用客户端代码将文件发送到服务器的简短示例,那将会很好。

回答

2

您提到的端口开启和转发问题是一个非常真实的问题,并没有简单的解决方法。诸如uTorrent的应用程序使用UPnP port mapping和/或NAT-PMP自动与您的路由器进行通信,并让它在“运行中”执行相关的端口映射。并非所有路由器都实施这些协议(并且在很多情况下,用户可能出于安全原因不允许使用它们),因此网络上充斥着关于如何为limewire,uTorrent等端口转发的问题。

除了读取对此,我建议您详细说明您的问题,例如:

我能够发送数据,但大部分时间我无法发送大量数据。

这对我们猜测问题是什么太模糊了。您发送的文件大小,连接方式,是否出错,或者速度慢等等?

0

宾费正是你想要做的,只是它是封闭的来源和商业。我不认为这样做是微不足道的,因此你可能不会找到任何例子来做到这一点。很久以前,我涉足JXTA,它承诺很多但交付得太少。