Wykład 3 / Wykład 4 Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak 1
Wprowadzenie do Modułu 3 CCNA-E Funkcje trzech wyższych warstw modelu OSI W jaki sposób ludzie wykorzystują warstwę aplikacji do komunikacji w sieci. W jaki sposób protokoły warstwy aplikacji modelu TCP/IP zapewniają usługi określone przez wyższe warstwy modelu OSI. Najważniejsze funkcje dobrze znanych aplikacji TCP/IP (m.in. WWW, poczta elektroniczna) oraz związane z nimi usługi (HTTP, DNS, SMB, DHCP, SMTP/POP3 oraz Telnet). 2
Warstwa aplikacji naturalny interfejs pomiędzy ludźmi a siecią. 3
Warstwa prezentacji Główne zadania warstwy prezentacji: Kodowanie i konwersja danych warstwy aplikacji - dzięki temu dane pochodzące z urządzenia źródłowego mogą być interpretowane przez odpowiednie aplikacje na urządzeniu docelowym. Kompresja/dekompresja danych. Szyfrowanie danych na potrzeby transmisji oraz deszyfrowanie danych odebranych przez urządzenie docelowe. 4
Warstwa sesji Warstwa sesji, jak sugeruje jej nazwa, jest odpowiedzialna za tworzenie i utrzymywanie sesji komunikacyjnych pomiędzy aplikacjami: źródłową i docelową. Warstwa sesji prowadzi wymianę informacji: rozpoczyna konwersacje, utrzymuje ich aktywność i wznawia je, jeśli zostały utracone lub są od dłuższego czasu bezczynne. Większość aplikacji, jak np. przeglądarka WWW czy klient poczty elektronicznej, łączy funkcjonalność trzech najwyższych warstw: 5, 6 i 7 modelu OSI. 5
Oprogramowanie warstwy aplikacji W warstwie aplikacji istnieją dwa typy oprogramowania (procesów), które umożliwiają dostęp do sieci. Są to aplikacje oraz usługi: Aplikacje są oprogramowaniem (ang. software programs) używanym przez ludzi do komunikacji w sieci. Niektóre aplikacje użytkownika są aplikacjami przystosowanymi do pracy w sieci (ang. network-aware). Takie aplikacje obsługują protokoły warstwy aplikacji i potrafią komunikować się bezpośrednio z protokołami niższych warstw. Przykładami tego typu aplikacji są: klient poczty elektronicznej oraz przeglądarka WWW. Niektóre programy będą potrzebowały pomocy ze strony usług warstwy aplikacji (np. przesyłanie plików czy drukowanie w sieci). Usługi te, pomimo że są transparentne dla użytkownika, łączą go z siecią i przygotowują dane do wysłania. Różne typy danych - tekst, grafika czy video - wymagają różnych usług sieciowych, aby zapewnić im właściwe przygotowanie do przetworzenia przez funkcje występujące w niższych warstwach modelu OSI. 6
Usługi sieciowe DNS (ang. Domain Name System) - protokół używany do odwzorowywania nazw w sieci Internet na adresy IP; HTTP (ang. Hypertext Transfer Protocol) - protokół używany do przesyłania plików opisujących strony WWW; SMTP (ang. Simple Mail Transfer Protocol) - protokół używany do przesyłania wiadomości poczty elektronicznej wraz z załącznikami; Telnet (ang. Telecommunication Network) - protokół emulacji terminala umożliwiający komunikację ze zdalnym urządzeniem; FTP (ang. File Transfer Protocol) - protokół używany do interaktywnego przesyłania plików pomiędzy systemami. 7
Procesy oprogramowania 8
Aplikacje użytkownika, usługi i protokoły warstwy aplikacji 9
Funkcje protokołów warstwy aplikacji 10
Model klient - serwer 11
Model klient - serwer 12
Serwery 13
Usługi i protokoły warstwy aplikacji 14
Aplikacje i sieci Peer-to-Peer (P2P) 15
Aplikacje i sieci Peer-to-Peer (P2P) 16
17
Protokół i usługa DNS 18
Protokół i usługa DNS 19
Protokół i usługa DNS 20
Protokół i usługa DNS 21
Protokół i usługa DNS 22
Format komunikatu DNS 23
Protokół i usługa DNS System nazw domenowych ma strukturę hierarchiczną. Hierarchia wygląda jak odwrócone drzewo z korzeniem (root) na szczycie i gałęziami poniżej. Serwery root utrzymują rekordy z informacjami o tym, jak osiągnąć serwery domen najwyższego poziomu (ang. top-level domains). Te z kolei mają informacje o serwerach kolejnego poziomu, itd. Domeny najwyższego poziomu reprezentują typ organizacji lub kraj pochodzenia. Przykładami domen najwyższego poziomu są np..:.pl - Polska.au - Australia.co - Kolumbia.com - działalność komercyjna lub przemysł.jp - Japonia.org - organizacja non-profit Po domenach najwyższego poziomu występują domeny drugiego poziomu, a poniżej nich - domeny kolejnego niższego poziomu. Każda nazwa domeny jest ścieżką tworzoną w dół odwróconego drzewa. Punktem startowym jest root. 24
Protokół i usługa DNS 25
Protokół HTTP i usługa WWW Kiedy w przeglądarce stron WWW wpisujemy adres strony (tzw. URL - Uniform Resource Locator), przeglądarka nawiązuje połączenie z usługą uruchomioną na serwerze korzystając z protokołu HTTP. URL oraz URI (ang. Uniform Resource Identifier) są terminami, które większość ludzi łączy z adresami WWW. URL http://www.cisco.com/index.html jest przykładem adresu URL, który odnosi się do określonego zasobu - strony WWW nazwanej index.html, która umieszczona jest na serwerze cisco.com (kliknij kolejno przyciski na rysunku w celu zapoznania się z etapami protokołu HTTP). Przeglądarki WWW są aplikacjami klienckimi, które są używane do połączeń z siecią WWW (ang. World Wide Web) oraz do dostępu do zasobów przechowywanych na serwerach WWW. Jak w przypadku większości procesów serwera, serwer WWW uruchamia usługę w tle i udostępnia różne typy plików. W celu dostępu do treści, klient WWW ustanawia połączenie z serwerem i prosi o odpowiednie zasoby. Serwer odpowiada, a przeglądarka po odebraniu zasobów interpretuje dane i prezentuje je użytkownikowi. 26
Protokół HTTP i usługa WWW 27
Protokół HTTP i usługa WWW 28
Protokół HTTP i usługa WWW 29
Protokół HTTP i usługa WWW 30
Usługi E-mail i protokoły SMTP/POP3 Poczta elektroniczna (e-mail) - najbardziej popularna usługa sieciowa - zrewolucjonizowała komunikację między ludźmi dzięki swojej prostocie i szybkości. Do poprawnego działania poczty elektronicznej na komputerze lub innym urządzeniu końcowym (PDA, telefon komórkowy, a nawet TV) wymagane jest klika aplikacji i usług. Protokoły warstwy aplikacji: POP3 (ang. Post Office Protocol) oraz SMTP (ang. Simple Mail Transfer Protocol). Tak jak w przypadku HTTP, protokoły te definiują procesy klient-serwer. 31
Usługi E-mail i protokoły SMTP/POP3 - MUA MUA -> Mail User Agent 32
Usługi E-mail i protokoły SMTP/POP3 MTA -> Mail Transfer Agent 33
Usługi E-mail i protokoły SMTP/POP3 - MTA 34
Protokół FTP FTP (ang. File Transfer Protocol) jest powszechnie używanym protokołem warstwy aplikacji. Protokół FTP został stworzony do obsługi przesyłania plików pomiędzy klientem i serwerem. Klient FTP jest uruchamianą na komputerze aplikacją, która jest używana do wysyłania i pobierania plików z serwera z uruchomionym demonem (usługą ) FTP (FTPd). Aby przesyłanie plików zakończyło się powodzeniem, FTP wymaga dwóch połączeń pomiędzy klientem i serwerem: jednego - do przesyłania komend i odpowiedzi, a drugiego - do faktycznego przesyłania pliku. Pierwsze połączenie z serwerem klient ustanawia na porcie 21 TCP. To połączenie jest używane do kontroli ruchu i przenosi komendy klienta oraz odpowiedzi serwera. Drugie połączenie z serwerem klient ustanawia na porcie 20 TCP. To połączenie jest używane do faktycznego transferu pliku i tworzone każdorazowo, gdy plik jest przesyłany. Przesyłanie pliku może być realizowane w jednym z dwóch kierunków. Klient może pobierać (ang. download) plik z serwera lub przesyłać (ang. upload) plik na serwer. 35
Protokół FTP 36
Protokół DHCP Usługa DHCP (ang. Dynamic Host Configuration Protocol) umożliwia urządzeniom w sieci otrzymywanie adresów IP i innych informacji z serwera DHCP. Ta usługa automatyzuje przypisywanie adresów IP, masek podsieci, bramy i innych parametrów sieciowych. DHCP pozwala hostom otrzymać adres IP dynamicznie, kiedy tylko zostaną podłączone do sieci. Hosty kontaktują się z serwerem i proszą o adres. Serwer DHCP wybiera adres ze skonfigurowanego zakresu adresów, nazywanego pulą i przydziela ("dzierżawi") go hostowi na ustalony okres czasu. 37
Protokół DHCP 38
Protokół SMB 39