Oferty dostępu do sieci różnią się ceną głównie ze względu na przepustowość. Jednak aby szybciej ściągać ulubione witryny, empetrójki czy filmy, niekoniecznie musimy więcej płacić. Czasem wystarczy tylko kilka usprawnień.
Producenci akceleratorów internetowych, czyli programów podnoszących przepustowość łącza, zapewniają, że ich software potrafi zwiększyć prędkości pobierania nawet o 600%. Niestety, najczęściej są to tylko chwyty reklamowe. Mimo bowiem szczerych chęci i ciężkiej pracy programistów, każde łącze ma fizyczne ograniczenie prędkości transferu danych. Innego typu ograniczenia nakładają administratorzy sieci, którzy w ten sposób kontrolują, byśmy nie otrzymali zbyt wiele bez odpowiedniej opłaty.
Ograniczeń fizycznych przeskoczyć nie sposób, a omijanie tych określanych przez umowę jest trudne od strony technicznej, a poza tym nieetyczne. Jednak umiejętne połączenie kilku technik oraz odpowiedniego oprogramowania pozwala na dostrzegalną, sięgającą nawet 30%, poprawę wydajności łącza bez łamania praw fizyki i naruszania warunków umowy podpisanej z operatorem.
Sposoby zwiększenia szybkości łącza bazują na trzech odmiennych aspektach komputerowej rzeczywistości. Pierwszy obejmuje dostrojenie sytemu Windows, żeby jak najefektywniej wykorzystywać dostępne pasmo i czas dostępu do sieci. Drugi pozwala na szybsze ładowanie stron WWW. Trzeci to wyspecjalizowana grupa programów, zwanych menedżerami downloadu, które upraszczają i przyspieszają ładowanie dużych porcji danych.
Zacznijmy od systemu
Przesyłanie informacji w internecie odbywa się w pakietach. Ale przecież internet to tylko struktura logiczna. W rzeczywistości dane wędrują po najróżniejszych sieciach, w których często obowiązują odmienne standardy. Jednym z nich jest szerokość ramki danych. Określa ona jak duży pakiet informacji dana sieć potrafi przesłać od maszyny do maszyny za jednym razem.
Dla przykładu, w sieci Ethernet maksymalna szerokość ramki wynosi 1518 bajtów, w standardzie Token Ring osiąga 4500 bajtów, a w połączeniach wdzwanianych teoretycznie może mieć nawet 64 kB, jednak w praktyce jest każdorazowo negocjowana i najczęściej osiąga wartości nie przewyższające 600 bajtów.
Jeśli ściągamy lub wysyłamy dane z sieci lokalnej, to najczęściej dane pakuje się w segmenty o optymalnej wielkości. Co jednak, jeśli połączenie idzie przez ruter i trafia do sieci, w której obowiązują znacznie mniejsze ramki fizyczne? TCP/IP musi sobie oczywiście radzić w takich sytuacjach, a radzi sobie tak, że zaczyna żmudne dzielenie każdego pakietu na mniejsze, „strawne\” przez daną sieć kawałki.
Wiąże się to z dodatkowym nakładem czasu i potrafi zmniejszyć wydajność każdego łącza. Można to jednak zoptymalizować, odpowiednio zmieniając parametr MTU.
MTU vs MSS
Parametr MTU (Maximum Transmission Unit) opisuje największy możliwy fragment danych, który dana sieć jest w stanie przesłać bez defragmentacji. W Windows wartość ta jest ustawiana domyślnie na 1500 bajtów. Nie zawsze jest to liczba optymalna. Aby sprawdzić rzeczywiste ustawienie MTU, wystarczy przesłać poleceniem ping odpowiednio długi łańcuch danych na jakikolwiek adres, który leży poza naszym ruterem, na przykład http://www.wp.pl.
Można to uczynić na własną rękę. W tym celu otwieramy okno linii poleceń, wybierając z menu Start polecenie Uruchom. Wpisujemy tam komendę cmd, jeśli pracujemy na Windows 2000, XP, 2003, albo command, jeśli używamy Windows 95, 98 lub Me.
Otworzy się okno poleceń. Wprowadzamy komendę: ping -f -l 1500 www.wp.pl. Opcja -l mówi, żeby wysłać 1500 bajtów danych pod wskazany adres, a -f zabrania ich fragmentacji.
System najprawdopodobniej odpowie: Pakiet musi być podzielony na fragmenty, ale ustawiono opcję DF. Oznacza to, że segment danych jest zbyt duży na zastane warunki, więc następnym razem zamiast 1500 spróbujmy przesłać 1490 bajtów w jednym kawałku. Postępując podobnie dotrzemy w końcu do miejsca, w którym system zwróci normalną odpowiedź dla komendy ping, czyli średnie czasy reakcji odległej witryny.
Teraz można zwiększać rozmiar bufora o jeden bajt, aż precyzyjnie ustalimy dokładny rozmiar największego pakietu, który przejdzie niepodzielony przez ruter. Nie jest to MTU, lecz MSS, czyli Maximum Segment Size. Opisuje on w bajtach największą dopuszczalną ilość danych, która może opuścić lokalną sieć w jednym kawałku. Aby wyliczyć MTU, należy do tego dodać jeszcze szerokość nagłówka, która nie przekracza 40 bajtów.
Gardło w sam raz
Po znalezieniu odpowiedniego MTU, możemy go ustawić w systemie. Wartość jest przechowywana dla każdego z połączeń w rejestrze Windows.
Odszukanie jest pracochłonne, dlatego prościej użyć w tym celu wyspecjalizowanego programu, takiego jak na przykład Cmtutool albo EasyMTU 3.0. Ten ostatni oprócz zmiany ustawień umie też wybrać optymalne MTU dla naszego systemu. Tu jednak trzeba uważać, bo niekiedy wynik testów nie są prawidłowe.
Oprócz MTU i sprzężonego z nim MSS bardzo ważnym parametrem wydajnego połączenia z internetem jest RWIN. Określa on jak wiele bajtów danych nasz komputer może odebrać bez potwierdzenia. Im ta wartość jest większa, tym więcej informacji można wysłać do naszej maszyny, nie oczekując na odpowiedź. Zwiększa to szybkość transmisji.
Z drugiej strony, jeśli pecet rzadko potwierdza odbiór, to od strony sieci jest widziany jako wyjątkowo powolna jednostka. To z kolei może być przyczyną zakłócenia pracy niektórych gier sieciowych, albo programów P2P. Z tego powodu do regulacji RWIN najlepiej użyć specjalistów. Jednym z nich jest Accelerate 2k3.
Inny program usprawniający połączenie z siecią poprzez dostrajanie sytemu Windows to Internet Cyclone. Po zainstalowaniu i uruchomieniu od razu przechodzimy do trybu eksperckiego. Oferuje on znacznie więcej opcji niż Accelerate 2k3, wszystkie jednak bazują na ustawieniach dostępnych przez rejestr systemu.
Zmierzch akceleratorów?
Drugi zasadniczy rodzaj zmian, które mogą przyspieszyć serfowanie, polega na usprawnieniu załadunku stron WWW. Od czasu popularnych akceleratorów, takich jak NetSonic, czy NetAccelerator, które wiodły prym w epoce modemów, wiele się zmieniło. Sprawił to głównie wzrost przeciętnej szybkości pobierania, który zwiększył się co najmniej dziesięciokrotnie.
Do zmierzchu typowych akceleratorów przyczynił się też rozwój samych przeglądarek. Nawet jeśli strona jest bardzo rozbudowana, nowoczesny browser, taki jak Firefox 1.5 czy Opera 8.54, zawiera mechanizmy umożliwiające bardzo sprawne zarządzanie kolejnością pobieranych elementów.
Nowoczesne przeglądarki wzięły też na siebie inteligentne zarządzanie pamięcią podręczną. Ciągle jednak istnieją elementy, które można ustawić lepiej. Jednym z nich jest zarządzanie historią DNS.
Szybki jak DNSkawica
Zanim przeglądarka sięgnie do jakiejś witryny, musi otrzymać jej identyfikator w postaci cyfrowej. Na przykład zamiast www.wp.pl musi to być 212.77.100.101. Tlumaczeniem nazw domen na cyferki zajmuje się wyspecjalizowany protokół DNS (Domain Name System).
Nim browser wyświetli żądaną stronę, najpierw odpytuje najbliższy serwer DNS, czy ten wie, jaki jest jej adres sieciowy. Jeśli zapytany zna odpowiedź, udziela jej, jeśli nie, przesyła pytanie do innego, nadrzędnego serwera DNS. W efekcie, jeśli wpiszemy nieznaną nazwę, „nasza sprawa\” trafia do centralnego serwera, który zarządza domenami narodowymi najwyższego poziomu (np. .pl, .com, .info itd.).
Z tego powodu mechanizm DNS opóźnia ładowanie witryn. Czasem nawet o kilka sekund. Aby temu zaradzić, powstały programy zapamiętujące adresy odwiedzanych miejsc. Jeden z nich to dość popularny IPExpress. Po uruchomieniu możemy przyspieszyć dostęp do witryn, dodając je do listy „znanych\” hostów.
Innym programem z tej serii jest ExtraDNS, który, w odróżnieniu od swego krewniaka, przejmuje wszystkie odwołania do usługi DNS, po czym automatycznie je uaktualnia i tworzy coś na kształt historii odwiedzin DNS. Całość działa podobnie do cache\’u WWW i sprawia, że czas potrzebny na skorzystanie z usługi DNS zostaje całkowicie wyeliminowany.
Program IPExpress oprócz obsługi DNS potrafi też przeciwdziałać reklamom. Mechanizm opiera się na spostrzeżeniu, że treść banerów i nadmiarowych okien często przechowuje się na wydzielonych serwerach. Znając ich lokalizację, możemy przyspieszyć ładowanie stron przez blokadę dostępu do nich.
Zarządzanie transferami
Ostatnia klasa usprawnień obejmuje szybsze pobieranie plików (zwłaszcza dużych). Nazywają się one menedżerami downloadu, a innowacja polega na stosowaniu wielowątkowości.
Pomysł opiera się na spostrzeżeniu, że serwery mają zazwyczaj ograniczenie maksymalnej szybkości wysyłania danych do jednego klienta, ale pozwalają na więcej niż jedno połączenie z jednego adresu IP. Typowy menedżer downloadu skwapliwie z tego korzysta i ściągając duży plik rozbija go na kilka sesji (wątków), z których każda(y) pobiera inny jego fragment.
W ten sposób, jeśli mamy łącze z downloadem, powiedzmy, 1 Mb/s, a serwer ma maksymalny (własny) upload 100 kb/s, menedżer utworzy 10 oddzielnych połączeń, dzięki czemu ściągnie plik wykorzystując pełne pasmo.
Menedżery downloadu potrafią też automatycznie przetrząsać skojarzone z witryną mirrory, a nawet szukać kopii ściąganego pliku na zupełnie obcych stronach. A wszystko po to, żeby jednocześnie „zaczepić\” go w większej ilości miejsc i szybciej pobrać. Szybszemu ściąganiu służą też harmonogramy pobrań, w których można tak dobrać godziny ładowania, aby wypadały w czasie najmniejszego obciążenia sieci.
Inne udogodnienie, które napotkamy w typowym menedżerze downloadu, to integracja z przeglądarką. Działa to w ten sposób, że kliknięcie linku prowadzącego do plików określonego rodzaju, takich jak EXE, ZIP czy MPEG, zamiast typowego dla danej aplikacji okna, wywołuje menedżera, który przejmuje kontrolę nad transferem. Tak samo dzieje się, gdy adres odnośnika skopiujemy do schowka.
Jednym z ciekawszych udogodnień jest możliwość pobrań hurtowych. Wystarczy ustawić kilka parametrów, aby za jednym zamachem załadować np. galerię zdjęć.
Accelerate 2k3 w praktyce
{tlo_1}
Krok 1.
Tuż po instalacji program otwiera się na stronie startowej. Aby uruchomić proces dostrajania łącza, klikamy przycisk Accelerate.
{/tlo}
{tlo_0}
Krok 2.
Program prosi o podanie typu sieci, która łączy nas z internetem. Jeśli używamy telefonu, wybieramy opcję pierwszą od góry. Opcja druga to kablówka, trzecia – lokalna sieć LAN, a DSL będzie najlepszy dla posiadaczy Neostrady. Zaznaczamy odpowiednią opcję i klikamy przycisk Next.
{/tlo}
{tlo_1}
Krok 3.
Na kolejnym ekranie mamy możliwość wyboru pełnej automatyki albo trybu eksperta. Na początek zaznaczamy opcję górną Automatically accelerate my system i klikamy przycisk Next.
{/tlo}
{tlo_0}
Krok 4.
Program uruchomi serię testów, wyświetlając wyniki pośrednie. Po skończonej pracy klikamy przycisk Accelerate Me!, który wprowadzi odpowiednie zmiany do rejestru.
{/tlo}
{tlo_1}
Krok 5.
Aby zmiany zadziałały, należy zrestartować system, wybierając przycisk Reboot Now.
{/tlo}
{tlo_0}
Krok 6.
Jeśli w punkcie 4. wybraliśmy tryb eksperta, to kolejny ekran umożliwi kontrolę nad większością elementów odpowiadających za płynne wykorzystanie pełnego pasma.
Warto pamiętać o kilku prostych zasadach:
• RWIN często ustawia się na wielokrotność MSS: 4 lub 6 razy dla systemów Windows 95/98/ME i 8 do 10 dla tych wywodzących się od NT.
• Zbyt duże MTU prowadzi do fragmentacji pakietów, ale zbyt małe również.
• TTL określa przez ile maszyn może biec połączenie, zanim zdalny host zostanie uznany za nieosiągalny. Standardowe ustawienie to 32, ale możemy spróbować je zmniejszyć.
• Zmieniając pozostałe parametry zajrzyjmy do obszernego helpa, który opisuje je wyczerpująco.
{/tlo}
Dane hurtem, czyli jak ściągać sekwencje
Często wchodząc na stronę natrafiamy na galerię obrazków, filmów lub ponumerowanych empetrójek z jednego albumu. Jeśli zasobów jest kilka, to jeszcze pół biedy – zawsze można je przecież pobrać nie opuszczając przeglądarki. Problem zaczyna się, gdy plików jest sporo, albo są pogrupowane w sekwencyjne galerie. Wtedy mozolne ładowanie kolejnych stron, a na nich powtarzanie w kółko, polecenia „Zapisz element docelowy jako…\” potrafi zniechęcić najbardziej cierpliwego internautę.
Tu przychodzą z odsieczą menedżery downloadu oferujące system pobrań hurtowych. W poniższym przykładzie pokażę, jak za pomocą FlashGeta, w kilkunastu krokach ściągnąć wszystkie tapety z witryny, która udostępnia je za darmo.
{tlo_1}
Krok 1.
Wpisujemy w przeglądarce adres witryny, której zasoby mamy zamiar ściągnąć hurtem. W przykładzie wykorzystamy tapety składowane pod adresem http://www.tapety.boo.pl.
Pojawi się strona z miniaturami tapet. Zanim zaczniemy pobierać hurtem, musimy ustalić czy tapety tworzą sekwencję. W tym celu klikamy jakikolwiek link Zobacz.
Przeglądarka otworzy nowe okno, w którym pojawi się tapeta w pełnym wymiarze. Nas jednak interesuje na razie nie ona sama, lecz jej adres. Ten, który wyświetlił się w pasku adresu przeglądarki obrazuje jedynie skrypt, a nam bardziej przydałaby się prawdziwa lokalizacja pliku.
{/tlo}
{tlo_0}
Krok 2.
W tym celu, w Firefoksie lub Operze, klikamy obrazek prawym przyciskiem myszy i z menu podręcznego wybieramy: Kopiuj adres obrazka. W IE oraz Netscape należy z menu podręcznego wybrać Właściwości i skopiować do schowka adres, który się wyświetli.
Uzyskany adres wklejamy w przeglądarkę i ponownie ładujemy obrazek. Ten, którego używamy w przykładzie jest pod adresem http://tapety.boo.pl/foto/fullsize/samochodowe/foto55.jpg. Sprawa dobrze rokuje, ponieważ nazwa pliku foto55.jpg sugeruje, że tapety stanową serię.
Teraz trzeba poznać początek, koniec serii oraz szerokość pola wzorca. Ta ostatnia wartość określa czy numeracja ma postać foto01.jpg, foto02.jpg itd., czy też foto1.jpg, foto2.jpg itd. W pierwszym przypadku szerokość zmieniającego pola to dwa bajty, w drugim jeden.
Sprawdzając brzegowe adresy szybko ustalimy, że seria jest postaci foto1.jpg, foto2.jpg, … i kończy się na pliku foto55.jpg.
{/tlo}
{tlo_1}
Krok 3.
Uzbrojeni w te informacje uruchamiamy FlashGeta. Najpierw ustalamy miejsce pobrania. W tym celu klikamy prawym przyciskiem folder Ściągnij, wybieramy jego Właściwości, a następnie wskazujemy jakiś katalog na dysku lokalnym. Może to być, na przykład, Pulpit. To samo robimy z folderem Ściągnięte.
{/tlo}
{tlo_0}
Krok 4.
Klikamy prawym przyciskiem myszy ikonę FlashGeta w zasobniku systemowym. Z menu podręcznego wybieramy Dodaj zadania na podstawie wzorca…
{/tlo}
{tlo_1}
Krok 5.
Pojawi się nowe okno. Adres pierwszej tapety z punktu 7 to: http://tapety.boo.pl/foto/fullsize/samochodowe/foto1.jpg. Wpisujemy go w miejsce URL. Ale zamiast cyfry 1 wprowadzamy znak, który w czasie pobrań będzie zmieniać się w kolejne liczby. Reprezentuje go ciąg (*), tak jak to widać na ilustracji. Pozostałe parametry określają początek serii, koniec i szerokość pola. Wpisujemy tam odpowiednie wartości i klikamy OK.
{/tlo}
{tlo_0}
Krok 6.
W oknie pobrania ustalamy ostatnie parametry transferu, takie jak zmiana lokalizacji, nazwa serii czy liczbę wątków, na które dzielone są pliki podczas pobierania. Niczego nie musimy zmieniać. Aby rozpocząć ładowanie, klikamy przycisk OK.
{/tlo}
{tlo_1}
Krok 7.
Pobieranie rozpoczyna się natychmiast. Jak widać, nie musimy martwić się o \”dziury\”, czyli wygenerowane nazwy, dla których pliki nie istnieją. FlashGet nie zgłasza błędu, tylko je oznacza i pobiera dalej.
{/tlo}