A.K.
Kto jest odpowiedzialny za nasze dzisiejsze szkolenie? Odrobina historii albo: dlaczego właściwie Ethernet? a dlaczego TCP/IP? Podstawowe rodzaje komunikacji sieciowej Model komunikacyjny ISO/OSI a Internet Podróż po tajemniczych krainach L1, L2, L3 i L4 czyli co dzieli, a co łączy: hub, switch, router i usługę sieciową Po co robimy pomiary/testy transmisyjne? QoS, czyli dlaczego łatwiej zmierzyć łącze E1 od łącza Ethernet/TCP/IP? Metodologie pomiarowe/testowe i co z tego wszystkiego wynika
Robert Metcalfe (Ethernet) Vinton Cerf i Robert E. Kahn (TCP/IP)
(1972-1977) opracowanie technologii Ethernet w laboratoriach firmy Xerox (2,94 Mb/s) (1979-1983) standaryzacja Ethernetu przez DIX (Digital, Intel, Xerox) (1986-1990) Ethernet 10BASE-T (10 Mb/s) i standaryzacja Ethernetu przez IEEE (standard 802.3) (1990-1994) Ethernet przełączany i transmisja w trybie Full-duplex (1992-1995) Fast Ethernet (100 Mb/s) (1995-1998) Gigabit Ethernet (1000 Mb/s) 2002 10 Gigabit Ethernet (już tylko full-duplex) (2007-2011) 40 GbE i 100 GbE (już tylko optyka) 2012 co dalej?
Główne zalety: - cena - prostota użytkowa - skalowalność Główne wady: - problemy wsparcia dla transmisji czasu rzeczywistego (telefonia, telewizja)
Model stosu protokołów TCP/IP został stworzony w latach 70 XX wieku (około 1973) w DARPA (Agencja Zaawansowanych Projektów Badawczych Departamentu Obrony USA) Powstaje sieć ARPANET (już oparta na mechanizmach TCP/IP) przodek dzisiejszego Internetu 1983 rozpoczyna funkcjonowanie Internet w dzisiejszym kształcie Lata 90 gwałtowny wzrost liczby komputerów klasy PC podłączonych do Internetu XXI wiek Internet of Things (wszystko w Internecie!?)
Główne zalety: - otwartość!!! brak przywiązania do jakiegokolwiek producenta - dostęp dla każdego do bazy dokumentów RFC (http://www.ietf.org) - stabilność 30 lat rozwoju - ogromna skalowalność - Internet Główne wady:???
UNICAST Jeden do jednego BROADCAST Jeden do wszystkich MULTICAST Jeden do wielu
L4 L3 L2 L1 OSI - Open Systems Interconnect Komunikacja Systemów Otwartych
Proces enkapsulacji (kapsułkowania) informacji warstwy wyższej w polu danych warstwy niższej Całkowite ignorowanie przez warstwę niższą znaczenia przesyłanych informacji poddanych enkapsulacji Podział na warstwy odporność na przyszłe zmiany w normach i specyfikacjach
Warstwy (Layers): - L1 fizyczna; Ethernet (PHY) - L2 łącza danych; Ethernet (MAC) Proces: Przełączanie (Switching) - L3 sieciowa; IP, ICMP Proces: Trasowanie (Routing) - L4 transportowa; TCP, UDP Usługi (DNS, HTTP, FTP itd.)
Odwzorowanie warstw modelu ISO/OSI na warstwy Ethernet
Odwzorowanie warstw modelu ISO/OSI na warstwy TCP/IP
Wspóldzielone medium i protokół CSMA/CD Rzecz obecnie niezbyt użyteczna, ale warta (historycznie) podkreślenia!
Przedstawiciel L1 - Hub, koncentrator, regenerator (repeater) HUB działa tylko w trybie Half-duplex, czyli jeden mówi inni słuchają!
Przedstawiciel L1 - Hub, koncentrator, regenerator (repeater) W HUBie domeny kolizyjna i rozgłoszeniowa pokrywają się!
Przedstawiciel L2 Switch, przełącznik, bridge, most Switch działający w trybie Half-duplex
Przedstawiciel L2 Switch, przełącznik, bridge, most Switch może (a nawet powinien!) działać w trybie Full-duplex
Przedstawiciel L2 Switch, przełącznik, bridge, most W Switchu domena kolizyjna ogranicza się do konkretnego portu!
Ramka Ethernet czyli struktura danych warstwy L2 Ramki nie są przesyłane jedna za drugą między nimi występuje IFG Inter Frame Gap (przerwa międzyramkowa = min. 96 bitów)!
Adres MAC identyfikator warstwy L2 Unicast (adres przykładowy) Multicast Broadcast
Przedstawiciel L2 Switch, przełącznik, bridge, most Mechanizm 1: logika przełączająca (na podstawie DA adresu docelowego) 1. Jeśli adres znaleziono w tablicy przełączania, ramka jest dostarczana do skojarzonego portu 2. Jeśli adresu nie znaleziono, ramka jest rozgłaszana do wszystkich portów oprócz portu z którego ją nadano Mechanizm 2 : logika ucząca (na podstawie SA adresu źródłowego) 1. Jeśli adresu nie znaleziono w tablicy przełączania, jest on w niej zapisywany i kojarzony z portem z którego dostarczono ramkę. To zapobiega rozgłaszaniu, gdy ten sam adres zostanie znaleziony w polu DA innych ramek 2. Jeśli adres znaleziono w tablicy, nie jest podejmowana żadna akcja
Mechanizm VLAN Virtual LAN
Mechanizm Q in Q, Double Tagging VLAN w VLAN
Autonegocjacja IEEE oraz MDI/MDIX Proces automatycznego dostosowywania parametrów pracy portów urządzeń Ethernet obejmuje: - prędkość (10, 100, 1000) - tryb pracy (half-duplex, full-duplex) - relację MASTER/SLAVE (zegar!) Podczas ustanawiania linku, urządzenia ogłaszają swoje możliwości i następuje wybór najlepszego możliwego wariantu Autonegocjacja w Gigabit Ethernet jest mechanizmem obowiązkowym! Dla linków optycznych NIE NASTĘPUJE negocjacja prędkości połączenia (jedynie trybu), więc mogą pojawić się problemy typu: wydaje się, że link się podniósł, ale łacze nie działa Gdy jedno z urządzeń ma wymuszone parametry pracy portu, a drugie ma autonegocjację, to patrz jeden punkt wyżej lub działa, ale nie z pełną/nominalną prędkością Większość literatury oraz producentów (np. Cisco) nie zaleca stosowania autonegocjacji, ale w Gigabit Ethernet i tak nie mamy zazwyczaj wyjścia MDI/MDIX automatyczne wykrywanie podłączenia RX/TX (kabel prosty krosowy)
Przedstawiciel L3 Router W Routerze domena rozgłoszeniowa ogranicza się do konkretnego portu!
Pakiet IP czyli struktura danych warstwy L3
Adres IPv4 identyfikator warstwy L3
Zakres adresacji IPV4 stosowanej w Internecie: Klasa Zakres A 1.0.0.1-127.255.255.254 B 128.0.0.1-191.255.255.254 C 192.0.0.1-223.255.255.254 D 224.0.0.0-239.255.255.254 Podsieć 127.0.0.0 została zarezerwowana do celów diagnostycznych! Ponad 16 milionów możliwych adresów hostów zostało poświęcone dla jednego adresu: Adres używany jako tzw. pętla zwrotna (loopback). Dane wysyłane pod ten adres tworzą pętlę zwrotną z nadawcą, bez wędrówki przez sieć lub nawet przejścia przez kartę sieciową. Wysyłając dane (np. ping) na adres 127.0.0.1 i uzyskując odpowiedź, możemy być pewni, że oprogramowanie TCP/IP działa!
Zakres adresacji IPV4 adresy PRYWATNE: Klasa Zakres A 10.0.0.0-10.255.255.255 B 172.16.0.0-172.31.255.255 C 192.168.0.0-192.168.255.255 Adresy zarezerwowane, w poszczególnych klasach, do użytku prywatnego. Oznacza to, że można je stosować w sieciach prywatnych np. firmowych, domowych itp. Adresy te są zakazane do użytku w Internecie i w praktyce nie są przekazywane przez routery Internetowe (są nierutowalne w Internecie).
Adres IPv4 identyfikator warstwy L3 Notacja dziesiętna (adres przykładowy) Notacja binarna Maska podsieci (trzeci poziom hierarchii adresowej) Adres główny podsieci Adres rozgłoszeniowy Obu powyższych adresów nie używamy do adresacji urządzeń!
Przedstawiciel L3 Router Mechanizm 1: tablica routingu (w oparciu o sieć docelową) 1. Jeśli adres znaleziono w tablicy routingu, pakiet jest wysyłany do skojarzonego interfejsu/portu 2. Znajdowanie adresu docelowego w tablicy routingu odbywa się metodą najlepszego dopasowania 3. Jeśli adresu nie znaleziono, pakiet jest odrzucany Mechanizm 2 : routing zwrotny (w oparciu o sieć źródłową ) 1. Większość transmisji w sieci ma charakter dwukierunkowy, więc aby komunikacja odbywała się w pełni poprawnie, każdy router, przez który przechodzi pakiet, musi mieć skonfigurowany routing zwrotny do sieci, z której pakiet przybył
ARP (Address Resolution Protocol) klej między warstwami L2/L3 Skąd komputer A posiadający adres IP i próbujący wysłać dane do komputera B, dowiaduje się o jego adresie MAC? Aby otrzymać adres MAC komputera B, rozgłaszany jest (przez komputer A) odpowiedni pakiet protokołu ARP, zawierający adres IP hosta docelowego. Host A czeka na odpowiedź, która zawiera żądany adres MAC Odpowiedź zapisywana jest w tablicy ARP hosta A (polecenie: arp a) Każde następne zapytanie odwołuje się już do tej lokalnej tablicy Wpisy w tablicy nie są trwałe i po pewnym czasie ulegają przeterminowaniu Wówczas cały proces poszukiwania docelowego MAC a jest ponawiany
Przedstawiciele L4 TCP i UDP Dwa typy protokołów warstwy L4 (transportowej): - TCP (Transmission Control Protocol) - połączeniowy, nawiązuje sesję komunikacyjną 80-95% ruchu w sieci. Podstawa działania Internetu i ogólnie sieci TCP/IP - UDP (User Datagram Protocol) - bezpołączeniowy, bezstanowy, nie nawiązuje sesji! Używany głownie w systemie DNS (Domain Name Service). Coraz bardziej zyskuje na znaczeniu: usługi typu głos, video, telewizja Obsługa tych protokołów zaimplementowana jest tylko na stacjach roboczych, komputerach (ogólnie: systemach końcowych) a nie w sieci transmisyjnej! czyli L1, L2 i L3 to tylko ścieżka transmisji! Stacje robocze komunikują się bezpośrednio ze sobą przy wykorzystaniu mechanizmu gniazd (sockets) Gniazdo to para: adres_ip:port Komunikacja: adres_ip_lokalny:portx <-> adres_ip_zdalny:porty Porty TCP, UDP są reprezentacją usług sieci TCP/IP
Przedstawiciele L4 TCP i UDP Zestawienie popularnie wykorzystywanych portów: 80 (TCP) usługa WWW 25, 110, 143 (TCP) usługi poczty e-mail 53 (UDP) usługa DNS 21, 22 (TCP) - usługa FTP 23 (TCP) usługa Telnet Usługi czasu rzeczywistego: video, telewizja, VoIP korzystają głównie z UDP!!!
Przedstawiciel L4 Segment TCP
TCP Nazewnictwo i mechanizmy Jednostki danych TCP segmenty Enkapsulacja w IP Sesje TCP są typu full-duplex! Nawiązywanie połączenia (sesji) trójstanowe uzgodnienie (3-way handshaking) Mechanizm potwierdzeń Mechanizm retransmisji Kontrola przepływu (przesuwanie okna) dynamiczna adaptacja prędkości przesyłania danych w zależności od obciążenia sieci Kontrola przeciążenia wycofanie (back-off)
TCP Nawiązywanie połączenia
TCP Mechanizm potwierdzeń Segment z ustawioną flagą ACK wysyłany przez odbiorcę (np. ACK 2001 odebrane wszystko do 2000) Potwierdzanie skumulowane potwierdzanie większej ilości bajtów naraz, zastąpienie kilku zagubionych ACK jednym potwierdzeniem Segmenty tylko z ACK lub jazda na barana czyli ACK + dane płynące w przeciwnym kierunku Potwierdzanie opóźnione zmniejszanie ruchu w kierunku powrotnym, jednak nie dłużej niż 500 ms Powielanie potwierdzeń pierwsza wersja TCP ignoruje powielone ACK, obecne wersje TCP z tego korzystają
TCP Mechanizm retransmisji Usługa niezawodnego przesyłania danych protokołu TCP opiera się na retransmisji Jeśli jakiś segment ulegnie zgubieniu, musi zostać wysłany ponownie Wykrywanie utraty segmentu poprzez tzw. zegar retransmisji RTO gdy zegar doliczy do zera, segment jest wysyłany ponownie Wartość ustawionego RTO jest kluczowa dla wydajności transmisji: zbyt duża dłuższe opóźnienia działania aplikacji, zbyt mała marnotrawstwo pasma!
TCP Kontrola przepływu (przesuwanie okna) http://histrory.visualland.net/tcp_swnd.ht ml
TCP Kontrola przeciążenia
TCP Kontrola przeciążenia c.d.
TCP Kontrola przeciążenia c.d. Cztery fazy pracy współczesnej wersji protokołu TCP: - powolny start (slow start) rozpędzamy się wykładniczo zwiększamy okno transmisyjne x2 po każdym ACK - unikanie przeciążenia (congestion avoidance) kontynuujemy wysyłanie liniowo zwiększamy okno o 1 segment po każdym ACK - szybka retransmisja (fast retransmission) czkekamy na trzy ACK zamiast dwóch - szybkie odtwarzanie (fast recovery) redukujemy rozmiar okna transmisji o połowę i wchodzimy w fazę unikania przeciążenia
TCP Powolny start
Przedstawiciel L4 Datagram UDP
UDP Nazewnictwo i mechanizmy Jednostki danych UDP datagramy Enkapsulacja w IP Nie utrzymuje sesji! Jedyny mechanizm: wyślij i zapomnij!
Weryfikujemy: KPI (Key Performance Indicators - Kluczowe Parametry Wydajnościowe) W tym głównie pasmo, czyli możliwość przesłania określonej ilości informacji w zadanym czasie. Główny parametr cennika usługi. Klient postrzega atrakcyjność oferty przez pryzmat tego parametru. Ale na paśmie historia się nie kończy Integralność - Chcemy ocenić czy dane transmitowane są bez ich uszkadzania np. gdy występuje utrata ramek. Wykorzystywane technologie: BERT, PRBS
QoS (Quality of Service) Jakość Obsługi. Zespół technik porządkujących przepływ danych w sieciach pakietowych. Techniki te mają na celu uczynienie sieci pakietowej bardziej przewidywalną w działaniu (podobnie do sieci TDM). Sieci TDM są przewidywalne ponieważ ich zasada działania opiera się na mechanizmach synchronicznych czasu rzeczywistego. Mechanizmy QoS są niejako wbudowane w naturę tych sieci. Pomiarami weryfikujemy więc w zasadzie wyłącznie integralność przesyłanych danych. W sieci Ethernet/TCP/IP, przy pomocy pomiarów transmisyjnych, musimy potwierdzić QoS testując zarówno KPI jak i integralność przesyłanych danych.
Proste i powszechne narzędzia diagnostyczne stosowane w sieciach TCP/IP: - PING sprawdzamy czy host docelowy odpowiada na nasze zapytania. W odpowiedzi uzyskujemy ponadto dwie cenne informacje: ilość utraconych pakietów oraz parametr RTT (Round Trip Time) opóźnienie w obie strony - TRACEROUTE sprawdzamy przez jakie hosty (węzły) pośrednie przechodzi nasza transmisja
Pomiary wykonywane są najczęściej specjalizowanymi testerami sieci (np. JDSU, EXFO) Testery potrafią wysyłać ruch w warstwach L2 lub L3, a niektóre nawet w wyższych To, w której warstwie testujemy uzależnione jest od tego, czy sieć jest przełączana czy routowana Podstawowe topologie pomiarowe: - pomiar na pętli (loopback) - pomiar typu dual test set (tester na tester) Niektóre typy testów wykonujemy tylko na pętli (np. RFC2544) Unormowane metodologie stosowane obecnie i dostępne w testerach: RFC2544, ITU-T Y.1564 (EtherSAM)
Przełączniki Ethernet nie potrafią rozwiązać problemu, gdy z dwóch lub więcej portów otrzymają ramki o tym samym adresie źródłowym. W tym przypadku generuje to konflikty w sieci!
KPI Key Performance Indicators: - Bandwidth, Throughput (pasmo, przepustowość) - Frame Loss Ratio (utrata ramek) - Frame Delay, Latency (opóźnienie, RTD) - Frame Delay Variation, Jitter (zmienność opóźnienia) brak w RFC 2544 - Back-to-Back, Burstability (maksymalne obciążenie, zdolność buforowania) brak w ITU-T Y.1564
Wspólne założenia dla testów: - wykonujemy testy dla najczęściej występujących rozmiarów ramek: 64, 128, 256, 512, 1024, 1280, 1518 bajtów. Alternatywnie ustawiamy tester na Random losowe długości ramek, co bardziej odpowiada naturze prawdziwego ruchu w sieci - nie zmieniamy ustawień w czasie testów!
Pasmo: ilość danych możliwych do przesłania w jednostce czasu (typowo na sekundę). Jednostki np: Mbit/s, kbit/s
Współczynnik utraty ramek: (licznik wejscia-licznikwyjscia)x100 /licznik wejscia
Opóźnienie: średni czas między wysłaniem ramki a jej odebraniem (RTD Round Trip Delay/2)
Zmienność opóźnienia (Jitter): niejednolity IFG (Inter Frame Gap) przy ruchu masowym Ma to przełożenie na jakość usług czasu rzeczywistego!!!
Back-to-Back (na takich samych warunkach ): maksymalna zbitka (burst) ramek wysłanych z minimalnym IFG, którą DUT (Device Under Test) jest w stanie obsłużyć bez strat To również ma przełożenie na jakość usług czasu rzeczywistego!!!
Zaprojektowany do laboratoryjnych badań urządzeń sieciowych, gdzie aby stwierdzić poprawność działania, testy mogą trwać do kilku dni! W rzeczywistych warunkach czas testu można (NALEŻY!!!) skrócić poprzez wybór z dostępnego pakietu odpowiednich testów i redukcję liczby powtórzeń. Testy RFC2544 są wykonywane sekwencyjnie jedno KPI na raz. RFC sugeruje, że czas trwania jednego testu nie powinien być krótszy niż 60 sek. Dobór odpowiedniego czasu powinien być kompromisem umożliwiającym wykonanie całego pakietu testów.
CIR (Commited Information Rate) przepływność gwarantowana przez usługodawcę, przy zachowaniu parametrów jakościowych, takich jak opóźnienie, poziom traconych ramek itd. CIR = 0 usługa niegwarantowana! Best-Effort (dostarcz jeśli możesz ) EIR (Excess Information Rate) Przepływność powyżej CIR, która nie jest gwarantowana, natomiast może zostać wykorzystana przez klienta (np. gdy innym jest niepotrzebna ) PIR (Peak Information Rate) Przepływność maksymalna, zazwyczaj równa przepustowości portu dostępowego. PIR=CIR+EIR
Zaprojektowany jako tzw. Ethernet service activation test Skoncentrowany na podejściu usługowym, a nie na oderwanych od realiów rynkowych, pomiarach laboratoryjnych Składa się z dwóch etapów: - network configuration test - service test W pierwszym etapie sprawdzana jest poprawność konfiguracyjna sieci/urządzeń. Wykonywane są pomiary KPI przy różnych obciążeniach. Sprawdzany ruch podzielony jest na tzw. Green Traffic, Yellow Traffic i Red Traffic (Overshoot, Discarded Traffic) W drugim weryfikowane są parametry QoS w zakresie CIR dla wszystkich usług klienta jednocześnie. Wszystkie KPI weryfikowane są jednocześnie dla każdej usługi! W każdum z tych dwóch przypadków dostajemy odpowiedź na temat spełnienia bądź nie spełnienia parametrów usługowych SLA podejście PASS/FAIL
Typ ruchu CIR (Mbit/s) (green traffic) EIR (Mbit/s) (yellow traffic) Frame Delay (ms) Frame Delay Variation (ms) Dane czasu rzeczywistego Dane o wysokim priorytecie Dane Best-Effort (np. dostęp do Internetu) 5 10 2.5 0 5 5 <5 5-15 <30 <1 Nie dotyczy Nie dotyczy Frame Loss (%) <0.001 <0.05 <0.05 VLAN 100 200 300
Wprowadzenie do transmisji danych Andrew Simmonds Switched, Fast i Gigabit Ethernet Robert Breyer, Sean Rileyi Biblia TCP/IP tom1,2,3 W. Richard Stevens Wysoko wydajne sieci TCP/IP Mahbub Hassan, Raj Jain Gigabit Ethernet Roll-Out Jose M. Caballero, Francisco J. Hens Materiały ze strony www firmy EXFO Materiały ze strony www firmy JDSU Wikipedia