CZ 
06.10.2024 Hanuš VÍTEJTE V MÉM SVĚTĚ

An English translation is available for this article. Pro tento článek je dostupný anglický překlad.
TCP/IP and Ethernet - network path, active network elements

TCP/IP a ethernet - cesta v síti, aktivní síťové prvky

| Petr Bouška - Samuraj |
V desáté části série o počítačových sítích se věnuji způsobům, jakými se doručují (a adresují) data (rámce) na síti. Beru v potaz ethernet (a tedy rámec a fyzické adresování) a TCP/IP (paket a logické adresování). V praxi se jedná buď o přímé doručení, nebo o doručení nepřímé. Vše také záleží na použitých aktivních (pasivních) prvcích, takže popisuji tři běžné příklady (sdílené médium, switch, router). V druhé části článku je stručný popis aktivních síťových prvků a principů jejich funkce.
zobrazeno: 58 894x (58 864 CZ, 30 EN) | Komentáře [9]

Adresy v rámci při průchodu sítí

Stanice na sdíleném médiu

Máme dvě stanice připojené na sdíleném médiu, což může být například stará verze ethernetutopologii sběrnice (bus) nebo běžně používaná topologie hvězda (star), když se jako centrální prvek použije hub. Obě stanice mají nastavenu IP adresu a určenu síť (zadánu masku subnetu) a síťové karty mají MAC adresu. Tento způsob se označuje jako sdílený ethernet.

V tomto případě jsou obě stanice ve stejné síti (stejném subnetu), takže dojde k přímému doručení.

Pokud chce modrá stanice poslat data červené stanici, tak nejprve vytvoří ethernetový rámec:

  1. známe IP adresu cílové stanice
  2. do hlavičky IP paketu se vloží naše IP adresa (zdrojová) a cílová IP adresa
  3. nyní potřebujeme MAC adresu cílové stanice, buď ji máme v ARP tabulce, nebo provedeme ARP dotaz
  4. do ethernetového rámce vložíme naši MAC adresu (zdrojovou) a cílovou MAC adresu

Následně se odešlou tato data do sítě (využije se CSMA/CD). Na sdíleném médiu projde rámec celou síť a každá stanice naslouchá, zda neobsahuje její MAC adresu. Pokud ano, tak rámec přijme.

Stanice na sdíleném médiu

Propojení pomocí switche

V případě, kdy je ethernet propojen do topologie hvězda za pomoci switche, tak se ve většině případů dostane komunikace pouze ke stanicím, kterým je určena (pomocí CAM tabulky, tedy jaká MAC adresa komunikuje z kterého portu, pokud nemá záznam, tak odešle na všechny porty mimo příchozího). Princip komunikace je však stejný jako u sdíleného média a switch je pro komunikující stanice transparentní. Tento, dnes běžný, způsob se označuje jako přepínaný ethernet.

Propojení pomocí switche

Propojení pomocí routeru

V tomto případě je každá stanice v jiném subnetu, takže musí dojít k nepřímému doručení. Router již není transparentní síťový prvek, ale ostatní síťová zařízení jej musí adresovat. Následující popis je obecný způsob komunikace:

  1. na síťové vrstvě se vytvoří hlavička IP paketu, která obsahuje IP adresu zdrojové a cílové stanice
  2. zdrojová stanice testuje, zda je cílová IP adresa ve stejném subnetu, tedy zda je pro ni lokální
  3. dále pokračuje vrstva síťového rozhranní vytvářením hlavičky ethernetového rámce, vloží svoji zdrojovou MAC adresu, cílová MAC adresa se přiřadí k IP adrese z ARP keše (dotazu) a určí se podle:
    1. při lokální komunikaci adresy cílové stanice
    2. pokud není lokální, tak se podívá do routovací tabulky a použije adresu patřičného routeru (další hop, často se použije gateway)
  4. rámec se odešle do sítě
  5. data přijdou na router, ten podle MAC adresy pozná, že jsou určena jemu
  6. zkontroluje paket a sníží TTL (doba života v síti - počet hopů)
  7. znovu se provádí kontrola, zda je IP adresa lokální na jednom z interfaců a buď se odešle dalšímu routeru nebo přímo cílové stanici
  8. cílová stanice přijme rámec podle MAC adresy
  9. ověří jej, zkontroluje IP adresu a postoupí jej skrze vrstvy nahoru
Propojení pomocí routeru
Průchod rámce

Aktivní síťové prvky

Počítačová síť se skládá z aktivních a pasivních síťových prvků. Mezi pasivní síťové prvky patří kabeláž a konektory. Mezi aktivní síťové prvky patří síťová karta (NIC), switch, router, firewall, apod.

Repeater (opakovač)

  • pracuje na první vrstvě OSI modelu (Layer 1)
  • většinou má pouze dva porty
  • slouží k prodloužení dosahu signálu, hlavně u sběrnicové topologie
  • dnes se nepoužívá

Princip funkce

  • data, která přijme na jednom portu, okamžitě přeposílá na druhý port

Hub (rozbočovač)

  • označuje se také jako multipoint repeater
  • pracuje na první vrstvě OSI modelu (Layer 1)
  • většinou má 4 - 24 portů
  • základní prvek pro hvězdicovou topologii
  • dnes se nepoužívá

Princip funkce

  • data, která přijme na jednom portu, okamžitě přeposílá na všechny porty mimo portu odkud je přijal

Bridge (most)

  • pracuje na druhé vrstvě OSI modelu (Layer 2) - rozhoduje podle MAC adresy
  • většinou má pouze dva porty
  • slouží k propojení/oddělení segmentů
  • snižuje velikost kolizní domény
  • broadcasty a multicasty se posílají všude
  • dnes se nepoužívá

Princip funkce

  • u přicházejících rámců čte zdrojovou MAC adresu a vytváří v paměti tabulku MAC adres a portů, odkud pochází
  • pokud nemá pro cílovou MAC adresu záznam, tak rámec odešle na všechny porty
  • pokud záznam existuje a pokud leží příjemce ve stejném segmentu jako odesílatel, tak se data neposílají do ostatních segmentů

Switch (přepínač)

  • označuje se také jako multipoint bridge
  • pracuje na druhé vrstvě OSI modelu (Layer 2) - rozhoduje podle MAC adresy
  • většinou má 4 - 48 portů
  • slouží k propojení/oddělení segmentů
  • snižuje velikost kolizní domény
  • broadcasty se posílají všude
  • pracuje rychle
  • základní prvek pro hvězdicovou topologii
  • neupravuje rámec

Princip funkce

  • u přicházejících rámců čte zdrojovou MAC adresu a vytváří v paměti tabulku MAC adres a portů, odkud pochází, tabulka se označuje jako CAM (Content Addressable Memory) tabulka
  • pokud nemá pro cílovou MAC adresu záznam, tak rámec odešle na všechny porty mimo příchozího
  • pokud má v tabulce cílovou MAC adresu, tak rámec pošle pouze na daný port

Módy switche

Kvůli hledání kompromisu mezi zpožděním a spolehlivostí existuje několik metod.

  • Cut-Through - rychlé, ale bez kontroly chyb, přeposílá rámce okamžitě, kdy zná cílovou MAC adresu
  • Store-and-Forward - nejprve se celý rámec přijme, ověří se FCS (CRC) a pak teprve posílá nebo zahodí
  • Fragment-Free (Modified Cut-Through) - kompromis, nejprve načte prvních 64 bytů (včetně hlavičky) a pak přeposílá

Router (směrovač)

  • pracuje na třetí vrstvě OSI modelu (Layer 3) - rozhoduje podle IP adresy
  • hraniční router se občas označuje jako gateway (brána)
  • slouží pro spojování sítí
  • nabízí služby uvnitř LAN (směrování ze zdroje do cíle, segmentování sítě, ARP) a propojení do WAN (přes serial, ISDN, DSL, optiku)
  • broadcasty se standardně nepřeposílají - snižuje velikost broadcast domény
  • je pomalejší než switch, často je dnes nahrazován Layer 3 switchem (MultiLayer Switch)
  • vytváří novou hlavičku a ukončení (CRC) rámce

Princip funkce

  • v paměti si sestavuje routovací tabulku podle sítí, kam má přímo připojené interfacy, podle statických hodnot a podle informací od ostatních routerů (záleží na použitém protokolu)
  • u příchozích paketů se dívá na cílovou IP adresu a podle routovací tabulky určuje cestu k cíli (odesílá data na daný port)
  • při odesílání dat modifikuje hlavičku rámce, jako zdrojovou MAC adresu vkládá svojí a jako cílovou buď další router nebo stanici
  • pokud cílová IP adresa patří do některého přímo připojeného subnetu, tak odesílá přímo této stanici, přitom se koukne do ARP tabulky, zda má pro danou IP adresu MAC adresu, pokud ne, tak odešle ARP dotaz (kdo má tuto IP?), pokud nedostane odpověď, tak rámec zahodí, pokud ano, tak doplní ARP tabulku a rámec odešle

Související články:

Počítačové sítě - Computer networks

Tento seriál se věnuje základům počítačových sítí. Jsou zde stručně popsány důležité praktické aspekty, které by měl znát každý, kdo se o sítě zajímá. Obsahuje jedny z nejčtenějších článků na tomto webu. Je využíváno pro výuku na školách.

Pokud se chcete vyjádřit k tomuto článku, využijte komentáře níže.

Komentáře
  1. [1] Vlastimil Ovčáčík

    Další skvělý článek.

    Zde mě jen zaskočilo u routerů: "V tomto případě je každá stanice v jiném subnetu"

    Mám doma router co mi spojuje ntb a stolní pc s IP 192.168.2.100 a 192.168.2.101. Ty ale jsou ve stejném subnetu?

    (Zase ty subnety;-))

    Pondělí, 17.09.2007 20:43 | odpovědět
  2. [2] Samuraj

    odpověď na [1]Vlastimil Ovčáčík: Díky.

    Předpokládám, že doma máte kombinovaný router se switchem (to je to běžné, co se prodává pro připojení k netu) a jeden routerový port je připojen do internetu a do druhého (vnitřně) je switch, kde máte NTB a PC.

    Úterý, 18.09.2007 08:23 | odpovědět
  3. [3] Vlastimil Ovčáčík

    odpověď na [2]Samuraj: http://www.agen.cz/produkt/24114/SMC-Wireless-G-Barricade-Router-4xLAN-1xWAN.htm

    Řekl bych, že jo. PC jede na ethernetu a ntb na wifi/g.

    Ještě se vrátím k těm subnetům. Každý subnet má svůj router/switch - dejme tomu tři subnety, tedy tři routery - které jsou pak spojené do jednoho routeru/switche - a ten pak na WAN...

    Vezmeme si PC v subnetu

    -zdrojová IP 10.0.1.15/24

    -cílová IP 10.0.2.9/24

    Takže router v subnetu 10.0.1.0/24 zjistí, že to není lokální adresa a tak to pošle na další hop - tj. router (10.0.0.1/16) spojující všechny subnety - ten zjistí že to je v jeho síti a pošle to na router zodpovědný za subnet 10.0.2.0/24 a dále pak do 10.0.2.9/24 - tj. cílový počítač.

    ?? :)

    Úterý, 18.09.2007 19:34 | odpovědět
  4. [4] vo

    odpověď na [3]Vlastimil Ovčáčík: Ještě doplním:

    00001010.00000000.00000000.0000001

    <-------Síť-----> <Subnet> <--PC-->

    ?

    Úterý, 18.09.2007 19:40 | odpovědět
  5. [5] Samuraj

    odpověď na [3]Vlastimil Ovčáčík: Tak to jsem moc nepochopil. Pokud chci mít 3 subnety, tak mám jeden router, do kterého jsou připojeny, ten router je gateway. Stanice ví, jestli se jedná o lokální adresu nebo ne (a pak to pošle na GW). Router provádí směrování mezi těmito třemi subnety a internetem (nadřazenou úrovní).

    odpověď na [4]vo: Toto je také podivné, takto se to neoznačuje, možná jsem to špatně vysvětloval. Adresa se dělí na část síťovou (network - pro jeden subnet vždy stejná) a hostovskou (host - adresy v daném subnetu).

    Úterý, 18.09.2007 20:30 | odpovědět
  6. [6] Vlastimil Ovčáčík

    Myslím, že už jsem prozřel. Vygooglil jsem si obrázek http://www.networkdictionary.cn/images/subnet.gif a už je to jasný... Furt jsem v tom hledal nějakou vědu ;-)

    Středa, 19.09.2007 18:10 | odpovědět
  7. [7] Gnukleus

    Krásnej článek, jen tak dál. Jsem doma, připravujíc se na CCNA 640-802. ;-)

    Pondělí, 07.04.2008 09:26 | odpovědět
  8. [8] Tomas

    Chtel bych se zeptat, jakym zpusobem je reseno, aby se sdilelo pouze pripojeni k netu, tzn. aby se zarizeni navzajem nevidely v lokalni siti!?

    Pondělí, 21.11.2011 11:12 | odpovědět
  9. [9] Samuraj

    odpověď na [8]Tomas: Na cisco switchi se to dá řešit pomocí Private VLAN, více v www.samuraj-cz.com/clanek/cisco-ios-19-private-vlan-a-protected-port/.

    Pondělí, 21.11.2011 11:25 | odpovědět
Přidat komentář

Vložit tag: strong em link

Vložit smajlík: :-) ;-) :-( :-O

Nápověda:
  • maximální délka komentáře je 2000 znaků
  • HTML tagy nejsou povoleny (budou odstraněny), použít se mohou pouze speciální tagy (jsou uvedeny nad vstupním polem)
  • nový řádek (ENTER) ukončí odstavec a začne nový
  • pokud odpovídáte na jiný komentář, vložte na začátek odstavce (řádku) číslo komentáře v hranatých závorkách