TCP/IP
Transkrypt
TCP/IP
Wprowadzenie do TCP/IP Wykład nr 3 Wprowadzenie do TCP/IP TCP/IP to zestaw protokołów dla pakietowej sieci rozległej WAN, o nazwie pochodzącej od dwóch protokołów składowych − TCP - Transmission Control Protocol − IP - Internet Protocol Możliwości TCP/IP Może działać na sprzęcie różnych producentów Zawiera wbudowane trzy podstawowe aplikacje umożliwiające: − pracę zdalną, − transfer plików, − korzystanie z poczty elektronicznej Schemat adresowania IP pozwala na łatwe łączenie wielu sieci Udostępnia dwa niezależne mechanizmy transportowe W warstwie aplikacyjnej TCP/IP opiera się na relacji klient/serwer Może współpracować z różnymi protokołami poziomu łącza danych i różnymi typami nośnika Protokół TCP/IP - zalety otwartość i niezależność od specyfikacji sprzętowoprogramowej systemów komputerowych, możliwość integracji wielu różnych rodzajów sieci komputerowych, wspólny schemat adresacji pozwalający na jednoznaczne zaadresowanie każdego użytkownika, istnienie standardowych protokołów warstw wyższych. dobrą odtwarzalność po awarii, wysoki współczynnik obsługi błędów, mały stopień obciążenie danych własnymi strukturami, możliwość dodawania nowych sieci bez przerywania istniejącej obsługi, 4 Historia protokołu TCP/IP 1962 - pojawienie się koncepcji wielkiej sieci komputerowej, rozpoczęcie prac nad projektem DARPA 1966-69 - powstanie sieci ARPANET i prace nad jej rozwojem 1970 - powstanie protokołu NCP (Network Control Protocol) 1973 - idea sieci o architekturze otwartej TCP/IP (Transmission Control Protocol-Internet Protocol) 1977-80 - powstanie dwóch protokołów dotyczących scalania sieci IGP i EGP (Interior Gateway Protocol i Exterior Gateway Protocol) 1985 - akceptacja TCP/IP jako ogólnego standardu i rozpoczęcie prac nad jego udoskonalaniem Problemy TCP/IP Internet rozrasta się w postępie geometrycznym, ilość przyłączonych hostów podwaja się z każdym rokiem. Groźba wyczerpania się możliwości 32-bitowego adresowania stała się faktem. Przyszłość TCP/IP - Next Generation Nowy, 128-bitowy system adresowania Udoskonalona postać nagłówka IP z rozszerzeniami dla aplikacji i opcji Brak sumy kontrolnej Nowe pole kontrolne zwane etykietą potoku Zabezpieczenie przed zjawiskiem tzw. fragmentacji pośredniej Wbudowane narzędzia kryptograficzne i mechanizmy weryfikacji Architektura TCP/IP TCP/IP a model OSI Adresowanie Warstwy TCP/IP TCP/IP a model OSI Zestaw protokołów TCP/IP nie jest w pełni zgodny z siedmiowarstwowym modelem odniesienia OSI. − wyłącznie trzy warstwy ponad warstwą łącza danych − nie tworzy pełnej hierarchii w ścisłym znaczeniu tego słowa − funkcje spełniane przez poszczególne warstwy modelu OSI nie pokrywają się z funkcjami warstw modelu TCP/IP − siłą napędową rozwoju TCP/IP są użytkownicy końcowi TCP/IP a model OSI Adresowanie Każdy komputer w sieci TCP/IP ma niepowtarzalny, 32bitowy adres IP identyfikujący nie tylko komputer, lecz również sieć do której należy. Adresy IP są 32-bitowe i zapisuje się je w notacji dziesiętnej oddzielając poszczególne segmenty adresu kropkami. Na adres IP składają się trzy podstawowe elementy : − bity określające klasę adresu − część identyfikująca sieć lokalną − część identyfikującą konkretny komputer w sieci Adresowanie Aplikacje komunikują się ze sobą z wykorzystaniem portów Istnieje tzw. lista dobrze znanych portów, zawierająca adresy standardowych aplikacji i usług TCP/IP. Porty służą do identyfikacji aplikacji i usług wykorzystujących TCP lub UDP jako protokół transportowy. Adresowanie IP Format adresu IP 149.156.96.9 Klasy adresów IP Bity 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Klasa A 0 Adres sieci (7 bitów) Klasa B 1 0 Klasa C 1 1 0 Klasa D 1 1 1 0 Adresy grupowe Klasa E 1 1 1 1 Adresy eksperymentalne Adres hosta (24 bitów) Adres sieci (14 bitów) Adres hosta (16 bitów) Adres sieci (21 bitów) Adres hosta (8 bit) 13 Adresowanie – klasy adresowe klasę A rozpoczyna liczba od 0 do 127. klasę B rozpoczyna liczba od 128 do 191. klasę C rozpoczyna liczba od 192 do 223. klasę D rozpoczyna liczba od 224 do 239. klasę E rozpoczyna liczba od 240 do 255. Adresowanie IP Maski podsieci Adres w notacji dziesiętnej Notacja binarna Pełny adres sieciowy 192.168.5.10 11000000.10101000.00000101.00001010 Maska podsieci 255.255.255.0 11111111.11111111.11111111.00000000 Adres sieci 192.168.5.0 11000000.10101000.00000101.00000000 Adres klienta 0.0.0.10 00000000.00000000.00000000.00001010 Zastosowanie Bity 0 1 Adres klasy B 1 0 Maska klasy B 1 1 Klasa B 1 0 Maska podsieci 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Adres sieci (14 bitów ) 1 1 1 1 1 1 1 1 1 1 Adres hosta (16 bitów ) 1 1 1 1 0 0 Adres sieci (14 bitów ) 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 Adres posieci 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 Adres hosta (8 bitów ) 1 1 0 0 0 0 0 0 0 15 0 DNS (Domain Name System) DNS jest usługą polegającą na tłumaczeniu podanych w formacie mnemonicznej adresów internetowych (np. www.agh.edu.pl) na odpowiadające im numery IP. Wprowadzono w celu ułatwienia zapamiętania adresów www.agh.edu.pl <==> 149.156.96.2 Kod com edu gov mil org int net Rozwinięcie commercial educational governemet military organization international network Opis komputer komercyjny (np.: microsoft.com) komputer edukacyjny (np.: uniwersytecki: agh.edu.pl) komputer rządowy (np.: urm.gov.pl) komputer wojskowy lub organizacji związanej z wojskiem inne organizacje organizacje międzynarodowe komputer zawierający zasoby sieciowe 16 DNS Znaczenie poszczególnych części adresu usługa.nazwa.kategoria.kraj Wykaz dostępnych usług Lista występujących kategorii ftp www archie gopher irc com (commercial)komercjalny edu (educational) edukacyjny gov (governemet) rządowy mil (military) wojskowy org (organization) inne organizacje net (network) zasobów sieciowych serwer FTP serwer World Wide Web serwer usługi Archie serwer usługi Gopher serwer usługi IRC Warstwy TCP/IP Warstwa aplikacji Warstwa sieciowa Warstwa transportowa Warstwa łącza danych Warstwa łącza danych W TCP/IP nie ma określonych standardowych protokołów na poziomie warstwy łącza. Wybór zależy od przeznaczenia i wymagań stawianych sieci. W sieci TCP/IP mogą być wykorzystywane różne protokoły łącza, np.: − Ethernet − Token Ring − FDDI (Fiber Distributed Data Interface) − X.25 Technologie sieciowe • Arcnet - Attached Resource Computer Network – pierwszy standard sieci lokalnych, umożliwiał transport z prędkością 2,5 Mbps. Sieć budowana była w oparciu o magistralę przy wykorzystaniu kabla koncentrycznego. • Ethernet - standard sieci lokalnych opracowany w 1976 przez Xerox, Dec i Intel, określający techniczne zasady transmisji danych do 10 Mbps. • FastEthernet - standard umożliwiający transmisję z prędkością do 100 Mbps • TokenRing - prędkość 4-16 Mbps budowana w topologii pierścień. • FDDI - transmisja do 100 Mbps, topologia podwójnego pierścienia, światłowód. • ATM - Asynchronous Transfer Mode, transmisja do 622 20 Mbps. Ewolucja technologii sieciowych Obsługiwane aplikacje Szybkość transmisji w Mb/s Sieci LAN GE GE 1000 FE FDDI 100 10 1 Eth10 100VGany LAN HSTR interakcyjne usługi mutlimedialne (interakcyjny przekaz obrazów) ATM 622 100 25 usługi mutlimedialne (przekaz obrazów stałych o dużej rozdzielczości) TR16 interakcyjny przekaz danych wspomagane komputerowo projektowanie, zarządzanie i wytwarzanie (CAD/CAM) TR4 Eth3 ISDN-P 0,1 ISDN X.25 0,01 Sieci WAN asynchroniczny transfer plików (poczta elektroniczna, asynchoniczny transfer danych X.25 1985 1990 Rok wprowadzenia 1995 2000 21 Urządzenia pomocnicze • Regeneratory to urządzenia mające za zadanie utrzymanie fizycznej komunikacji między stacjami roboczymi a serwerem. • Koncentrator (hub) to elementarny węzeł komunikacyjny w sieci LAN umożliwiający łączenie i rozgałęzianie dróg komunikacyjnych. • Wzmacniak (repeater) to urządzenie sieci lokalnej wzmacniające sygnał, dzięki czemu istnieje możliwość rozszerzenia sieci. 22 Urządzenia pomocnicze Druga grupa obejmuje urządzenia umożliwiające połączenie między sieciami tj. • Most (bridge) – urządzenie łączące dwie lub więcej jednakowe sieci umożliwiające przesyłanie danych między nimi. • Router – umożliwia połączenie sieci LAN i WAN • Brama (gateway) łączy sieci o różnych sposobach przesyłania danych 23 Warstwa aplikacji Warstwa aplikacyjna jest niezależna od platformy sprzętowej i wykorzystuje technologię klient/serwer. Klient inicjuje aplikacje, a serwer odpowiada na żądanie klientów. Realizacją tej koncepcji są podstawowe aplikacje TCP/IP: − TELNET (aplikacja umożliwiająca pracę zdalną) − FTP (aplikacja umożliwiająca transfer plików) − SMTP (aplikacja obsługująca pocztę elektroniczną) Inne protokoły warstwy aplikacyjnej X (protokół udostępniający rozproszone środowisko okienkowe) KERBEROS (protokół zabezpieczający) CMOT (protokół zarządzania informacjami) SNMP (protokół zarządzania siecią) RPC (programy pozwalające aplikacjom wywoływać procedurę uruchamiającą serwer) NFS (rozproszony system zarządzania plikami) TFTP (protokół przesyłania plików wykorzystującym UDP jako mechanizm transportowy) DNS (rozproszona baza danych zawierająca adresy IP i ich aliasy) Warstwa transportowa TCP/IP zawiera dwa mechanizmy transportowe: − TCP jest zorientowanym połączeniowo bezpiecznym protokołem, przeprowadzającym automatyczne retransmisje w przypadku wykrycia błędów. Steruje on danymi otrzymanymi z góry, z warstwy aplikacyjnej. − UDP jest protokołem typu bezpołączeniowego, to znaczy nie sprawdzającym poprawności danych i nie przeprowadzającym retransmisji. UDP jest używany w specyficznych warunkach przez niektóre aplikacje sieciowe. Aplikacje korzystające z UDP muszą mieć własne mechanizmy weryfikacji i retransmisji danych. Realizacja niezawodnego połączenia Reakcja na utratę pakietu Warstwa sieciowa Odpowiada za obsługę komunikację między komputerami. Przyjmuje pakiety z warstwy transportowej razem z informacjami identyfikującymi odbiorcę, sprawdza czy wysłać datagram wprost do odbiorcy czy też do routera. Zajmuje się także datagramami przychodzącym sprawdzając ich poprawność i stwierdzając czy należy je przesłać dalej czy też przetwarzać na miejscu. Warstwa sieciowa - protokoły IP (Internet Protocol) ICMP (Internet Control Message Protocol) ARP (Address Resolution Protocol) RARP (Reverse Address Resolution Protocol) IP - Internet Protocol Najbardziej podstawowa usługa - przenoszenie pakietów bez użycia połączenia nosi nazwę Internet Protocol Usługa ta jest zdefiniowana jako zawodny system przenoszenia pakietów bez użycia połączenia. Każdy pakiet obsługiwany jest niezależnie od innych. Pakiety z jednego ciągu mogą podróżować różnymi ścieżkam, niektóre z nich mogą zostać zgubione, inne natomiast dotrą bez problemów. Pakiet może zostać zagubiony, zduplikowany, zatrzymany lub dostarczony z błędem, a system nie sprawdzi, że coś takiego zaszło, a także nie powiadomi o tym ani nadawcy, ani odbiorcy IP - zadania Definiuje podstawowe jednostki przesyłanych danych, używane w sieciach TCP/IP. Określa dokładny format wszystkich danych przesyłanych przez sieć. Definiuje operacje trasowania, wykonywane przez oprogramowanie IP. Polega ono na wybieraniu trasy, którą będą przesyłane dane. Określa zbiór reguł, które służą do realizacji zawodnego przenoszenia pakietów. Opisują one w jaki sposób węzły i routery powinny przetwarzać pakiety, jak i kiedy powinny być generowane komunikaty o błędach oraz kiedy pakiety mogą być porzucane. ICMP (Internet Control Message Protocol) Powstał aby umożliwić routerom oznajmianie o błędach oraz udostępnianie informacji o niespodziewanych sytuacjach Protokół ICMP jest traktowany jako wymagana część IP i musi być realizowany przez każdą implementację IP Gdy datagram powoduje błąd, ICMP może jedynie powiadomić pierwotnego nadawcę o przyczynie ARP (Address Resolution Protocol) Aby dwie maszyny mogą się komunikować zachodzi potrzeba przekształcenia adresu IP na adres fizyczny tak aby informacja mogła być poprawnie przesyłana. Przekształcenia adresu IP na adres fizyczny dokonuje protokół odwzorowania adresów ARP, który zapewnia dynamiczne odwzorowanie i nie wymaga przechowywania tablicy przekształcania adresowego. Zasada działania ARP RARP (Reverse ARP) protokół odwrotnego odwzorowania adresów RARP umożliwia uzyskiwanie adresu IP na podstawie znajomości własnego adresu fizycznego (pobranego z interfejsu sieciowego). Komputery bez dysku twardego pobierają adres IP z maszyny uprawnionej do świadczenia usług RARP, po przesłaniu zapytania z własnym adresem fizycznym. Zasada działania RARP Adresowanie zasobów za pomocą URL URL - Uniform Resource Locator oznacza ujednolicony format adresowania zasobów (informacji, danych, usług), stosowany w Internecie i w sieciach lokalnych. URL składa się z części określającej rodzaj zasobu/usługi (ang. scheme), dwukropka i części zależnej od rodzaju zasobu (ang. scheme-specific part). np: http://agh.edu.pl 39 URL - Uniform Resource Locator <schemat> : <autoryzacja> : <port> / <ścieżka> ? <zapytanie> # <fragment> lub z użytkownikiem i hasłem: <schemat> : // użytkownik:hasło @ <autoryzacja> : <port> / <ścieżka> ? <zapytanie> # <fragm> http://www.jakis-serwer.pl:8080/katalog1/katalog2/plik? \___/ \_________________/\___/\___________________/ | | | | schemat autoryzacja port ścieżka do pliku (protokół) (nazwa serwera) parametr1=wartosc1¶metr2=wartosc2#fragment_dokumentu \___________________________________/ \__________________/ | | zapytanie fragment 40 URL - Uniform Resource Locator Przykładowy URL: http://www.wikipedia.com/wiki/URL gdzie: http – protokół dostępu do zasobu www.wikipedia.com – adres serwera wiki/URL – ścieżka dostępu do zasobu 41 URL - Uniform Resource Locator najpopularniejsze rodzaje zasobów * FTP * HTTP * HTTPS * MAILTO * telnet * NNTP * file * news 42