Top Banner
Multicast Distribution Trees : PIM SM • Generality • RPF check PIM – Protocol Independent Multicast
55

Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Dec 07, 2018

Download

Documents

hangoc
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Multicast Distribution Trees : PIM SM

• Generality • RPF check

• PIM – Protocol Independent Multicast

Page 2: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Site NREN

MLD / IGMP

PIM-SMv2

MLD snooping, CGMP…

multicast applications

Page 3: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Multicast Routing Protocols

• IGMP is used to send datagram on the LAN• Diffusion trees are made to forward multicast

traffic• l’arbre minimal de diffusion est en constante évolution• l ’émetteur (la source) est la racine de l ’arbre de diffusion• toutes les branches sont utiles (id. ont au moins un

abonné)• ajout (suppression) d ’une feuille/branche

Page 4: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Multicast Distribution Trees : PIM SM

• Generality :

• RPF check

• PIM – Protocol Independant Multicast• PIM DM

• PIM SM

• PIM SSM

Page 5: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Multicast Forwarding

• Multicast routing is backwards from unicast routing :• Unicast routing is concerned about where the

packet is going to.• Multicast routing is concerned about where

the packet came from

• Multicast routing uses «Reverse Path Forwarding» RPF

Page 6: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

«Reverse Path Forwarding»RPF

• A router forwards a multicast datagram only if received on the upstream interface to the source

• RPF check :• The routing table used for multicasting is checked

against the source IP address in the packet• If the datagram arrived on the interface specified in

the routing table for the source address, the RPF check succeeds

• Otherwise, the RPF checks fails

Page 7: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

RPF test example

Receiver 1

B

E

D F

C

Receiver 2

A

Source 1multicast data

RPF test fails

Page 8: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

RPF test example

multicast packet from130.190.2.1 source on E2 interface

The packet arrives on a wrong Interface We discard the packet

E1 E2

E3E0

Unicast routing table

Network Interface

195.221.44.0/24 E0

130.190.0.0/16 E1

82.233.104.0/24 E2

Page 9: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

RPF test example

multicast packet from130.190.2.1 source on E1 interface

Packet arrives on the right interfaceRPF test succeedsForward out all to outgoing interfaces in a list called OLIST

E1 E2

E3E0

Unicast routing table

Network Interface

195.221.44.0/24 E0

130.190.0.0/16 E1

82.233.104.0/24 E2

Page 10: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

We must use TTL threshold!!

Packet come in with a 24 TTL Packet arrives on the right interfaceRPF test succeedsForward out all to outgoing interfaces except E3 as the threshold is more than packet TTL

Outgoing Interfaces List

Interface TTL Threshold

E0 1

E1 16

E2 32

E3 32

E1 E2

E3E0

Page 11: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Diffusion de Groupesau-delà du LAN

• Généralités

• PIM – Protocol Independent Multicast• PIM DM

• PIM SM

• PIM SSM

Page 12: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM : généralités

• PIM repose sur des informations de routage indépendantes de PIM• Table de routage unicast• MRIB (vu plus tard)

• PIM peut fonctionner selon trois modes :• dense mode • sparse mode• source specific multicast

• PIM utilise l’arbre de diffusion basé sur la source si l’état (S,G) existe• Sinon il utilise l’arbre partagé état (*,G)• RFC 2362 (PIM SM) + IDs (PIM DM et mises à jour de PIM SM,

…)• draft-ietf-pim-sm-v2-new-xx.txt

Page 13: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Diffusion de Groupesau-delà du LAN

• Généralités

• PIM – Protocol Independant Multicast• PIM DM

• PIM SM

• PIM SSM

Page 14: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM : Dense Mode

• Mécanismes de flooding et pruning et de greffe,• Pruning vers les voisins non RPF

• Arbres de diffusion construits par rapport aux sources émettrices en utilisant l’algorithme RPF

• Utilisation de déclaration (assert –sur le groupe ff02::d) pour élire un transmetteur sur un LAN àplusieurs routeurs

• Faible overhead pour les groupes denses• PIM DM n’a jamais été standardisé par l’IETF

Page 15: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Multicast Distribution Trees : PIM SM

• Generality

• PIM – Protocol Independant Multicast• PIM DM

• PIM SM

• PIM SSM

• RP information

Page 16: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM Sparse Mode Triangle

• To establish a PIM-SM route on a network there must be :

•A source•A receiver•A rendez-vous point (RP)

• If you do not have one of these informations, you will have some problems

Page 17: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Le Triangle PIM Sparse Mode

• La source, le récepteur et le RP définissent un triangle

• Les lignes connectant ces points définissent la route multicast complète pour un couple (Source, Groupe) ou (S,G)

RP

Source Récepteur

Page 18: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Le Triangle PIM Sparse Mode

RP

Shared-tree

X-line

Source ReceiverShortest-path-tree

Page 19: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Le Triangle PIM-SML’arbre le plus court

• Le SPT est une entrée de routage (S,G)

• Les paquets d’une source unique circulent sur ce cotévers le récepteur

• L’état (*,G) a une OLIST NULLE

RP

Shared-tree

X-line

Source RécepteurShortest-path-tree

Page 20: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Le Triangle PIM-SML’arbre partagé

• Le RPT est une entrée de routage (*,G)

• L’état (S,G,RP-bit)apparaît sur ce cotéquand le receveur joint le SPT

• Les paquets de toutes les sources circulent sur ce coté à moins qu’ils ne soient «prunés»

RP

Shared-tree

X-line

Source RécepteurShortest-path-tree

Page 21: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Le Triangle PIM-SMLa X-Line

• La X-Line joint la source au RP

• L’état est (S,G) si les paquets sont transmissinon l’état est(S,G,RP-bit) ou AUCUNétat existe sur ce coté

• L’état (*,G) a uneOLIST NULLE

RP

Shared-tree

X-line

Source RécepteurShortest-path-tree

Page 22: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Le Triangle PIM-SMUn cas particulier

• Les cotés du triangle peuvent se chevaucher

• La X-line chevauche souvent le RPT si la source est aussi récepteur

RP

Source/Récepteur

Shared-tree

X-line

Les données ne peuvent pas circuler

dans les 2 sens !!

Les données ne peuvent pas circuler

dans les 2 sens !!

Page 23: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM : Sparse mode

• Mode d’abonnement explicite (Join ) :• La source s’enregistre auprès d'un Point de Rendez-vous

(RP)• Le RP est la racine de l'arbre de diffusion multicast

partagé (RPT)• le RP est configuré statiquement ou connu

dynamiquement• Pour s'abonner le destinataire envoie un Join vers le RP• Le join est propagé jusqu’au RP• Il peut y avoir plusieurs RP

• Group-to-RP mapping• Un groupe ne doit correspondre qu’à un seul RPPas d'inondation

Page 24: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM : Sparse mode

• Le flux multicast parcourt l’arbre partagé (RPT) ou/puis l’arbre dont la source est l ’origine (SPT)

• les routeurs feuilles peuvent se joindre à l’arbre• les paquets multicast ne vont que là où c'est utile• on utilise le RP pour tester les interfaces RPF de l’arbre

partagé• état (*,G)

• on utilise la Source pour tester les interfaces RPF de l’arbre basé sur la Source • état (S,G)

• les états (S,G) sont préférés aux états (*,G)

Page 25: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

B

C

A D

E

RP

Page 26: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

Receiver 1 joins group GState (*, G) created on C

C sends a (*, G) join towards the RP

Receiver 1

B

C

A D

E

JoinRP

Page 27: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

State (*, G) created on the RP, Interface towards C added to

the OIL

Receiver 1

B

C

A RP D

E

Page 28: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

Receiver 1

B

C

A D

E

Source sends dataData are encapsulated by A

A sends PIM-registers towardsRP

RegisterRegisterSource

RP

Page 29: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

State (S, G) created on RP, data is sent on the shared tree

(S,G) join is sent towards SourceState (S, G) created on A et B

Source

JoinJoin JoinJoin

B

C

A D

E

Receiver 1

RP

Page 30: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

Data arrives multicastly on the RP,RP Sends a register-stop to A

Source

Receiver 1

B

C

A D

E

RegisterRegister--StopStop

RP

Page 31: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

Receiver 1

Source

B

C

AD

E

JoinJoin

C looks for a shortest path towardsSource,

C sends (S, G) joins towards Source

RP

last hop router initiatethe SPT sending (S,G)

Joins

Page 32: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

C receives data directly from S, C sends prune (S,G) on the shared tree, RP delete interface towards C for (S,G)

And sends prune(S,G) towards S

Source

B

C

RP D

E

A

Receiver 1

Prune (S, G)Prune (S, G)

Prune (S, G)Prune (S, G)

first router for wichRPF(S) different fromRPF(RP) sends the (S,G)RP-bit-Prune

Page 33: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : example 1

Source

B

C

D

E

A

Receiver 1 Receiver 2

Receiver 2 joins G group,State (*, G) created on E

which sends join (*, G) towards RP

JoinJoin

RP

Page 34: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM, Sparse-Mode : exemple 1

Source

B

C

D

E

A

Receiver 1 Receiver 2

C add outgoing interface towards E in OIL

for (*, G) and (S, G)

RP

Page 35: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (*,G)

(*, 224.2.127.254), 02:18:00/stopped, RP 193.54.184.235, flags: SJCFIncoming interface: Vlan20, RPF nbr 193.54.185.120Outgoing interface list:

Vlan44, Forward/Sparse, 02:13:43/00:02:22

Toutes les Sources de ce Groupe seront retransmises vers la OLIST

Page 36: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (*,G)

(*, 224.2.127.254), 02:18:00/stopped, RP 193.54.184.235, flags: SJCFIncoming interface: Vlan20, RPF nbr 193.54.185.120Outgoing interface list:

Vlan44, Forward/Sparse, 02:13:43/00:02:22

Ceci pointe toujours vers le RP

Page 37: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (*,G)

Ceci est le next-hop vers le RP, voir un “show ip RPF”

(*, 224.2.127.254), 02:18:00/stopped, RP 193.54.184.235, flags: SJCFIncoming interface: Vlan20, RPF nbr 193.54.185.120Outgoing interface list:

Vlan44, Forward/Sparse, 02:13:43/00:02:22

Page 38: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (*,G)

(*, 224.2.127.254), 02:18:00/stopped, RP 193.54.184.235, flags: SJCFIncoming interface: Vlan20, RPF nbr 193.54.185.120Outgoing interface list:

Vlan44, Forward/Sparse, 02:13:43/00:02:22

Temps de Uptime des entrées

Page 39: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (*,G)

(*, 224.2.127.254), 02:18:00/stopped, RP 193.54.184.235, flags: SJCFIncoming interface: Vlan20, RPF nbr 193.54.185.120Outgoing interface list:

Vlan44, Forward/Sparse, 02:13:43/00:02:22

Temps d’expiration des compteurs pour effacer les entrées

Stopped : il y a un état (S,G)

Page 40: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (*,G)

(*, 224.2.127.254), 02:18:00/stopped, RP 193.54.184.235, flags: SJCFIncoming interface: Vlan20, RPF nbr 193.54.185.120Outgoing interface list:

Vlan44, Forward/Sparse, 02:13:43/00:02:22

Un groupe en Sparse Mode doit avoir un RP

Page 41: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (S,G)

(195.221.44.61, 224.2.127.254), 00:02:34/00:00:55, flags: FTIncoming interface: Vlan44, RPF nbr 0.0.0.0, RegisteringOutgoing interface list:

Vlan20, Forward/Sparse, 00:02:34/00:02:40 (ttl-threshold 8)

La Source est en train de s’enregistrer

Page 42: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Entrées PIM SM chez Cisco

•Retransmission d’une entrée (S,G)(194.254.164.44, 224.2.194.74), 00:00:49/00:02:51, flags: JTIncoming interface: Vlan20, RPF nbr 193.54.185.120, Partial-SCOutgoing interface list:

Vlan44, Forward/Sparse, 00:00:49/00:02:46

(195.221.44.61, 224.2.194.74), 00:00:46/00:03:21, flags: FTIncoming interface: Vlan44, RPF nbr 0.0.0.0Outgoing interface list:

Vlan20, Forward/Sparse, 00:00:46/00:02:46 (ttl-threshold 8), A

Une source locale

Page 43: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM-SM FlagsS Sparse mode flag Indique que le groupe multicast est un groupe sparse-mode (apparaît seulement dans les entrées (*,G))

C Connected flag Apparaît sur les entrées (*,G) et (S,G) , indique qu’il y a un membre du groupe multicast directement connecté

L Local flag Apparaît sur les entrées (*,G) et (S,G), indique que le routeur lui-même est membre du groupe. Le Routeur continue de traiter le trafic multicast pour ce group Ex: PIM RP-Discovery (224.0.1.40) Auto-RP information.

P Pruned flag Indique que l’OIL est NULL. Ce qui entraîne un « prune » vers le routeur voisin ( RPF) pour l’entrée (*,G) ou (S,G)

T SPT flagT (ou SPT flag) apparaît seulement avec une entrée (S,G) et indique que le trafic est routé par l’entrée (S,G) (qu’est le SPT). Flag est positionné lorsque arrive le premier paquet (S,G) correspondant à la table de routage MROUTE.

X Proxy-Join timer flag Apparaît seulement sur les entrées (S,G) et indique que le proxy-join timer est actif.

J Join SPT flag(*,G)Apparaît, avec une entrée (*,G) quand le débit sur l’arbre partagé excède le SPT-Threshold. (calcul toutes les secondes)Le prochain paquet (S,G) sur l’arbre partagé provoquer le basculement (switchover)) vers l’arbre centré sur la source.(Si le C flag est présent)

J Join SPT flag(S,G)Apparaît sur les entrées (S,G) quand la source a été précédemment switchée vers le SPT. Ce flag demande àPIM de contrôler (via le SPT-Threshold) le trafic qui descend de l’arbre centré sur la source, pour éventuellement rebasculer sur l’arbre partagé. (Toutes les minutes pour éviter les flip-flop)

F Register flag Utilisé avec les entrées (S,G) pur forcer l’encapsulation du trafic dans les registers. Quand la source est directement connectée au routeur. (présent sur l’entrée parent (*,G) dés qu’un (S,G) a le flag.

R RP-Bit flag (S,G)only

Indique que l’information de l’entée (S,G) est applicable à l’arbre partagé( RPT). Ce flag est utilisé pour prunerle trafic (S,G) redondant provenant de l’arbre partagé après un switchover vers le SPT.Quand RP-Bit est présent, l’IIF (S,G) est switchée vers le RP à la place de la source, afin que soit respectée la règle du RPF check.

Page 44: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM-SM : Règles Générales

1. Quand il est nécessaire de créer une entrée (S,G) et qu’il n’existe pas d’entrée (*,G) correspondante, une entrée (*,G) est automatiquement créée.

2. RPF est l’interface avec le coût le moins élevé pour atteindre l’adresse source (SPT) ou l’adresse RP (RPT). Si plusieurs interfaces de même coût, on prend celle d’adresse IP la plus élevée.

3. L’OIL d’une nouvelle entrée (S,G) est la réplique de l’OIL de l’entrée (*,G) correspondante

4. L’Incoming interface (IIF - RPF interface) d’une entrée multicast ne doit jamais apparaître dans une OIL.

5. L’Incoming interface de toute entrée multicast est recalculée toute les 5 secondes et l’OIL remise à jour en conséquence.

6. L’ajout ou la suppression d’une entrée dans la table OIL d’une entrée (*,G) est répliquée dans les OIL des entrées (S,G) correspondantes.

Page 45: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

PIM-SM : Règles Générales

1. Une entrée (*,G) est crée par un Join explicite.2. Une entrée (S,G) est crée aux conditions suivantes:

- Reception d’un Join:Prune (S,G)- Last-hop routeur, au switch vers SPT- À la réception d’un flux non sollicité, et pas de (*,G)- RP : à la réception d’un Register

3. Une interface est ajoutée à l’OIL (*,G) ou (S,G)- Join arrive via l’interface- Uitilisateur directement connecté

4. Une interface est supprimée de l’OIL (*,G) ou (S,G)- À la reception d’un Prune (et pas d’utilisateur directement connecté)- Lorsque que timer d’expiration est à zéro.

5. Expiration timer interface reset 3mns :- Join (S,G) ou (*,G) est recu via l’interface- IGMP membership report reçu

6. Les routeurs envoient un (S,G)RP-Bit Prune le long de l’arbre partagé, quand le RPF neighbor (S,G) est différent du RPF neighbor (*,G)

7. RPF (incoming) interface d’une entrée (S,G) est calculée en utilisant l’adresse de la source sauf si est positionné le bit RP-Bit , auquel cas c’est l’adresse du RP qui est utilisé.

Page 46: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Any Source Multicast (ASM) problems

• Addresses allocation• Addresses unicity ?• Dynamic allocation : too complex ?

• No access control• No way to choose sources• Security : No way to prevent unwanted sources to use a session

• Bad management of already known sources • Needs to use RP associated tools to make a relation between

source and receivers • MSDP (interdomain multicast)

• Point to multipoint applications (Internet TV…)

Page 47: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Multicast Distribution Trees : PIM SM

• Généralités

• PIM – Protocol Independant Multicast• PIM DM

• PIM SM

• PIM SSM

Page 48: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Freins au déploiement du multicast

• Allocation globale des adresses multicast• Pas de méthode d’allocation dynamique correcte

• SDR : ne supporte pas l’échelle• MASC (RFC2909) : Multicast Address-Set Claim

• On n’en entend plus parler• Allocation statique : GLOP (RFC2770)

• Basé sur le numéro d’AS• Dans la plage d’adresses : 233.0.0.0/8

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 233 | 16 bits AS | local bits |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

• On écrit l’AS en binaire et on remplit à gauche par des 0• Ex : AS 1942 =11110010110 233.5.150/24

Page 49: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Freins au déploiement du multicast

• Les « brouilleurs » de contenu• Des sources non désirées dans un groupe

• Celui qui oublie de fermer son microphone• Crée du bruit dans une conférence• Impossibilité du choix d’une source dans une visio-

réunion

• Peuvent causer du trafic supplémentaire pour rien

• Voire du Déni de Service sur un lien à faible débit ??

Page 50: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

The answer :Source Specific Multicast

• Only use source centered trees • Assume a One-to-Many Model• Receivers have to know how to find sources

• Typically using another way : Mail, Web server…• Receivers join a specific source in a multicast group

• The channel is identified by (S,G) instead of (*,G)• The channel (S1,G) is different from channel (S2,G)

• Do not use Rendez-vous Points and Shared trees • Do not use MSDP (interdomain)• Use 232.0.0.0/8 IPv4 addresses • Depends of IGMPv3 (IPv4) or MLDV2 (IPv6)

Page 51: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

SSM : en résumé

• Les hôtes se joignent à une source spécifique à l’intérieur d’un groupe multicast• Le contenu est identifié par le couple (S,G) au lieu de (*,G)• Le « canal » (S1,G) est différent du canal (S2,G)• Les hôtes sont responsables de la connaissance du couple (S,G)

• Le dernier routeur envoie un join (S,G) vers la source• L’arbre partagé n’est jamais utilisé• Seul le flux (S,G) est envoyé à l’hôte• Elimine donc le problème des sources « brouilleuses »

• Simplifie l’allocation d’adresses• Des sources distinctes peuvent utiliser le même groupe sans

interférer l’une avec l’autre

Page 52: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

Alors PIM SSM ??• Dépend totalement de IGMPv3 en IPv4 et MLDv2 en IPv6

• IGMPv3 sur Microsoft Windows XP• Problème des applications !!• Travaux en cours :

• IGMPv3 lite (Cisco)• Utilisation d’une API

• URL RenDezvous (URD) (Cisco ??)• Redirection depuis une page avec une information interceptée par

le routeur• Static Source Mapping (Cisco ??)

• Routeurs traduisent les join IGMPv2 dans l’étendue SSM pour les sources connues en utilisant le DNS ou une configuration statique

Page 53: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

URD

• Un fournisseur de contenu donne accès à une page web qui contient des liens URD• Une liste de sources délivrant du multicast• http://webserver:465/path?group=group&source=source1&...source=sourceN&

• Port 445 est réservé à URD• L’utilisateur clique sur un des ces liens• Le serveur web renvoie cette information• Le host tente une connexion sur le port 465• Le routeur local intercepte alors le trafic sur ce port (s’il est URD

capable)• Il utilise l’information source/groupe pour identifier le flux

Page 54: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

SSM Mapping

• Cisco 12.2(18)S, 12.3(2)T• Ne permet qu’UNE SEULE source par

groupe !!• Le routeur traduit le groupe et la source

• En utilisant soit le DNS soit une base de données interne statique

• Cette méthode permet aux fournisseurs de contenu de fournir l’information source/groupe

Page 55: Multicast Distribution Trees : PIM SM - Connecteur de savoirs · Multicast Distribution Trees : PIM SM • Generality : • RPF check • PIM – Protocol Independant Multicast •P

SSM Mapping : un exemple

Join IGMPv2 (*,G)

Join PIM (S,G)

Join PIM (S,G)

Serveur Reverse DNS

Record DNS :

3.2.1.232 IN A 195.221.44.54

Requête DNS inverse sur le groupe G

Source

Receveur