html5-img
1 / 87

IP Multicasting

IP Multicasting. BSCI Module 7. Na čo multicast?. Mnohé sieťové aplikácie požadujú príjem istého dátového toku mnohými príjemcami súčasne Internetové analógy rozhlasu, televízie, konferenčných spojení Music-on-hold v IP telefónii

rianne
Download Presentation

IP Multicasting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IP Multicasting BSCI Module 7

  2. Načo multicast? • Mnohé sieťové aplikácie požadujú príjem istého dátového toku mnohými príjemcami súčasne • Internetové analógy rozhlasu, televízie, konferenčných spojení • Music-on-hold v IP telefónii • Distribúcia informácií mnohým (potenciálne neznámym) príjemcom naraz (presný čas, konfiguračné parametre alebo celé obrazy pracovných staníc, smerovacie protokoly...) • Multicasting: posielanie jedného rámca/paketu, ktorý je adresovaného viacerým vybraným príjemcom naraz • Výhody multicastingu: • Lepšie využitie zdrojov siete (efektívnejšie využívanie prenosového pásma, menšia záťaž pre odosielateľa i pre sieťovú infraštruktúru) • Odosielateľ nemusí nevyhnutne poznať identitu každého príjemcu

  3. Unicast vs. Multicast

  4. Nevýhody multicastingu • Multicast je zväčša založený na UDP • Best-effort delivery (možné straty paketov bez riešenia na transportnej vrstve) • Nerieši sa situácia zahltenia • Príjemcovia môžu dostávať duplikované pakety • Odoslané dáta nemusia prísť v pôvodnom poradí • Filtrovanie a zabezpečenie multicastov môže byť zložitejšie • Niektoré z týchto problémov sčasti riešia v súčasnosti iné protokoly, ktoré sú schopné zabezpečovať spoľahlivý multicasting (PGM) • Smerovače musia podporovať smerovanie multicastov, aby bol multicasting použiteľný pre príjemcov v rôznych IP sieťach • Prepínače by mali podporovať multicasting (pomocou CGMP/IGMP snoopingu), aby zabezpečovali efektívne doručovanie multicastov ich príjemcom

  5. Typy multicastových aplikácií Od jedného k mnohým (One-to-many) • Jediná stanica odosielajúca dáta dvom alebo viacerým príjemcom Od mnohých k mnohým (Many-to-many) • Ľubovoľný počet staníc vzájomne si posielajúcich multicastovo adresované dáta (všetky stanice sú členmi tej istej multicastovej skupiny) Od mnohých k jednému (Many-to-one) • Ľubovoľný počet príjemcov posielajúcich dáta späť odosielateľovi (cez unicast či multicast)

  6. Adresovanie multicastov

  7. Štruktúra multicastovej IP adresy • Pre multicastové adresovanie sa využívajú IP adresyz triedy D • Horné 4 bity sú 1110 (definícia triedy D) • Zvyšných 28 bitov označuje číslo multicastovej skupiny • Skupina je tvorená členmi – stanicami, ktoré deklarovali záujem byť členom danej multicastovej skupiny • Rozsah D adries je od 224.0.0.0 do 239.255.255.255

  8. Source 1.0.0.0 - 223.255.255.255 (Trieda A, B, C) Destination 224.0.0.0 - 239.255.255.255 (Trieda D)Rozsah multicastových adries IP adresovanie v multicastoch IPv4 hlavička Version IHL Type of Service Total Length Zdrojová adresa nikdy nebude multicastovou adresou z triedy D Identification Flags Fragment Offset Time to Live Protocol Header Checksum Source Address Source Destination Address Destination Options Padding

  9. Rozdelenie multicastových IP adries • Adresy typu local scope • 224.0.0.0 až 224.0.0.255 • Pakety nemajú opustiť broadcastovú doménu, z ktorej pochádzajú (sú link-local) • Mnohé adresy z tohto rozsahu sú v súčasnosti vyhradené • Adresy typu global scope • 224.0.1.0 až 238.255.255.255 • Adresy typu administratively scoped • 239.0.0.0 až 239.255.255.255 • Tento rozsah je využitý pre použitie v privátnych doménach

  10. Adresy typu Local Scope • Rezervovaný rozsah: 224.0.0.0 až 224.0.0.255 • 224.0.0.1 (všetky multicast-capable systémy na segmente) • 224.0.0.2 (všetky smerovače na subnete) • 224.0.0.4 (všetky DVMRP smerovače) • 224.0.0.5, 224.0.0.6 (OSPF) • 224.0.0.9 (RIPv2) • 224.0.0.10 (EIGRP) • 224.0.0.13 (všetky PIMv2 smerovače) • 224.0.0.18 (VRRP) • 224.0.0.22 (IGMPv3) • 224.0.0.2,102 (HSRP)

  11. Adresy typu Global Scopea Administratively Scoped • Global Scope: Adresy s prechodným významom, prideľované dynamicky: • Globálny rozsah: 224.0.1.0-238.255.255.255 • 224.2.X.X sa zvyčajne používa v MBONE aplikáciách • Časť globálneho rozsahu sa v súčasnosti používa pre nové protokoly • Administratively Scoped: Adresy s prechodným významom, prideľované dynamicky, povahovo privátne • Limited (local) scope: 239.0.0.0/8 • Site-local scope: 239.255.0.0/16 • Organization-local scope: 239.192.0.0 to 239.251.255.255

  12. Multicastové adresovanie na L2 • Doposiaľ sme predpokladali, že MAC adresa v ethernetovom rámci označuje jedno konkrétne sieťové rozhranie • V skutočnosti existujú MAC adresy, ktoré označujú nejakú skupinu počítačov (v broadcastovej doméne) • MAC adresa: 6B, prvé 3B: OUI, druhé 3B: S/N • Tvar prvého bajtu MAC adresy: • U/L: Universal (0), Local (1) • I/G: Individual (0), Global (1)

  13. Multicastové adresovanie na L2 IANA vyčlenila pre multicastové MAC adresy rozsah MAC 01:00:5e:00:00:00 až 01:00:5e:7f:ff:ff • Prvých 25 bitov v každej MAC má fixnú hodnotu, ktorá sa musí dodržať • Zostávajúcich 23 bitov v MAC slúži na popísanie multicastovej skupiny 00000001:00000000:01011110:00000000:00000000:00000000 až 00000001:00000000:01011110:01111111:11111111:11111111

  14. Mapovanie multicastových IP adriesna multicastové MAC adresy • Bežné IP adresy sa mapujú na MAC adresy pomocou ARP, tento princíp však neplatí o adresách triedy D • Namiesto neho sa pri multicastových adresách typu D používa iná, jednoduchá, avšak nie bijektívna operácia: 239 150 60 70 01 00 5e 16 3c 46

  15. Mapovanie multicastových IP adriesna multicastové MAC adresy 32 rôznych IP adries zodpovedá jednej MAC adrese 32 rôznych IP multicastových adries 224.1.1.1 224.129.1.1 225.1.1.1 225.129.1.1 . . . 238.1.1.1 238.129.1.1 239.1.1.1 239.129.1.1 1 multicastová MAC adresa 0100.5E01.0101

  16. Prideľovanie/zisťovanie multicastových IP adries • Zisťovanie • Načúvaním na známej multicastovej adrese • SAP (RFC 2974) (Cisco ho niekedy volá sdr) • Adresárové služby • Web, e-mail, ... • Statické prideľovanie a zisťovanie • Existuje veľmi veľa pravidiel na vyhýbanie sa nevhodne navrhnutým adresám • Vhodný Cisco dokument: „Guidelines for Enterprise IP Multicast Address Allocation“ (cca 57 strán ) • Prideľovanie podľa AS: 233.0.0.0 – 233.255.255.255 • Tzv. GLOP adresovanie definované v RFC 3180 • Prvý bajt IP čísla musí byť nastavený na hodnotu 233 • Číslo AS sa zapíše dekadicky ako druhý a tretí oktet IP adresy • Posledný oktet zostáva na určenie multicastovej skupiny v rámci AS

  17. Protokol IGMP

  18. Internet Group Management Protocol (IGMP) • Stanica sa stáva členom multicastovej skupiny tak, že svojej bráne (gateway – routeru) ohlási svoj záujem byť členom skupiny • Ak router dostane multicastový IP traffic adresovaný danej skupine, bude vedieť, že ho má preposlať aj do siete, kde sa nachádza táto stanica • Stanica si neprideľuje dodatočnú IP adresu. Inicializuje však podporu v sieťovej karte, aby akceptovala aj rámce adresované na príslušnú MAC adresu multicastovej skupiny • Protokol na prihlásenie/odhlásenie sa stanice do multicastovej skupiny sa volá IGMP • IGMP je komunikácia medzi stanicou a jej bránou • Existujú v súčasnosti 3 verzie: • IGMPv1 definované v RFC 1112 • Podporujú všetky súčasné OS • IGMPv2 definované v RFC 2236 • Podporujú všetky súčasné OS • IGMPv3 definované v RFC 3376 • Podporované v posledných verziách Windows a Linux

  19. IGMPv1 • IGMPv1 má dve základné správy • Membership query • Periodicky generovaná smerovačmi (tzv. queriers), posielaná na IP adresu 224.0.0.1 (all-hosts) • Posiela sa zriedkavo, spravidla každú minútu • Membership report • Odosielaná stanicou na IP adresu skupiny, do ktorej si stanica želá byť prihlásená • Posiela sa 1 report pre každú skupinu, v ktorej je stanica členom • Report sa posiela buď ako odpoveď na query, alebo v momente, keď sa stanica prihlasuje do skupiny (bez vyžiadania) • Každá stanica pred odoslaním odpovede na výzvu náhodný čas (max 10 sekúnd) počká, či neodpovie nejaká iná stanica. Ak odpovie, netreba posielať ďalšiu odpoveď

  20. IGMPv2 • Tri základné druhy správ • Membership query • Periodicky generované smerovačmi (queriers) • Môžu byť všeobecné (odosielané na IP 224.0.0.1) a špecifické (odosielané na IP skupiny) • Membership report • Odosielané stanicou na IP adresu skupiny, do ktorej si stanica želá byť prihlásená • Leave group • Stanica touto správou ohlasuje opustenie skupiny, posielaná na 224.0.0.2 • Správu posiela tá stanica, ktorá odpovedala na poslednú Query na danú skupinu • Query router (querier) vie vynútiť čas, dokedy očakáva odpoveď na Query (tzv. Query-Response čas) • IGMPv2 štandardizuje spôsob voľby queriera spomedzi viacerých smerovačov na segmente (smerovač s najnižšou IP)

  21. IGMPv3 • Dva základné druhy správ: • Membership query • General query, posielané na 224.0.0.1 • Group-specific query (*,G), posielané na skupinu • Group-and-source specific (S,G), posielané na skupinu • Membership report • Odosielané na adresu 224.0.0.22 • IGMPv3 má podstatne zložitejšiu internú sémantiku než jeho predchodcovia

  22. 224.1.1.1 Join Group IGMPv2: Prihlásenie sa do skupiny

  23. IGMPv2: Opustenie skupiny • Stanice H2 a H3 sú členmi skupiny 224.1.1.1 • H2 pošle správu Leave group

  24. IGMPv2: Opustenie skupiny • Router pošle group-specific query

  25. IGMPv2: Opustenie skupiny • Zostávajúci člen pošle report, takže router vie, že na segmente ešte sú príjemcovia

  26. IGMPv2: Opustenie skupiny

  27. IGMPv2: Opustenie skupiny

  28. Nová stanica posiela IGMPv3 report na adresu 224.0.0.22 hneď, ako sa do skupiny prihlasuje. IGMPv3: Prihlásenie sa do skupiny

  29. IGMPv3 report obsahuje zoznam žiadaných odosielateľov v zoznamoch typu INCLUDE alebo EXCLUDE. IGMPv3: Prihlásenie sa k špecifickému odosielateľovi v skupine

  30. Router posiela periodické queries: Odpovedajú všetci IGMPv3 členovia Report správy obsahujú viaceré položky o stave IGMPv3: Udržiavanie prehľadu o stave

  31. Efektívne doručovanie multicastov na Layer2

  32. Efektívne doručovanie multicastov na L2 Problém:Doručovanie multicastovo adresovaných rámcov na L2 • Bežné L2 switche spracúvajú multicasty rovnako ako rámce idúce na neznámeho príjemcu – floodujú ho von všetkými portami v danej VLAN • Pokiaľ taký switch umožňuje manipulovať s obsahom CAM tabuľky, jedným z riešení je statická (ručná) manipulácia s ňou, tzn. zapísanie príslušných multicastových MAC adries k zodpovedajúcim rozhraniam, kde sú príjemcovia • Inteligentnejšie switche majú pre tento účel dynamický mechanizmus

  33. Efektívne doručovanie multicastov na L2 • Idea dynamického mechanizmu pre efektívne doručovanie multicastov na Layer2: • Switch si pre každú pripojenú stanicu zistí, či je stanica členom nejakej multicastovej skupiny • Prijatý multicastovo adresovaný traffic bude preposlaný iba tými rozhraniami, kde sa nachádzajú členovia danej skupiny • Dva mechanizmy: • Cisco Group Management Protocol (CGMP):Jednoduchý, avšak proprietárny pomocný protokol, vyžaduje vzájomnú spoluprácu routera a switcha • IGMP snooping: Komplexný, avšak štandardizovaný spôsob, implementovaný priamo na switchoch

  34. CGMP • CGMP protokol je pomocný signalizačný protokol medzi routerom a switchom • Nie je to náhrada ani analóg IGMP! • CGMP pakety posiela router switchu na vyhradenej MAC adrese 0100.0cdd.dddd • CGMP paket obsahuje: • Type: join alebo leave • MAC adresu IGMP klienta • Multicast MAC adresu skupiny • Switch na základe CGMP informácie pridá alebo odoberie multicastovú MAC adresu na zvolenom porte

  35. IGMP Snooping • Switche rozumejú protokolu IGMP v IP paketoch • IGMP pakety sú spracovávané na CPU alebo špecializovanom ASICu (Application-Specific Integrated Circuit) • Switch analyzuje obsah IGMP správ, aby vedel, na ktorom porte sú členovia ktorých skupín • Dôsledok pre switche bez podpory Layer 3-aware Hardware/ASICs • Procesor musí analyzovať všetky L2 multicastové rámce • Znížená priepustnosť, zvýšená záťaž • Dôsledok pre switche s podporou Layer 3-aware Hardware/ASICs • Priepustnosť je zachovaná, no switch je drahší

  36. IGMP Snooping • IGMPv3 Report správy sa posielajú na osobitnú, avšak vždy tú istú IP adresu (224.0.0.22) • Zjednodušuje to analýzu – netreba analyzovať každý multicastovo adresovaný paket • Pri IGMPv3 by ani softvérová implementácia IGMP Snoopingu na low-end switchoch nemala spôsobovať významný nárast záťaže či pokles priepustnosti • Na súčasných switchoch Catalyst je IGMP snooping automaticky aktívny • Výnimku z IGMP snoopingu tvoria MAC adresy zodpovedajúce rozsahu 224.0.0.x (01:00:5e:00:00:xx), ktoré sú floodované vždy • Pozor, k jednej MAC tohto tvaru existuje 32 rôznych IP

  37. Multicastové distribučné stromy

  38. Multicastové distribučné stromy • Cesta, ktorou tečie multicastový tok dát od odosielateľa cez medziľahlé routery až po koncových príjemcovv jednej konkrétnej skupine, vytvára strom, ktorý sa nazýva multicastový distribučný strom • Dva druhy stromov: • Zdrojové distribučné stromy čiže stromy najkratších vzdialeností (shortest path trees,SPTs) • Koreň týchto stromov je vždy v odosielateľovi • Zdieľané (Shared)distribučné stromy • Jeden strom je zdieľaný pre viacerých odosielateľov v tej istej skupine • Koreňom tohto stromu je jeden dohodnutý router, tzv. rendezvous point

  39. Multicastové distribučné stromy • Charakteristiky stromov: • SPT stromy sú pamäťovo náročnejšie, avšak garantujú optimálne cesty od odosielateľa k všetkým príjemcom, čím minimalizujú oneskorenie • Shared stromy sú pamäťovo výhodnejšie, ale môžu viesť k toku dát suboptimálnymi cestami, a tak vniesť zbytočné oneskorenie

  40. Multicastové distribučné stromy Shortest Path Tree (Source Distribution Tree) Source 1 Notation: (S, G) S = Source G = Group Source 2 A B F D C E Receiver 1 Receiver 2

  41. Multicastové distribučné stromy Shortest Path Tree (Source Distribution Tree) Source 1 Notation: (S, G) S = Source G = Group Source 2 A B F D C E Receiver 1 Receiver 2

  42. Shared Tree Multicastové distribučné stromy Shared Distribution Tree Notation: (*, G) * = All Sources G = Group A B F D (RP) (RP) PIM Rendezvous Point C E Receiver 1 Receiver 2

  43. Source 1 Source 2 Source Tree Multicastové distribučné stromy Shared Distribution Tree Notation: (*, G) * = All Sources G = Group A B F D (RP) (RP) PIM Rendezvous Point C E Shared Tree Receiver 1 Receiver 2

  44. Identifikácia multicastových distribučných stromov Položky (S,G) • Pre daný zdroj dát (S) posielajúci do danej skupiny (G) • Tok dát tečie po najkratšej ceste od zdroja po každého člena skupiny Položky (*,G) • Pre ľubovoľný (*) zdroj dát posielajúci do danej skupiny (G) • Tok dát tečie cez stretávacie miesto (RP) pre danú skupinu

  45. Smerovanie multicastov

  46. Protokoly súvisiace so smerovaním multicastov Medzi smerovačmi sa používa protokol PIM, ktorý slúži na zistenie a dohodnutie, ktoré multicastové pakety sa kam majú preposlať

  47. Protocol-Independent Multicast (PIM) • PIM protokol nie je skutočný smerovací protokol, ktorý by prenášal IP adresy a metriky, ale skôr má povahu signalizačného protokolu • PIM sa vkladá priamo do IP paketov, číslo protokolu 103 • PIM vychádza z modelu, kde členstvo v skupine iniciuje príjemca • PIM vyžaduje, aby v sieti bol aktívny bežný smerovací protokol, avšak je od konkrétneho smerovacieho protokolu nezávislý • PIM smerovače si vytvárajú smerovacie tabuľky na preposielanie multicastovo adresovaných datagramov • PIM pracuje v dvoch rôznych režimoch: • Dense mode: multicastový traffic je preposielaný do celej siete. Ak smerovač dostáva traffic, pre ktorý nemá ďalšieho príjemcu, odhlási sa od prijímania daného toku(periodický flood-and-prune) • Sparse mode: multicastový traffic sa preposiela prostredníctvom distribučných stromov, ktoré sa zostavili na požiadanie pomocou explicitného prihlásenia sa príjemcov do danej skupiny

  48. Vytvorenie multicastového distribučného stromu v PIM • Strom sa vytvára v PIM pomocou riadiacich správ Join/Prune • Stromy typu Shortest Path: • Riadiace PIM správy sa posielajú na odosielateľa multicastového trafficu • Stromy typu Shared: • Riadiace PIM správy sa posielajú na dohodnutý router, tzv. rendezvous point (RP)

  49. Multicast Forwarding • Multicastové smerovanie má opačnú povahu než smerovanie unicastov • Unicastovésmerovanie sa zaujíma o to, kam paket putuje • Multicastovésmerovanie sa zaujíma o to, odkiaľ paket prichádza • Multicastové smerovanie používa tzv. Reverse Path Forwarding (RPF) na elimináciu forwarding loops • Pri prijatí paketu idúceho na multicastovú adresu nejakým rozhraním X sa v obyčajnej smerovacej tabuľke vyhľadá interfejs Y, ktorým sa dá najkratšou cestou dostať k odosielateľovi multicastového paketu (pri SPT) alebo k RP (pri shared tree) • Ak X == Y, paket sa prepošle ďalej, inak sa zahodí

  50. PIM Dense Mode

More Related