Używam 3G jako mojego głównego połączenia internetowego, a TCP przez to staje się coraz bardziej zagadkowy każdego dnia. Na przykład:
Pobieranie z kernel.org jest szalenie szybkie:
$wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.6.8.tar.bz2
zwiększa się do ~ 500kB / s po kilku sekundach!
Niektóre serwery są niesamowicie wolne, na przykład www.graphic-pc.com: To
samo, pobieranie dużego pliku za pomocą wget zaczyna się od ~ 30kB / s na ułamek sekundy, a następnie spada do 5-10k lub nawet gorzej.Przeglądanie stron internetowych jest przyzwoite, ale nieco zawodne. Losowo strona ładuje się naprawdę długo, a nawet nie ładuje się, ale przeładowanie może się powieść niemal natychmiast.
Teraz przez przypadek zacząłem grać w OpenVPN przez UDP na połączeniu 3G, a OMG nagle wszystko jest bardzo szybkie!
To samo www.graphic-pc.com strzela teraz z prędkością 100-200kB / s!
- Co tu się dzieje ???
- Dlaczego jest tak dużo lepiej z VPN niż bez?
- A dlaczego graphic-pc.com indeksuje się, gdy leci kernel.org?
Ma to coś wspólnego z moim stosem tcp (lub serwerem), lub jakimś błędnym routerem pomiędzy?
Uwagi:
Instalator to laptop z systemem Ubuntu Lucid i kluczem Huawei 3G (więc bezpośrednie połączenie pppd).
Mogę to odtworzyć w dowolnym momencie w ciągu dnia i nie ruszam się, więc najwyraźniej nie jest to środowisko komórkowe ani przeciążenie Internetu. (chociaż kernel.org bez VPN czasami robi się gorzej wieczorem, około 60kB - ale nadal 500kB z VPN!)
W przypadku 2) wireshark pokazuje retransmitowane pakiety, duplikacje, czasem nawet nieczynne.
Próbowałem grać z różnymi parametrami / proc / sys / net / ipv4 (tcp_rmem, window_scaling, tcp_congestion ...) nie wydaje się mieć znaczenia.
Aktualizacja:
Wypróbowano pod Windows 7 (bez VPN) z kilkoma interesującymi wynikami:
tcp settings : default tcp_optimizer
kernel.org : 10 kB/s 20 kB/s
graphic-pc.com: 8 kB/s 70 kB/s !
tcp_optimizer włączył między innymi ctcp. Muszę sprawdzić, co działa os graphic-pc.com, mój zakład to tcp_westwood Linuksa i ms ctcp nie mieszają się tutaj dobrze ...
Odpowiedzi:
Problem rozwiązany:
Przetestowano z innym typem pliku (.zip) na graphic-pc.com. Zgadnij, co jest jednocześnie szybkie dla tego pliku i wolne dla drugiego (którego btw to .mp3). Więc to wyraźnie, że ISP dokonuje głębokiej inspekcji pakietów i ogranicza przepustowość.
Jeśli chodzi o dziwne wyniki pod oknami, przetestowałem ponownie dzisiaj i teraz jest dokładnie taki sam jak Linux. Ponadto dławienie jest dynamiczne i zmienia się w ciągu dnia. Wydaje mi się, że miałem naprawdę pecha, zrestartowałem i uruchomiłem tcp_optimizer w momencie, gdy dławienie się zmieniło ...
Nadal ciekawi rzeczywistego wpływu na wydajność TCP 3G jak tam jest numer z papierami na ten temat, ale o ile to dotyczy to tylko ruch kształtowaniu bzdura, nic złego z 3G!
źródło
Po pierwsze, połączenia 3G / 4G nie są zaprojektowane jako podstawowe połączenia z Internetem i podlegają dławieniu, jeśli ruch przez nie przepływa zgodnie z określonym wzorcem lub przekraczasz niewymieniony limit ruchu. Nie wierz swojemu przewoźnikowi (nawet tym strojom reklamowym z nieograniczoną ilością danych), gdy mówią, że nie masz żadnych ograniczeń.
W końcu jest to czas antenowy, a przepustowość powietrza jest mniejsza niż światłowodu i miedzi. Kiedy będą tłoczne, nie będą mieli innej opcji, jak ograniczyć ruch z węzłów końcowych.
Wspomniana witryna z grafiką komputerową jest bardzo flashową (lub podobną) stroną ciężką i zajmuje około 60 sekund na moim internetowym komputerze z podłączonym OC-3. Zatem niski wskaźnik pomiaru dostępu do tej strony przez standard 3G nie jest dużą niespodzianką. Kernel.org jest szybszy. Biorąc pod uwagę tekstowy charakter tej witryny, jestem pewien, że ruch może być kompresowany i nieskompresowany w locie za pomocą połączenia 3G z bardzo dobrymi wskaźnikami sukcesu, gdzie nie jest to możliwe w przypadku witryn o dużej ilości obrazów / flash / muzyki / itp.
I na koniec, bardziej chcesz wcisnąć się w swoją fajkę, tj. Połączenie 3G, mniej przychylnym klientem, dla ciebie ISP i dławią cię bez względu na wszystko. A jeśli przeczytasz swoje Warunki, zobaczysz, że mają do tego prawo, przy rozsądnym wykorzystaniu (co nie jest połączeniem 24/7 non-stop)
Przechodząc przez połączenie VPN, szyfrujesz cały ruch sieciowy. Twój dostawca usług internetowych nie może już sprawdzać pakietów, dlatego nie może odróżnić żądania strony tekstowej od żądania strony flashowej. Tak więc do pewnego stopnia udało ci się obejść ich głęboką kontrolę pakietów. Ale posiadanie VPN ma swoją własną prędkość, ponieważ będziesz musiał zaszyfrować każdy pakiet wychodzący z twojego połączenia, co kosztuje. Ale w twoim przypadku koszt ten wydaje się minimalny lub znikomy.
Mam nadzieję, że to trochę to wyjaśnia
źródło