Google proponuje zmiany w TCP mające przyspieszyć internet

Inżynierowie firmy Google proponują modyfikację klasycznej warstwy transportowej TCP i techniczne rozwiązania, które mogą istotnie zmniejszyć opóźnienia przy przesyłaniu pakietów oraz zwiększyć wydajność internetu.

Google proponuje zmiany w TCP mające przyspieszyć internet
Grupa inżynierów Google należąca do zespołu o nazwie "Make the Web Faster" opracowała zestaw rekomendacji dotyczących modyfikacji protokołu TCP. Jak napisał w swoim blogu jeden z członków tego zespołu Yuchung Cheng, "TCP jest wciąż siłą napędowa internetu - protokół został opracowany tak, aby umożliwiać dostarczanie treści webowych niezależnie od rodzaju wykorzystywanej przez użytkowników sieci". Ale obecnie warto pomyśleć o jego modyfikacjach, które mogą istotnie zwiększyć wydajność globalnej sieci bez przebudowy jej infrastruktury. Rekomendacje są oparte na wnioskach z praktycznych badań i testów różnych, możliwych do wprowadzenia rozwiązań.

Polecamy: WAN do optymalizacji

Zobacz również:

  • Przeglądarka Chrome będzie jeszcze jakiś czas akceptować pliki cookie
  • Użytkownicy Androida mogą się wkrótce zdziwić

Na przykład, przeglądarki internetowe z reguły nawiązują wiele równoległych połączeń TCP jeszcze przed przesłaniem żądań dostarczenia informacji. "Taka strategia pozwala na przezwyciężenie wewnętrznych ograniczeń protokołu TCP, ale z drugiej strony w wielu wypadkach powoduje znaczne zwiększenie opóźnień transmisji i nie jest skalowalna" pisze Yuchung Cheng. Jak wynika z badań przeprowadzonych przez zespół Google, kluczem do zmniejszenia opóźnień jest zmniejszenie liczby kolejnych zapytań niezbędnych do uzyskania dostępu do treści. "W praktyce badaliśmy efektywność kilkunastu różnych rozwiązań związanych z modyfikacją protokołu TCP" zapewnia Yuchung Cheng i dopiero w efekcie tych prac powstał dokument z prezentowanym zestawem rekomendacji.

Propozycje zawierają zwiększenie początkowego okna TCP. "Obecnie, podczas inicjacji połączenia TCP przesyłane są tylko 3 pakiety danych, co oznacza, że aby uzyskać dostęp do treści o niewielkiej pojemności wynoszącej tylko 15 KB, wymianę danych trzeba powtórzyć trzykrotnie. Jak wynika z naszych eksperymentów, zwiększenie początkowego okna do 10 pakietów (IW10) zmniejsza opoźnienia transmisji o ponad 10%" mówi Yuchung Cheng.

Polecamy: OpenStack: siła w modułowości i skalowalności

Inny pomysł to redukcja początkowego czasu oczekiwania na odpowiedź (initial timeout) ze standardowych 3 sekund do jednej sekundy. 3-sekundowy czas RTT (Round-Trip Time) miał uzasadnienie kilkanaście lat temu, ale obecnie połączenia internetowe mają znacznie mniejsze wymagania do prawidłowego działania.

"Zaprezentowane przez inżynierów z Google pomysły wydają się dobrze sprawdzonymi rekomendacjami i jeśli tylko zostaną zastosowane masowo, to mogą istotnie zwiększyć wydajność sieci i zmniejszyć opóźnienia" uważa Al. Hilwa, analityk z IDC.

Problemem jest konieczność ich powszechnego wdrożenia, bo tylko wówczas pojawią się widoczne efekty. Proponowane modyfikacje stosu TCP/IP są wstecznie zgodne, tzn. nie spowodują problemów z wymianą danych przez oprogramowanie wykorzystujące starą wersję protokołu, ale zwiększenie wydajności wymaga by obie strony połączenia obsługiwały nowy standard.

Polecamy: IPv6: internetowego końca świata w 2012 nie będzie

Google promuje też własny, otwarty protokół TCP Fast Open, który został opracowany pod kątem minimalizacji opóźnień transmisji danych w sieciach. Wykorzystuje on nowy algorytm odzyskiwania utraconych pakietów PRR (Proportional Rate Reduction). Algorytm PRR ma większą wydajność niż stosowane obecnie techniki umożliwiając m.in. dopasowanie szybkości transmisji do rejestrowanego poziomu liczby utraconych pakietów. Już obecnie został on wykorzystany w kernelu systemu Linux, a jednocześnie trwa proces jego włączania do standardu TCP przez organizację IETF.

Obecnie Google opracowuje kolejne nowe algorytmy, które mają zwiększyć wydajność transmisji w sieciach mobilnych, gdzie często występują szczególnie duże zakłócenia transmisji danych.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200