NE520 Réseaux avancés Les communications multipoint hristophe Deleuze EIR 22 oct/5 nov 2004 ommunications multipoint communications de groupe 1 émetteur vers n récepteurs distribution de logiciels télé/radio distribution de données live (dépêches, cours de la bourse...) synchronisation de serveurs n émetteurs vers m récepteurs travail collaboratif (tableau blanc) audio/vidéo conf jeux distribués e-learning découverte de services/autoconfiguration nouveaux problèmes! Les communications multipoint 1 Problèmes... réseau : transmission efficace hôtes fiabilité hétérogénéité contrôle de congestion sécurité admin adresses gestion de groupe/policy sémantique de la communication (fate sharing) le modèle IP multicast routage multicast mode dense mode clairsemé inter-domaine mode à source unique approches originales gestion de la fiabilité Plan Les communications multipoint 2 Les communications multipoint 3 Modèles de base Le modèle LN LN à média partagé, ex 802.3 adresses 48 bits unicast broadcast multicast ad. unicast ad. broadcast ad. multicast1 ad. multicast2... Le modèle TM commutation de cellules en mode connecté V point à multipoint msg add-member envoyé par la source UNI 4.0 join envoyé par récepteur multipoint à multipoint? cell interleaving problem V merge Les communications multipoint 4 Les communications multipoint 5 Le modèle de Deering PhD 88 (rfc1112 89) abstraction de groupe adresses de classe D host group 28 bits 250M groupes sémantique UDP/IP groupes ouverts (membres, sources) groupes opaques (composition inconnue des membres et des sources) groupes dynamiques ne dit pas comment router allouer les adressess gérer les groupes découvrir les adresses dresses de classe D Description Range Reserved Link Local ddresses 224.0.0.0/24 Globally coped ddresses 224.0.0.1 to 238.255.255.255 ource pecific Multicast 232.0.0.0/8 GLOP ddresses 233.0.0.8/8 Limited cope ddresses 239.0.0.0/8 224.0.0.1 tous les systèmes du sous-réseau 224.0.0.2 tous les routeurs du sous-réseau 224.0.0.5 tous les routeurs OPF... 224.0.0.6 les routeurs OPF désignés... 224.0.0.12 serveur/relai DHP Les communications multipoint 6 Les communications multipoint 7
IP multicast/802.3 IN possède le bloc 01:00:5E alloue la moitié au multicast 23 bits 32 IP par M dresse IP 5 bits 1110 32 bits 28 bits 239.255.0.1 dresse M 01:00:5E:7F:00:01 25 bits 23 bits Modèle IP : IGMP Internet Group Management Protocol routeur : quels groupes ont des récepteurs dans le LN? query question périodique report les récepteurs intéressés répondent en multicast (damping) après un temps aléatoire (slotting) scalabilité Internet Query Report 48 bits R1 R2 Les communications multipoint 8 Les communications multipoint 9 IGMP IGMPv1 rfc1112 report/query, 16bit checksum, 32bit group address IGMPv2 rfc2236 query par groupe leave group report IGMPv3 rfc3376 source filtering report(g, include {1,...n}) report(g, exclude {1,...n}) Le routage multicast ut du routage multicast acheminer les paquets vers tous les récepteurs minimiser le trafic dans le réseau s adapter aux changements de topologie s adapter aux changements de composition des groupes Les communications multipoint 10 Les communications multipoint 11 Relayage multicast relayage unicast adr. réseau (IP/préfixe) (next-hop, interface) relayage multicast adr. groupe (IP) { (next-hop, interface) } rbre couvrant réseau = (N,) N nœuds, T récepteurs arbre couvrant optimal (teiner tree) poids total minimum pb : instable avec la composition du groupe arbre couvrant non optimal (Dijkstra) shortest path tree PT Les communications multipoint 12 Les communications multipoint 13 Inondation (Flooding) Relayage sur le chemin inverse nœud reçoit un paquet si 1ère fois, envoyer sur toutes les autres interfaces simple et robuste pb du test nœud note tous les paquets reçus paquet contient la liste des nœuds traversés gaspillage ressources mémoire bande passante RPF (Reverse Path Forwarding) remplacer le test par arrive sur l interface du chemin le plus court vers la source PT si routes symétriques E G D F Les communications multipoint 14 Les communications multipoint 15
Inondation et élagage Exemples flood and prune reverse path broadcast élagage shortest path tree (en fait inverse) au départ tout le monde reçoit état d élagage (prune state) par groupe et source + pour les groupes denses D données élagage récepteur DVMRP Distance Vector Multicast Routing Protocol inspiré de RIP et dépend de RIP vecteurs de distance à la source 1 er protocole utilisé dans Internet PIM-DM Protocol Independant Multicast Dense Mode indépendant du protocole de routage unicast plus simple E F Les communications multipoint 16 Les communications multipoint 17 Le mbone Multicast backbone réseau overlay ilots multicast DVMRP reliés par des tunnels 92 expérimentations audio IETF sur 20 sites 95 2500 réseaux, 12K utilisateurs, 500kbps groupes locaux : TTL applications VT (audio-conférence) VI (vidéo-conference) wb (tableau blanc partagé) sd (annonce de sessions) Multicast tunnel MOPF extension multicast de OPF chaque routeur indique la présence de récepteurs calcul local de l arbre à la demande (paquet source) + pas d inondation initiale scalabilité dynamicité info inutile là où l arbre ne passe pas puissance de calcul Les communications multipoint 18 Les communications multipoint 19 rbres basés sur un centre ore based trees rbres basés sur un centre DVMRP : données initiales partout MOPF : info des membres partout et état par source... adr. groupe adr. routeur arbre centré sur ce routeur correspondance adr. groupe adr. routeur où placer ce routeur construction de l arbre T, premier protocole de ce type (et le plus simple) join corresp. groupe core msg join au core état de relayage créé par le join core R1 E join données Les communications multipoint 20 Les communications multipoint 21 T suite arbre partagé bidirectionnel (T shared tree) possibilité de cores redondants corresp. gr. core bon placement du core + dans un domaine limité scale bien pas d info par source état que dans les routeurs de l arbre groupes clairsemés PIM mode clairsemé PIM-M (sparse mode) point rendezvous (RP) envoi corresp. gr. RP encapsule et envoie au RP le RP décapsule et envoie dans l arbre partagé reçoit msg join crée la branche (unidirectionnel) Les communications multipoint 22 Les communications multipoint 23
PIM-M suite arbre pas forcément très bon msg source specific join vers la source shortest path tree élagage sur l arbre partagé état par source uniquement sur le PT si faible P, on reste sur le T choix du RP distribue une liste de candidats RP à tous les routeurs fct. de hash placement du RP moins important qu avec T RP virtuel... uniquement pour découvrir les sources... Routage inter-domaine Routage inter-domaine problèmes de passage à l échelle mode dense : inondation initiale dans tout le réseau MOPF : tous les routeurs savent où sont tous les récepteurs PIM-M : grosse liste des RP problèmes de déploiement problèmes politiques Les communications multipoint 24 Les communications multipoint 25 MGP multicast pas déployé partout PIM-M utilise la route unicast inverse Multiprotocol extensions to GP table pour les routes unicast-capable table pour les routes multicast-capable MDP PIM-M ne peut pas être inter-domaine corresp. groupe RP volonté d autonomie des IP Multicast ource Discovery Protocol solution temporaire PIM-M dans chaque chacun ses RP RP d voisins connectés par MDP (maillage inter ) Les communications multipoint 26 Les communications multipoint 27 MDP suite commence à émettre distribution dans 2 commence RP2 envoie msg source active à RP1 RP1 envoie un source specific join à (par MGP) 1 RP1 MDP RP2 2 + MDP suite 1 arbre partagé par groupe dans chaque bien à court terme msg source active inclut les 1 er paquets pas scalable (nb. de sources) tous les RP doivent être informés sur R1 R2 R3 R4 actuellement, 500 (ex mbone) IGMP-PIM-M/OPF-MGP-MDP avenir : GMP (order gateway multicast protocol)? Les communications multipoint 28 Les communications multipoint 29 llocation d adresses pb : empêcher les collisions groupes locaux : adr. à portée limitée MLLO allocation dans le temps et l espace trois couches inter domaine (M) intra domaine entre M (ex. P) hôte serveur M (ex. MDP) trop complexe solution provisoire adresses GLOP répartition statique de 233/8 entre tous les 233.h.l.nb Multicast à source unique Principes 1990 2000 10 ans d efforts et tjs pas de vraie solution! modèle de Deering trop complexe pbs gestion des adresses découverte des sources sources parasites nouvelles propositions Explicitly Requested ingle-ource (Express) 99 imple multicast 99 nouveau modèle ource pecific Multicast (M) modèle Deering : groupe = G (adr. classe D) modèle M : canal = (,G) (adr. source, adr. classe D) Les communications multipoint 30 Les communications multipoint 31
omposants IGMP v3 source filtering subscribe(,g) PIM-M (variante de PIM-M) canal (,G) (plus de pb d allocation) pas d arbre partagé pas de RP, pas de MDP adresses réservées 232/8 pbs adr. canal (,G) = 64 bits adresse M... sources multiples gérer au niveau application ctuellement isco pousse deux variantes de PIM-M PIM-M pour 1 vers n IDIR-PIM pour n vers m IETF WG PIM variantes de PIM WG M le modèle M (rfc3569) adresses GLOP 233/8 (+ MLLO + adr. locales) M 232/8 Les communications multipoint 32 Les communications multipoint 33 pproches originales LM onnectionless Multicast choix pour le multicast unicast multiple deering... pas d adr. multicast liste de dest. dans en-tête (option, max 8) groupes super-sparse interdomaine flexible cache de relayage ( ) clonage prématuré ( ) P des liens états routeurs choisissez ce que vous sacrifiez... traitement par paquet Un arbre multicast typique Les communications multipoint 34 Les communications multipoint 35 Liens asymétriques liens DL, satellite,... erreurs de configuration routage politique (ex patate chaude ) Hop by Hop multicast construire un vrai PF (et pas inverse) minimiser l état/la charge des routeurs sans branchement permettre un déploiement progressif H1 E1 IP1 IP2 R2 H2 U H1 H5 H4 H3 H4 H6 r7 r7 r1 r2 r3 H5 H6 r4 r5 r6 r1 r2 r3 r4 r5 r6 Les communications multipoint 36 Les communications multipoint 37 Fiabilité multicast Le contexte applications de type bulk data transport = TP en multicast fiabilité par acquittements/retransmissions problème de scalabilité implosion des K/NK retransmissions (pertes non corrélées) (contrôle de congestion) calabilité du trafic de contrôle K/NK suppression chez les récepteurs NK multicast NK avec backoff timer FE par anticipation par réaction arbres suppression des NK redondants Les communications multipoint 38 Les communications multipoint 39
calabilité des retransmissions FE idem ci-avant arbres serveurs de retransmissions espace de stockage quand libérer les données À l IETF Reliable Multicast Transport WG (RMT) diversité des besoins nb. de problèmes (et de solutions) approche modulaire briques de bases ( building blocks) protocoles (PI protocol instantiation) NORM Nack Oriented Reliable Multicast TRK TRee based Knowledgment L synchronous Layered oding Les communications multipoint 40 Les communications multipoint 41 NORM, ou NK simple NK éventuellement suppression chez les récepteurs groupes de taille petite ou moyenne récepteurs homogènes ex. NORM : RM calable Reliable Multicast wb (tableau blanc) retransmissions par les récepteurs membres s envoient des msg périodiques qui est membre délai entre les membres NK multicast avec délai aléatoire retransmission multicast avec délai aléatoire Les communications multipoint 42 Les communications multipoint 43 TRK, arbre d assistance NORM + arbre d assistance manuel ou automatique nœuds (serveurs ou routeurs) suppriment les NK redondants, aggrègent les K retransmettent localement (subcast) complexité état par groupe dans les nœuds d assistance espace de stockage... ex. TRK : RMTP Reliable Multicast Transport Protocol Designated receivers (DR) récepteurs envoient NK en unicast au DR DR retransmission locale agrégation vers le DR supérieur infrastructure connaitre les DR DR1 DR2 Les communications multipoint 44 Les communications multipoint 45 ex. TRK : PGM ex. TRK : PGM suite Pragmatic General Multicast (Pretty Good Multicast?) existait avant TRK (isco) nœud = routeur ou serveur suppression des NK routeur localise les retransmissions redirection des NK vers DLR (Designated Local Retransmitter) serveur (DLR) retransmet localement 1 2 3 NK retr. disposer de l infrastructure placement des nœuds d assistance 1 2 3 DLR Les communications multipoint 46 Les communications multipoint 47
L odage en couches asynchrones pas de feedback (!) division en couches cumulatives à débit fixe (un groupe par couche) hétérogénéité scalabilité maximale M de récepteurs récepteur s abonne à +- de couches en fct de la congestion fiabilité FE FE en couches Types d application L suite streaming hétérogénéité : quantité d information reçue fiabilité partielle push hétérogénéité : vitesse de réception à la demande transmission en continu Les communications multipoint 48 Les communications multipoint 49 L suite exemple de transmission fiable en couches 0 D 1 D D 2 D D D onclusion Routage devient progressivement opérationnel Fiabilité mécanismes en cours de standardisation utres problèmes non abordés contrôle de congestion gestion des sessions sécurité... Les communications multipoint 50 Les communications multipoint 51 En résumé routage modèle Deering modèle M groupes denses groupes clairsemés inter-domaine (scalabilité+politique) fiabilité NORM TRK L Quelques sources IETF RMT working group, http://www.ietf.org/html.charters/rmt-charter. html autres groupes de travail IETF : msdp, idmr, pim, ssm, msec Les articles d Internet Protocol Journal sont disponibles à http://www.cisco. com/ipj/ [1] Ian rown, Jon rowcroft, Mark Handley, et rad ain. Internet multicast tomorrow. Internet Protocol Journal, 5(4):2 19, December 2002. [2] Mark Handley et Jon rowcroft. Internet multicast today. Internet Protocol Journal, 2(4):2 19, December 1999. [3]. Kenneth Miller. Reliable multicast protocols and applications. Internet Protocol Journal, 1(2):19 37, eptember 1998. [4] Maria Ramalho. Intra- and inter-domain multicast routing protocols: survey and taxonomy. IEEE ommunications urveys & Tutorials, 3(1):2 25, First Quarter 2000. [5] Vincent Roca. Un État de l art sur les techniques de transmission multipoint fiable. Technical report, INRI Rhônes-lpes, 2001. [6] Vincent Roca, Luis osta, Roland Vida, nca Dracinschi, et erge Fdida. survey of multicast technologies. Technical report, Laboratoire d Informatique de Paris 6, 2000. Les communications multipoint 52