2011-08-23 233 views
-1

我知道有幾個類似的問題,如this之一。我需要在兩臺計算機之間建立連接並能夠發送大文件。讓我解釋我在閱讀類似帖子時遇到的問題:p2p文件傳輸通過互聯網

1)很多人談論了tcp連接。我能夠發送數據,但大部分時間我無法發送大量數據。 2)大多數在本地網絡中創建的例子。我可以通過tcp示例通過Internet在兩個不同的網絡上發送數據,但是我必須在路由器上打開端口並將它們轉發到我想要與之通信的計算機。 3)圖書館,如monotorrent或bitsharp很難找到,我沒有找到好的例子。我無法讓他們工作的地方。

簡而言之,我只需要通過互聯網將文件從一臺計算機發送到另一臺計算機,我不想在路由器上打開端口,也不需要進行任何類型的端口轉發。人們在使用limewire時不必在路由器上打開端口,而是從別人的電腦上下載文件。如果有人能夠提供一個關於如何設置服務器以及如何使用客戶端代碼將文件發送到服務器的簡短示例,那將會很好。

回答

2

您提到的端口開啓和轉發問題是一個非常真實的問題,並沒有簡單的解決方法。諸如uTorrent的應用程序使用UPnP port mapping和/或NAT-PMP自動與您的路由器進行通信,並讓它在「運行中」執行相關的端口映射。並非所有路由器都實施這些協議(並且在很多情況下,用戶可能出於安全原因不允許使用它們),因此網絡上充斥着關於如何爲limewire,uTorrent等端口轉發的問題。

除了讀取對此,我建議您詳細說明您的問題,例如:

我能夠發送數據,但大部分時間我無法發送大量數據。

這對我們猜測問題是什麼太模糊了。您發送的文件大小,連接方式,是否出錯,或者速度慢等等?

0

賓費正是你想要做的,只是它是封閉的來源和商業。我不認爲這樣做是微不足道的,因此你可能不會找到任何例子來做到這一點。很久以前,我涉足JXTA,它承諾很多但交付得太少。