====== Přenos dat, počítačové sítě a protokoly ====== [[switch]] ===== Správa chyba na úrovní paketů ===== ==== Jmenuj a vysvětli aspoň tři chyby paketů! ==== * Ztráta * Ztráta fragmentovaných dat * Duplikace * Vložení * Změna pořadí ==== Jaké znáš techniky znovu zasílání paketu? ==== * Go-Back-N * Selektivní znovu zaslání * SMART ==== Uvažujme prostor sekvenčních čísel, který používá IP, maximální rychlostí linky 2 Mbps, T = A = 500 ms. Jaké je v tomto scénáři největší povolené MPL pro pakety velikosti 40 B? ==== 2//n// > (2//MPL//((**M**aximum **P**acket **L**ifetime)) + //T//((Maximální doba, po kterou je odesilatel vyčkávající na potvrzení schopen mít paket připravený k znovuzaslání)) + //A//((Maximální doba, po kterou se příjemce může zdržet před zasláním potvrzení))) · //R// //R// = 2 Mbps / 40 B = 6250 s 232((Pro TCP/IP je //n// = 32)) = (2//MPL// + 0.5 + 0.5) · 6250\\ 232 = (2//MPL// + 1) · 6250\\ 232 = 12500//MPL// + 6250\\ //MPL// = (232 - 6250) / 12500\\ //MPL// = 343597 s ==== Odesilatel zaslal pakety se sekvenčními čísly 10 až 15, příjemce odpověděl NACK pro paket s číslem 12. Jak se zachová odesilatel, pokud bude používat algoritmus Go-Back-N a jak v případě selektivního znovu zaslání? ==== * **Go-Back-N**: Při detekci ztráty paketu se znovu zasílá celé chybykontrolující okno (všechny pakety, které se v něm nacházely). * **Selektivní znovu zasílání**: Pomocí bitové masky dává příjemce odesilateli vědět, které pakety z aktivního chyby-kontrolujícího okna dorazily v pořádku a které nikoli. Zasílány jsou jen ty pakety, které se ztratily. > jinak to s tim NACKem je trap, ze? > v go-back-n se posila ack, v selektivnim se posila kumulativni ack ===== Multicast ===== ==== Jaké známe typy aplikačního multicastu podle směru komunikace? ==== * **One-to-Many**: 1 zdroj, >1 cíl (VoIP, VoD) * **Many-to-Many**: >1 zdroj, >1 cíl (distribuované výpočty) * **Many-to-One**: >1 zdroj, 1 cíl (aplikace ve finančnictví/pojišťovnictví hromadný sběr dat) ==== Jaký je ROZSAH multicastových adres v IPv4? ==== Adresy třídy D (''224.0.0.0/4'') ==== Jaké známe tři typy DOSAHu multicastových adres v IPv4? ==== ^ Dosah ^ Adresy ^ Příklady ^ | Lokální | ''224.0.0.0/24'' | OSPF, RIP, EIGRP, PIM, IGMP, mDNS | | Globální | ''224.0.1.0/24''\\ ''224.0.2.0''--''238.255.255.255'' | NTP, RSVP, Nokia, Cisco-RP, NQDS* | | Administrativní | ''239.0.0.0/8'' | Interní použití | ==== Jak poznáme multicastovou MAC adresu? ==== První tři oktety ''01:00:5E'' ==== Co je problém 32-to-1 overlapping? ==== IP adresy se stejnými 23((Prvních 9 se zahazuje.)) bity se mapují na stejnou MAC adresu. ==== Jaký port má na L4 vrstvě vyčleněn protokol IGMP? ==== IGMP messages are carried in bare IP packets with IP protocol number 2. There is no transport layer used with IGMP messaging.((http://en.wikipedia.org/wiki/IGMP#IGMPv3_packet_structure)) > Port naní protokol! Buď je to chyták, nebo překlep. ==== Jak se liší v IGMP Membership Query varianta General Query od varianty Group-Specific Query? ==== Membership Query podle adresy rozdělen na **General Query** (Group Address nastaveno na ''0.0.0.0'') a **Group-Specific Query**. ==== Jak se zachová směrovač, pokud dostane zprávu IGMP Leave Group? ==== Upon receipt of the Leave Group message, the router sends a series of group-specific queries for the host group. If no host responds to the group-specific queries, the router determines that there are no more members of that host group on that particular subnet and removes the entry from the IGMP interface group table.((http://technet.microsoft.com/en-us/library/cc957916.aspx)) ==== Jak nakládá s multicastovým rámcem „hloupý“ přepínač? ==== Broadcast ==== Kdo je v případě CGMP ve vztahu klient-server klientem a kdo serverem? ==== router = server, switch = klient ==== Jmenujte tři unicastové a tři multicastové směrovací protokoly! ==== - [[wp>OSPF]] - [[wp>EIGRP]] - [[wp>IS-IS]] - [[wp>MOSPF]] - [[wp>DVMRP]] - [[wp>PIM]] - [[wp>M-BGP]] ==== Co je to SPT a jak ho lze v daném grafu vybudovat? ==== [[wp>Shortest path tree]] Acyklický spojitý faktor grafu s nezáporně ohodnocenými hranami, kde cesta mezi kořenovým uzlem a všemi ostatními uzly je nejmenší možná. Abstraktní stromová struktura, kde mezi dvěma body existuje jediná, a to nejkratší cesta. [[wp>Dijkstra's algorithm|Dijkstrův algoritmus]] / [[wp>Floyd–Warshall algorithm|Floyd-Warshallův algoritmu]] ==== Vyjmenujte oba druhy distribučních stromů a k nim výhody a nevýhody, jež s nimi souvisí! ==== * **(S, G) -- source trees/zdrojové stromy** * Pro každý zdroj multicastového provozu je vybudováván SPT ke všem jeho příjemcům se zdrojem jakožto kořenem stromu. * Nejkratší cesta = nejmenší zpoždění. * Paměťově náročné -- pro každý zdroj vlastní strom * **(*, G) shared trees (sdílené stromy)** * Existence nějakého společného bodu (tzv. rendezvous pointu RP) v topologii sdružujícího provoz od zdrojů multicastu, od kterého (jakožto kořene) je pak vybudován SPT k příjemcům. * Suboptimální cesta může být příčinou zpoždění * Lépe škáluje provoz od více stejných zdrojů * Paměťově méně náročné ==== Jakou metriku používá DVMRP? ==== Počet hopů ==== Co je RPF a proč je tak důležitý? ==== [[wp>Reverse path forwarding]] Princip zajišťující, že se při směrování multicastu eliminují smyčky. ==== Popište směrování příchozího multicastového paketu na směrovači s přihlédnutím k RPF! ==== - Zdroj dat multicastové skupiny je ověřen vůči unicastové směrovací tabulce - Zjistí se, jestli rozhraní leží ve směru zdroje dané multicastové skupiny, jestli: * ANO -- rozhraní je označeno jako "Incoming" nebo "RPF" * NE -- rozhraní není nijak označeno nebo jako "non-RPF" - Směrování multicastového paketu je pak rozhodnuto podle označení rozhraní, ze kterého přišel, jestli: * "RPF" rozhraní -- paket je směrován dál * "non-RPF" rozhraní -- paket je zahozen ==== Vyberte si tři libovolné zprávy PIM a popište je! ==== * **Hello** -- PIM-DM uses Hello messages to detect other PIM routers. Hello messages are sent periodically on each PIM enabled interface. * **Prune**, **Join**, **Graft** -- **Prune** messages are sent toward the upstream neighbor for ''S'' to indicate that traffic from ''S'' addressed to group G is not desired. In the case of downstream routers ''A'' and ''B'', where ''A'' wishes to continue receiving data and ''B'' does not, ''A'' will send a **Join** in response to ''B'''s **Prune** to override the **Prune**. This is the only situation in PIM-DM in which a **Join** message is used. Finally, a **Graft** message is used to re-join a previously pruned branch to the delivery tree. [[rfc>3973|RFC 3973]] ==== Jmenujte dva módy činnosti PIM, čím se od sebe liší a v jakých topologiích byste ten který nasadili? ==== * **Dense (hustý) mód** * Pracuje inkluzívním přístupem. * Pravidelně zaplavuje celou síť multicastovým provozem, přičemž ty části stromu, na kterých nejsou žádní odběratelé, explicitně kořen upozorňují, aby jim nic nezasílal. * Každé 3 minuty. * Používá jen (S, G) stromy, které jsou budovány __od zdroje až k příjemcům__. * Vhodný do topologií s jedním zdrojem multicastu. * **Sparse (řídký) mód** * Pracuje exkluzivním přístupem. * Strom je budován podle poptávky příjemců, kteří kořen explicitně upozorňují, že mají zájem odebírat data z nějaké multicastové skupiny. * Pracuje s oběma typy distribučních stromů: * Zdrojové stromy jsou budovány __od zdrojů k RP__((Rendezvous point)). * Sdílené stromy pak __od RP k příjemcům__. * Používáme v topologiích s více zdroji multicastu. * PIM-SM nefunguje, pokud všichni neznají RP!!! ==== Jakou informaci musí směrovač mít, pokud chce používat PIMSM? ==== Rendezvous point ===== Architektura směrovačů ===== ==== Jaké jsou základní funkce směrovače? ==== Směrování a přeposílání paketů. ==== Jaké jsou základní stavební prvky (funkční moduly) směrovače? ==== * Síťové rozhraní (network interface) * Přepínací modul FE (forwarding engine) * Správa front (queue manager) * Správa provozu (traffic manager) * Propojovací deska, sběrnice (backplane) * Procesor pro směrování (route control processor) ==== Co je to kontext paketu a k čemu se používá? ==== * Datová struktura obsahující informace o zpracovávaném paketu. * Vytvořena při vstupu paketu do zařízení. * Informace se postupně doplňují. * Paket uložen během zpracování v paměti. * Mezi moduly předáván kontext paketu. * Po vyplnění směrovacích informací v kontextu paketu je paket přenesen ze vstupního bufferu do výstupního bufferu. * Ingress interface number * Ingress interface type * Ingress L2 information * Source MAC address * Dest. MAC address * L3 information * Source IP address * Dest. IP address * Protocol type * DSCP (QoS) * Dest. port (TCP/UDP) * Source port (TCP/UDP) ==== Jaký je rozdíl mezi sdílenou a přepínanou sběrnicí u směrovače? ==== * sdílená (shared) -- pouze jedna cesta v čase * přepínaná (switched) -- umožňuje paralelní přenos ==== Jaké znáte typy architektur směrovačů? Stručně je popište. ==== === Architektura se sdíleným procesorem (Shared CPU) === * Architektura podobná klasickým počítačům * Procesor s pamětí * Implementace fukčních modulů: přepojovací modul FE, správce front, správce provozu, zpracování L2/L3, směrování, správa a monitorování * Přídavné karty propojené sdílenou sběrnicí (backplane) * Sdílejí procesor i sběrnici * Nízký výkon -- použití pro menší sítě * Propustnost < 0.5 Gb/s === Architektura se sdílenými moduly pro přeposílání (Shared Forwarding Engine) === * Paralelní zpracování paketů * Může docházet k přeskládání paketů * Přeskládání způsobuje zpomalení TCP spojení * Řešení přeskládání * Každý tok zpracován ve stejném modulu FE * Rozšiřitelná architektura * Lze přidávat moduly FE * Slabým místem sdílená sběrnice (shared backplane) * Možné nahradit přepínanou sběrnicí (switched backplane) * Propustnost < 5 Gb/s === Distribuovaná architektura (Shared Nothing) === * Oddělení procesu směrování a přeposílání * Směrování probíhá na obecném procesoru * Při aktualizaci směrovací tabulky se změny přenesou i do přepínací tabulky * Propustnost směrovače až 640 Gbps * Rozšiřování omezeno počtem slotů pro síťové moduly * Páteřní přepínače * Velký počet portů pro připojené sítě * Rychlost optických sítí i 2.4 Gbps (OC-48) === Modulární propojení směrovačů (Clustered Architecture) === * Několik směrovačů připojených k centrálnímu přepínači * Síťové moduly umístěny ve více chassis * Centrální přepínač * Propojení pomocí vysokorychlostních optických linek * Klastr se chová se jako jeden směrovač * Přepínání paketů probíhá mezi síťovými moduly v různých chassis * Důraz na redundanci a zálohování * Záložní přepínač (single point of failure) ==== Které operace jsou časově kritické na směrovači (Fast Path)? ==== * Zpracování hlavičky IP * Přeposlání paketu * Klasifikace paketu * Uložení do front, plánování ==== Které operace nevyžadují přednostní zpracování (Slow Path)? ==== * Zpracování ARP * Fragmentace a defragmentace * Pokročilé zpracování IP paketu * Správa a monitorování sítě -- SNMP * Zpracování směrovacích paketů keep-alive * Aktualizace směrovacích informací ==== Čím se liší distribuovaná architektura od architektury se sdílenými jednotkami FE (přepínací modul)? ==== * Jednotka FE přemístěna na síťovou kartu * Každý funkční modul implementován v hardware * Specializované technologie ASIC a FPGA * Propojení hw komponent rychlými sběrnicemi * **Zpracování paketů přesunuto do síťového modulu** ==== Popište průchod paketu směrovačem u architektury se sdíleným procesorem, se sdílenými jednotkami FE a u distribuované architektury. ==== - Příchod paketu -- přerušení CPU - Přenesení paketu do paměti po sdílené sběrnici (backplane) - Zpracování L2/L3 hlaviček v procesoru - Určení výstupního rozhraní ve FE - Paket zařazen do fronty správcem front - Paket zpracován správou provozu - Paket přenesen z paměti na výstupní rozhraní a odeslán ---- - Po příchodu paketu zpracovány hlavičky a vytvořen kontext - Paket uložen do paměti na síťovém modulu - Kontext a IP hlavička přenesy a zpracovány v modulu FE * Použití přepínací sběrnici (forwarding backplane) * IP hlavička použita ke směrování * Nalezené informace uloženy do kontextu - Informace poslány zpět na vstupní síťový modul - Paket předán sdílenou sběrnící výstupnímu síťovému modulu - Paket uložen správcem fronty do paměti - Po zpracování správcem provozu odeslán na výstup ---- - Paket vstoupí do síťového modulu, zpracování hlaviček L2/L3 - Paket uložen do paměti, kontext poslán jednotce FE - Přepínací modul FE určí výstupní rozhraní * Provede se klasifikace paketu -- stanovení třídy provozu * Třída provozu uložena v kontextu paketu - Paket přenesen do paměti výstupního síťového modulu - Paket naplánován k odeslání správcem provozu - Přidání výstupních hlaviček, paket odeslán