Protokoły warstw

PROTOKOŁY WARSTWY APLIKACJI

Warstwa aplikacji jest najwyższą warstwą stosowaną w modelach OSI oraz TCP/IP. custodia outlet samsung Można powiedzieć, że jest to warstwa „najbliższa” użytkownikowi sieci ponieważ udostępnia ona interfejs komunikacyjny. Mówiąc jeszcze prościej, to własnie warstwa aplikacji pozwala użytkownikowi korzystać z sieci ponieważ pozwala na przeglądanie stron WWW, przysyłanie plików czy poczty elektronicznej. Z wielu ogólnie znanych protokołów komunikacyjnych stosowanych w warstwie aplikacji poniżej przedstawiam te najważniejsze.  

  • DNS (ang. Domain Name System, port: 53) – protokół używany do odwzorowywania nazw w sieci Internet na adresy IP,
  • HTTP (ang. Hypertext Transfer Protocol, port: 80) – protokół używany do przesyłania plików tworzących strony WWW,
  • HTTPS (ang. Hypertext Transfer Protocol Secure, port: 443) – szyfrowana wersja protokołu HTTP, wykorzystująca szyfrowanie TLS,
  • SMTP (ang. Simple Mail Transfer Protocol, port: 25) – protokół używany do przesyłania wiadomości poczty elektronicznej wraz z załącznikami,
  • POP3 (ang. Post Office Protocol, , port: 110) — protokół używany do odbioru poczty elektronicznej,
  • IMAP (ang. Internet Message Access Protocol, port: 143) – protokół używany do odbioru poczty elektronicznej, oprócz funkcji POP3, pozwala również na zarządzanie zdalnymi folderami znajdującymi się na serwerze,
  • Telnet (ang. Telecommunication Network, port: 23) – protokół używany do emulacji terminala umożliwiający komunikację ze zdalnym urządzeniem,
  • FTP (ang. File Transfer Protocol, porty: 20, 21) – protokół używany do interaktywnego przesyłania plików pomiędzy systemami,
  • DHCP (ang. Dynamic Host Configuration Protocol, port: 67) – protokół używany do dynamicznej konfiguracji urządzeń, a dokładniej odpowiedzialny jest za przydzielanie adresów IP, adresu domyślnej bramy i adresów serwerów DNS,
  • SSH (ang. Secure Shell, port: 22) — protokół używany do emulacji terminala sieciowego zapewniający szyfrowanie połączenia,
  • NFS (ang. Network File System, port: 2049) — protokół używany do udostępniania systemów plików (dysków sieciowych),
  • SNMP (ang. Simple Network Management Protocol, port: 161) —protokół zarządzania siecią, używany do konfiguracji urządzeń sieciowych i gromadzenie informacji na ich temat,
  • SMB (ang. Server Message Block, porty: 137, 138, 139) protokół używany do do udostępniania plików.

Jak pewnie zauważyliście obok angielskiej nazwy protokołu pojawił się się również element jakim jest numer portu aplikacji. Numery portów stosowane są po to, aby warstwa transportowa potrafiła identyfikować usługi oraz aplikacje warstwy aplikacji, które są źródłem i celem danych. Podczas analizy różnych protokołów i usług warstwy aplikacji modelu OSI oraz TCP/IP często będziemy odnosić się do numerów portów, które są związane z konkretnymi usługami.

PROTOKOŁY WARSTWY TRANSPORTOWEJ

Warstwa transportowa pełni w procesie przesyłu danych bardzo ważne funkcje. Przede wszystkim odpowiedzialna jest za prawidłowy przebieg komunikacji oraz jej niezawodność. Określa również sposób segmentacji danych (zasady dzielenia ich na możliwe do zarządzania części) oraz późniejszego ich scalania, a także identyfikuje dane pochodzące z różnych aplikacji (poprzez numery portów). Dwa najpopularniejsze protokoły warstwy transportowej to TCP (ang. iphone custodia outlet Transmission Control Protocol) i UDP(ang. User Datagram Protocol). Oba te protokoły są w stanie zarządzać wieloma równoczesnymi transmisjami. Różnią się zestawem funkcji jakie mogą dostarczyć aplikacjom. Protokół UDP UDP jest prostym, bezpołączeniowym protokołem. Jego najważniejszą zaletą jest niewielki narzut dodawany do dostarczanych danych. custodia iphone Porcje danych UDP są nazywane datagramami. Nie zapewnia on jednak mechanizmów ochronnych takich jak potwierdzenie dostarczenia datagramu czy retransmisji. cover custodia huawei Aplikacje, które używają protokołu UDP to m.in.:

  • system nazw domenowych DNS (ang. Domain Name System),
  • aplikacje przesyłające strumienie Video,
  • transmisja głosu przez sieć IP (VoIP).

Poniższy rysunek przedstawia jak wygląda typowy datagram UDP. databram UDP Protokół TCP TCP jest protokołem połączeniowym, tworzącym tzw. segmenty, który wprowadza pewien dodatkowy narzut, ze względu na większą liczbę realizowanych funkcji, takich jak dostarczanie ich we właściwej kolejności czy niezawodne dostarczanie i kontrola przepływu. Każdy segment TCP dodaje aż 20 dodatkowych bajtów w nagłówku, gdzie datagram UDP dodaje tylko 8 dodatkowych bajtów. custodia samsung outlet Główną zaletą tego protokołu jest niezawodność, którą gwarantuje konieczność wysłania potwierdzenia przez hosta odbierającego dane zanim dostanie przesłany kolejny segment. Aplikacje wykorzystujące protokół TCP to:

  • przeglądarki stron WWW,
  • e-mail,
  • programy do przesyłania plików.

Poniższy rysunek przedstawia jak wygląda typowy segment TCP. segment TCP Porty aplikacji Z poprzedniego artykułu wiecie już, że aplikacje stosują różną numerację portów, tak aby warstwa transportowa potrafiła je rozróżnić i we właściwy sposób pokierować przepływem danych. Istnieją 3 typy numerów portów aplikacji:

  • dobrze znane porty (numery od 0 do 1023) – te numery są zarezerwowane dla usług i aplikacji. Są one powszechnie używane dla aplikacji takich jak serwery WWW (HTTP) czy serwery poczty elektronicznej (POP3/SMTP),
  • zarejestrowane porty (numery od 1024 do 49151) – te numery są zarezerwowane dla aplikacji i procesów użytkownika. Są to przede wszystkim porty używane przez aplikacje i usługi tworzone na małą skalę,
  • dynamiczne lub prywatne numery portów (od 49152 do 65535) – to numery portów, które są dynamicznie losowane przez aplikacje klienckie podczas inicjowania połączeń.

PROTOKOŁY WARSTWY SIECI

Warstwa sieci (3 warstwa modelu OSI) udostępnia mechanizmy pozwalające na wymianę danych pomiędzy dwoma określonymi urządzeniami końcowymi sieci. W działaniu warstwy sieci można wyróżnić 4 elementy:
  • adresowanie, określające nadawcę i odbiorcę danych,
  • enkapsulacja, podczas której dodawane są adresy hosta źródłowego i docelowego,
  • ruting, określający drogę przesyłania danych pomiędzy sieciami
  • dekapsulacja, podczas której następuje potwierdzenie czy dane zostały przesłane do właściwego hosta.

Protokołami, które można wyróżnić w warstwie sieci to miedzy innymi:

  • IPv4 (Internet Protocol version 4)
  • IPv6 (Internet Protocol version 6)
  • Novell IPX (Internetwork Packet Exchange)
  • AppleTalk
  • CLNS/DECNet

Protokołem stosowanym najczęściej jest protokół IPv4. Został on zaprojektowany jako protokół z niedużym narzutem (dodatkowymi informacjami dodawanymi do pakietu). Zapewnia on tylko niezbędne funkcje umożliwiające dostarczanie pakietu ze źródła do celu przez połączone ze sobą sieci. Ogólna charakterystyka protokołu IPv4:

  • bezpołączeniowy – przed wysyłaniem danych nie jest zestawiane żadne połączenie,
  • nie posiada mechanizmów zapewniających gwarancję dostarczenia pakietu,
  • niezależny od używanego medium transmisyjnego.

Budowa nagłówka pakietu IPv4: nagłówek ip Docelowy adres IP – pole docelowego adresu IP, zapisane w postaci 32-bitowej. Źródłowy adres IP – pole docelowego adresu IP, zapisane w postaci 32-bitowej. Czas życia (TTL) – 8 bitowe pole, które określa pozostały czas życia pakietu. Wartość TTL jest zmniejszana o co najmniej 1 za każdym razem, gdy pakiet przechodzi przez router (tj. za każdym przeskokiem). Kiedy wartość osiąga 0, router porzuca pakiet i jest on usunięty ze strumienia danych w sieci. Mechanizm ten chroni pakiety, które nie mogą osiągnąć celu przed przekazywaniem w nieskończoność pomiędzy routerami w tzw. pętli routingu. Jeżeli pętle routingu byłyby dozwolone, sieć byłaby przeciążona pakietami danych, które nigdy nie osiągną swojego celu. custodia samsung s8 Zmniejszanie wartości TTL przy każdym przeskoku zapewnia, że w końcu osiągnie wartość 0 i pakiet, którego pole TTL równe jest 0 będzie odrzucone. Protokół – ta 8-bitowa wartość wskazuje typ danych, które pakiet przenosi. Pole protokołu umożliwia warstwie sieci przekazać dane do odpowiedniego protokołu warstwy wyższej. Przykładowymi wartościami są: 01 ICMP, 06 TCP, 17 UDP. custodia samsung Typ usługi (ToS) – zawiera 8-bitową wartość binarną, która używana jest do określenia priorytetu każdego pakietu. Ta wartość umożliwia zastosowanie mechanizmów QoS w stosunku do pakietów o wysokim priorytecie, np. przenoszących dane głosowe. Przesunięcie fragmentu – pole stosowane podczas rekonstrukcji podzielonego prze ruter pakietu. Wskazuje porządek w jakim ma być ustawiony każdy z pakietów podczas rekonstrukcji. Flaga MF (ang. More Fragments) – pojedynczy bit używanym z polem przesunięcia fragmentu do podziału i rekonstrukcji pakietów. Gdy bit flagi MF jest ustawiony, oznacza to, że dany fragment nie jest ostatnim fragmentem pakietu. Kiedy host odbierający zauważy przybywający pakiet z ustawioną wartością MF=1, sprawdza pole przesunięcia fragmentu, gdzie należy umieścić ten fragment podczas rekonstrukcji pakietu. Kiedy host odbierający zauważy przybywający pakiet z ustawioną wartością MF=0 i niezerową wartość w polu przesunięcia fragmentu, umieszcza ten fragment jako ostatni kawałek rekonstruowanego pakietu. Flaga DF (ang. Don’t Fragment) – pojedynczy bit, który jeśli jest ustawiony wskazuje, że fragmentowanie pakietu jest niedozwolone. Jeżeli flaga DF jest ustawiona, wtedy fragmentacja tego pakietu nie jest dozwolona. Wersja -zawiera numer wersji protokołu IP (4). Długość nagłówka (IHL) – określa rozmiar nagłówka pakietu. Długość pakietu – to pole podaje w bajtach całkowitą wielkość pakietu, zawierającą nagłówek oraz dane. Identyfikacja – to pole jest używane do jednoznacznego identyfikowania fragmentów podzielonego pakietu IP. Suma kontrolna nagłówka – pole używane jest do sprawdzenia błędów nagłówka pakietu. Opcje – jest to miejsce na dodatkowe pola w nagłówku IPv4 do obsługi innych usług. Jest ono jednak rzadko używane.

Dodaj komentarz