Listy ACL umożliwiają administratorom kontrolowanie ruchu wejściowego i wyjściowego do i na zewnątrz sieci. Kontrola taka może obejmować po prostu zezwalanie lub blokadę ruchu na podstawie adresu sieciowego, może także być bardziej skomplikowana, obejmując np. kontrolę ruchu bazującą na numerze portu TCP. Aby ułatwić zrozumienie procesu filtrowania ruchu w listach ACL, przeanalizujemy dialog występujący podczas konwersacji TCP, taki jak np. żądanie pobrania strony z serwera WWW.

Komunikacja oparta o TCP

Kiedy klient wysyła żądanie pobrania danych z serwera WWW, zadaniem protokołu IP jest zarządzanie komunikacją między komputerem PC (źródło) a serwerem (cel). Obsługą komunikacji między przeglądarką (aplikacja kliencka) a serwerem aplikacji zajmuje się z kolei protokół TCP.

Gdy wysyłasz pocztę elektroniczną, przeglądasz strony w Internecie lub pobierasz plik, TCP odpowiada za podział danych na segmenty, zanim zostaną wysłane protokołem IP. TCP zarządza też ponownym złożeniem danych z segmentów w całość, gdy dotrą na miejsce. Jest on bardzo podobny do rozmowy, w której dwa węzły w sieci zgadzają się na przekazywanie danych między sobą.

Protokół TCP zapewnia połączeniową, niezawodną usługę przesyłania strumienia bajtów. Fakt, że usługa jest połączeniowa oznacza, że zanim dane zostaną przesłane, obie aplikacje muszą ustanowić połączenie TCP. TCP to protokół działający w pełnym dupleksie (full-duplex), co oznacza, że ​​każde połączenie obsługuje parę strumieni bajtów, które mogą płynąć w obu kierunkach jednocześnie. Częścią protokołu TCP jest mechanizm kontroli przepływu każdego strumienia bajtów, który pozwala odbiorcy na ograniczenie ilości danych transmitowanych przez nadawcę. Protokół TCP ma zaimplementowany także mechanizm kontroli przeciążeń.

Rysunek 1 przedstawia animację, pokazującą jak wygląda proces konwersacji TCP. Segmenty TCP oznaczone są flagami, które świadczą o ich przeznaczeniu: flaga SYN rozpoczyna (synchronizuje) sesję; ACK to potwierdzenie, że oczekiwany segment został odebrany a FIN - zakończenie sesji. Flagi SYN/ACK to potwierdzenie, że transmisja jest zsynchronizowana. Segmenty TCP zawierają informację o protokole warstwy wyższej, wymaganym do przesłania danych do właściwej aplikacji.

Ponadto, segmenty TCP zawierają informację o numerze portu, który odpowiada żądanej usłudze sieciowej. Przykładowo, protokół HTTP posiada przypisany port 80, SMTP - port 25, a FTP - porty 20 i 21. Na rys. 2 pokazano podział zakresów portów TCP i UDP.

Na rys. 3 - 5 przedstawiono wybrane porty TCP i UDP oraz odpowiadające im usługi.

Przed rozpoczęciem tego kursu, zaloguj się na stronę netacad.com.