Linux

連接建立緩慢,而下載速度很好 -Linux

  • October 22, 2011

編輯:我在 ADSL 連接的其他地方看到了這個問題,而不僅僅是 USB 調製解調器或蜂窩網路。

我已經連接並配置了我的蜂窩網路 USB 調製解調器,在 Ubuntu 10.04 下執行 連接通常很慢,雖然建立連接後數據流良好,但問題是實際建立連接所需的時間太長。IP 查找速度非常快,因此根本不可能是問題所在。我試過 ssh、skype 和 FTP。這些都沒有問題。

問題主要出現在 HTTP 連接中,尤其是從多個來源收集的許多資源的站點,最終這些資源中的一兩個資源(圖像、CSS 或 JS 文件)無法載入,瀏覽器不斷報告“正在等待例如.com …" 對於 munites,凍結並繼續等待這個單一資源被載入。我想這可能是一個線索。我嘗試了 Firefox 以外的瀏覽器:Chrome 和 Opera,問題也存在!

幕後可能會發生什麼?歡迎提出任何問題。

如果 HTTP 以外的其他服務對您執行良好,則可能您的 Internet 提供商正在使用過載的反向代理來記憶體內容並節省頻寬。您可以嘗試連接到在非標准上執行的遠端 HTTP 伺服器(但 ISP 可以使用第 7 層 fw 來攔截您的請求)或在某處設置 openvpn 伺服器並將所有流量通過它隧道傳輸。

蜂窩網路可能具有很高的延遲,因此您的數據包往返時間可能高達一秒。只需通過向具有已知恆定延遲的某些 Internet 主機發出 ping 來檢查,例如:

# ping www.gogle.de
PING www.l.google.com (74.125.79.99) 56(84) bytes of data.
64 bytes from ey-in-f99.1e100.net (74.125.79.99): icmp_seq=1 ttl=53 time=12.7 ms
64 bytes from ey-in-f99.1e100.net (74.125.79.99): icmp_seq=2 ttl=53 time=16.1 ms
64 bytes from ey-in-f99.1e100.net (74.125.79.99): icmp_seq=3 ttl=53 time=17.2 ms
^C
--- www.l.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 12.794/15.377/17.218/1.886 ms

TCP 能夠適應高延遲網路,因為它的內部緩沖和無需立即接收響應即可發送大量數據的能力,因此您很可能會看到通過連接進行批量傳輸的良好吞吐率。但是,高延遲當然會極大地影響 TCP 握手(即連接啟動)和每個“乒乓式”協議的性能,其中一方在進行任何進一步處理之前等待另一方的響應(例如具有許多小要獲取的對象,如果它們相互依賴就更糟了,就像框架和 iframe 以及包含的 javascript 文件一樣)。

編輯:您應該使用Firebug之類的東西來更詳細地查看正在發生的事情。或者甚至執行Wireshark跟踪以獲取協議級資訊。如果您獲得指向 ISP 問題的數據,您可能需要向他們投訴。除此之外,使用較小的 MTU可能值得一試——某些傳輸可能會受到MTU 黑洞的影響。

引用自:https://serverfault.com/questions/275357