SlideShare a Scribd company logo
1 of 14
Download to read offline
IDZ DO
         PRZYK£ADOWY ROZDZIA£

                           SPIS TRE CI   Linux w sieci
           KATALOG KSI¥¯EK
                                         Autor: Adam Podstawczyñski
                      KATALOG ONLINE     ISBN: 83-7197-834-0
                                         Format: B5, stron: 224
       ZAMÓW DRUKOWANY KATALOG


              TWÓJ KOSZYK
                                         Linux to jeden z najlepiej przystosowanych do pracy w sieci systemów operacyjnych.
                    DODAJ DO KOSZYKA     Doskonale nadaje siê na sieciow¹ stacjê robocz¹, serwer rozmaitych us³ug (WWW, FTP,
                                         e-mail, news), mo¿e równie¿ s³u¿yæ jako oprogramowanie komputera spe³niaj¹cego
                                         funkcje routera. Ocenia siê, ¿e ponad 1/3 serwerów WWW oparta jest na Linuksie,
         CENNIK I INFORMACJE             co sprawia, ¿e osoby znaj¹ce sieciowe zastosowania tego systemu operacyjnego s¹
                                         szczególnie poszukiwane na rynku pracy.
                   ZAMÓW INFORMACJE      Adam Podstawczyñski, autor bestsellerowego poradnika „Linux. Praktyczne
                     O NOWO CIACH        rozwi¹zania”, tym razem przedstawia wyczerpuj¹cy, dok³adny a zarazem przystêpny
                                         opis obs³ugi sieci przez Linuksa. Ksi¹¿ka rozszerzy Twoj¹ wiedzê nie tylko na temat
                       ZAMÓW CENNIK      systemu Linux, poznasz wiele niezale¿nych od systemu operacyjnego zagadnieñ
                                         pozwalaj¹cych lepiej zrozumieæ funkcjonowanie Internetu.
                                         Mimo, i¿ ksi¹¿ka nie ma charakteru przewodnika opisuj¹cego krok po kroku
                 CZYTELNIA               konfigurowanie Linuksa, to z pewno ci¹ pomocna bêdzie przy rozwi¹zywaniu
                                         problemów z tym systemem. Od rozwa¿añ teoretycznych na temat modelu OSI do opisu
          FRAGMENTY KSI¥¯EK ONLINE       budowy kabla sieciowego — to wszystko znajdziesz w tej doskona³ej ksi¹¿ce. Jest to
                                         idealna pozycja dla administratorów, programistów i webmasterów.
                                         Opisano w niej miêdzy innymi:
                                            • Model OSI — teoretyczny model sieci
                                            • Obs³ugê kart sieciowych przez system Linux
                                            • Konfigurowanie po³¹czeñ PPP
                                            • Instalacjê sieci bezprzewodowych
                                            • Warstwê sieciow¹: ARP, IP, ICMP
                                            • Warstwê transportow¹
                                            • Konfigurowanie zapór sieciowych
                                            • Obs³ugê DNS w Linuksie
Wydawnictwo Helion                          • Bezpieczne po³¹czenia przez SSH
ul. Chopina 6                               • Teoretyczne zagadnienia budowy sieci komputerowych
44-100 Gliwice                              • Opis konfiguracji serwerów internetowych (WWW, FTP, e-mail, news)
tel. (32)230-98-63                            w systemie Linux
e-mail: helion@helion.pl
Spis treści
                Wprowadzenie ................................................................................... 7
Rozdział 1. Model OSI ....................................................................................... 13
                Komunikacja w warstwach — uproszczony opis .............................................................15
                Warstwy OSI — co mówi teoria .......................................................................................17
                   Warstwa 1 fizyczna.....................................................................................................18
                   Warstwa 2 łącza danych..............................................................................................18
                   Warstwa 3 sieciowa ....................................................................................................19
                   Warstwa 4 transportowa .............................................................................................19
                   Warstwa 5 sesji ...........................................................................................................20
                   Warstwa 6 prezentacji.................................................................................................20
                   Warstwa 7 aplikacji.....................................................................................................20
                OSI a TCP/IP.....................................................................................................................20
                Systemy końcowe a systemy pośrednie ............................................................................21
Rozdział 2. Warstwa fizyczna i warstwa łącza danych ......................................... 25
                Topologie ..........................................................................................................................25
                Ethernet .............................................................................................................................26
                   Historia........................................................................................................................26
                   Ogólna zasada działania..............................................................................................27
                   Typy Ethernetu i okablowanie ....................................................................................29
                   Karty sieciowe ............................................................................................................32
                   Wtórniki, koncentratory, przełączniki... .....................................................................34
                   Instalacja karty sieciowej w Linuksie .........................................................................35
                   Format ramki ethernetowej .........................................................................................40
                   Podglądanie pakietów .................................................................................................43
                   Tryb bezładny .............................................................................................................46
                PPP ....................................................................................................................................47
                   Port szeregowy............................................................................................................47
                   Połączenie kablem szeregowym .................................................................................49
                   Połączenie z usługodawcą...........................................................................................66
                Komunikacja bezprzewodowa — przykładowe rozwiązanie ...........................................71
Rozdział 3. Warstwa sieciowa............................................................................ 75
                ARP ...................................................................................................................................75
                     Pakiet ARP..................................................................................................................76
                IP .......................................................................................................................................81
                     Pakiet IP ......................................................................................................................82
                     Adres IP ......................................................................................................................89
                     Routing........................................................................................................................99
                IPsec ................................................................................................................................102
6                                                                                                                                Linux w sieci


                ICMP ...............................................................................................................................108
                   Typy ICMP 0 i 8 oraz program ping.........................................................................108
                   Typ ICMP 3 — Host Unreachable............................................................................111
                   Typ ICMP 5 i przekierowanie w routingu ................................................................114
                   Typy ICMP 9 i 10 oraz wykrywanie routerów .........................................................115
                   Typ ICMP 11 i program traceroute...........................................................................115
Rozdział 4. Warstwa transportowa ................................................................... 119
                Klient, serwer ..................................................................................................................119
                Własny serwer w 3 minuty..............................................................................................121
                Protokół TCP...................................................................................................................124
                    Pakiet TCP ................................................................................................................124
                    Trójfazowe uzgadnianie połączenia..........................................................................125
                    Połączenie TCP w trakcie .........................................................................................128
                    Opcje TCP.................................................................................................................132
                    Kończenie połączenia TCP .......................................................................................136
                    Stany połączenia TCP ...............................................................................................137
                TCP a UDP......................................................................................................................142
                Porty i usługi ...................................................................................................................143
                    Pośrednik w usługach: inetd i tcpd ...........................................................................145
                Zapory sieciowe ..............................................................................................................149
                    Ogólna zasada działania............................................................................................150
                    Zapora w Linuksie 2.2 — ipchains ...........................................................................150
                    Zapora w Linuksie 2.4 — iptables............................................................................165
Rozdział 5. To, co nie mieści się w warstwach ................................................. 179
                DNS.................................................................................................................................179
                   DNS z punktu widzenia klienta — resolver .............................................................181
                   Przykładowy serwer DNS — buforujący .................................................................182
                   Wysyłanie ądań DNS „z palca” ..............................................................................193
                SSH .................................................................................................................................195
                   Klucze publiczne i prywatne.....................................................................................196
                   Komunikacja SSH „na ywo”...................................................................................196
                   Przekierowywanie portów przez SSH ......................................................................199
Dodatek A Opcje konfiguracyjne jądra 2.4 i zmienne sysctl.............................. 205
                Zmienne sysctl.................................................................................................................206
Dodatek B Bibliografia .................................................................................... 207
                Ksią ki.............................................................................................................................207
                Źródła online ...................................................................................................................208
                HOWTO ..........................................................................................................................209
                Dokumenty RFC .............................................................................................................211
                Skorowidz...................................................................................... 213
Rozdział 1.
Model OSI
   Kiedy oglądamy pełną zdjęć i animacji stronę WWW, rzadko zastanawiamy się nad
   tym, w jaki sposób wszystkie te dane docierają do okna naszej przeglądarki. A ju na
   pewno mało kto słyszał o abstrakcyjnym modelu OSI, który opisuje sposób komuni-
   kacji w sieciach komputerowych. To właśnie przez kolejne warstwy modelu OSI „prze-
   dostają się” dane pobierane i wysyłane przez przeglądarkę, program pocztowy, program
   do chatowania itd. Wszystko to dzieje się w sposób „przezroczysty” dla u ytkownika,
   dlatego poza osobami zainteresowanymi samym działaniem sieci — takimi jak Czy-
   telnik tej ksią ki — mało kto zaprząta sobie głowę całym tym mechanizmem.

   Tak naprawdę nawet u ytkownicy z zacięciem technicznym mogą sporo dowiedzieć
   się o funkcjonowaniu sieci w ogóle nie zaprzątając sobie głów nieciekawie brzmiącym
   skrótem „OSI”. Model OSI nie jest związany z adnym konkretnym rozwiązaniem
   sprzętowym czy oprogramowaniem, nie opisuje równie adnej konkretnej imple-
   mentacji sieci. Poniewa jednak poszczególne warstwy tego modelu względnie dobrze
   odpowiadają podziałowi na ró ne mechanizmy, jakie rzeczywiście biorą udział w komu-
   nikacji sieciowej, oraz poniewa na pewnym etapie Czytelnik mo e spotkać się z takimi
   pojęciami, jak „przełącznik warstwy 2” czy „protokoły warstwy 3”, autor postanowił
   rozpocząć właśnie od opisania modelu OSI. Zaznajomienie Czytelnika z warstwami
   modelu OSI umo liwi równie bardziej przejrzyste przedstawienie pozostałego mate-
   riału ksią ki — trzy najwa niejsze rozdziały (2., 3. i 4.) „pną się” po warstwach sieci,
   rozpoczynając od dwóch najni szych.

   W modelu OSI zdefiniowano siedem warstw, z których ka da opisuje inną część ko-
   munikacji sieciowej. Najogólniej mo na powiedzieć, e im wy sza warstwa, tym „bli ej
   u ytkownika”, a im ni sza warstwa, tym „bli ej kabla”. Spójrzmy na rysunek 1.1.

   Z punktu widzenia u ytkownika informacje przesyłane są między jego aplikacją
   (np. przeglądarką czy programem pocztowym) a aplikacją zdalną (np. serwerem WWW
   czy programem pocztowym innego u ytkownika). Tak jakby komunikacja była dwu-
   stronna: aplikacja-aplikacja, u ytkownik-u ytkownik. W rzeczywistości w wymianie
   danych uczestniczy o wiele więcej mechanizmów. Porcja danych wysyłana przez pro-
   gram u ytkownika przekazywana jest kolejnym, coraz ni szym warstwom. Dopiero
   w najni szej warstwie zamieniana jest na impulsy elektryczne i fizycznie przesyłana
14                                                                              Linux w sieci


Rysunek 1.1.




       przez kabel sieciowy (albo inny nośnik). Po dotarciu do komputera docelowego znów
       wędruje przez kolejne warstwy, ale tym razem w odwrotnym kierunku — bity i bajty prze-
       kazywane są „ku górze”, a zostaną odebrane przez właściwą aplikację i u ytkownika.

       Dlaczego tak wa ne było stworzenie modelu precyzyjnie rozdzielającego między poszcze-
       gólne warstwy ró ne zadania związane z komunikacją? Chodzi o przezroczystość i nie-
       zale ność. U ytkownik — szczególnie ten mało interesujący się komputerami — widzi
       tylko, e informacje są przesyłane, np. e e-mail dotarł albo e znajomy odesłał odpo-
       wiedź. W ogóle nic nie wie o wszystkich tych warstwach i mechanizmach biorących
       udział w przesyłaniu danych — są one dla niego „przezroczyste”.

       Za to wysłany e-mail mo e być przesyłany nie tylko między ró nymi programami pocz-
       towymi, systemami operacyjnymi i typami sieci (np. rozległymi i lokalnymi), ale tak e
       za pośrednictwem najró norodniejszych łączy fizycznych — w tym ró nych rodzajów
       kabli — a nawet w sposób bezprzewodowy. Poniewa role poszczególnych warstw
       zostały dokładnie określone w modelu OSI i poniewa ka da warstwa „spodziewa się”
       otrzymania danych w ściśle określonym formacie, mo liwe jest zupełne rozdzielenie
       mechanizmów, oprogramowania i sprzętu odpowiedzialnych za realizację tych warstw.
       Tak więc twórcy programu pocztowego nie obchodzi np. to, jak przebiega trójfazowe
       nawiązywanie połączenia TCP między klientem a serwerem, zaś programista funkcji
       sieciowych systemu operacyjnego nie musi nic wiedzieć o tym, na czym polega prze-
       syłanie fal świetlnych w światłowodzie. Producenci sprzętu, programiści, administrato-
       rzy sieci, twórcy programów u ytkowych — wszyscy oni mogą pracować niezale nie
       i zajmować się „swoimi działkami”. Muszą wiedzieć tylko, według jakich zasad dane
       wymieniane są z warstwami sąsiadującymi. Zasady te opisane są odpowiednimi spe-
       cyfikacjami i protokołami.

       O tym, co dzieje się w poszczególnych warstwach — szczególnie w najni szych czterech
       — jest właściwie cała ta ksią ka. eby jednak uzyskać ogólny pogląd na całość i wstępnie
       zrozumieć, na czym polega wymiana danych w sieci komputerowej, przyjrzyjmy się
       teraz w skrócie poszczególnym warstwom oraz roli, jaką odgrywają w komunikacji.
Rozdział 1. ♦ Model OSI                                                                   15



Komunikacja w warstwach
— uproszczony opis
       Zacznijmy od samej góry. Np. po kliknięciu w programie pocztowym przycisku „Wy-
       ślij” rozpoczyna się komunikacja między naszym komputerem a docelowym serwerem
       pocztowym. Przesyłanie e-maili najczęściej odbywa się za pośrednictwem protokołu
       SMTP, w którym obie strony wymieniają między sobą najpierw wstępne informacje
       (np. adresy źródłowy i docelowy), a potem właściwą treść wiadomości. Ta tekstowa
       wymiana informacji przypomina nieco dialog między ludźmi (— Cześć, mam e-mail
       do przesłania. — Cześć, rozumiem. — To będzie e-mail od adam@english.w3.pl. — OK,
       zrozumiałem... itd.), ale oczywiście wszystkie „zawołania” i „odpowiedzi” mają ściśle
       standardowy format. Program pocztowy, nawiązując tego typu komunikację, korzysta
       właśnie z najwy szej warstwy modelu OSI — warstwy aplikacji. Warstwa aplikacji
       (w tym przypadku protokół SMTP) systemu lokalnego komunikuje się z warstwą
       aplikacji systemu zdalnego. Komunikacja na tej abstrakcyjnej warstwie mo e spraw-
       nie przebiegać bez znajomości wszystkich ni szych warstw. I choć w rzeczywistości
       nie przebiega aden „kabel” pomiędzy lokalną a zdalną warstwą aplikacji, to nawiązane
       zostało wirtualne połączenie (na rysunku oznaczone przerywaną linią), za pośred-
       nictwem którego zostanie przesłany nasz e-mail.

       Aby aplikacje mogły ze sobą „rozmawiać” za pomocą protokołu SMTP, tak jak to
       pokazano na rysunku 1.1, musi istnieć kanał komunikacyjny między odpowiednimi
       dwoma systemami komputerowymi. Kanał, który zapewni niezawodne dostarczanie
       poszczególnych porcji danych do punktu przeznaczenia, będzie odpowiadał za stero-
       wanie przepływem danych i umo liwi ponowienie transmisji, gdyby poszczególne
       pakiety IP gdzieś po drodze „zgubiły się”. W sieciach TCP/IP za te wszystkie funkcje
       odpowiada protokół TCP, funkcjonujący na innym poziomie — w innej warstwie ni
       opisywana wy ej „konwersacja” SMTP. Tym razem wirtualne połączenie (znów prze-
       rywana linia) odbywa się w warstwie... transportowej. Zaraz, a gdzie podziały się war-
       stwa 6 i 5? Wszystko wyjaśni się ju wkrótce, gdy powiemy o rozbie nościach pomiędzy
       protokołami TCP/IP a modelem OSI. Tymczasem jednak rozumiemy, e na poziomie
       warstwy 4 — transportowej — tworzony jest kanał komunikacyjny, którego zadaniem jest
       przede wszystkim zapewnienie, e przesyłane informacje docierają na miejsce oraz e
       dotrą tam we właściwej kolejności (zapewnia niezawodność przesyłania danych).

       Dalej komunikacja odbywa się ju zgodnie z rysunkiem 1.1. eby opisany wy ej kanał
       komunikacyjny mógł być utworzony, musi istnieć sposób na „znalezienie się” dwóch
       końców tego kanału. Przecie w Internecie rzadko jest tak, e dwa komunikujące się
       komputery połączone są jednym, bezpośrednim łączem. Zazwyczaj informacja, zanim
       dotrze na miejsce, przechodzi przez wiele systemów pośrednich (patrz tak e podroz-
       dział „Systemy końcowe a systemy pośrednie”). Trzeba więc zapewnić mechanizm,
       który umo liwi określonej porcji danych odnalezienie drogi do punktu przeznaczenia
       w gąszczu komputerów i sieci. To „odnajdywanie drogi” nazywa się routingiem i odbywa
       się na poziomie warstwy 3, sieciowej. eby mo liwe było odnalezienie właściwej trasy,
       najpierw musi być oczywiście znany adres docelowy. Dlatego równie tutaj, w war-
       stwie 3, realizowane jest adresowanie internetowe — czyli to tu następuje obsługa
       adresów IP. To właśnie protokół IP i warstwa sieciowa odpowiadają za całą „magię”
16                                                                               Linux w sieci


     Internetu — za to, e informacje docierają z jednego końca świata na drugi oraz za to,
      e w wyjątkowych przypadkach pakiet z Wrocławia do Łodzi mo e podró ować...
     przez ocean!

     No dobrze, w warstwie 3 wszystko wygląda bardzo przejrzyście: jest adres źródłowy IP
     i jest adres docelowy, a pakiet dociera tam gdzie trzeba optymalną (choć nie zawsze!)
     trasą. Ale przecie ka dy wie, e Internet to „sieć sieci”, a więc trasa pakietu mo e
     przebiegać przez bardzo ró ne obszary. Stacja wysyłająca mo e się znajdować np.
     w ethernetowej sieci lokalnej (LAN). Po wyjściu z tej sieci pakiet mo e być przesy-
     łany przez łącze typu „punkt-punkt” z usługodawcą — np. po zwykłym kablu telefo-
     nicznym. Stamtąd mo e biec łączem światłowodowym a do innej sieci lokalnej, w której
     z kolei odbierany jest przez stację sieci lokalnej typu Token Ring. Na poziomie war-
     stwy 3 ró nice między tymi sieciami nie mają znaczenia. Za to w warstwie 2, czyli łącza
     danych — owszem! To właśnie tutaj obsługiwane są takie technologie sieciowe, jak
     Ethernet, Token Ring i inne. To tu do pakietu IP (w którym jest informacja o dwóch
     adresach, np. 192.168.0.1 i 192.168.3.2, i niewiele więcej) dodawane są nagłówki spe-
     cyficzne dla konkretnego typu sieci — np. zawierające adresy sprzętowe kart siecio-
     wych. Pakiet w tej postaci (często nazywany „ramką”), gotowy do przesłania, przeka-
     zywany jest następnie najni szej warstwie — fizycznej.

     I dopiero tutaj kolejne bity porcji danych zamieniane są na impulsy elektryczne (lub
     świetlne, ew. radiowe) i przesyłane w fizycznym nośniku. W warstwie fizycznej zaczy-
     nają mieć znaczenie takie pojęcia, jak RJ45, BNC czy ST (typy złączy), skrętka i światło-
     wód wielomodowy (typy kabli) czy „baseband” i „broadband” (typy modulacji). Ta
     warstwa jest zazwyczaj realizowana całkowicie sprzętowo. „Zazwyczaj”, bo istnieją
     przecie programowe emulatory złączy szeregowych, portów USB czy nawet całych
     komputerów.

     A potem? Potem wszystko dzieje się odwrotnie. Pakiet, który dotarł do miejsca prze-
     znaczenia, wędruje „w górę” stosu warstw: impulsy zamieniane są na bity, potem na
     ramki, z ramki konkretnej sieci „obcinane” są informacje sterujące i „powstaje” pakiet IP,
     warstwa czwarta „widzi” ju tylko kanał komunikacyjny, protokół SMTP „rozmawia”
     z drugą stroną połączenia, a odbiorca e-maila... widzi nową wiadomość w skrzynce.
     Gdyby nie istniał standardowy podział na warstwy, program pocztowy musiałby umieć
     zrobić wszystkie opisane wy ej czynności! To oczywiście ograniczałoby jego zasto-
     sowanie tylko do bardzo konkretnej sieci i to pewnie opartej na konkretnym rodzaju
     okablowania — mniej popularne typy sieci nie byłyby na pewno obsługiwane. Dzięki
     spójnemu modelowi warstw programista praktycznie nie musi myśleć w ogóle o war-
     stwach ni szych ni 4, a program będzie działał zarówno w Ethernecie, jak i przez łącza
     PPP, w sieci bezprzewodowej czy choćby przez łącze na podczerwień.

     To tylko przykładowy i uproszczony opis. Nie tylko warstwy zostały omówione pobie -
     nie, ale niektóre z nich w ogóle pominięto. Poza tym wzięto tutaj pod uwagę wyłącznie
     sytuację rzadko spotykaną — taką, w której komputer-nadawca jest połączony bezpo-
     średnio kablem z komputerem-odbiorcą. Szczegółowy, teoretyczny opis wszystkich
     warstw OSI znajduje się poni ej („Warstwy OSI — co mówi teoria”). O tym, dlaczego
     pominięto niektóre warstwy, mówi podrozdział „OSI a TCP/IP”. Natomiast o tym, jak
     to wszystko ma się do rzeczywistej komunikacji sieciowej — gdy informacje przebie-
     gają przez wiele komputerów pośrednich — mo na przeczytać w podrozdziale „Sys-
     temy końcowe a systemy pośrednie”.
Rozdział 1. ♦ Model OSI                                                                    17



Warstwy OSI — co mówi teoria
       Przyjrzyjmy się nieco bardziej szczegółowo — i bardziej technicznie — warstwom
       protokołu OSI. Cała koncepcja warstw opiera się na pojęciu usługi, którą pewna war-
       stwa ni sza (nazwijmy ją n) świadczy warstwie „o jeden wy szej” (warstwie n+1).
       Warstwa n odpowiedzialna jest za pewien mechanizm w komunikacji między syste-
       mami. Mechanizm ten realizowany jest za pomocą protokołu, przy czym sam model
       OSI nie definiuje ani nie wymaga stosowania określonych protokołów — opisuje je-
       dynie ogólnie, jakie usługi mają być świadczone przez daną warstwę. Dzięki takiemu
       podziałowi twórcy konkretnych protokołów, aplikacji, urządzeń sieciowych itd. zwią-
       zanych z poszczególnymi warstwami mogą pracować niezale nie: z autorytatywnych
       źródeł (np. od innych producentów, z dostępnych publicznie specyfikacji) wiedzą, jaką
       usługę świadczy warstwa ni sza (jaki „interfejs” udostępnia) i nie muszą przejmować
       się, w jaki sposób jest ona wewnętrznie realizowana. Podobnie producentom rozwiązań
       warstwy wy szej udostępniają jedynie opis funkcjonalności protokołu swojej warstwy
       — i to ma wystarczyć. Tak więc jakiś protokół warstwy n mo e być wykorzystywany
       przez wiele ró nych protokołów warstwy n+1, a sam mo e korzystać z ró nych protoko-
       łów warstwy n-1 i to bez konieczności komunikowania się z twórcami tych protokołów.
       Hierarchiczny zbiór wszystkich warstw zaimplementowany w konkretny sposób nosi
       nazwę stosu protokołów (np. stos TCP/IP).

       Tak więc w modelu OSI występują dwa aspekty komunikacji. Aspekt „poziomy” to
       komunikacja między tymi samymi warstwami ró nych urządzeń lub systemów (na
       rysunku 1.1 ten aspekt został oznaczony liniami przerywanymi). Aspekt „pionowy” to
       komunikacja między ró nymi, sąsiadującymi warstwami tego samego urządzenia lub
       systemu. W aspekcie poziomym komunikacja jest mo liwa dzięki przyjęciu wspólnego
       protokołu wymiany danych. W aspekcie pionowym sąsiadujące warstwy są w stanie
       wymieniać informacje dzięki przyjęciu określonego interfejsu programowania (API)
       oraz zało eniu, e dana warstwa świadczy ściśle określoną usługę.

       Komunikat przesyłany w warstwie n składa się z informacji sterujących i treści.
       Informacje sterujące mają postać nagłówka i (opcjonalnie) zakończenia, którymi
       „opakowana” jest treść. W treści komunikatu warstwy n znajduje się wszystko to, co
       nale y do warstwy n+1, czyli znów: informacje sterujące i treść. I tak dalej, dopóki
       treści nie stanowią faktyczne informacje, które mają zostać dostarczone do u ytkow-
       nika lub innego systemu — np. treść e-maila. W warstwie sieciowej systemu OSI taki
       komunikat składający się z informacji sterujących i treści nazywa się pakietem; na
       drugiej warstwie u ywa się równie pojęcia ramki. Z kolei w warstwie transportowej
       porcję danych często określa się mianem datagramu, zaś ogólnie porcję danych na
       ró nych warstwach nazywa się tak e segmentem. Do tego dochodzi jeszcze pojęcie
       oktet, którym część autorów określa po prostu bajt, najczęściej przy okazji opisywania
       strumienia bitów. Rozró nienie „oktet-bajt” wprowadzono dlatego, e dokładnie rzecz
       biorąc, bajt nie zawsze musi składać się z ośmiu bitów (np. w komunikacji z termina-
       lami kiedyś często składał się z 7 bitów); natomiast oktet, jak sama nazwa wskazuje, to
       dokładnie 8 bitów. Poniewa nawet autorzy specyfikacji i oprogramowania sieciowego
       nie są konsekwentni w zakresie opisanej w tym akapicie terminologii, w ksią ce nie
       będziemy sztywno trzymali się określonych terminów w odniesieniu do porcji danych
       w ró nych warstwach — rozró nienie będziemy stosować tylko tam, gdzie ma to rze-
       czywiście znaczenie.
18                                                                            Linux w sieci


     Jak więc przesyłany jest pakiet z systemu do systemu? Otó w systemie „nadającym”
     pakiet przemieszcza się „w dół” drabiny warstw. Warstwa n otrzymuje pewną treść,
     opatruje ją swoimi informacjami sterującymi i „wysyła”, korzystając z usług świad-
     czonych przez warstwę n-1. Ta z kolei otrzymuje cały pakiet (dla niej widoczny jest
     jako „treść”), opatruje go swoimi informacjami sterującymi i znów „wysyła”, korzy-
     stając z usług świadczonych przez ni szą warstwę. W ten sposób komunikat, opatrzony
     wieloma warstwami informacji sterujących, dociera do najni szej warstwy. Tutaj jest on
     ju rzeczywiście wysyłany przez określony nośnik (np. kabel telefoniczny), w prze-
     ciwieństwie do warstw wy szych, gdzie „wysyłanie” odbywa się po abstrakcyjnym
     (wirtualnym) łączu biegnącym do odpowiedniej warstwy systemu-odbiorcy.

     W systemie odbierającym pakiet przemieszcza się „w górę”. Coraz wy sze warstwy
     wycinają swoje informacje sterujące, a treść przekazują dalej. Pakiet jest tak „osku-
     bywany” (techniczna nazwa to demultipleksing), a — ju jako konkretna informacja
     — trafi do odbiorcy. Nale y przy tym zauwa yć, e ani nadawca, ani odbiorca wcale
     nie muszą być ludźmi — mogą to być dwa systemy komputerowe (np. portal pobie-
     rający z innej witryny informacje o pogodzie).

     Przyjrzyjmy się teraz bardziej szczegółowo kolejnym warstwom systemu OSI, tym
     razem jednak zaczynając od tej najni szej.


Warstwa 1 fizyczna
     Warstwa fizyczna (Physical Layer) opisuje właściwości elektryczne i funkcjonalne
     faktycznego nośnika, po którym przesyłane są dane — kabla miedzianego, światło-
     wodu, łącza bezprzewodowego itp. Warstwa ta ró ni się od pozostałych tym, e na jej
     poziomie rozpoznawane są tylko pojedyncze bity, a nie całe ramki ani nawet pojedyn-
     cze znaki. Jest to warstwa najbli sza sprzętowi — tutaj bity (a więc logiczne „jedynki”
     i „zera”) zamieniane są na impulsy elektryczne (np. obecność napięcia lub jego brak).
     Bezpośrednio od warstwy fizycznej zale y równie , z jaką szybkością dane mogą być
     przesyłane i na jaką odległość. Przykładowym działaniem tej warstwy jest zamiana
     bitów otrzymywanych z warstwy łącza danych na sygnały na odpowiednich stykach
     złącza równoległego w połączeniu PLIP.

     Z tą warstwą związane są m.in. standardy (lub niektóre części standardów): ISDN, ADSL,
     FDDI, RS-232C, standardy okablowania, standardy komunikowania się modemów
     (w tym np. modemów telewizji kablowej), specyfikacje opisujące właściwości elek-
     tryczne i długości fal, Ethernet, X.25, Token Ring, ATM, Arcnet, standardy bezprze-
     wodowe (np. 802.11b, IrDA) itd.


Warstwa 2 łącza danych
     Warstwa łącza danych (Data Link Layer) zapewnia kontrolę błędów i sterowanie
     przepływem. Jest pierwszą warstwą, w której operuje się na porcjach danych więk-
     szych ni bity — na ramkach (frames). W warstwie tej fizyczne łącze „udostępniane
     jest” jako łącze logiczne warstwom wy szym. Ponadto do tej warstwy nale y dbanie
     o „sprawiedliwy” dostęp wielu urządzeń do jednego nośnika. Warstwa łącza danych
Rozdział 1. ♦ Model OSI                                                                   19


       dzieli się na dwie podwarstwy: sterowania dostępem do nośnika (Media Access Control
       — MAC) i sterowania logicznym łączem (Logical Link Control — LLC). Ramka po-
       wstaje w efekcie współpracy obu tych podwarstw.

       „Ni ej” jest podwarstwa MAC — odpowiada ona za dostęp do nośnika, obsługę kolizji,
       adresów sprzętowych urządzeń.

       Podwarstwa LLC odpowiedzialna jest za część PDU (Protocol Data Unit) ramki. W tej
       „warstwie-nakładce” do ramki mo e być dodawana informacja o tym, który protokół
       warstwy wy szej ma być wykorzystywany (np. IP); informacja ta mo e jednak rów-
       nie występować w warstwie MAC. Tu tak e odbywa się logiczne sterowanie łączem,
       które mo e przybierać ró ne formy: bezpołączeniowe (z potwierdzaniem otrzymania
       pakietów i bez potwierdzania) i połączeniowe (połączenie trwa dopóki, dopóty nie
       zostanie zerwane przez jedną ze stron).

       Przykładowe standardy (lub części standardów) i technologie warstwy łącza danych to:
       Ethernet (IEEE 802.3), Token Ring (IEEE 802.5), adresy MAC, ATM, HDLC, SDLC,
       standardy bezprzewodowe, PPP.


Warstwa 3 sieciowa
       Warstwa sieciowa (Network Layer) zapewnia komunikację w praktycznie całym Inter-
       necie. Jest to pierwsza warstwa, ponad którą aspekty fizyczne łącza, przez które prze-
       syłane są dane, przestają mieć istotne znaczenie. Dwie podstawowe usługi warstwy
       sieciowej to: znajdywanie adresów oraz dostarczanie pakietu z komputera źródłowego
       do docelowego. Tym razem droga pakietu nie musi ju przebiegać bezpośrednio z jed-
       nego systemu do drugiego — po drodze mo e być wiele komputerów i wiele ró nych
       łączy fizycznych (w tym np. bezprzewodowych, światłowodowych itd.). To ta war-
       stwa odpowiedzialna jest za znalezienie trasy do miejsca docelowego (routing), ale
       nie gwarantuje, e wszystkie pakiety dotrą na miejsce, oraz e dotrą tam we właści-
       wej kolejności. Komunikacja w tej warstwie jest bezpołączeniowa, tzn. hosty nie na-
       wiązują „konwersacji” — będzie ona miała miejsce dopiero w warstwie 4. W war-
       stwie sieciowej odbywa się równie tłumaczenie adresów sprzętowych (np. adresy MAC
       kart sieciowych) na adresy sieciowe (np. IP).

       Na poziomie warstwy sieciowej odbywa się równie fragmentacja (dzielenie więk-
       szych pakietów tak, aby „mieściły się” w ramkach warstwy ni szej) oraz zapewnia się
       dodatkowe mechanizmy, np. Quality of Service.

       Najbardziej znanymi protokołami tej warstwy są IP (zarówno IPv4, jak i IPv6), ARP
       i ICMP. Inne standardy warstwy sieciowej to IPX, DDP.


Warstwa 4 transportowa
       Warstwa transportowa odpowiedzialna jest za niezawodne dostarczanie informacji.
       Między stronami połączenia nawiązywany jest dialog, a więc mamy tutaj do czynienia
       z komunikacją połączeniową (choć komunikacja bezpołączeniowa jest równie mo -
       liwa). Jeśli część informacji nie dotrze na miejsce (np. z powodu błędnego routingu),
       transmisja jest ponawiana. Na tym poziomie odbywa się kontrola błędów i sterowanie
20                                                                             Linux w sieci


     przepływem. O ile w ni szych warstwach miały jeszcze znaczenie systemy pośrednie
     (patrz podrozdział „Systemy końcowe a systemy pośrednie”), o tyle na poziomie tej
     warstwy mamy do czynienia ju tylko z dwoma końcami połączenia — systemami koń-
     cowymi, często pełniącymi rolę odpowiednio serwera i klienta. Z drugiej strony, między
     dwoma tymi samymi systemami mo e istnieć wiele połączeń warstwy transportowej.

     Dwa najbardziej znane protokoły tej warstwy to TCP (połączeniowy) i UDP (bezpo-
     łączeniowy). Na poziomie tej warstwy operują równie protokoły zaawansowanego
     routingu, np. BGP czy OSPF.


Warstwa 5 sesji
     W warstwie sesji odbywa się „konwersacja” między stronami połączenia. Ten dialog
     w wielu przypadkach nazywa się właśnie sesją i polega na utrzymywaniu przez jedną
     lub obie strony informacji o bie ącym stanie komunikacji. Umo liwia to np. odtworzenie
     sesji po czasowym zerwaniu połączenia. Na poziomie warstwy 5 zakłada się ju , e
     niezawodne połączenie zostało ustanowione (przez warstwę 4).

     Według ró nych źródeł i sposobów rozumienia warstwy 5, zalicza się do niej czę-
     ściowo protokół TCP, koncepcje „nazwanych potoków” oraz portów usług, protokół
     NetBIOS, AppleTalk (ADSP).


Warstwa 6 prezentacji
     Warstwa ta udostępnia dane w pewien standardowy sposób na potrzeby aplikacji. W tej
     warstwie mogą równie mieć miejsce takie procesy, jak szyfrowanie, kompresja i zmiana
     formatu przesyłanego tekstu (np. zmiana sposobu zapisu końca wiersza między syste-
     mami uniksowymi a Windows, przekodowanie między standardem EBDIC a ASCII).


Warstwa 7 aplikacji
     Najwy sza, siódma warstwa pełni rolę interfejsu, przez który u ytkownik lub aplika-
     cja mo e korzystać z usług sieciowych.

     Przykładowe zastosowania, standardy lub koncepcje, które mo na (czasem luźno)
     sklasyfikować na poziomie tej warstwy to: protokoły SMTP i X.400, FTP, protokoły
     zarządzania siecią (np. SNMP, NICE), zdalny dostęp do komputerów (np. Telnet,
     SSH, rlogin) itp.



OSI a TCP/IP
     W dotychczasowym opisie modelu OSI łatwo zauwa yć niespójności i celowe pominię-
     cia. Wynika to z faktu, e model ten jest propozycją czysto teoretyczną. Powstał w latach
     70. i 80. na biurkach pracowników komitetów normalizacyjnych CCITT (później ITU-T)
Rozdział 1. ♦ Model OSI                                                                    21


       i ISO. Przy jego tworzeniu postawiono głównie na ścisłe przestrzeganie standardów
       — nie było wymogu zgodności z istniejącymi ju implementacjami. Dlatego model
       OSI jest tak bardzo formalny i często... tak nieprzystający do rzeczywistości. Nad
       sposobem zapewnienia ujednoliconej komunikacji między sieciami (ang.: między
       = inter, sieć = network — internetworking) w rzeczywistych warunkach pracowano
       ju wcześniej, w trakcie prac nad „prasiecią” — ARPANET-em. Ju tam pojawiły się
       takie koncepcje, jak „warstwy” i „wirtualne połączenia”, a więc to, co w OSI sforma-
       lizowano wiele lat później. Ró nica między „protokołami ARPANET-u” — czyli
       późniejszym TCP/IP — a modelem OSI polegała na tym, e te pierwsze działały ju
       w praktyce i zdą yły się upowszechnić. Rozwiązania zastosowane w protokołach TCP/IP
       wynikały z praktycznych potrzeb i poddawane były pod publiczną dyskusję w łatwo
       zrozumiałych dokumentach RFC (Request For Comment), które zresztą do dziś wyty-
       czają drogę rozwoju Internetu. Przyjmowały się te standardy, które były najlepsze,
       które najwygodniej dało się implementować, lub które nie wymagały wprowadzania
       istotnych zmian w ju funkcjonujących systemach. Natomiast standardy ISO dojrze-
       wały powoli, protokoły były kłopotliwe w implementacji, a uzyskanie kopii samego
       standardu nie było (i wcią nie jest) proste.

       W wyniku tej sytuacji model OSI okazał się nieco spóźniony — został oficjalnie zapre-
       zentowany wtedy, gdy większość komputerów rozwijającej się sieci globalnej korzy-
       stała ju z TCP/IP. Dlatego, choć niewątpliwie OSI bardzo przejrzyście i jednoznacznie
       definiuje role poszczególnych warstw, rzeczywiście wykorzystywane standardy komu-
       nikacyjne nie zawsze idealnie pokrywają się z siedmioma warstwami modelu, a czasami
       wręcz zupełnie do niego nie przystają. Warstwy komunikacyjne Internetu są zdefi-
       niowane luźniej; często nie mówi się wręcz o „warstwach”, ale po prostu o „wy -
       szych” lub „ni szych” protokołach. W kontekście modelu OSI warstwą „graniczną”
       byłaby tutaj warstwa transportowa. Wszystko to, co ponad nią, określa się często mianem
       warstwy lub protokołów usług i aplikacji; wszystko co pod nią — warstwy lub proto-
       kołów sieci i podsieci, komunikacyjnych itp. W wielu nawet bardzo technicznych opi-
       sach zagadnień sieciowych taki rozdział zupełnie wystarcza.

       Na przykład protokół IP stosunkowo dobrze „pasuje” do warstwy sieciowej. Jednak
       ju protokół TCP mo na odwzorować na warstwę transportową i częściowo warstwę
       sesji OSI. Usługę DNS, bardzo powszechną w Internecie, w ogóle trudno przeło yć na
       model OSI; podobnie jest z mechanizmem ping (protokół ICMP) i protokołem SNMP.
       Z kolei np. warstwa 6, prezentacji, bardzo rzadko występuje „samodzielnie” — naj-
       częściej implementowana jest jako część warstwy aplikacji lub sesji. Na rysunku 1.2
       pokazano, jak niektóre „protokoły Internetu” — z naciskiem na te opisywane w ni-
       niejszej ksią ce — wyglądają na tle warstw modelu OSI.



Systemy końcowe a systemy pośrednie
       Dwa systemy komunikujące się w sieci komputerowej rzadko połączone są bezpo-
       średnio. Najczęściej między systemami końcowymi (end systems — ES) występują
       dodatkowo systemy pośrednie (intermediate systems — IS).
22                                                                             Linux w sieci


Rysunek 1.2.




       Sposób rozumienia systemów końcowych i pośrednich mo e być ró ny na ró nych
       warstwach. Np. kiedy w sieci lokalnej pakiety IP przesyłane są między dwoma kompu-
       terami, pomiędzy którymi znajduje się tylko przełącznik sieciowy, to z punktu widzenia
       warstwy sieciowej nie ma tutaj adnych systemów pośrednich (administrator widzi
       tylko jedno połączenie między dwoma adresami IP); z punktu widzenia warstwy łącza
       danych i fizycznej systemem pośrednim jest przełącznik (mo na wyodrębnić dwa fizyczne
       połączenia: komputer A ↔ przełącznik oraz przełącznik ↔ komputer B).

       Z kolei jeśli wziąć pod uwagę sytuację, w której komunikacja odbywa się między dwoma
       systemami znajdującymi się w ró nych sieciach wchodzących w skład globalnego Inter-
       netu i w której pakiety przebiegają przez przynajmniej jeden router, wtedy połączenie
       jest typu „punkt-punkt” tylko z punktu widzenia warstwy transportowej i wy szych.
       Z punktu widzenia warstwy sieciowej występują tu ju systemy pośrednie (routery).
       Ta sytuacja została zobrazowana na rysunku 1.3.

Rysunek 1.3.




       Na rysunku 1.3 wyraźnie widać, e komunikacja w warstwach 4 i wy szych ma cha-
       rakter „dwupunktowy” (najgrubsza strzałka) i brak tutaj systemów pośrednich. Dla
       tych warstw sposób realizacji komunikacji oraz obecność w nich systemów pośred-
       nich nie ma znaczenia.
Rozdział 1. ♦ Model OSI                                                                  23


       W warstwie 3, sieciowej, połączenia między routerami mają ju znaczenie i są roz-
       ró niane. Dlatego w zilustrowanym wy ej przykładzie mo na na tym poziomie
       wyró nić dwa połączenia (pokazano komunikację z wykorzystaniem jednego routera).
       Router jest systemem pośrednim warstwy 3 (i ni szych).

       Dla urozmaicenia na rysunku wprowadzono równie system pośredni warstwy łącza
       danych (najmniejszy prostokąt). Mo e to być np. przełącznik sieciowy. Warto zauwa yć,
        e z punktu widzenia warstwy sieciowej urządzenie to nie ma znaczenia (router „widzi”
       bezpośrednio system końcowy B).

       Jak widać, systemy pośrednie mogą występować w ró nych warstwach modelu OSI.
       Mo na choćby dowodzić, e systemem pośrednim najwy szych warstw jest serwer
       pocztowy przekazujący nasz e-mail do innego serwera (relaying). Kiedy jednak mowa
       o systemach pośrednich w kontekście modelu OSI, bardzo często w domyśle dodaje
       się właśnie „warstwy trzeciej” — a więc słysząc „system pośredni” mo emy przyjąć,
        e chodzi o router.

More Related Content

What's hot

PHP, MySQL i Apache dla każdego. Wydanie III
PHP, MySQL i Apache dla każdego. Wydanie IIIPHP, MySQL i Apache dla każdego. Wydanie III
PHP, MySQL i Apache dla każdego. Wydanie IIIWydawnictwo Helion
 
Serwery internetowe Red Hat Linux
Serwery internetowe Red Hat LinuxSerwery internetowe Red Hat Linux
Serwery internetowe Red Hat LinuxWydawnictwo Helion
 
FreeBSD. Podstawy administracji systemem
FreeBSD. Podstawy administracji systememFreeBSD. Podstawy administracji systemem
FreeBSD. Podstawy administracji systememWydawnictwo Helion
 
FreeBSD. Podstawy administracji systemem. Wydanie II
FreeBSD. Podstawy administracji systemem. Wydanie IIFreeBSD. Podstawy administracji systemem. Wydanie II
FreeBSD. Podstawy administracji systemem. Wydanie IIWydawnictwo Helion
 
Rozbudowa i naprawa sieci. Wydanie II
Rozbudowa i naprawa sieci. Wydanie IIRozbudowa i naprawa sieci. Wydanie II
Rozbudowa i naprawa sieci. Wydanie IIWydawnictwo Helion
 
Linux. Najlepsze przepisy. Wydanie II
Linux. Najlepsze przepisy. Wydanie IILinux. Najlepsze przepisy. Wydanie II
Linux. Najlepsze przepisy. Wydanie IIWydawnictwo Helion
 

What's hot (20)

Cisco. Receptury
Cisco. RecepturyCisco. Receptury
Cisco. Receptury
 
Linux. Komendy i polecenia
Linux. Komendy i poleceniaLinux. Komendy i polecenia
Linux. Komendy i polecenia
 
PHP, MySQL i Apache dla każdego. Wydanie III
PHP, MySQL i Apache dla każdego. Wydanie IIIPHP, MySQL i Apache dla każdego. Wydanie III
PHP, MySQL i Apache dla każdego. Wydanie III
 
Mandrake Linux. Ćwiczenia
Mandrake Linux. ĆwiczeniaMandrake Linux. Ćwiczenia
Mandrake Linux. Ćwiczenia
 
Serwery internetowe Red Hat Linux
Serwery internetowe Red Hat LinuxSerwery internetowe Red Hat Linux
Serwery internetowe Red Hat Linux
 
FreeBSD. Podstawy administracji systemem
FreeBSD. Podstawy administracji systememFreeBSD. Podstawy administracji systemem
FreeBSD. Podstawy administracji systemem
 
FreeBSD. Podstawy administracji systemem. Wydanie II
FreeBSD. Podstawy administracji systemem. Wydanie IIFreeBSD. Podstawy administracji systemem. Wydanie II
FreeBSD. Podstawy administracji systemem. Wydanie II
 
Rozbudowa i naprawa serwerów
Rozbudowa i naprawa serwerówRozbudowa i naprawa serwerów
Rozbudowa i naprawa serwerów
 
Po prostu Red Hat Linux 9
Po prostu Red Hat Linux 9Po prostu Red Hat Linux 9
Po prostu Red Hat Linux 9
 
Fedora Core 2 dla każdego
Fedora Core 2 dla każdegoFedora Core 2 dla każdego
Fedora Core 2 dla każdego
 
Rozbudowa i naprawa sieci. Wydanie II
Rozbudowa i naprawa sieci. Wydanie IIRozbudowa i naprawa sieci. Wydanie II
Rozbudowa i naprawa sieci. Wydanie II
 
ABC sieci komputerowych
ABC sieci komputerowychABC sieci komputerowych
ABC sieci komputerowych
 
Aurox. Ćwiczenia
Aurox. ĆwiczeniaAurox. Ćwiczenia
Aurox. Ćwiczenia
 
Linux. Najlepsze przepisy. Wydanie II
Linux. Najlepsze przepisy. Wydanie IILinux. Najlepsze przepisy. Wydanie II
Linux. Najlepsze przepisy. Wydanie II
 
Sieci komputerowe. Kompendium
Sieci komputerowe. KompendiumSieci komputerowe. Kompendium
Sieci komputerowe. Kompendium
 
Fedora 7. Księga eksperta
Fedora 7. Księga ekspertaFedora 7. Księga eksperta
Fedora 7. Księga eksperta
 
Systemy plików w Linuksie
Systemy plików w LinuksieSystemy plików w Linuksie
Systemy plików w Linuksie
 
Jak to się robi w Linuksie
Jak to się robi w LinuksieJak to się robi w Linuksie
Jak to się robi w Linuksie
 
Linux. Praktyczny kurs
Linux. Praktyczny kursLinux. Praktyczny kurs
Linux. Praktyczny kurs
 
ABC Neostrada
ABC NeostradaABC Neostrada
ABC Neostrada
 

Similar to Linux w sieci

Po prostu własny serwer internetowy
Po prostu własny serwer internetowyPo prostu własny serwer internetowy
Po prostu własny serwer internetowyWydawnictwo Helion
 
Sieci komputerowe. Księga eksperta. Wydanie II poprawione i uzupełnione
Sieci komputerowe. Księga eksperta. Wydanie II poprawione i  uzupełnioneSieci komputerowe. Księga eksperta. Wydanie II poprawione i  uzupełnione
Sieci komputerowe. Księga eksperta. Wydanie II poprawione i uzupełnioneWydawnictwo Helion
 
Red Hat Linux 8. Ćwiczenia praktyczne
Red Hat Linux 8. Ćwiczenia praktyczneRed Hat Linux 8. Ćwiczenia praktyczne
Red Hat Linux 8. Ćwiczenia praktyczneWydawnictwo Helion
 
Red Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga ekspertaRed Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga ekspertaWydawnictwo Helion
 
Sieci komputerowe. Budowa i działanie
Sieci komputerowe. Budowa i działanieSieci komputerowe. Budowa i działanie
Sieci komputerowe. Budowa i działanieWydawnictwo Helion
 
Damn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjny
Damn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjnyDamn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjny
Damn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjnyWydawnictwo Helion
 
MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalisty
MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalistyMySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalisty
MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalistyWydawnictwo Helion
 
Rozbudowa i naprawa sieci. Wydanie V
Rozbudowa i naprawa sieci. Wydanie VRozbudowa i naprawa sieci. Wydanie V
Rozbudowa i naprawa sieci. Wydanie VWydawnictwo Helion
 
Linux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. BibliaLinux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. BibliaWydawnictwo Helion
 
Bezpieczeństwo w sieciach Windows
Bezpieczeństwo w sieciach WindowsBezpieczeństwo w sieciach Windows
Bezpieczeństwo w sieciach WindowsWydawnictwo Helion
 
Sieci VPN. Zdalna praca i bezpieczeństwo danych
Sieci VPN. Zdalna praca i bezpieczeństwo danychSieci VPN. Zdalna praca i bezpieczeństwo danych
Sieci VPN. Zdalna praca i bezpieczeństwo danychWydawnictwo Helion
 

Similar to Linux w sieci (19)

Po prostu własny serwer internetowy
Po prostu własny serwer internetowyPo prostu własny serwer internetowy
Po prostu własny serwer internetowy
 
Sieci komputerowe. Księga eksperta. Wydanie II poprawione i uzupełnione
Sieci komputerowe. Księga eksperta. Wydanie II poprawione i  uzupełnioneSieci komputerowe. Księga eksperta. Wydanie II poprawione i  uzupełnione
Sieci komputerowe. Księga eksperta. Wydanie II poprawione i uzupełnione
 
TCP/IP dla każdego
TCP/IP dla każdegoTCP/IP dla każdego
TCP/IP dla każdego
 
Po prostu Red Hat Linux 8
Po prostu Red Hat Linux 8Po prostu Red Hat Linux 8
Po prostu Red Hat Linux 8
 
Red Hat Linux 8. Ćwiczenia praktyczne
Red Hat Linux 8. Ćwiczenia praktyczneRed Hat Linux 8. Ćwiczenia praktyczne
Red Hat Linux 8. Ćwiczenia praktyczne
 
Red Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga ekspertaRed Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga eksperta
 
Sieci komputerowe. Budowa i działanie
Sieci komputerowe. Budowa i działanieSieci komputerowe. Budowa i działanie
Sieci komputerowe. Budowa i działanie
 
Damn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjny
Damn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjnyDamn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjny
Damn Small Linux. Uniwersalny, szybki i bezpieczny system operacyjny
 
Linux. Leksykon kieszonkowy
Linux. Leksykon kieszonkowyLinux. Leksykon kieszonkowy
Linux. Leksykon kieszonkowy
 
JDBC. Leksykon kieszonkowy
JDBC. Leksykon kieszonkowyJDBC. Leksykon kieszonkowy
JDBC. Leksykon kieszonkowy
 
Red Hat Linux 8. Biblia
Red Hat Linux 8. BibliaRed Hat Linux 8. Biblia
Red Hat Linux 8. Biblia
 
MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalisty
MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalistyMySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalisty
MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalisty
 
Rozbudowa i naprawa sieci. Wydanie V
Rozbudowa i naprawa sieci. Wydanie VRozbudowa i naprawa sieci. Wydanie V
Rozbudowa i naprawa sieci. Wydanie V
 
Linux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. BibliaLinux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. Biblia
 
Linux. Kurs
Linux. KursLinux. Kurs
Linux. Kurs
 
Bezpieczeństwo w sieciach Windows
Bezpieczeństwo w sieciach WindowsBezpieczeństwo w sieciach Windows
Bezpieczeństwo w sieciach Windows
 
Fedora Core. Ćwiczenia
Fedora Core. ĆwiczeniaFedora Core. Ćwiczenia
Fedora Core. Ćwiczenia
 
Red Hat Linux 9. Biblia
Red Hat Linux 9. BibliaRed Hat Linux 9. Biblia
Red Hat Linux 9. Biblia
 
Sieci VPN. Zdalna praca i bezpieczeństwo danych
Sieci VPN. Zdalna praca i bezpieczeństwo danychSieci VPN. Zdalna praca i bezpieczeństwo danych
Sieci VPN. Zdalna praca i bezpieczeństwo danych
 

More from Wydawnictwo Helion

Tworzenie filmów w Windows XP. Projekty
Tworzenie filmów w Windows XP. ProjektyTworzenie filmów w Windows XP. Projekty
Tworzenie filmów w Windows XP. ProjektyWydawnictwo Helion
 
Blog, więcej niż internetowy pamiętnik
Blog, więcej niż internetowy pamiętnikBlog, więcej niż internetowy pamiętnik
Blog, więcej niż internetowy pamiętnikWydawnictwo Helion
 
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczne
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktycznePozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczne
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczneWydawnictwo Helion
 
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesie
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesieE-wizerunek. Internet jako narzędzie kreowania image'u w biznesie
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesieWydawnictwo Helion
 
Microsoft Visual C++ 2008. Tworzenie aplikacji dla Windows
Microsoft Visual C++ 2008. Tworzenie aplikacji dla WindowsMicrosoft Visual C++ 2008. Tworzenie aplikacji dla Windows
Microsoft Visual C++ 2008. Tworzenie aplikacji dla WindowsWydawnictwo Helion
 
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie II
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie IICo potrafi Twój iPhone? Podręcznik użytkownika. Wydanie II
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie IIWydawnictwo Helion
 
Makrofotografia. Magia szczegółu
Makrofotografia. Magia szczegółuMakrofotografia. Magia szczegółu
Makrofotografia. Magia szczegółuWydawnictwo Helion
 
Java. Efektywne programowanie. Wydanie II
Java. Efektywne programowanie. Wydanie IIJava. Efektywne programowanie. Wydanie II
Java. Efektywne programowanie. Wydanie IIWydawnictwo Helion
 
Ajax, JavaScript i PHP. Intensywny trening
Ajax, JavaScript i PHP. Intensywny treningAjax, JavaScript i PHP. Intensywny trening
Ajax, JavaScript i PHP. Intensywny treningWydawnictwo Helion
 
PowerPoint 2007 PL. Seria praktyk
PowerPoint 2007 PL. Seria praktykPowerPoint 2007 PL. Seria praktyk
PowerPoint 2007 PL. Seria praktykWydawnictwo Helion
 
Serwisy społecznościowe. Budowa, administracja i moderacja
Serwisy społecznościowe. Budowa, administracja i moderacjaSerwisy społecznościowe. Budowa, administracja i moderacja
Serwisy społecznościowe. Budowa, administracja i moderacjaWydawnictwo Helion
 

More from Wydawnictwo Helion (20)

Tworzenie filmów w Windows XP. Projekty
Tworzenie filmów w Windows XP. ProjektyTworzenie filmów w Windows XP. Projekty
Tworzenie filmów w Windows XP. Projekty
 
Blog, więcej niż internetowy pamiętnik
Blog, więcej niż internetowy pamiętnikBlog, więcej niż internetowy pamiętnik
Blog, więcej niż internetowy pamiętnik
 
Access w biurze i nie tylko
Access w biurze i nie tylkoAccess w biurze i nie tylko
Access w biurze i nie tylko
 
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczne
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktycznePozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczne
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczne
 
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesie
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesieE-wizerunek. Internet jako narzędzie kreowania image'u w biznesie
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesie
 
Microsoft Visual C++ 2008. Tworzenie aplikacji dla Windows
Microsoft Visual C++ 2008. Tworzenie aplikacji dla WindowsMicrosoft Visual C++ 2008. Tworzenie aplikacji dla Windows
Microsoft Visual C++ 2008. Tworzenie aplikacji dla Windows
 
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie II
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie IICo potrafi Twój iPhone? Podręcznik użytkownika. Wydanie II
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie II
 
Makrofotografia. Magia szczegółu
Makrofotografia. Magia szczegółuMakrofotografia. Magia szczegółu
Makrofotografia. Magia szczegółu
 
Windows PowerShell. Podstawy
Windows PowerShell. PodstawyWindows PowerShell. Podstawy
Windows PowerShell. Podstawy
 
Java. Efektywne programowanie. Wydanie II
Java. Efektywne programowanie. Wydanie IIJava. Efektywne programowanie. Wydanie II
Java. Efektywne programowanie. Wydanie II
 
JavaScript. Pierwsze starcie
JavaScript. Pierwsze starcieJavaScript. Pierwsze starcie
JavaScript. Pierwsze starcie
 
Ajax, JavaScript i PHP. Intensywny trening
Ajax, JavaScript i PHP. Intensywny treningAjax, JavaScript i PHP. Intensywny trening
Ajax, JavaScript i PHP. Intensywny trening
 
PowerPoint 2007 PL. Seria praktyk
PowerPoint 2007 PL. Seria praktykPowerPoint 2007 PL. Seria praktyk
PowerPoint 2007 PL. Seria praktyk
 
Excel 2007 PL. Seria praktyk
Excel 2007 PL. Seria praktykExcel 2007 PL. Seria praktyk
Excel 2007 PL. Seria praktyk
 
Access 2007 PL. Seria praktyk
Access 2007 PL. Seria praktykAccess 2007 PL. Seria praktyk
Access 2007 PL. Seria praktyk
 
Word 2007 PL. Seria praktyk
Word 2007 PL. Seria praktykWord 2007 PL. Seria praktyk
Word 2007 PL. Seria praktyk
 
Serwisy społecznościowe. Budowa, administracja i moderacja
Serwisy społecznościowe. Budowa, administracja i moderacjaSerwisy społecznościowe. Budowa, administracja i moderacja
Serwisy społecznościowe. Budowa, administracja i moderacja
 
AutoCAD 2008 i 2008 PL
AutoCAD 2008 i 2008 PLAutoCAD 2008 i 2008 PL
AutoCAD 2008 i 2008 PL
 
Bazy danych. Pierwsze starcie
Bazy danych. Pierwsze starcieBazy danych. Pierwsze starcie
Bazy danych. Pierwsze starcie
 
Inventor. Pierwsze kroki
Inventor. Pierwsze krokiInventor. Pierwsze kroki
Inventor. Pierwsze kroki
 

Linux w sieci

  • 1. IDZ DO PRZYK£ADOWY ROZDZIA£ SPIS TRE CI Linux w sieci KATALOG KSI¥¯EK Autor: Adam Podstawczyñski KATALOG ONLINE ISBN: 83-7197-834-0 Format: B5, stron: 224 ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK Linux to jeden z najlepiej przystosowanych do pracy w sieci systemów operacyjnych. DODAJ DO KOSZYKA Doskonale nadaje siê na sieciow¹ stacjê robocz¹, serwer rozmaitych us³ug (WWW, FTP, e-mail, news), mo¿e równie¿ s³u¿yæ jako oprogramowanie komputera spe³niaj¹cego funkcje routera. Ocenia siê, ¿e ponad 1/3 serwerów WWW oparta jest na Linuksie, CENNIK I INFORMACJE co sprawia, ¿e osoby znaj¹ce sieciowe zastosowania tego systemu operacyjnego s¹ szczególnie poszukiwane na rynku pracy. ZAMÓW INFORMACJE Adam Podstawczyñski, autor bestsellerowego poradnika „Linux. Praktyczne O NOWO CIACH rozwi¹zania”, tym razem przedstawia wyczerpuj¹cy, dok³adny a zarazem przystêpny opis obs³ugi sieci przez Linuksa. Ksi¹¿ka rozszerzy Twoj¹ wiedzê nie tylko na temat ZAMÓW CENNIK systemu Linux, poznasz wiele niezale¿nych od systemu operacyjnego zagadnieñ pozwalaj¹cych lepiej zrozumieæ funkcjonowanie Internetu. Mimo, i¿ ksi¹¿ka nie ma charakteru przewodnika opisuj¹cego krok po kroku CZYTELNIA konfigurowanie Linuksa, to z pewno ci¹ pomocna bêdzie przy rozwi¹zywaniu problemów z tym systemem. Od rozwa¿añ teoretycznych na temat modelu OSI do opisu FRAGMENTY KSI¥¯EK ONLINE budowy kabla sieciowego — to wszystko znajdziesz w tej doskona³ej ksi¹¿ce. Jest to idealna pozycja dla administratorów, programistów i webmasterów. Opisano w niej miêdzy innymi: • Model OSI — teoretyczny model sieci • Obs³ugê kart sieciowych przez system Linux • Konfigurowanie po³¹czeñ PPP • Instalacjê sieci bezprzewodowych • Warstwê sieciow¹: ARP, IP, ICMP • Warstwê transportow¹ • Konfigurowanie zapór sieciowych • Obs³ugê DNS w Linuksie Wydawnictwo Helion • Bezpieczne po³¹czenia przez SSH ul. Chopina 6 • Teoretyczne zagadnienia budowy sieci komputerowych 44-100 Gliwice • Opis konfiguracji serwerów internetowych (WWW, FTP, e-mail, news) tel. (32)230-98-63 w systemie Linux e-mail: helion@helion.pl
  • 2. Spis treści Wprowadzenie ................................................................................... 7 Rozdział 1. Model OSI ....................................................................................... 13 Komunikacja w warstwach — uproszczony opis .............................................................15 Warstwy OSI — co mówi teoria .......................................................................................17 Warstwa 1 fizyczna.....................................................................................................18 Warstwa 2 łącza danych..............................................................................................18 Warstwa 3 sieciowa ....................................................................................................19 Warstwa 4 transportowa .............................................................................................19 Warstwa 5 sesji ...........................................................................................................20 Warstwa 6 prezentacji.................................................................................................20 Warstwa 7 aplikacji.....................................................................................................20 OSI a TCP/IP.....................................................................................................................20 Systemy końcowe a systemy pośrednie ............................................................................21 Rozdział 2. Warstwa fizyczna i warstwa łącza danych ......................................... 25 Topologie ..........................................................................................................................25 Ethernet .............................................................................................................................26 Historia........................................................................................................................26 Ogólna zasada działania..............................................................................................27 Typy Ethernetu i okablowanie ....................................................................................29 Karty sieciowe ............................................................................................................32 Wtórniki, koncentratory, przełączniki... .....................................................................34 Instalacja karty sieciowej w Linuksie .........................................................................35 Format ramki ethernetowej .........................................................................................40 Podglądanie pakietów .................................................................................................43 Tryb bezładny .............................................................................................................46 PPP ....................................................................................................................................47 Port szeregowy............................................................................................................47 Połączenie kablem szeregowym .................................................................................49 Połączenie z usługodawcą...........................................................................................66 Komunikacja bezprzewodowa — przykładowe rozwiązanie ...........................................71 Rozdział 3. Warstwa sieciowa............................................................................ 75 ARP ...................................................................................................................................75 Pakiet ARP..................................................................................................................76 IP .......................................................................................................................................81 Pakiet IP ......................................................................................................................82 Adres IP ......................................................................................................................89 Routing........................................................................................................................99 IPsec ................................................................................................................................102
  • 3. 6 Linux w sieci ICMP ...............................................................................................................................108 Typy ICMP 0 i 8 oraz program ping.........................................................................108 Typ ICMP 3 — Host Unreachable............................................................................111 Typ ICMP 5 i przekierowanie w routingu ................................................................114 Typy ICMP 9 i 10 oraz wykrywanie routerów .........................................................115 Typ ICMP 11 i program traceroute...........................................................................115 Rozdział 4. Warstwa transportowa ................................................................... 119 Klient, serwer ..................................................................................................................119 Własny serwer w 3 minuty..............................................................................................121 Protokół TCP...................................................................................................................124 Pakiet TCP ................................................................................................................124 Trójfazowe uzgadnianie połączenia..........................................................................125 Połączenie TCP w trakcie .........................................................................................128 Opcje TCP.................................................................................................................132 Kończenie połączenia TCP .......................................................................................136 Stany połączenia TCP ...............................................................................................137 TCP a UDP......................................................................................................................142 Porty i usługi ...................................................................................................................143 Pośrednik w usługach: inetd i tcpd ...........................................................................145 Zapory sieciowe ..............................................................................................................149 Ogólna zasada działania............................................................................................150 Zapora w Linuksie 2.2 — ipchains ...........................................................................150 Zapora w Linuksie 2.4 — iptables............................................................................165 Rozdział 5. To, co nie mieści się w warstwach ................................................. 179 DNS.................................................................................................................................179 DNS z punktu widzenia klienta — resolver .............................................................181 Przykładowy serwer DNS — buforujący .................................................................182 Wysyłanie ądań DNS „z palca” ..............................................................................193 SSH .................................................................................................................................195 Klucze publiczne i prywatne.....................................................................................196 Komunikacja SSH „na ywo”...................................................................................196 Przekierowywanie portów przez SSH ......................................................................199 Dodatek A Opcje konfiguracyjne jądra 2.4 i zmienne sysctl.............................. 205 Zmienne sysctl.................................................................................................................206 Dodatek B Bibliografia .................................................................................... 207 Ksią ki.............................................................................................................................207 Źródła online ...................................................................................................................208 HOWTO ..........................................................................................................................209 Dokumenty RFC .............................................................................................................211 Skorowidz...................................................................................... 213
  • 4. Rozdział 1. Model OSI Kiedy oglądamy pełną zdjęć i animacji stronę WWW, rzadko zastanawiamy się nad tym, w jaki sposób wszystkie te dane docierają do okna naszej przeglądarki. A ju na pewno mało kto słyszał o abstrakcyjnym modelu OSI, który opisuje sposób komuni- kacji w sieciach komputerowych. To właśnie przez kolejne warstwy modelu OSI „prze- dostają się” dane pobierane i wysyłane przez przeglądarkę, program pocztowy, program do chatowania itd. Wszystko to dzieje się w sposób „przezroczysty” dla u ytkownika, dlatego poza osobami zainteresowanymi samym działaniem sieci — takimi jak Czy- telnik tej ksią ki — mało kto zaprząta sobie głowę całym tym mechanizmem. Tak naprawdę nawet u ytkownicy z zacięciem technicznym mogą sporo dowiedzieć się o funkcjonowaniu sieci w ogóle nie zaprzątając sobie głów nieciekawie brzmiącym skrótem „OSI”. Model OSI nie jest związany z adnym konkretnym rozwiązaniem sprzętowym czy oprogramowaniem, nie opisuje równie adnej konkretnej imple- mentacji sieci. Poniewa jednak poszczególne warstwy tego modelu względnie dobrze odpowiadają podziałowi na ró ne mechanizmy, jakie rzeczywiście biorą udział w komu- nikacji sieciowej, oraz poniewa na pewnym etapie Czytelnik mo e spotkać się z takimi pojęciami, jak „przełącznik warstwy 2” czy „protokoły warstwy 3”, autor postanowił rozpocząć właśnie od opisania modelu OSI. Zaznajomienie Czytelnika z warstwami modelu OSI umo liwi równie bardziej przejrzyste przedstawienie pozostałego mate- riału ksią ki — trzy najwa niejsze rozdziały (2., 3. i 4.) „pną się” po warstwach sieci, rozpoczynając od dwóch najni szych. W modelu OSI zdefiniowano siedem warstw, z których ka da opisuje inną część ko- munikacji sieciowej. Najogólniej mo na powiedzieć, e im wy sza warstwa, tym „bli ej u ytkownika”, a im ni sza warstwa, tym „bli ej kabla”. Spójrzmy na rysunek 1.1. Z punktu widzenia u ytkownika informacje przesyłane są między jego aplikacją (np. przeglądarką czy programem pocztowym) a aplikacją zdalną (np. serwerem WWW czy programem pocztowym innego u ytkownika). Tak jakby komunikacja była dwu- stronna: aplikacja-aplikacja, u ytkownik-u ytkownik. W rzeczywistości w wymianie danych uczestniczy o wiele więcej mechanizmów. Porcja danych wysyłana przez pro- gram u ytkownika przekazywana jest kolejnym, coraz ni szym warstwom. Dopiero w najni szej warstwie zamieniana jest na impulsy elektryczne i fizycznie przesyłana
  • 5. 14 Linux w sieci Rysunek 1.1. przez kabel sieciowy (albo inny nośnik). Po dotarciu do komputera docelowego znów wędruje przez kolejne warstwy, ale tym razem w odwrotnym kierunku — bity i bajty prze- kazywane są „ku górze”, a zostaną odebrane przez właściwą aplikację i u ytkownika. Dlaczego tak wa ne było stworzenie modelu precyzyjnie rozdzielającego między poszcze- gólne warstwy ró ne zadania związane z komunikacją? Chodzi o przezroczystość i nie- zale ność. U ytkownik — szczególnie ten mało interesujący się komputerami — widzi tylko, e informacje są przesyłane, np. e e-mail dotarł albo e znajomy odesłał odpo- wiedź. W ogóle nic nie wie o wszystkich tych warstwach i mechanizmach biorących udział w przesyłaniu danych — są one dla niego „przezroczyste”. Za to wysłany e-mail mo e być przesyłany nie tylko między ró nymi programami pocz- towymi, systemami operacyjnymi i typami sieci (np. rozległymi i lokalnymi), ale tak e za pośrednictwem najró norodniejszych łączy fizycznych — w tym ró nych rodzajów kabli — a nawet w sposób bezprzewodowy. Poniewa role poszczególnych warstw zostały dokładnie określone w modelu OSI i poniewa ka da warstwa „spodziewa się” otrzymania danych w ściśle określonym formacie, mo liwe jest zupełne rozdzielenie mechanizmów, oprogramowania i sprzętu odpowiedzialnych za realizację tych warstw. Tak więc twórcy programu pocztowego nie obchodzi np. to, jak przebiega trójfazowe nawiązywanie połączenia TCP między klientem a serwerem, zaś programista funkcji sieciowych systemu operacyjnego nie musi nic wiedzieć o tym, na czym polega prze- syłanie fal świetlnych w światłowodzie. Producenci sprzętu, programiści, administrato- rzy sieci, twórcy programów u ytkowych — wszyscy oni mogą pracować niezale nie i zajmować się „swoimi działkami”. Muszą wiedzieć tylko, według jakich zasad dane wymieniane są z warstwami sąsiadującymi. Zasady te opisane są odpowiednimi spe- cyfikacjami i protokołami. O tym, co dzieje się w poszczególnych warstwach — szczególnie w najni szych czterech — jest właściwie cała ta ksią ka. eby jednak uzyskać ogólny pogląd na całość i wstępnie zrozumieć, na czym polega wymiana danych w sieci komputerowej, przyjrzyjmy się teraz w skrócie poszczególnym warstwom oraz roli, jaką odgrywają w komunikacji.
  • 6. Rozdział 1. ♦ Model OSI 15 Komunikacja w warstwach — uproszczony opis Zacznijmy od samej góry. Np. po kliknięciu w programie pocztowym przycisku „Wy- ślij” rozpoczyna się komunikacja między naszym komputerem a docelowym serwerem pocztowym. Przesyłanie e-maili najczęściej odbywa się za pośrednictwem protokołu SMTP, w którym obie strony wymieniają między sobą najpierw wstępne informacje (np. adresy źródłowy i docelowy), a potem właściwą treść wiadomości. Ta tekstowa wymiana informacji przypomina nieco dialog między ludźmi (— Cześć, mam e-mail do przesłania. — Cześć, rozumiem. — To będzie e-mail od adam@english.w3.pl. — OK, zrozumiałem... itd.), ale oczywiście wszystkie „zawołania” i „odpowiedzi” mają ściśle standardowy format. Program pocztowy, nawiązując tego typu komunikację, korzysta właśnie z najwy szej warstwy modelu OSI — warstwy aplikacji. Warstwa aplikacji (w tym przypadku protokół SMTP) systemu lokalnego komunikuje się z warstwą aplikacji systemu zdalnego. Komunikacja na tej abstrakcyjnej warstwie mo e spraw- nie przebiegać bez znajomości wszystkich ni szych warstw. I choć w rzeczywistości nie przebiega aden „kabel” pomiędzy lokalną a zdalną warstwą aplikacji, to nawiązane zostało wirtualne połączenie (na rysunku oznaczone przerywaną linią), za pośred- nictwem którego zostanie przesłany nasz e-mail. Aby aplikacje mogły ze sobą „rozmawiać” za pomocą protokołu SMTP, tak jak to pokazano na rysunku 1.1, musi istnieć kanał komunikacyjny między odpowiednimi dwoma systemami komputerowymi. Kanał, który zapewni niezawodne dostarczanie poszczególnych porcji danych do punktu przeznaczenia, będzie odpowiadał za stero- wanie przepływem danych i umo liwi ponowienie transmisji, gdyby poszczególne pakiety IP gdzieś po drodze „zgubiły się”. W sieciach TCP/IP za te wszystkie funkcje odpowiada protokół TCP, funkcjonujący na innym poziomie — w innej warstwie ni opisywana wy ej „konwersacja” SMTP. Tym razem wirtualne połączenie (znów prze- rywana linia) odbywa się w warstwie... transportowej. Zaraz, a gdzie podziały się war- stwa 6 i 5? Wszystko wyjaśni się ju wkrótce, gdy powiemy o rozbie nościach pomiędzy protokołami TCP/IP a modelem OSI. Tymczasem jednak rozumiemy, e na poziomie warstwy 4 — transportowej — tworzony jest kanał komunikacyjny, którego zadaniem jest przede wszystkim zapewnienie, e przesyłane informacje docierają na miejsce oraz e dotrą tam we właściwej kolejności (zapewnia niezawodność przesyłania danych). Dalej komunikacja odbywa się ju zgodnie z rysunkiem 1.1. eby opisany wy ej kanał komunikacyjny mógł być utworzony, musi istnieć sposób na „znalezienie się” dwóch końców tego kanału. Przecie w Internecie rzadko jest tak, e dwa komunikujące się komputery połączone są jednym, bezpośrednim łączem. Zazwyczaj informacja, zanim dotrze na miejsce, przechodzi przez wiele systemów pośrednich (patrz tak e podroz- dział „Systemy końcowe a systemy pośrednie”). Trzeba więc zapewnić mechanizm, który umo liwi określonej porcji danych odnalezienie drogi do punktu przeznaczenia w gąszczu komputerów i sieci. To „odnajdywanie drogi” nazywa się routingiem i odbywa się na poziomie warstwy 3, sieciowej. eby mo liwe było odnalezienie właściwej trasy, najpierw musi być oczywiście znany adres docelowy. Dlatego równie tutaj, w war- stwie 3, realizowane jest adresowanie internetowe — czyli to tu następuje obsługa adresów IP. To właśnie protokół IP i warstwa sieciowa odpowiadają za całą „magię”
  • 7. 16 Linux w sieci Internetu — za to, e informacje docierają z jednego końca świata na drugi oraz za to, e w wyjątkowych przypadkach pakiet z Wrocławia do Łodzi mo e podró ować... przez ocean! No dobrze, w warstwie 3 wszystko wygląda bardzo przejrzyście: jest adres źródłowy IP i jest adres docelowy, a pakiet dociera tam gdzie trzeba optymalną (choć nie zawsze!) trasą. Ale przecie ka dy wie, e Internet to „sieć sieci”, a więc trasa pakietu mo e przebiegać przez bardzo ró ne obszary. Stacja wysyłająca mo e się znajdować np. w ethernetowej sieci lokalnej (LAN). Po wyjściu z tej sieci pakiet mo e być przesy- łany przez łącze typu „punkt-punkt” z usługodawcą — np. po zwykłym kablu telefo- nicznym. Stamtąd mo e biec łączem światłowodowym a do innej sieci lokalnej, w której z kolei odbierany jest przez stację sieci lokalnej typu Token Ring. Na poziomie war- stwy 3 ró nice między tymi sieciami nie mają znaczenia. Za to w warstwie 2, czyli łącza danych — owszem! To właśnie tutaj obsługiwane są takie technologie sieciowe, jak Ethernet, Token Ring i inne. To tu do pakietu IP (w którym jest informacja o dwóch adresach, np. 192.168.0.1 i 192.168.3.2, i niewiele więcej) dodawane są nagłówki spe- cyficzne dla konkretnego typu sieci — np. zawierające adresy sprzętowe kart siecio- wych. Pakiet w tej postaci (często nazywany „ramką”), gotowy do przesłania, przeka- zywany jest następnie najni szej warstwie — fizycznej. I dopiero tutaj kolejne bity porcji danych zamieniane są na impulsy elektryczne (lub świetlne, ew. radiowe) i przesyłane w fizycznym nośniku. W warstwie fizycznej zaczy- nają mieć znaczenie takie pojęcia, jak RJ45, BNC czy ST (typy złączy), skrętka i światło- wód wielomodowy (typy kabli) czy „baseband” i „broadband” (typy modulacji). Ta warstwa jest zazwyczaj realizowana całkowicie sprzętowo. „Zazwyczaj”, bo istnieją przecie programowe emulatory złączy szeregowych, portów USB czy nawet całych komputerów. A potem? Potem wszystko dzieje się odwrotnie. Pakiet, który dotarł do miejsca prze- znaczenia, wędruje „w górę” stosu warstw: impulsy zamieniane są na bity, potem na ramki, z ramki konkretnej sieci „obcinane” są informacje sterujące i „powstaje” pakiet IP, warstwa czwarta „widzi” ju tylko kanał komunikacyjny, protokół SMTP „rozmawia” z drugą stroną połączenia, a odbiorca e-maila... widzi nową wiadomość w skrzynce. Gdyby nie istniał standardowy podział na warstwy, program pocztowy musiałby umieć zrobić wszystkie opisane wy ej czynności! To oczywiście ograniczałoby jego zasto- sowanie tylko do bardzo konkretnej sieci i to pewnie opartej na konkretnym rodzaju okablowania — mniej popularne typy sieci nie byłyby na pewno obsługiwane. Dzięki spójnemu modelowi warstw programista praktycznie nie musi myśleć w ogóle o war- stwach ni szych ni 4, a program będzie działał zarówno w Ethernecie, jak i przez łącza PPP, w sieci bezprzewodowej czy choćby przez łącze na podczerwień. To tylko przykładowy i uproszczony opis. Nie tylko warstwy zostały omówione pobie - nie, ale niektóre z nich w ogóle pominięto. Poza tym wzięto tutaj pod uwagę wyłącznie sytuację rzadko spotykaną — taką, w której komputer-nadawca jest połączony bezpo- średnio kablem z komputerem-odbiorcą. Szczegółowy, teoretyczny opis wszystkich warstw OSI znajduje się poni ej („Warstwy OSI — co mówi teoria”). O tym, dlaczego pominięto niektóre warstwy, mówi podrozdział „OSI a TCP/IP”. Natomiast o tym, jak to wszystko ma się do rzeczywistej komunikacji sieciowej — gdy informacje przebie- gają przez wiele komputerów pośrednich — mo na przeczytać w podrozdziale „Sys- temy końcowe a systemy pośrednie”.
  • 8. Rozdział 1. ♦ Model OSI 17 Warstwy OSI — co mówi teoria Przyjrzyjmy się nieco bardziej szczegółowo — i bardziej technicznie — warstwom protokołu OSI. Cała koncepcja warstw opiera się na pojęciu usługi, którą pewna war- stwa ni sza (nazwijmy ją n) świadczy warstwie „o jeden wy szej” (warstwie n+1). Warstwa n odpowiedzialna jest za pewien mechanizm w komunikacji między syste- mami. Mechanizm ten realizowany jest za pomocą protokołu, przy czym sam model OSI nie definiuje ani nie wymaga stosowania określonych protokołów — opisuje je- dynie ogólnie, jakie usługi mają być świadczone przez daną warstwę. Dzięki takiemu podziałowi twórcy konkretnych protokołów, aplikacji, urządzeń sieciowych itd. zwią- zanych z poszczególnymi warstwami mogą pracować niezale nie: z autorytatywnych źródeł (np. od innych producentów, z dostępnych publicznie specyfikacji) wiedzą, jaką usługę świadczy warstwa ni sza (jaki „interfejs” udostępnia) i nie muszą przejmować się, w jaki sposób jest ona wewnętrznie realizowana. Podobnie producentom rozwiązań warstwy wy szej udostępniają jedynie opis funkcjonalności protokołu swojej warstwy — i to ma wystarczyć. Tak więc jakiś protokół warstwy n mo e być wykorzystywany przez wiele ró nych protokołów warstwy n+1, a sam mo e korzystać z ró nych protoko- łów warstwy n-1 i to bez konieczności komunikowania się z twórcami tych protokołów. Hierarchiczny zbiór wszystkich warstw zaimplementowany w konkretny sposób nosi nazwę stosu protokołów (np. stos TCP/IP). Tak więc w modelu OSI występują dwa aspekty komunikacji. Aspekt „poziomy” to komunikacja między tymi samymi warstwami ró nych urządzeń lub systemów (na rysunku 1.1 ten aspekt został oznaczony liniami przerywanymi). Aspekt „pionowy” to komunikacja między ró nymi, sąsiadującymi warstwami tego samego urządzenia lub systemu. W aspekcie poziomym komunikacja jest mo liwa dzięki przyjęciu wspólnego protokołu wymiany danych. W aspekcie pionowym sąsiadujące warstwy są w stanie wymieniać informacje dzięki przyjęciu określonego interfejsu programowania (API) oraz zało eniu, e dana warstwa świadczy ściśle określoną usługę. Komunikat przesyłany w warstwie n składa się z informacji sterujących i treści. Informacje sterujące mają postać nagłówka i (opcjonalnie) zakończenia, którymi „opakowana” jest treść. W treści komunikatu warstwy n znajduje się wszystko to, co nale y do warstwy n+1, czyli znów: informacje sterujące i treść. I tak dalej, dopóki treści nie stanowią faktyczne informacje, które mają zostać dostarczone do u ytkow- nika lub innego systemu — np. treść e-maila. W warstwie sieciowej systemu OSI taki komunikat składający się z informacji sterujących i treści nazywa się pakietem; na drugiej warstwie u ywa się równie pojęcia ramki. Z kolei w warstwie transportowej porcję danych często określa się mianem datagramu, zaś ogólnie porcję danych na ró nych warstwach nazywa się tak e segmentem. Do tego dochodzi jeszcze pojęcie oktet, którym część autorów określa po prostu bajt, najczęściej przy okazji opisywania strumienia bitów. Rozró nienie „oktet-bajt” wprowadzono dlatego, e dokładnie rzecz biorąc, bajt nie zawsze musi składać się z ośmiu bitów (np. w komunikacji z termina- lami kiedyś często składał się z 7 bitów); natomiast oktet, jak sama nazwa wskazuje, to dokładnie 8 bitów. Poniewa nawet autorzy specyfikacji i oprogramowania sieciowego nie są konsekwentni w zakresie opisanej w tym akapicie terminologii, w ksią ce nie będziemy sztywno trzymali się określonych terminów w odniesieniu do porcji danych w ró nych warstwach — rozró nienie będziemy stosować tylko tam, gdzie ma to rze- czywiście znaczenie.
  • 9. 18 Linux w sieci Jak więc przesyłany jest pakiet z systemu do systemu? Otó w systemie „nadającym” pakiet przemieszcza się „w dół” drabiny warstw. Warstwa n otrzymuje pewną treść, opatruje ją swoimi informacjami sterującymi i „wysyła”, korzystając z usług świad- czonych przez warstwę n-1. Ta z kolei otrzymuje cały pakiet (dla niej widoczny jest jako „treść”), opatruje go swoimi informacjami sterującymi i znów „wysyła”, korzy- stając z usług świadczonych przez ni szą warstwę. W ten sposób komunikat, opatrzony wieloma warstwami informacji sterujących, dociera do najni szej warstwy. Tutaj jest on ju rzeczywiście wysyłany przez określony nośnik (np. kabel telefoniczny), w prze- ciwieństwie do warstw wy szych, gdzie „wysyłanie” odbywa się po abstrakcyjnym (wirtualnym) łączu biegnącym do odpowiedniej warstwy systemu-odbiorcy. W systemie odbierającym pakiet przemieszcza się „w górę”. Coraz wy sze warstwy wycinają swoje informacje sterujące, a treść przekazują dalej. Pakiet jest tak „osku- bywany” (techniczna nazwa to demultipleksing), a — ju jako konkretna informacja — trafi do odbiorcy. Nale y przy tym zauwa yć, e ani nadawca, ani odbiorca wcale nie muszą być ludźmi — mogą to być dwa systemy komputerowe (np. portal pobie- rający z innej witryny informacje o pogodzie). Przyjrzyjmy się teraz bardziej szczegółowo kolejnym warstwom systemu OSI, tym razem jednak zaczynając od tej najni szej. Warstwa 1 fizyczna Warstwa fizyczna (Physical Layer) opisuje właściwości elektryczne i funkcjonalne faktycznego nośnika, po którym przesyłane są dane — kabla miedzianego, światło- wodu, łącza bezprzewodowego itp. Warstwa ta ró ni się od pozostałych tym, e na jej poziomie rozpoznawane są tylko pojedyncze bity, a nie całe ramki ani nawet pojedyn- cze znaki. Jest to warstwa najbli sza sprzętowi — tutaj bity (a więc logiczne „jedynki” i „zera”) zamieniane są na impulsy elektryczne (np. obecność napięcia lub jego brak). Bezpośrednio od warstwy fizycznej zale y równie , z jaką szybkością dane mogą być przesyłane i na jaką odległość. Przykładowym działaniem tej warstwy jest zamiana bitów otrzymywanych z warstwy łącza danych na sygnały na odpowiednich stykach złącza równoległego w połączeniu PLIP. Z tą warstwą związane są m.in. standardy (lub niektóre części standardów): ISDN, ADSL, FDDI, RS-232C, standardy okablowania, standardy komunikowania się modemów (w tym np. modemów telewizji kablowej), specyfikacje opisujące właściwości elek- tryczne i długości fal, Ethernet, X.25, Token Ring, ATM, Arcnet, standardy bezprze- wodowe (np. 802.11b, IrDA) itd. Warstwa 2 łącza danych Warstwa łącza danych (Data Link Layer) zapewnia kontrolę błędów i sterowanie przepływem. Jest pierwszą warstwą, w której operuje się na porcjach danych więk- szych ni bity — na ramkach (frames). W warstwie tej fizyczne łącze „udostępniane jest” jako łącze logiczne warstwom wy szym. Ponadto do tej warstwy nale y dbanie o „sprawiedliwy” dostęp wielu urządzeń do jednego nośnika. Warstwa łącza danych
  • 10. Rozdział 1. ♦ Model OSI 19 dzieli się na dwie podwarstwy: sterowania dostępem do nośnika (Media Access Control — MAC) i sterowania logicznym łączem (Logical Link Control — LLC). Ramka po- wstaje w efekcie współpracy obu tych podwarstw. „Ni ej” jest podwarstwa MAC — odpowiada ona za dostęp do nośnika, obsługę kolizji, adresów sprzętowych urządzeń. Podwarstwa LLC odpowiedzialna jest za część PDU (Protocol Data Unit) ramki. W tej „warstwie-nakładce” do ramki mo e być dodawana informacja o tym, który protokół warstwy wy szej ma być wykorzystywany (np. IP); informacja ta mo e jednak rów- nie występować w warstwie MAC. Tu tak e odbywa się logiczne sterowanie łączem, które mo e przybierać ró ne formy: bezpołączeniowe (z potwierdzaniem otrzymania pakietów i bez potwierdzania) i połączeniowe (połączenie trwa dopóki, dopóty nie zostanie zerwane przez jedną ze stron). Przykładowe standardy (lub części standardów) i technologie warstwy łącza danych to: Ethernet (IEEE 802.3), Token Ring (IEEE 802.5), adresy MAC, ATM, HDLC, SDLC, standardy bezprzewodowe, PPP. Warstwa 3 sieciowa Warstwa sieciowa (Network Layer) zapewnia komunikację w praktycznie całym Inter- necie. Jest to pierwsza warstwa, ponad którą aspekty fizyczne łącza, przez które prze- syłane są dane, przestają mieć istotne znaczenie. Dwie podstawowe usługi warstwy sieciowej to: znajdywanie adresów oraz dostarczanie pakietu z komputera źródłowego do docelowego. Tym razem droga pakietu nie musi ju przebiegać bezpośrednio z jed- nego systemu do drugiego — po drodze mo e być wiele komputerów i wiele ró nych łączy fizycznych (w tym np. bezprzewodowych, światłowodowych itd.). To ta war- stwa odpowiedzialna jest za znalezienie trasy do miejsca docelowego (routing), ale nie gwarantuje, e wszystkie pakiety dotrą na miejsce, oraz e dotrą tam we właści- wej kolejności. Komunikacja w tej warstwie jest bezpołączeniowa, tzn. hosty nie na- wiązują „konwersacji” — będzie ona miała miejsce dopiero w warstwie 4. W war- stwie sieciowej odbywa się równie tłumaczenie adresów sprzętowych (np. adresy MAC kart sieciowych) na adresy sieciowe (np. IP). Na poziomie warstwy sieciowej odbywa się równie fragmentacja (dzielenie więk- szych pakietów tak, aby „mieściły się” w ramkach warstwy ni szej) oraz zapewnia się dodatkowe mechanizmy, np. Quality of Service. Najbardziej znanymi protokołami tej warstwy są IP (zarówno IPv4, jak i IPv6), ARP i ICMP. Inne standardy warstwy sieciowej to IPX, DDP. Warstwa 4 transportowa Warstwa transportowa odpowiedzialna jest za niezawodne dostarczanie informacji. Między stronami połączenia nawiązywany jest dialog, a więc mamy tutaj do czynienia z komunikacją połączeniową (choć komunikacja bezpołączeniowa jest równie mo - liwa). Jeśli część informacji nie dotrze na miejsce (np. z powodu błędnego routingu), transmisja jest ponawiana. Na tym poziomie odbywa się kontrola błędów i sterowanie
  • 11. 20 Linux w sieci przepływem. O ile w ni szych warstwach miały jeszcze znaczenie systemy pośrednie (patrz podrozdział „Systemy końcowe a systemy pośrednie”), o tyle na poziomie tej warstwy mamy do czynienia ju tylko z dwoma końcami połączenia — systemami koń- cowymi, często pełniącymi rolę odpowiednio serwera i klienta. Z drugiej strony, między dwoma tymi samymi systemami mo e istnieć wiele połączeń warstwy transportowej. Dwa najbardziej znane protokoły tej warstwy to TCP (połączeniowy) i UDP (bezpo- łączeniowy). Na poziomie tej warstwy operują równie protokoły zaawansowanego routingu, np. BGP czy OSPF. Warstwa 5 sesji W warstwie sesji odbywa się „konwersacja” między stronami połączenia. Ten dialog w wielu przypadkach nazywa się właśnie sesją i polega na utrzymywaniu przez jedną lub obie strony informacji o bie ącym stanie komunikacji. Umo liwia to np. odtworzenie sesji po czasowym zerwaniu połączenia. Na poziomie warstwy 5 zakłada się ju , e niezawodne połączenie zostało ustanowione (przez warstwę 4). Według ró nych źródeł i sposobów rozumienia warstwy 5, zalicza się do niej czę- ściowo protokół TCP, koncepcje „nazwanych potoków” oraz portów usług, protokół NetBIOS, AppleTalk (ADSP). Warstwa 6 prezentacji Warstwa ta udostępnia dane w pewien standardowy sposób na potrzeby aplikacji. W tej warstwie mogą równie mieć miejsce takie procesy, jak szyfrowanie, kompresja i zmiana formatu przesyłanego tekstu (np. zmiana sposobu zapisu końca wiersza między syste- mami uniksowymi a Windows, przekodowanie między standardem EBDIC a ASCII). Warstwa 7 aplikacji Najwy sza, siódma warstwa pełni rolę interfejsu, przez który u ytkownik lub aplika- cja mo e korzystać z usług sieciowych. Przykładowe zastosowania, standardy lub koncepcje, które mo na (czasem luźno) sklasyfikować na poziomie tej warstwy to: protokoły SMTP i X.400, FTP, protokoły zarządzania siecią (np. SNMP, NICE), zdalny dostęp do komputerów (np. Telnet, SSH, rlogin) itp. OSI a TCP/IP W dotychczasowym opisie modelu OSI łatwo zauwa yć niespójności i celowe pominię- cia. Wynika to z faktu, e model ten jest propozycją czysto teoretyczną. Powstał w latach 70. i 80. na biurkach pracowników komitetów normalizacyjnych CCITT (później ITU-T)
  • 12. Rozdział 1. ♦ Model OSI 21 i ISO. Przy jego tworzeniu postawiono głównie na ścisłe przestrzeganie standardów — nie było wymogu zgodności z istniejącymi ju implementacjami. Dlatego model OSI jest tak bardzo formalny i często... tak nieprzystający do rzeczywistości. Nad sposobem zapewnienia ujednoliconej komunikacji między sieciami (ang.: między = inter, sieć = network — internetworking) w rzeczywistych warunkach pracowano ju wcześniej, w trakcie prac nad „prasiecią” — ARPANET-em. Ju tam pojawiły się takie koncepcje, jak „warstwy” i „wirtualne połączenia”, a więc to, co w OSI sforma- lizowano wiele lat później. Ró nica między „protokołami ARPANET-u” — czyli późniejszym TCP/IP — a modelem OSI polegała na tym, e te pierwsze działały ju w praktyce i zdą yły się upowszechnić. Rozwiązania zastosowane w protokołach TCP/IP wynikały z praktycznych potrzeb i poddawane były pod publiczną dyskusję w łatwo zrozumiałych dokumentach RFC (Request For Comment), które zresztą do dziś wyty- czają drogę rozwoju Internetu. Przyjmowały się te standardy, które były najlepsze, które najwygodniej dało się implementować, lub które nie wymagały wprowadzania istotnych zmian w ju funkcjonujących systemach. Natomiast standardy ISO dojrze- wały powoli, protokoły były kłopotliwe w implementacji, a uzyskanie kopii samego standardu nie było (i wcią nie jest) proste. W wyniku tej sytuacji model OSI okazał się nieco spóźniony — został oficjalnie zapre- zentowany wtedy, gdy większość komputerów rozwijającej się sieci globalnej korzy- stała ju z TCP/IP. Dlatego, choć niewątpliwie OSI bardzo przejrzyście i jednoznacznie definiuje role poszczególnych warstw, rzeczywiście wykorzystywane standardy komu- nikacyjne nie zawsze idealnie pokrywają się z siedmioma warstwami modelu, a czasami wręcz zupełnie do niego nie przystają. Warstwy komunikacyjne Internetu są zdefi- niowane luźniej; często nie mówi się wręcz o „warstwach”, ale po prostu o „wy - szych” lub „ni szych” protokołach. W kontekście modelu OSI warstwą „graniczną” byłaby tutaj warstwa transportowa. Wszystko to, co ponad nią, określa się często mianem warstwy lub protokołów usług i aplikacji; wszystko co pod nią — warstwy lub proto- kołów sieci i podsieci, komunikacyjnych itp. W wielu nawet bardzo technicznych opi- sach zagadnień sieciowych taki rozdział zupełnie wystarcza. Na przykład protokół IP stosunkowo dobrze „pasuje” do warstwy sieciowej. Jednak ju protokół TCP mo na odwzorować na warstwę transportową i częściowo warstwę sesji OSI. Usługę DNS, bardzo powszechną w Internecie, w ogóle trudno przeło yć na model OSI; podobnie jest z mechanizmem ping (protokół ICMP) i protokołem SNMP. Z kolei np. warstwa 6, prezentacji, bardzo rzadko występuje „samodzielnie” — naj- częściej implementowana jest jako część warstwy aplikacji lub sesji. Na rysunku 1.2 pokazano, jak niektóre „protokoły Internetu” — z naciskiem na te opisywane w ni- niejszej ksią ce — wyglądają na tle warstw modelu OSI. Systemy końcowe a systemy pośrednie Dwa systemy komunikujące się w sieci komputerowej rzadko połączone są bezpo- średnio. Najczęściej między systemami końcowymi (end systems — ES) występują dodatkowo systemy pośrednie (intermediate systems — IS).
  • 13. 22 Linux w sieci Rysunek 1.2. Sposób rozumienia systemów końcowych i pośrednich mo e być ró ny na ró nych warstwach. Np. kiedy w sieci lokalnej pakiety IP przesyłane są między dwoma kompu- terami, pomiędzy którymi znajduje się tylko przełącznik sieciowy, to z punktu widzenia warstwy sieciowej nie ma tutaj adnych systemów pośrednich (administrator widzi tylko jedno połączenie między dwoma adresami IP); z punktu widzenia warstwy łącza danych i fizycznej systemem pośrednim jest przełącznik (mo na wyodrębnić dwa fizyczne połączenia: komputer A ↔ przełącznik oraz przełącznik ↔ komputer B). Z kolei jeśli wziąć pod uwagę sytuację, w której komunikacja odbywa się między dwoma systemami znajdującymi się w ró nych sieciach wchodzących w skład globalnego Inter- netu i w której pakiety przebiegają przez przynajmniej jeden router, wtedy połączenie jest typu „punkt-punkt” tylko z punktu widzenia warstwy transportowej i wy szych. Z punktu widzenia warstwy sieciowej występują tu ju systemy pośrednie (routery). Ta sytuacja została zobrazowana na rysunku 1.3. Rysunek 1.3. Na rysunku 1.3 wyraźnie widać, e komunikacja w warstwach 4 i wy szych ma cha- rakter „dwupunktowy” (najgrubsza strzałka) i brak tutaj systemów pośrednich. Dla tych warstw sposób realizacji komunikacji oraz obecność w nich systemów pośred- nich nie ma znaczenia.
  • 14. Rozdział 1. ♦ Model OSI 23 W warstwie 3, sieciowej, połączenia między routerami mają ju znaczenie i są roz- ró niane. Dlatego w zilustrowanym wy ej przykładzie mo na na tym poziomie wyró nić dwa połączenia (pokazano komunikację z wykorzystaniem jednego routera). Router jest systemem pośrednim warstwy 3 (i ni szych). Dla urozmaicenia na rysunku wprowadzono równie system pośredni warstwy łącza danych (najmniejszy prostokąt). Mo e to być np. przełącznik sieciowy. Warto zauwa yć, e z punktu widzenia warstwy sieciowej urządzenie to nie ma znaczenia (router „widzi” bezpośrednio system końcowy B). Jak widać, systemy pośrednie mogą występować w ró nych warstwach modelu OSI. Mo na choćby dowodzić, e systemem pośrednim najwy szych warstw jest serwer pocztowy przekazujący nasz e-mail do innego serwera (relaying). Kiedy jednak mowa o systemach pośrednich w kontekście modelu OSI, bardzo często w domyśle dodaje się właśnie „warstwy trzeciej” — a więc słysząc „system pośredni” mo emy przyjąć, e chodzi o router.