Protokół internetowy

Z Wikipedii, wolnej encyklopedii
(Przekierowano z Internet Protocol)
Skocz do: nawigacja, szukaj
Ujednoznacznienie Ten artykuł dotyczy protokołu internetowego. Zobacz też: adres IP, inne zastosowania skrótu IP.

Protokół internetowy (ang. Internet Protocol, skrót IP) – protokół komunikacyjny warstwy sieciowej modelu OSI (warstwy internet w modelu TCP/IP). Protokół internetowy to zbiór ścisłych reguł i kroków postępowania, które są automatycznie wykonywane przez urządzenia w celu nawiązania łączności i wymiany danych. Używany powszechnie w Internecie i sieciach lokalnych.

Dane w sieciach IP są wysyłane w formie bloków określanych mianem pakietów. W przypadku protokołu IP, przed rozpoczęciem transmisji nie jest zestawiana wirtualna sesja komunikacyjna pomiędzy dwoma hostami, które nie komunikowały się ze sobą wcześniej.

Protokół IP jest protokołem zawodnym – nie gwarantuje, że pakiety dotrą do adresata, nie zostaną pofragmentowane, czy też zdublowane, a ponadto mogą dotrzeć do odbiorcy w innej kolejności niż zostały nadane. Niezawodność transmisji danych jest zapewniana przez protokoły warstw wyższych (np. TCP), znajdujących się w hierarchii powyżej warstwy sieciowej.

Opis nagłówka pakietu IPv4[edytuj | edytuj kod]

Bity 0-3 4-7 8-15 16-18 19-23 24-31
Wersja IHL Typ usługi /
DS (6b) + ECN (2b)
Długość całkowita
Identyfikator Flagi Przemieszczenie fragmentacji
TTL Protokół Suma kontrolna nagłówka
Adres źródłowy
Adres docelowy
Opcje Dopełnienie
Wersja
Określa wersję protokołu, obecnie 4 lub 6.
IHL (Internet Header Length)
Długość nagłówka wyrażona w liczbie 4-bajtowych części (np. wartość 5 oznacza 20 bajtów).
Typ Obsługi (Type of Service)
Znaczenie tego pola jako ToS zostało zdefiniowane w RFC 1349 - określało, jaki priorytet powinien mieć pakiet. Oprogramowanie routerów najczęściej ignoruje to pole[1]. Obecnie obowiązują normy RFC 2474 i RFC 2475 definiujące podział tego pola na odpowiednio 6-bitowe DS - Differentiated Services i 2-bitowe ECN - Explicit Congestion Mode. Pierwsze z nich określa sposób przekazywania danych w węźle sieciowym (PHB - Per Hoop Behaviour), drugie zawiadamia o zatorach.
Długość całkowita
Zawiera długość pakietu w bajtach (maksimum 65535 bajtów – maksymalna wartość liczby 16-bitowej; minimum 20 bajtów, bo taka jest długość nagłówka).
Identyfikator
Pomaga poskładać pakiet, który został podzielony na części.
Flagi
Trzy bity, pierwszy to aktualnie zawsze zero, drugi to flaga do-not-fragmet (DF), określająca czy pakiet może być fragmentowany, trzeci to flaga more-fragments-following (MF), informująca o tym czy istnieją dalsze fragmenty pakietu.
Przemieszczenie fragmentu
Pole służy do złożenia w całość pakietu, określając miejsce danego fragmentu w całym pakiecie.
TTL (Time To Live)
Liczba przeskoków, przez które może przejść, zanim zostanie zignorowany (routery i komputery zmniejszają tę wartość o 1, gdy przesyłają pakiet), przykładowo TTL = 16 pozwala na przejście przez 16 routerów, zanim zostanie zignorowany).
Protokół
Określa jaki protokół warstwy transportowej będzie wykorzystany do dostarczenia pakietu na miejsce.
Suma kontrolna nagłówka
Wartość używana do sprawdzania poprawności pakietu.
Adres źródłowy i adres docelowy
32-bitowe adresy IP.

Historyczny podział na klasy adresowe[edytuj | edytuj kod]

W pierwotnej specyfikacji protokołu wprowadzono podział adresów na klasy, przydzielając pule adresów według wartości pierwszego bajtu do klas A, B, C, D lub E. Przynależność do danej klasy określała rozmiar maski sieci.

W zwiazku z wprowadzeniem od roku 1993 założeń RFC 1518 i RFC 1519 (późniejszy RFC 4632), dotyczących wprowadzenie routingu bez klas (CIDR, ang. Classless Inter-Domain Routing), podział na klasy A, B i C utracił znaczenie przy ustalaniu rozmiaru maski sieci i routing w sieciach IP opiera się obecnie na podawanych w konfiguracji maskach sieci bez uwzględniania klas adresowych. Adresy klasy D w dalszym ciągu jest przypisane do usług multikastowych. Nie powiodły się również eksperymenty mające na celu wdrożenie usług opartych na adresach w klasie E (eksperymentalnej).

Klasa A 
Do identyfikacji sieci wykorzystany jest wyłącznie pierwszy oktet, pozostałe trzy stanowią adres hosta. Najstarszy bit pierwszego bajtu adresu jest zawsze równy zeru, ponadto liczby 0 i 127 są zarezerwowane, dlatego ostatecznie dostępnych jest 126 adresów sieci tej klasy. Klasa ta została przeznaczona dla wyjątkowo dużych sieci, ponieważ trzy ostatnie oktety bajtów adresu dają ponad 16 milionów numerów hostów.
Klasa B 
Pierwsze dwa oktety opisują adres sieci tej klasy, pozostałe określają adres hosta. Najstarsze dwa bity pierwszego bajtu adresu to 10, dlatego może on zawierać 63 kombinacji (od 128 do 191), drugi może być dowolny dając tym samym do dyspozycji ponad 16 tysięcy adresów sieci. W każdej z sieci można przypisać podobną liczbę hostów (ponad 65 tysięcy), z tego powodu klasa ta została przeznaczona dla potrzeb sieci średnich i dużych.
Klasa C 
Trzy pierwsze bajty opisują adres sieci, przy czym pierwszy z nich zawsze zaczyna się kombinacją dwójkową 110. Pierwszy bajt pozwala na przypisanie 31 kombinacji (od 192 do 223), kolejne dwa mogą być przypisane dowolnie, dając ostatecznie ponad 2 miliony adresów sieci. Ostatni oktet przeznaczony jest do określenia adresu hosta w sieci. Maksymalnie może być ich 254 (bez 0 oraz 255), dlatego ta przestrzeń adresowa została przeznaczona dla małych sieci.
Klasa D 
Pierwsze cztery bity adresu tej klasy wynoszą 1110, stąd dostępne jest 16 kombinacji (od 224 do 239) dla pierwszego oktetu. Ta przestrzeń adresowa została utworzona w celu umożliwienia rozsyłania grupowego przy użyciu adresów IP. Adres rozsyłania grupowego jest unikatowym adresem sieciowym, który kieruje pakiety o tym adresie docelowym do zdefiniowanej wcześniej grupy adresów IP. Dzięki temu pojedynczy komputer może przesyłać jeden strumień danych równocześnie do wielu odbiorców (multicast).
Klasa E 
Adresy tej klasy zostały zarezerwowane przez Internet Engineering Task Force (IETF) do potrzeb badawczych i nie są dostępne do publicznego użytku. Pierwsze cztery bity każdego adresu tej klasy mają zawsze wartość 1, dlatego istnieje tylko 15 możliwości (od 240 do 255) przypisania pierwszego bajtu.

Uwaga! Należące do klasy A adresy sieciowe 127.0.0.1 – 127.255.255.254 są zarezerwowane na potrzeby testowania pętli zwrotnej. Urządzenia sieciowe korzystają z nich (zazwyczaj z 127.0.0.1), aby wysłać pakiet do samych siebie.

Zobacz też[edytuj | edytuj kod]

Przypisy

  1. Karol Krysiak: Sieci komputerowe. Kompendium. Helion, 2005. ISBN 83-7361-995-X.

Linki zewnętrzne[edytuj | edytuj kod]

  • RFC 791 (grupa anonimowych autorów z Information Sciences Institute, University of Southern California, Internet Protocol, IETF, wrzesień 1981),
  • RFC 1918 – (Y. Rekhter, B. Moskowitz, D. Karrenberg, G. J. de Groot, E. Lear, Address Allocation for Private Internets, IETF, luty 1996) – adresy prywatne IPv4,
  • RFC 4632 – ( V. Fuller, T. Li Classless Inter-domain Routing (CIDR), The Internet Society , 2006.) The Internet Address Assignment and Aggregation Plan
  • Internet Assigned Numbers Authority (IANA)