Warstwa aplikacji
Transkrypt
Warstwa aplikacji
TCP/IP Warstwa aplikacji mgr inż. Krzysztof Szałajko Modele odniesienia Wersja 1.0 7 Aplikacji 6 Prezentacji 5 Sesji 4 Transportowa Transportowa 3 Sieciowa Internetowa 2 Łącza danych Dostępu do sieci 1 Fizyczna Aplikacji 2 / 50 TCP/IP, a OSI • Model TCP/IP powstał wcześniej, niż model OSI. • Warstwa aplikacji modelu TCP/IP pokrywa się z warstwami aplikacji, prezentacji i sesji modelu OSI. Wersja 1.0 3 / 50 Warstwa aplikacji (OSI) • Jest najwyższą warstwą modelu TCP/IP • Tworzy czytelny dla użytkownika interfejs pomiędzy aplikacjami, a siecią komputerową Wersja 1.0 4 / 50 Warstwa prezentacji (OSI) • Kodowanie / konwersja danych otrzymanych z warstwy aplikacji • Dekodowanie / konwersja przed wysłaniem danych do warstwy aplikacji • Kompresja / dekompresja danych • Szyfrowanie / deszyfrowanie danych • MPEG – standard kodowania i kompresji wideo • JPEG – standard kodowania i kompresji grafiki Wersja 1.0 5 / 50 Warstwa sesji (OSI) • Utworzenie i utrzymanie sesji pomiędzy źródłem i celem • Rozpoczęcie konwersacji, podtrzymywanie, wznowienie w razie zbyt długiego czasu bezczynności Wersja 1.0 6 / 50 Procesy Proces – program uruchomiony na urządzeniu i aktualnie wykonywany • Aplikacje • Usługi Wersja 1.0 7 / 50 Aplikacje Oprogramowanie wykorzystywane do komunikacji w sieci, np.: • Klient poczty • Przeglądarka internetowa Wersja 1.0 8 / 50 Usługi • • • • Transparentne dla użytkownika Łączą z siecią Przygotowują dane do wysłania Np.: – Drukowanie w sieci – Przesyłanie plików Wersja 1.0 9 / 50 Aplikacje – tworzenie komunikatów Usługi – obsługa interfejsu Protokoły – reguły obsługi danych Wersja 1.0 10 / 50 Protokoły Warstwa aplikacji Wersja 1.0 Warstwa aplikacji 11 / 50 Protokoły Protokoły definiują: • Procesy po obu stronach komunikacji • Składnię oraz rodzaj wiadomości • Znaczenie pól informacyjnych • Sposób wysłania oraz potwierdzenia wiadomości • Zasady współdziałania z niższymi warstwami Wersja 1.0 12 / 50 Klient - serwer Wersja 1.0 13 / 50 Peer to peer Wersja 1.0 14 / 50 DNS (Domain Name System) – port 53 TCP/UDP Wersja 1.0 15 / 50 DNS (Domain Name System) – port 53 TCP/UDP Umożliwia nadanie numerycznie oznaczonemu adresie urządzenia nazwy tekstowej, czytelniejszej i bardziej przyswajalnej dla człowieka. Np.: 46.4.119.247 -> technikinformatyk.pl 10.0.0.1 -> srv2012 Wersja 1.0 16 / 50 Protokół DNS Definiuje zautomatyzowaną usługę konwertującą adres urządzenia na nazwę. Opisuje formaty zapytań, odpowiedzi, formaty danych. Wersja 1.0 17 / 50 NSLOOKUP (name server lookup) Wyświetla informacje dot. DNS poszukiwanego urządzenia. Wersja 1.0 18 / 50 Serwer DNS Opisuje domeny za pomocą rekordów zasobowych (resource record). Rekord zawiera: nazwę, adres, typ rekordu. Przykładowe typy rekordów: • A - Adres urządzenia końcowego • NS – autoryzowany serwer nazw • CNAME – umowne nazwy serwerów wraz z ich pełnymi nazwami serwerowymi Wersja 1.0 19 / 50 Serwer DNS Kiedy proces serwera DNS (named) otrzyma zapytanie, przegląda własne rekordy w celu rozpoznania nazwy. W przypadku niepowodzenia pyta inne serwery. Pierwszy z serwerów poszukujących nazwy przechowuje rezultat w pamięci podręcznej w celu redukcji ruchu oraz obciążenia kolejnych w hierarchii serwerów Wersja 1.0 20 / 50 Usługa klienta DNS (windows) Przechowuje poprzednio przekonwertowane nazwy w pamięci. ipconfig /displaydns Wersja 1.0 21 / 50 Wersja 1.0 22 / 50 WWW, protokół HTTP Wersja 1.0 23 / 50 WWW, protokół HTTP Wpisując w przeglądarce internetowej adres URL poszukiwanego zasobu, ta nawiązuje połączenie z usługą znajdującą się na serwerze używając protokołu HTTP. Wersja 1.0 24 / 50 WWW, protokół HTTP Przeglądarka nawiązuje połączenie z serwerem, wysyła żądanie dostępu do wskazanych zasobów, otrzymuje odpowiedź, którą intepretuje i przedstawia użytkownikowi. Wersja 1.0 25 / 50 WWW, protokół HTTP Krok po kroku… • Użytkownik wpisuje w przeglądarkę adres URL, np.: http://technikinformatyk.pl/wyklad/ethernet.pdf • Przeglądarka interpretuje otrzymane informacje: – – – – Wersja 1.0 http – protokół technikinformatyk.pl – nazwa serwera wyklad – lokalizacja ethernet .pdf – żądany plik 26 / 50 WWW, protokół HTTP • Przeglądarka komunikuje się z serwerem DNS w celu konwersji nazwy technikinformatyk.pl na adres IP • Po uzyskaniu adresu przeglądarka wysyła do serwera zgodne z protokołem HTTP zapytanie GET pytając o plik we wskazanej lokalizacji Wersja 1.0 27 / 50 WWW, protokół HTTP • Serwer zwraca odpowiedź w postaci kodu html bądź pliku • Przeglądarka interpretuje odpowiedź, wyświetla jej zawartość Wersja 1.0 28 / 50 WWW, protokół HTTP • HTTP jest protokołem typu żądanie / odpowiedź • Trzy podstawowe rodzaje komunikatów: – GET – prośba o dane – POST – przesłanie danych do serwera – PUT – przesłanie pliku do serwera Wersja 1.0 29 / 50 WWW, protokół HTTP Przykładowe statusy odpowiedzi: • HTTP/1.1 200 OK • 401 – nieautoryzowany dostęp • 403 – dostęp zabroniony • 404 – brak zasobu • 301 – przekierowanie Wersja 1.0 30 / 50 WWW, protokół HTTP Bezpieczeństwo: Protokół HTTP nie jest protokołem bezpiecznym. Komunikaty POST są wysyłane na serwer jawnym, nieszyfrowanym tekstem i mogą być przechwycone i odczytane. Algorytmy uwierzytelniania i szyfrowania stosowane są w protokole HTTPS. Wersja 1.0 31 / 50 DNS, HTTP w Packet Tracer Tworzymy prostą sieć składającą się z połączonych ze sobą klienta i serwera. Wersja 1.0 32 / 50 DNS, HTTP w Packet Tracer Włączamy na serwerze usługę DNS, dodajemy nowy rekord. Wersja 1.0 33 / 50 DNS, HTTP w Packet Tracer Włączamy na serwerze obsługę HTTP. Wersja 1.0 34 / 50 DNS, HTTP w Packet Tracer Ustawiamy na kliencie adres serwera DNS. Wersja 1.0 35 / 50 DNS, HTTP w Packet Tracer Uruchamiamy na kliencie przeglądarkę, wpisujemy adres z wpisu DNS. Wersja 1.0 36 / 50 DNS, HTTP w Packet Tracer W trybie symulacji możemy prześledzić trasę i rodzaje przesyłanych komunikatów. Sprawdźmy co się dzieje podczas wykonania: • ping technikinformatyk.pl Wersja 1.0 37 / 50 E-mail, SMTP / POP Wersja 1.0 38 / 50 E-mail, SMTP / POP MUA (mail user agent) – klient poczty elektronicznej. POP / SMTP – przykładowe protokoły. Odbieranie poczty: POP, IMAP. Wysyłanie poczty: SMTP. Wersja 1.0 39 / 50 E-mail, SMTP / POP MUA MTA Nadawca Odbiorca MTA / MDA MUA Wersja 1.0 40 / 50 E-mail, SMTP / POP Serwer poczty obsługuje dwa procesy: • MTA (Mail transfer agent) • MDA (Mail delivery agent) Agent MTA przyjmuje pocztę, sprawdza, czy adresat jest na liście lokalnych kont pocztowych, jeśli nie, przekazuje do kolejnego agenta MTA. W przeciwnym wypadku agent MDA dostarcza pocztę do adresata. Dodatkowo może filtrować spam, skanować w poszukiwaniu wirusów, potwierdzać odebranie wiadomości. Wersja 1.0 41 / 50 FTP Wersja 1.0 42 / 50 FTP Protokół FTP stworzony został w celu obsługi przesyłania plików na serwer i pobierania z serwera. Wymaga on 2 połączeń, pierwsze na porcie 20, drugie na 21 TCP. Wersja 1.0 43 / 50 FTP Port 21 TCP (połączenie sterujące): kontrola ruchu, przenoszenie komend na serwer i odpowiedzi z serwera. Port 20 TCP (połączenie danych): faktyczny transfer plików. Wersja 1.0 44 / 50 DHCP Wersja 1.0 45 / 50 DHCP Dynamic Host Configuration Protocol Protokół DHCP umożliwia urządzeniom zdalnego otrzymania adresu IP, maski podsieci, bramy i innych parametrów sieciowych. Wersja 1.0 46 / 50 DHCP Host otrzymuje adres IP zaraz po podłączeniu do sieci. Serwer DHCP przydziela jeden z wolnych adresów z puli. Adres ten jest dzierżawiony na określony przedział czasu. Wersja 1.0 47 / 50 DHCP DHCP Discover DHCP Offer DHCP Request DHCP Acknowledge Wersja 1.0 48 / 50 DHCP • Nowo podłączony host rozgłasza pakiet DHCP Discover • Serwer(-y) przesyła propozycję adresu IP, wraz z pozostałymi ustawieniami DHCP Offer • Host akceptuje propozycję i prosi o nadanie adresu DHCP Request • Serwer potwierdza nadanie DHCP ACK lub zaprzecza DHCP NAK Wersja 1.0 49 / 50 Wersja 1.0 50 / 50