]> gitweb.morketsmerke.org Git - mmdev.git/commitdiff
Zakończenie pisania rozdziału 7. Do przeredagowania.
authorxf0r3m <jakubstasinski@protonmail.com>
Sun, 11 Feb 2024 11:19:54 +0000 (12:19 +0100)
committerxf0r3m <jakubstasinski@protonmail.com>
Sun, 11 Feb 2024 11:19:54 +0000 (12:19 +0100)
articles/terminallog/Cisco_-_CCNA.html

index bbb6e4383f7de2513345ef1015623eddd9ab79c3..d1bb0b092166abb219b69ead4817b29030092f34 100755 (executable)
         wydawać się nieco dziwne, dlatego też przy takich informacjach będę
         zapisywać oznacznie oryginalności zapisu (<strong>sic/sic!</strong>).
       </p>
+      <h1 id="1.7.ethernetswitching">1.7. Przełączanie Ethernetu</h1>
+      <p>
+        W tym rozdziale zapoznamy się ze szczegółami technologi Ethernet,
+        potrzebnymi do zrozumienia działania takiego urządzenia jak
+        przełączniki. Poznamy również meteody przełączania jakie możemy
+        spotkać w dostępnych na rynku przełącznikach.
+      </p>
+      <h2 id="1.7.1.ethernetframe">1.7.1. Ramka Ethernet</h2>
+      <p>
+        Ethernet operuje w warstwie fizycznej oraz łącza danych, opisują go
+        dwa standardy IEEE 802.2 oraz 802.3.
+      </p>
+      <p>
+        Standardy rodziny 802 wykorzystywane w sieciach LAN/MAN w tym i
+        Ethernet wykorzystują dwie podwarstwy warstwy łącza danych.
+        <strong>LLC</strong>, której zadaniem jest umieszczenie w ramce
+        Ethernet informacji o wykorzystywanym protokole warstwy sieciowej dla
+        tej ramki. Drugą podwarstwą jest <strong>MAC</strong> odpowiedzialna
+        za enkapsulacje danych, kontrolę dostępu do łącza oraz adresacje w
+        warstwie łącza danych.
+      </p>
+      <p>
+        Podwarstwa MAC jest odpowiedzialna za enkapsulację danych oraz dostęp
+        do łącza danych. Jesli chodzi o samą enkapsulację to podwarstwa MAC
+        zajmuje się <strong>ramką Ethernet</strong> - jej wewnętrzną strukturą;
+        <strong>adresacją Ethernetu</strong> - ramki muszą zawierać adresy MAC
+        źródła oraz hosta docelowego, aby dostarczyć je z jedenj karty
+        sieciowej do drugiej; <strong>detekcją błędów Ethernetu</strong>
+        ramki zawierają w <em>stopce</em> pole FCS
+        <em>Frame Check Sequence</em> wykorzystywane do detekcji błedów.
+      </p>
+      <p>
+        W ramach kontroli dostępu do łącza Ethernet, podwarstwa MAC zawiera
+        specyfikację dla różnych standardów komunikacyjnych Ethernetu przez
+        różnego rodzaju łącza takie jakie okablowanie miedziane lub 
+        światłowody. Stary Ethernet wykorzystywał topologę magistrali lub
+        koncentrator, które są współdzielonym medium działającym w trybie
+        <em>half-duplex</em>. Ethernet przez tego typu łącza wymagał
+        mechanizmów badania dostępności łącza oraz detekcji błędów. Temu
+        służył algorytm CSMA/CD (ang. <em>Carrier Sense Multiple
+        Access/Colision Detection</em>). Obecnie Ethernet wykorzystuje
+        przełączniki przez co komunikacja może odbywać się w trybie
+        <em>full-duplex</em> i nie ma potrzebny stosowania mechanizmu CSMA/CD
+        ponieważ ta magistrala przy starym Ethernecie jest teraz jednym
+        kablem łączącym kartę sieciową z portem przełącznika.
+      </p>
+      <p>
+        Jeśli chodzi o pola ramki Ethernet to najpierw warto sobie powiedzieć,
+        że minimalną wielkością ramki mogą być 64B a maksymalną 1518B.
+        Preambuła nie jest wliczana do ramki jeśli chodzi o jej wielkość.
+        Wszelkie ramki mniejsze niż 64B są uważane za ramki uszkodzone i
+        automatycznie odrzucane. Ramki przekraczające górną granice wielkości
+        uważane są za ramki typu <em>jumbo</em>. Ramki przekraczające rozmiary
+        lub mniejsze niż minimalny rozmiar, są zazwyczaj uznawane za rezulat
+        kolizji lub niechciany sygnał. Przez odbiorców mogą być uznane za
+        nieprawidłowe. Większe ramki są akceptowane do technologi FastEthernet
+        w góre. 
+      </p>
+      <h3 id="1.7.1.lab">Laboratorium</h3>
+      <p>
+        <a href="">Wykorzystanie programu Wireshark do badania ramek Ethernet</a>
+      </p>
+      <h2 id="1.7.2.ethernetmacadress">1.7.2. Adres MAC Ethernetu</h2>
+      <p>
+        Adres MAC składa się z 48 bitów zapisanych za pomocą 12 cyfr systemu
+        heksadecymalnego, 6 par po 2 cyfry. Dwie cyfry heksadecymalne to 1
+        bajt. Poprzedzającje zera są również zapisywane, aby każda z grup
+        miała te 8 bitów. Cyfry heksadecymalne mogą być czasem zapisywane 
+        z przedrostkiem <strong>0x</strong> lub z przyrostkiem
+        <strong>H/h</strong>. 
+      </p>
+      <p>
+        Ethernet był projektowany z myślą o tym, że urządzenia sieciowe 
+        są podłączone do współdzielonego medium (magistrali) i adresacja MAC
+        pozwala na identyfikacje takiego hosta. Ze tego powodu wszyskie
+        adresu MAC muszą być unikatowa w obrębie całej sieci. W tym celu
+        każdy z dostawców sprzętu działającego w sieci Ethernet muszą
+        zarejestować się w IEEE aby uzyskać 6 cyfrowy (heksadecymalnych) kod
+        nazwany <strong>unikalnym indentyfikatorem organizacji</strong>
+        (<strong>OUI</strong>). Każdy adres MAC składa się z kodu OUI
+        przypisanego do producenta sprzętu oraz pozostałych 6 cyfr
+        przypisanych przez producenta do konkretnej sztuki produktu.
+      </p>
+      <p>
+        Przetwarzanie ramek ma swój początek już na komputerze źródłowym.
+        Każda ramka zawiera adres źródłowy oraz adres docelowy. Kiedy
+        karta sieciowa odbierze taką ramkę porówna jej adres docelowy MAC z
+        z adresem swojej kartym, jeśli adres jest taki samy oznacza to, że
+        ramka jest przeznaczona dla tego hosta. Ramka dekapsulowana i
+        przekazana do warstw wyższych. Obecnie większość urządzeń wykorzystuje
+        Ethernet, więc tego typu przetwarzanie danych jest podstawą
+        wszlakiej komunikacji w sieci. Warto wspomnieć o tym, że karty sieciowe
+        akceptują rownież ramki typu broadkast oraz multikast tych grup, do 
+        których ten host należy.
+      </p>
+      <p>
+        W Ethernecie różne adresy MAC są wykorzystywane do transmisji unikast,
+        broadkast oraz multikast w warstwie drugiej. Adres MAC unikastowy
+        jest wykorzystywany do transmisji między pojedynczymi hostami w sieci.
+        Adresy MAC są powiązane z adresami warstwy sieciowej, są one uzyskiwane
+        za pomocą protokołów ARP (dla IPv4) lub ND (IPv6). Przy tych wszystkich
+        rodzajach adresów, a co za tym idzie rodzajach transmisji adresem
+        źródłowym zawsze adres unikastowy.
+      </p>
+      <p>
+        Ramkę ethernetową transmisji broadkast odbierze każdy host
+        znajdujący się w tej samej sieci Ethernet LAN. Broadkastowy adres MAC
+        składa się wyłącznie z samych cyfr <strong>F</strong>. Przez
+        przełączniki jest on przekazywany na wszystkie porty poza tym z którego
+        ta ramka została przysłana. Oczywiście transmisja broadkast w
+        Ethernecie zawiera w sobie pakiet IP z tym samym rodzajem transmisji,
+        oznacza to, że dane zawarte w tej transmisji zostaną przetworzone
+        przez wszystkie host w tej sieci lokalnej (domenie rozgłoszeniowej),
+        które ten pakiet otrzymają.
+      </p>
+      <p>
+        Przypadek transmisji multikast w Ethernet jest trochę bardziej
+        skomplikowany. Taką ramkę odbiorą hosty, które należą do tej samej
+        grupy. Transmisja multikast w Ethernet jest powiąza z rodzajem tego
+        typu transmisji w protokole IP, dla wersji 4 mamy adres (początek):
+        <strong>01-00-5E</strong>, a dla wersji 6 <strong>33-33</strong>.
+        Innym rodzajem multikastu w Ethernecie jest protokół STP, nie jest
+        on protokołem warstwy 3, a drugiej i zawiera swój adres docelowy
+        typu multikast. Transmisje multikast opuszczają przełącznik w ten sam
+        sposób co transmisja broadkast, chyba że urządzenie skonfigurowano
+        inaczej (mechanizm <em>multicast snooping</em>), transmisja ta nie
+        jest przekazywana przez router, chyba że został poinstuowany aby
+        trasować pakiety multikast. Ze względu na to, że adresy multikast
+        reprezentują grupe hostów, mogą zostac użyte tylko i wyłącznie jako
+        adres docelowy, adresem źródłowym musi być adres unikast. Tak jak
+        w przypadku transmisji unikast oraz broadkast, transmisja multikast
+        wymaga odpowiadających adresom Ethernet, adresów IP.
+      </p>
+      <h3 id="1.7.2.lab">Laboratorium</h3>
+      <p>
+        <a href="">Zobacz adres MAC urządzenia</a>
+      </p>
+      <h2 id="1.7.3.macaddresstable">1.7.3. Tablica adresów MAC</h2>
+      <p>
+        Ethernetowy przełącznik warstwy drugiej dokonuje swoich decyzji o
+        przełączaniu na podstawie adresu MAC, który jest zapisany w tablicy
+        adresów MAC przełącznika, na podstawie informacji tam zapisanych
+        przełącznik wie na jaki port należy przesłać dane, adresowane do
+        komputera o takim adresie MAC. W momecie włączenia urządzenia jego
+        tablica nie zawiera żadnych wpisów i musi się ich nauczyć. Tablica
+        MAC często nazwyana jest CAM (ang. <em>content addressable memory
+        table</em>).
+      </p>
+      <p>
+        Nauka adresów MAC przez przełącznik, czy też uzupełnienie tablicy
+        polega na badaniu każdej przychodzącej do urządzenia, ramki w celu
+        uzyskania nowych informacji. Badany jest przede wszystkim adres
+        źródłowy oraz port na którym te dane dotarły do przełącznika, następnie
+        te informacje są konfrontowane z tabelą jeśli taki adres MAC pod takim
+        portem nie występuje wówczas te dane są dopisywane lub poprawiane w
+        zależności od tego czy w przeciągu czasu ważności wpisów w tablicy MAC
+        ruch sieciowych przechodził przez ten port. W przeciwnym wypadku
+        wpis jest odświerzany co powowduje, że jego czas jego ważności
+        został zresetowany. W przypadku większości przełączników czas wazności
+        wpisów w tablicy to 5 minut. W przypadku przepięcia hosta do innego
+        portu, w tablicy we wpisie z adresem zostanie zamieniony port, pod
+        którym ten MAC może występować.
+      </p>
+      <p>
+        W przypadku przekazywania ramek, działa to w sposób analogiczny, tylko
+        przełącznik zamiast zapisywać odczytuje informacje z tablicy MAC. Jeśli
+        adres docelowy jest unikastowy, to jest on sprawdzany w tablicy, w celu
+        ustalenia portu docelowego przełącznika dla docelowego hosta. Jeśli
+        wpis zostanie odnaleziony, to ramka zostaje przezkazna na ten port.
+        W przeciwnym wypadku zostanie on przekazany na wszystkie porty poza tym
+        źródłowym (z którego trafił do przełącznika). Podobnie przełącznik
+        zachowuje się w przypadku transmisji broadkast oraz multikast.
+      </p>
+      <h3 id="1.7.3.lab">Laboratorium</h3>
+      <p>
+        <a href="">Zobacz tablice MAC przełącznika</a>
+      </p>
+      <h2 id="1.7.4.switchspeedsandforwardingmethods">1.7.4. Przepustowość przełącznika oraz metody przekazywania.</h2>
+      <p>
+        Przełączniki używają jednej z poniższych metod przełączania danych
+        danych między portami.
+      </p>
+      <ul>
+        <li><strong>Przłączanie <em>store-and-forward</em></strong> - w tej
+          metodzie przełącznik musi otrzymać całą ramkę, następnie oblicza
+          jej CRC. Jeśli CRC jest prawidłowe, wówczas dochodzi do przełączania
+          znanego z poprzednie podrozdziału.</li>
+        <li><strong>Przełączanie <em>cut-through</em></strong> - tutaj
+          przełącznik nie czeka całą ramkę, wystarczy mu odczytać adres
+          docelowy, aby dokonać przełączenia.</li>
+      </ul>
+      <p>
+        Zaletą metody <em>store-and-forward</em> jest możliwosc wykrycia błędów
+        zanim ramką zostanie przekazana dalej. Jeśli błąd zostanie wykryty
+        przełącznik odrzuci ramkę. Odrzucanie uszkodzonych ramek pozwala
+        zredukować żużycie przepustowści na przesyłanie uszkodzonych ramek.
+        Metoda <em>store-and-forward</em> jest również wymaga przez 
+        metody priorytetyzacji ruchu takie jak QoS.
+      </p>
+      <p>
+        Metoda przełączania <em>cut-through</em> przełącza dane zanim w całości
+        dotrą do przełącznika, jego bufor jest na tyle duży, że może odczytać
+        docelowy adres MAC i na podstawie tego dokonuja przełącznia. Ta
+        metoda występuje w dwóch wariantach:
+      </p> 
+      <ul>
+        <li><strong>Przełączanie <em>fast-forward</em></strong> - ta metoda
+          przełączania oferuje najmniejsze opóźnienia. Jeśli zostaną
+          przekazane uszkodzone ramki, to zostaną one odrzucone przez
+          docelową kartę. Jest to domyślny wariant dla metody
+          <em>cut-through</em>.</li>
+        <li><strong>Przełączanie <em>fragment-free</em></strong> - jest
+          kompromis między <em>cut-through</em> oraz <em>store-and-forward</em>.
+          Przełacznik pobiera i sprawdza pierwsze 64 bajty ramki przezd
+          przełączeniem. W większości sieci błedy są do wykrycia już tych
+          pierwszych 64 bajtach ramki, przez co przełącznik może mieć pewność,
+          że te ramki są całe i można je przekazać dalej.</li>
+      </ul>
+      <p>
+        Wspominając o sposobach przełączania, warto również omówić pamięć
+        bufora w przełączniku. Bufor jest wykorzystywany gdy port docelowy
+        może być zbyt zajęty, żeby przyjmować kolejne ramki, do dyspozycji mamy:
+      </p>
+      <ul>
+        <li><strong>Pamięc portów</strong> - Ramki są przechowywane w kolejkach
+          powiązanych z portami wejściowymi oraz wyjściowymi. Ramka jest
+          przekazywana na port wyjściowy tylko wtedy gdy ramki przed nią
+          zostały poprawnie przesłane. Mozliwe jest opóźnienie transmisji
+          wszystkich ramek w pamięci przez pojedyńczą ramkę, ze względu na
+          obciążenie portu docelowego. Opóźnienia występuje nawet wtedy gdy
+          inne ramki mogą zostać przesłane na otwarte porty docelowe.</li>
+        <li><strong>Pamięć współdzielona</strong> - przechowuje wszystkie
+          ramki we ogólnym buforze pamieci współdzielonym ze wszystkimi portami
+          przełącznika, ilość pamięci potrzebna dla konkretnego portu jest
+          przydzielana dynamicznie. Ramki w buforze dynamicznie powiązane z 
+          portami docelowymi. Pakiet może nadejść z jednego portu i być
+          przekazywany do innego to niezostanie on przeniesiony do innej
+          kolejki.</li>
+      </ul>
+      <p>
+        Buforowanie w pamięci współdzielonej pozwala na transmisję większych
+        ramek z mniejszymi stratami. Jest ważne dla przełączania asymetrycznego,
+        które pozwala na różne prędkości danych na różnych portach.
+        Dzięki czemu większa przepustowość może zostać przypisana do
+        niektórych portów, np. porty serwerów.
+      </p>
+      <p>
+        Dwoma najbardziej podstawowymi ustawieniami przełącznika są
+        przepustowość (przełączniki mogą działać w standardach wstecznych
+        Eternetu) oraz <em>duplex</em> (możliwość nadawania i odbierania
+        danych w tym samym momencie). Do dyspozycji mam
+        <strong>full-duplex</strong> - oba urządzenia końcowe mogą nadwać
+        i odbierać dane jednocześnie lub <strong>half-duplex</strong> - tylko
+        jedna ze stron może nadawać w tym czasie.
+      </p>
+      <p>
+        Prawdopodobnie nie będzie trzeba konfigurować tych ustawień. Tym
+        zajmuje się mechnizm autonegocjacji, urządzenia miedzy sobą ustalają
+        najlepsze ustawienia dla warunków fizycznych. Gigabitowy Ethernet
+        do działania wymaga <em>full-duplex</em>-u.
+      </p>
+      <p>
+        Nie pasujący <em>duplex</em> jest przyczną większości problemów z
+        z wydajnościa w sieciach Ethernetowyc 10/100Mbps. Przyczyna tych
+        problemów może być ustawienie portu przełącznika w <em>half-duplex</em>
+        natomiast druga strona ma ustawiony <em>full-duplex</em>, dzieje się
+        tak gdy połączenie między tymi stronami zostanie zresetowane a 
+        autonegocjacja nie będzie wstanie ustalić takie samej konfiguracji
+        dla obu stron lub gdy zmienimy konfigurację na jednym urządzeniu i
+        zapomnimy to zrobić na drugim urządzeniu. Najlepszą praktyką to albo
+        włączyć na obu autonegocjację, albo na obu wyłączyć najlepszą. Można
+        również ustawić na portach przełącznika na stałe <em>full-duplex</em>.
+      </p>
+      <p>
+        Połaczenia między urządzeniami mogą wymagać różnych rodzaju połączeń.
+        mowa tutaj o kablach prostych oraz o kablach skrosowanych. Zazwyczaj
+        połączenia między routerami wymagają kabli skrosowanych jak połączenia
+        bezpośrednie między dwiema stacjami. Obecnie mało kto pamiętam o tym
+        ponieważ mamy do dyspozycji funkcję <strong>Auto-MDIX</strong>, która
+        mimo połączenia urządzeń za pomocą prostych przewodów, dokona
+        skrosowania już wewnatrz interfejsu. W sprzętach marki Cisco,
+        a szczególnie w przełącznikach ta funkcja jest raczeh włączona, ale
+        to może być różnie (w zależności jak stare jest urządzenie). Więc warto
+        zawsze używać wymaganych przewodów lub też możemy spróbować włączyć
+        tę funkcję za pomocą polecenia: <code class="code-inline">mdix auto</code>
+        w trybie konfiguracji interfejsu.
+      </p>
+      <h2 id="ch7summary">Podsumowanie</h2>
+      <p>
+        W tym rodziale przybliżliśmy sobie szczegóły technologii Ethernet,
+        poznaliśmy adres MAC oraz tablice MAC przełączników. Dowiedzieliśmy
+        też jakie są metody przełączania oraz podstawowe ustawienia
+        przełącznika.
+      </p>
       <h1 id="1.8.networklayer">1.8. Wartstwa sieciowa</h1>
       <p>
         Warstwa sieciowa dostarcza usługi pozwalające na wymianę danych między