在FTP,HTTP,SSH等網絡環境中,給出一致的寬帶互聯網連接通過網絡傳輸文件的最快方式是什麼?通過網絡傳輸文件
通過網絡傳輸文件
回答
其中3,其HTTP。 「傳輸文件」的有效行爲具有相同的速度,但是:FTP需要太多「對話」來穩定會話,並創建並行連接來傳輸數據,所有這些「說話」需要多一點時間開始傳輸文件。出於同樣的原因,由於FTP打開隨機端口,您可能在防火牆和路由器方面遇到問題,如果FTP客戶端不支持「被動模式」,那就特別重要。
HTTP更客觀,你連接,告訴你想要什麼,並將其作爲答案。沒有等等等等等等。
SSH不是傳輸協議。 SSH代表「Secure Shell」。 如果你的意思是SSL,它也不是一個傳輸協議,它是一個安全層,通常用於封裝HTTP會話。
但也許它不是一個更快的問題,真正的問題是:你想要做什麼?根據您的問題,這些可能都不是一種選擇。
您是否可以控制端點和任何中間防火牆?與其他選項相比,FTP的防火牆友好性更低。基於SSH的工具(sftp,scp)相當不錯,但是有些ISP已知可以抑制或干擾加密流量(Comcast,我在看你!)你是否考慮過rsync?在我的工作中,這是我們用於通過長途互聯網連接傳輸大量數據集的工具。
如果可以,請使用Socket.SendFile()。這是從A點到B點獲取文件的最簡單方法。在不知道要完成的具體內容的情況下,很難提供更好的建議。 FTP可能是我會使用,否則System.Net有一個相當不錯的FtpClient對象,您可以使用和示例文檔相當好。 HTTP和FTP都使用TCP,因此您可能不會看到它們之間的顯着速度差異,並且HTTP通常會有其他潛在行爲的標頭(嘗試使用Expect-100繼續上傳文件並且無需證書到需要AUTH的服務器並查看您的連接會發生什麼)。使用Socket.SendFile(),因爲套接字根據定義與協議無關,您可以通過UDP或TCP使用相同的代碼發送文件,但我只建議如果您通過局域網發送數據包丟失幾乎爲0 。通過互聯網的UDP不是一個好主意。
- 1. 通過網絡傳輸java.lang.reflect.Proxy
- 2. 通過網絡傳輸int
- 3. 通過網絡2.0上傳SkyDrive文件
- 4. 通過網絡傳輸GetBitmapBits(),安全嗎?
- 5. 通過網絡流式傳輸圖像
- 6. 通過網絡傳輸目錄結構
- 7. 通過網絡傳輸手寫信息
- 8. 通過網絡傳輸UUID和字節
- 9. 如何通過網絡傳輸大文件/目錄使用AsyncSocket
- 10. 在同一網絡上通過CLI傳輸文件
- 11. 通過網絡傳輸60GB +文件有哪些選擇?
- 12. 在Qt中通過網絡傳輸exe文件
- 13. 通過隨機訪問通過網絡流式傳輸文件 - java
- 14. p2p文件傳輸通過互聯網
- 15. 如何通過網絡傳輸大文件(文件大小>堆大小)?
- 16. Java網絡文件傳輸問題
- 17. 點對點網絡文件傳輸
- 18. 通過Putty傳輸文件
- 19. 通過ICMP傳輸文件
- 20. 通過ODATA傳輸文件
- 21. 通過ssh傳輸文件
- 22. 通過WCF文件傳輸
- 23. 通過SFTP傳輸文件
- 24. 通過SFTP傳輸文件
- 25. 通過qpid傳輸文件
- 26. 通過HTTP傳輸文件
- 27. 通過telnet傳輸文件?
- 28. 使用公共接入點通過兩個不同的網絡傳輸文件
- 29. 如何通過網絡傳輸文件使用服務組合藍圖功能
- 30. 如何通過網絡寫入文件