Badanie zachowania łącza w warunkach wysycenia granicznego
Transkrypt
Badanie zachowania łącza w warunkach wysycenia granicznego
BADANIE ZACHOWANIA ŁĄCZA W WARUNKACH WYSYCENIA GRANICZNEGO Bartosz Michno Politechnika Rzeszowska, [email protected] Streszczenie – Celem pracy było zobrazowanie obciążenia łącza między dwoma komputerami podłączonymi do routera. Narzędziem obrazującym obciążenie i responsywność łącza było polecenie ping, wbudowane w systemy z rodziny Windows. Słowa kluczowe: wysycanie łącz, ping, obciążanie, ruch TCP, generowanie 1 UŻYTE NARZĘDZIA Dwa komputery klasy PC z systemami Windows XP, Juniper SRX210HB z systemem JunOS, JPerf 2.0.2 – oparty na Javie program generujący sztuczny ruch TCP lub UDP. 2 TOPOLOGIA Rys. 1. Topologia 3 PRZEBIEG BADANIA Jeden z komputerów, pełniący rolę serwera JPerf, nasłuchiwał na podanym adresie i porcie TCP. Drugi z komputerów, działający jako klient JPerf, wysyłał sztucznie generowany ruch do serwera JPerf znajdującego się na drugim interfejsie routera Juniper. W międzyczasie dwa komputery pingowały się wzajemnie. Poprzez porównywanie czasów odpowiedzi w milisekundach, można było zauważyć spadek lub wzrost obciążenia interfejsów routera JunOS. Testowanie polegało na zmianie parametrów TCP w programie JPerf: TCP Window Size (rozmiar okna TCP) i Parallel Streams (równoległe strumienie). Duży rozmiar okna pozwala na przesłanie większej ilości danych bez potwierdzenia (ACK), co poprawia wydajność protokołu TCP/IP podczas przesyłania dużej ilości danych między nadawcą i odbiorcą [1]. Zmniejszenie rozmiaru okna powinno więc zwiększyć liczbę przesyłanych ACK, co skutkuje gorszą wydajnością łącza – nadmiarowy ruch jest wtedy znaczny. Zwiększanie liczby strumieni to dodawanie kolejnych niezależnych sesji TCP obciążających łącze. W tej pracy liczby strumieni wynoszą odpowiednio 1, 2, 5, 10, 20, 50 oraz 100. Wybrane rozmiary okien TCP to odpowiednio 64 KB (domyślny w JPerf), 28 KB, 14 KB oraz 1 KB. Badanie poleceniem ping odbywało się ze zmienionym buforem wysyłania (domyślny w Windows to 32 KB) na dwie wartości: 1024 KB oraz 32768 KB. Większy bufor wysyłania pingu to zwiększenie ruchu na łączu i większe wykorzystanie zasobów urządzenia sieciowego oraz hosta, które muszą takie zapytanie przetworzyć i ewentualnie odpowiedzieć. a) Rozmiar buforu wysyłania – 1024 KB Pola zaznaczone kolorem oliwkowym to czasy, które pojawiały się mniej więcej zamiennie, stąd zostały uśrednione. Poniżej znajdują się wykresy przedstawiające na osi rzędnych odpowiedź w milisekundach w stosunku do liczby strumieni TCP generowanych przez klienta JPerf (oś odciętych). Użyte oznaczenia: RBW – rozmiar buforu odpowiedzi (ping) TCP_RO – rozmiar okna TCP Rys. 2. Wykres dla pierwszej części Czasy dążą logarytmicznie do granicy 30 ms. Naturalnie każdy dodatkowy strumień TCP powoduje wzrost czasu odpowiedzi pakietów ICMP. Wraz ze zmniejszaniem się rozmiaru okna TCP czas odpowiedzi przeważnie wzrasta (większy narzut w ruchu TCP powoduje większe wykorzystanie przepustowości łącza i zasobów urządzenia Juniper). b) Rozmiar buforu wysyłania – 32768 KB Pola zaznaczone kolorem purpurowym to sytuacje, gdzie dla większości lub dla wszystkich pakietów upłynął limit czasu żądania (ICMP Time Exceeded). W przypadku braku jakiejkolwiek odpowiedzi czas został przyjęty jako większy od 90 ms – domyślnej wartości czasu oczekiwania na odpowiedź ping. Rys. 3. Wykres dla drugiej części W porównaniu do mniejszego RBW z poprzedniego podpunktu, czasy odpowiedzi już na wstępie są dużo większe. Większy pakiet ICMP musi zostać przesłany przez łącze i przetworzony przez urządzenia sieciowe i hosty, co jest wyraźnie dłuższe. W tym przypadku granica, do której dążą czasy odpowiedzi jest większa niż w poprzednim przypadku i wynosi około 35 ms. Dla dużej liczby strumieni łącze jest obciążone w taki sposób, że pingowany host przestaje odpowiadać. Dla mniejszego okna TCP czasy odpowiedzi są wyraźnie większe niż dla okna o rozmiarze domyślnym. 4 PODSUMOWANIE W badaniu sprawdzano obciążanie łącz komputerów poprzez mierzenie czasów odpowiedzi urządzenia między nimi za pomocą komunikacji ICMP. Potencjalna osoba atakująca, generując jeden lub więcej strumieni TCP może spowolnić albo całkowicie zablokować połączenie internetowe komputera ofiary. 5 LITERATURA [1] http://technet.microsoft.com/pl-pl/library/cc785859%28v=ws.10%29.aspx [2] http://www.juniper.net/us/en/products-services/security/srx-series/#literature