C.so di laurea in Informatica
Reti di Calcolatori II
a.a. 2003-2004
MULTICAST in INTERNET
“When you think you have an adequate protocol design, just say the word ‘multicast’”
Dave Clark
Multicast
Gian Paolo Rossi
Multicast - perche’ ?
Applicazioni
la disponibilita’ di una rete multicast-enabled semplifica lo sviluppo
delle nuove applicazioni su piattaforma Internet
Rete
“…multicast is a requirement, not an option, if the Internet is going
to scale…” (rif.IETF)
Ottimizza l’uso di risorse sui link, sui router, sulle stazioni sorgenti,….
Network management
L’astrazione di un gruppo di destinazioni in rete consente di gestire
con una azione piu’ apparati di rete
Multicast
Gian Paolo Rossi
IETF – Routing Area
www.ietf.org
bgmp
Border Gateway Multicast Protocol
forces
Forwarding and Control Element Separation
idmr
Inter-Domain Multicast Routing
idr
Inter-Domain Routing
isis
IS-IS for IP Internets
manet
Mobile Ad-hoc Networks
mobileip
IP Routing for Wireless/Mobile Hosts
msdp
Multicast Source Discovery Protocol
ospf
Open Shortest Path First IGP
pim
Protocol Independent Multicast
rip
Routing Information Protocol
ssm
Source-Specific Multicast
udlr
UniDirectional Link Routing
vrrp
Virtual Router Redundancy Protocol
www-irtf.org
www.ipmulticast.com
Multicast
Gian Paolo Rossi
Multicast - il modello
[RFC 1112]
receiver
[join/leave]
[multicast]
sender
G
una o piu’ stazioni sorgente che spediscono secondo uno stile IP
il sender non conosce la membership di G, ma solo il suo indirizzo multicast
join e leave libere da parte dei membri del gruppo
specifica da end-system, il modello non dice come la rete fornisce il multicast
Multicast
Gian Paolo Rossi
Indirizzi Multicast
31
0123
IPv4 Class D
1110
Multicast Group ID
28 bits
Uso del campo TTL (Hop-Limit in IPv6) per definire lo ‘scope’ del pacchetto multicast
224.0.0.0 - riservato
224.0.0.1 a 224.0.0.255 riservato routing e protocolli di basso livello
per discovery/maintenance della topologia di rete
224.0.0.1 all-hosts group nella subnet
224.0.0.2 all-routers group nella subnet
224.0.1.1 riservato protocollo NTP
224.0.1.0 a 238.255.255.255 dinamicamente assegnati ad applicazioni mcast
239.0.0.0 a 239.255.255.255 riservati per ‘administrative scoping’ senza TTL
Multicast
Gian Paolo Rossi
Architettura per il Multicast
Best-effort
Applicazioni
one-to-many
[ftp://www.video.ja.net/mice/mrouted/Linux/]
Applicazioni
many-to-many
Applicazioni
many-to-one
Reliable multicast protocol
TCP
IGMP
Routing
multicast
UDP
Multicast
API
In Linux, il multicast e’
programmabile attraverso
setsockopt ()
getsockopt ()
IP
switching
Multicast
Gian Paolo Rossi
Applicazioni 1toM
Distribuzione audio/video programmata
una o piu’ sorgenti e richiesta di banda relativamente alta. Spesso piu’ flussi
sono sincronizzati e hanno diverse priorita’
Push media
aggiornamento di informazioni dinamiche quali previsioni meteo, sport, news.
Applicazioni “drip-feed” a banda relativamente limitata
Caching
contenuti web, file eseguibili, o update di file distribuiti a siti di replicazione o
caching
Announcements
network time, programmi multicast, distribuzione chiavi, configuration updates
Monitoring
traffico CBR o a burst per rilevazione sensori, quotazione titoli o altri dati RT
Multicast
Gian Paolo Rossi
Applicazioni MtoM
Conferenza multimediale
streaming audio/video e whiteboard. Data stream con diverse priorita’ e problemi
di coordinamento e gestione
Sincronizzazione risorse
aggiornamento di copie replicate di database
Collaborazione e lavoro coordinato
workflow e editing di documenti condivisi
Chat groups
conferenze text-based con possibilita’ di avatars di ogni speaker in ambiente
simulato
Distributed Interactive Simulation (DIS)
multicast di info descrittive per il rendering distribuito di oggetti di simulazione
Giochi distribuiti
sostanzialmente DIS con funzioni di chat line [MiMaze su Mbone, Quake]
Jam sessions
encoded audio condiviso (eg. Musica)
Multicast
Gian Paolo Rossi
Applicazioni Mto1
Resource discovery
multicast come astrazione dell’IP per fornire query con clausola anycast per
eleggere l’host in grado di fornire il servizio o quello ad accesso piu’ vicino
Data collection
raccolta di dati da un gruppo distribuito di sensori
Auctions
schema di relazione fra inserzionista e gli interessati che spediscono la proposta
di acquisto
Multicast
Gian Paolo Rossi
Requisiti di banda
1toM
Push media
announcements
Mto1
Resource discovery
auctions
MtoM
Chat group
caching
monitoring
distribuzione a/v
data collection
auctions
collaboration
sincronizzazione risorse
conferencing
DIS
giochi distribuiti
jam sessions
banda
limitata
Multicast
media
alta
Gian Paolo Rossi
Tolleranza sul ritardo
1toM
monitoring
distribuzione a/v
announcements
Mto1
auctions
data collection
Resource discovery
MtoM
DIS
conferencing
jam sessions
giochi distribuiti
Chat group
sincronizzazione risorse
collaboration
distance learning
limitata
Multicast
media
Push media
caching
alta
delay
tolerance
Gian Paolo Rossi
Applicazioni multicast
Active Theatre - EMULive Imaging
ICAST Broadcaster/Recorder
CU-seeMe - White Pine
Precept IP/TV e StreamWatch
Applicazioni
one-to-many
Applicazioni
many-to-many
Applicazioni
many-to-one
Infrastruttura di rete
multicast-enabled
Multicast
Gian Paolo Rossi
Applicazioni multicast
Proshare - Intel
RealAudio/Video/Server - RealNetw.
ShowMe TV - SUN
NetMeeting - Microsoft
StarBurst Omnicast
Applicazioni
one-to-many
Applicazioni
many-to-many
Applicazioni
many-to-one
Infrastruttura di rete
multicast-enabled
Multicast
Gian Paolo Rossi
Arrivano le appliancies
(accadeva nel 2001…)
Ad esempio: arriva la Internet Radio. Suono digitale in formato MP3,
modem per ISDN o commutata, piattaforma RealNetworks G2, circa 300$
Kerbango.com e AudioRamp.com
per suonare MP3: Winamp per conversione, player Adaptec EasyCD
Multicast
Gian Paolo Rossi
Sicurezza
Le applicazioni multicast non differiscono da quelle unicast per le loro esigenze
in termini di sicurezza: autenticazione utente, data integrity, data e user privacy.
Inoltre, i requisiti includono:
controllo di CHI puo’ spedire ad un gruppo
controllo di CHI puo’ ricevere
assicurare che il dato generato da un utente autenticato non sia alterato
controllare se sender o altri receiver conoscono l’identita’ dei receiver
QUANDO, COME e a CHI distribuire le chiavi
QUANDO, COME e PERCHE’ le chiavi sono revocate
Secure Multicast Research Group (SMUG) IRTF
http://www.ipmulticast.com/community/smug/
ftp://ietf.org/internet-drafts/draft-ietf-aft-mcast-fw-traversal-01.txt - SOCK v5
http://www.epm.ornl.gov/tildedunigan/gkm.html - Group Key Mngt.
Multicast
Gian Paolo Rossi
Architettura per il Multicast
QoS e CoS
Applicazioni
one-to-many
Applicazioni
many-to-many
Applicazioni
many-to-one
RTSP
Manage
ment
RTCP
RSVP
IGMP
RTP
UDP
Routing
multicast
Reliable multicast
protocol
TCP
IP
switching
Multicast
Gian Paolo Rossi
Reliable multicast
1toM
Caching
monitoring
Mto1
auctions
MtoM
Collaboration
sincronizzazione risorse
limitata
Multicast
distribuzione a/v
push media
data collection
polling
conferencing
chat group
DIS
giochi
media
alta
loss
tolerance
Gian Paolo Rossi
Reliable Multicast
problemi simili a quelli dovuti a receiver eterogenei per raccolta NACKs
possibilita’ di graduare loss-rate in funzione dei requisiti
soluzioni proprietarie in commercio - non esiste uno standard
requisiti diversi sull’ordine di consegna
scalabilita’
burstiness dei dati, delay tolerance, real-time
standardizzazione di diversi protocolli per soddisfare diversi requisiti
focus attuale dell’IRTF su controllo congestione
RFC 2357 “IETF criteria for evaluating Reliable Multicast Transport and Application
Protocols”
ReliableMulticastResearchGroup RMRG IRTF, M.Handley e A.Mankin (USC/ISI);
www.tascnets.com/mist/doc/mcpCompare.html - confronto fra diversi protocolli
research.ivv.nasa.gov/RMP/links.html - reliable multicast links
Multicast
Gian Paolo Rossi
Problema del feedback
La presenza di receiver eterogenei richiede spesso di adottare
tecniche di controllo sul flusso dei dati trasferiti.
L’uso di UDP impone la gestione del controllo del canale a livello
applicativo. Il risultato per le applicazioni a/v puo’ essere migliore
attraverso l’uso di tecniche di encoding a livelli o separazione dei
flussi
Nel caso di gruppi numerosi l’implosione dei feedback sulla
sorgente va controllata.
• shared learning con uso di timer
• local recovery sfruttando scope o TTL
Multicast
Gian Paolo Rossi
Reliable Multicast
GlobalCast Reliable Multicast - www.gcast.com
e-cast Reliable Multicast software - www.lucent.com
StarBurst Multicast - www.starburstcom.com
inoltre, www.tibco.com, www.probita.com
alcune applicazioni: THE BOX, Toys’R US, GM
Multicast
Gian Paolo Rossi
MFTP
Multicast File Transfer Protocol
Pass 1
File
source
Blocco 1
Blocco 2
ack/nack
Blocco 3
ack/nack
receiver
Blocco 4
ack/nack
ack/nack
Pass 2
source
Blocco 1
Blocco1
frame 251
Multicast
Blocco 2
Blocco 2
frame 288
Blocco 3
Blocco 2
frame 295
Blocco 4
Blocco 4
frame 37
receiver
Blocco 4
frame 185
Gian Paolo Rossi
RTP, RTCP e RTSP
Applicazioni
one-to-many
Applicazioni
many-to-many
Applicazioni
many-to-one
RTSP
Manage
ment
RTCP
RTP
Reliable multicast
protocol
RSVP
UDP
IGMP
Routing
multicast
IP
switching
Multicast
Gian Paolo Rossi
RTP
[RFC 1889]
RTP fornisce un servizio end-to-end di consegna dati ad un gruppo di receiver in modo
da rispettare in ricezione il formato ed il timing tipico di trasmissioni stream-based. Si
appoggia ad UDP per le funzioni tipiche di trasporto. Ogni medium di una sessione
multimediale viaggia su una sessione RTP separata.
timestamp
Source-ID
marker sequence
Sender
Receiver N
RTP
RTP
router
trsl
A
Multicast
Payload type
mix
[translator e mixer]
B
Gian Paolo Rossi
RTCP
[RFC 1889]
RTCP e’ il protocollo che controlla il trasferimento dati su una sessione RTP.
RTCP e’ attivo anche in assenza di traffico dati. Definisce 5 tipi di pacchetto:
sender report, receiver report, source description, bye, app.
Il protocollo svolge le seguenti 3 funzioni principali:
Feedback alla applicazione - report statistici sono generati sia
dalle stazioni sender che receiver per fornire alla applicazione
informazioni sulla qualita’ della trasmissione
Identificazione della sorgente RTP - RTCP trasferisce il nome
canonical (CNAME) di ogni partecipante per membership e
per identificare flussi dalla stessa sorgente su diverse sessioni RTP
Controllo trasmissione RTCP - il traffico di controllo RTCP viene
adattato in funzione del traffico di sessione e del #partecipanti
Multicast
Gian Paolo Rossi
RTP-RTCP
applicazione
applicazione
Playback
buffer
Playback
buffer
RTP/RTCP
RTP/RTCP
Piu’ flussi RTP, possono
essere integrati in ricezione usando
le informazioni contenute nell’header
RTP e usando un buffer di dimensioni
opportune per compensare i problemi di
rete. Il controllo RTCP mantiene la membership
Internet
di gruppo e consente di monitorare i singoli media. Un ricevente puo’ decidere di
selezionare un solo medium in funzione delle risorse di cui dispone.
Multicast
Gian Paolo Rossi
RTP/RTCP
Usano porte UDP contigue, #pari RTP e dispari superiore RTCP
RTP v2 e’ maturo per supportare la maggior parte di payload mediali
Alcuni tool di network monitoring possono non parsare ancora RTP
Vendors/prodotti che utilizzano RTP/RTCP: esempi
MS NetShow, Precept IP/TV, QuickTime TV Apple, vic e vat
(public domain di MBone), ICAST Broadcaster e Viewer,
RealAudio/Video/Media, UCL Robust-Audio Tool (RAT)
Precept StreamWatch - consente di configurare viewer per diversi
stream allo scopo di monitoraggio e management
Multicast
Gian Paolo Rossi
RTSP
RTSP fornisce il controllo remoto di server multimediali. Definisce il framework
per ricevere uno o piu’ media, anche da server diversi, ma si appoggia a RTP per
il trasporto e la consegna dei diversi stream.
HTTP GET
Web
Browser
session description
Web
Server
SET UP
PLAY
Media
Player
RTP audio/video-RTCP
PAUSE
Media
Server
TEARDOWN
Multicast
Gian Paolo Rossi
RTSP
<session>
<group>
<track src=“rtsp://audio.mtv.com/movie”>
<track src=“rtsp://video.mtv.com/movie”>
</group>
</session>
Ogni media stream e’ identificato da un RTSP URL che puo’ identificare
server diversi. Il server mantiene un identificatore per ogni sessione e, poiche’
lo stream di fatto viaggia con un protocollo separato, il server
deve anche mantenere un session state per associare la sessione RTSP con
un dato stream. Il client puo’ contemporaneamente aprire sessioni con altri
media server.
Multicast
Gian Paolo Rossi
Session Management
MultipartyMultimediaSessionControl WG-IETF (MMUSIC)
Conference
Setup&Discovery
Conference
Control
SCCP
CCCP
SDP
SAP
RSVP
SIP
UDP
TCP
IP
Multicast
Gian Paolo Rossi
Session Management
SDP fornisce un formato per descrivere una sessione di conferenza. Si appoggia
ad altri protocolli per la diffusione della descrizione
“SDP”, V.Jacobson, M.Handley, draft-ietf-mmusic-sdp-04.txt, 1997.
SAP diffonde periodicamente i descrittori di conferenza all’indirizzo multicast
224.2.127.254, UDP port 9875
“SAP”, draft-ietf-mmusic-sap-01.txt, 1998
SIP e’ utilizzato per invitare persone o media-server ad una conferenza
“SIP”, E.Shooler, M.Handley, draft-ietf-mmusic-sip-04.txt, 1997
SCCP fornisce application e membership control, floor e network
management in sessioni con moderatore designato che deve dare permesso
di join ad un nuovo membro
“SCCP”, draft-ietf-mmusic-sccp-03.txt, 1998
Multicast
Gian Paolo Rossi
Session Management
sdr - University College of London , piattaforma UNIX, basato su SDP
mice.ed.ac.uk/mice/archive/sdr.html
mmcc - USC Information Science Institute, piattaforma UNIX, serve ad
orchestrare sessioni multipunto di teleconferenza con distribuzione chiavi
in sessioni confidenziali, precedente a sdr
mice.ed.ac.uk/mice/archive/mmcc.html
multikit - Live Networks, Inc., piattaforma UNIX e Windows95+, e’ di
base un browser SDP con la caratteristica di supportare viste posizionali
di una directory (ogni entry della directory puo’ essere collocata a
specifiche coordinate dello schermo per creare mappe attive)
www.lvn.com/multikit
Multicast
Gian Paolo Rossi
Multicast Routing e LAN Switching
Applicazioni
one-to-many
Applicazioni
many-to-many
Applicazioni
many-to-one
RTSP
Manage
ment
RTCP
RTP
Reliable multicast
protocol
RSVP
UDP
IGMP
Routing
multicast
TCP
IP
switching
Multicast
Gian Paolo Rossi
IGMP v1
[in IPv6 le funzioni di IGMP sono incorporate in ICMP]
Un router non deve conoscere la
membership. E’ sufficiente
conoscere l’esistenza
di un membro di gruppo
router
IGMP routing update
router
router
LAN 2
LAN 1
Group
member
Multicast
IGMP
query
IGMP
report
Group
member
IGMP
report
LAN 3
IGMP query (TTL=1,
all-host group)
Group
member
Gian Paolo Rossi
Pruning
router
router
router
router
router
Group
Member
Multicast
IGMP
query
Group
Member
router
Group
Member
Gian Paolo Rossi
IGMP v2
IGMP v2 introduce una procedura di elezione del router querier per ogni LAN.
In v1 veniva eletto dal protocollo di routing con politiche spesso diverse.
Group-Specific Query - introdotto per consentire queries da parte di un
router ad un gruppo specifico e non all’indirizzo all-host sulla subnet
(224.0.0.1).
Leave-Group - introdotto per ridurre la latenza di leave. Viene inoltrato al
gruppo all-routers (224.0.0.2)
Quando un router riceve un messaggio di Leave-Group, utilizza il messaggio
Group-Specific Query per verificare se si trattava dell’ultimo membro
del gruppo.
“IGMP, Version 1”, RFC 1112;
“IGMP, Version 2”, RFC 2236;
“IGMP, Version 3”,draft-ietf-idmr-igmp-v3-03.txt, feb.1999
Multicast
Gian Paolo Rossi
Multicast LAN Switching
router
Multicast Packet
switch
LAN 2
LAN 1
Group
member
Multicast
Gian Paolo Rossi
IGMP Snooping
router
Multicast Packet
switch
IGMP
Report
LAN 2
LAN 1
Group
member
Snooping di query/report IGMP e di pacchetti di routing per id.le porte del router. Upgrade graduale.
Multicast
Gian Paolo Rossi
GMRP - Layer 2 Switching
router
Tabella
e filtri
Multicast Packet
switch
GMRP-capable GMRP
Report
NIC driver
LAN 2
LAN 1
Group
member
IEEE 802.1p servizi per Traffic Class (CoS) e Multicast Filtering
IEEE 802.1Q std. che definisce estensioni alla frame Ethernet per propagare attraverso le reti VLAN info
Multicast
Gian Paolo Rossi
Mapping di Indirizzi Multicast
Indirizzi IP-multicast in Classe D, liberi da 224.0.1.0 a 239.255.255.255. Lo IANA
ha assegnato una porzione di 23 (LO) bit nel IEEE-802 MAC multicast address
space. Tutti gli indirizzi Ethernet nello spazio IANA iniziano con 01-00-5E (hex).
0
IP address
Class D
7 8
15
23
31
1110
Low-order 23 bit del multicast
unused
00000001
00000000
addr. copiato nell’Ethernet addr.
01011110 0
48-bit Ethernet Address
Multicast
Gian Paolo Rossi
Multicast Routing
Applicazioni
one-to-many
Applicazioni
many-to-many
Applicazioni
many-to-one
RTSP
Manage
ment
RTCP
RTP
Reliable multicast
protocol
RSVP
UDP
IGMP
Routing
multicast
TCP
IP
switching
Multicast
Gian Paolo Rossi
Protocolli di Multicast Routing
Ogni protocollo per il multicast costruisce un albero di consegna. L’albero
collega i router che hanno riceventi per un dato gruppo nelle sottoreti one-hop.
Due sono gli approcci possibili:
Protocolli Dense Mode - costruiscono l’albero dei cammini minimi che collega
la/e sorgente/i di traffico multicast a tutti i riceventi del gruppo.
A questa categoria appartengono i protocolli DVMRP, MOSPF, PIM-DM
Protocolli Sparse Mode - costruiscono un albero condiviso da tutte le sorgenti
che collega un nodo core, radice dell’albero, a tutte le destinazioni di un gruppo.
A questa categoria appartengono i protocolli CBT, PIM-SM
Multicast
Gian Paolo Rossi
Dense Mode
Reverse Path Multicasting
router
sorgente
sorgente
router
router
router
router
router
router
Group
Member
Group
Member
router
Group
Member
FLOOD & PRUNE
Multicast
Gian Paolo Rossi
Dense Mode
Reverse Path Multicasting
router
sorgente
Soft-state con
flooding periodico
sorgente
router
router
router
router
router
router
Group
Member
Multicast
Group
Member
router
Group
Member
Gian Paolo Rossi
Dense Mode
Progettato pensando a sottoreti con elevata densita’ di Group Members
Non adatto a membership sparse
Difficolta’ a scalare e uso inefficiente di banda per via del flooding
Costo elevato sui router nel caso di molti gruppi e molte sorgenti
Buona distribuzione del carico multicast sulla rete
Periodi di inconsistenza in funzione del tempo di refresh dell’albero
Multicast
Gian Paolo Rossi
Shared Tree
Rete di
connessione
core
router
router
router
router
Rete di
connessione
sorgente
sorgente
router
Multicast incapsulato
in pacchetti unicast
router
router
router
Group
Member
Multicast
Group
Member
router
Group
Member
Gian Paolo Rossi
Shared Tree
Migliore scalabilita’ rispetto a Dense Mode. Solo i router sull’albero
mantengono uno stato
Explicit join sul core rende il protocollo piu’ efficiente
Puo’ usare flooding per il controllo, ma i dati sono instradati sull’albero
Collo di bottiglia sul nodo core che e’ anche possibile point-of-failure
Elezione core con Auto-RP (PIM) o al bootstrap
Il cammino fra sorgente e destinazioni puo’ non essere ottimo
Multicast
Gian Paolo Rossi
DVMRP
[RFC 1075]
CARATTERISTICHE
Il primo protocollo di routing multicast
Incorpora il protocollo unicast distance-vector
Dense-Mode
Implicit-join
DEPLOYMENT
Il protocollo piu’ implementato e disponibile
Usato in Mbone, grande esperienza e sperimentazione
Supporta tunneling
Il candidato ideale per le prime esperienze di test-bed
Improbabile implementazione in IPv6
Ogni router, anche quelli pruned, mantiene uno stato sull’albero di distribuzione
Multicast
Gian Paolo Rossi
MOSPF
[RFC 1584]
CARATTERISTICHE
Estensione multicast del protocollo OSPF
Crea alberi shortest path di distribuzione centrati sulla sorgente
Eredita da OSPF la buona scalabilita’ e adattivita’
Piu’ adatto a routing in Dense-Mode
Esplicit-join
DEPLOYMENT
Il protocollo puo’ operare in domini di routing OSPF
Adatto a casi con poche coppie (sorgente,gruppo) contemporanee
Non supporta tunneling
Meno implementazioni rispetto a DVMRP
Sara’ disponibile anche con IPv6
Multicast
Gian Paolo Rossi
PIM-SM
[RFC 2117]
CARATTERISTICHE
Indipendente dal protocollo unicast
Shared tree con rendez-vous point
Il flusso di distribuzione e’ unidirezionale (da RP)
Si puo’ convertire in source-based con explicit join
Sparse-Mode
Explicit-join
DEPLOYMENT
Il protocollo e’ installabile in congiunzione a qualsiasi protocollo unicast
Adatto all’uso su WAN, anche se le prime esperienze sono state fatte su LAN
Puo’ essere portato a IPV6
PIM sparse-dense-mode specificati per regioni separate
Multicast
Gian Paolo Rossi
MBone
The multicast backbone, H.Eriksson, CACM, Vol.8, 1994
Multicast-capable
router (mrouted)
DVMRP
Multicast-enabled
network
Tunnel
unicast
Multicast
Gian Paolo Rossi
Inter-Domain Routing
MBone e’ stato il piu’ importante test-bed multicast, ha consentito lo sviluppo
di competenze sul multicast ed ha favorito lo sviluppo di numerosi prodotti
sw (freeware) per applicazioni audio/video su piattaforma IP.
In circa 7 anni, nel 1997, MBone ha raggiunto 3500 sottoreti connesse sparse su
25 nazioni. Non e’ piu’ possibile continuare a considerarlo flat dal punto di vista
del routing. In piu’, DVMRP non e’ in grado di scalare su una topologia sparsa
e diventa sempre piu’ complessa la gestione dei tunnel MBone.
E’ necessario definire protocolli di inter-domain multicast per il breve-medio e
lungo termine.
Multicast
Gian Paolo Rossi
PIM-SM/BGP4+/MSDP
[RFC 2283 per BGP4]
MBGP fornisce il
next-hop router
Intra-Domain
network
Intra-Domain
network
PIM-SM costruisce
l’albero multicast
Intra-Domain
network
MBGP-capable
border router
Multicast
Intra-Domain
network
Gian Paolo Rossi
PIM-SM/BGP4+/MSDP
C’e il problema di connettere gruppi distribuiti in molti domini sparse-mode
Dominio A
RP
connessione
MBGP
Non c’e’ modo per i receiver
nel dominio A di conoscere le
sorgenti del dominio B
RP
Le sorgenti si registrano su RP del
proprio dominio. I receiver spediscono
JOIN a RP nel loro dominio
Multicast
Dominio B
Gian Paolo Rossi
Multicast Source Discovery Protocol
2. MSDP peer nel dominio conosce S
e spedisce SA a tutti i peer one-hop
RP/MSDP
RP/MSDP
1. S si registra presso
RP di dominio
S
albero
albero
3. Ricevuto SA, si esegue
il check di “correct path”
e il “peer RPF flooding”
RP/MSDP
albero
Multicast
MBGP fra
domini
4. Se esistono receiver per il
gruppo nel dominio, RP spedisce
una PIM join alla sorgente
RP/MSDP
albero
Gian Paolo Rossi
PIM-SM/BGP4+/MSDP
MSDP e’ una soluzione di breve/medio termine.
1.
2.
Ha problemi prestazionali con gruppi dinamici (problema della
latenza di join) e con sorgenti che generano traffico a burst (p.e. sdr)
Ha problemi di scalabilita’ per via dei pacchetti SA diffusi in rete
su TCP (anche UDP)
Le soluzioni di lungo termine sono allo studio in IETF. Fra queste:
MASC/BGMP - S. Kumar e altri, ACM Sigcomm ‘98
Express Multicast - D.Cheriton, ACM Sigcomm ‘99
Simple Multicast - T. Ballardie e altri, TR April ‘99, Univ.College London
Multicast
Gian Paolo Rossi
Inter-Domain Routing
Sperimentazioni
www.internet2.edu/multicast/
vBNS - www.vbns.org/
attiva dal 1993, l’unica ad avere una tratta OC48 C in produzione (SFO-LA)
juniper M40 e Fore ASX 1000 per OC12 C
Abilene - www.ucaid.edu/abilene/
TEN155 - www.dante.net/ten155
supporta anche multicast con PIM-SM, MSDP e MBGP con clouds DVMRP
non comprende l’Italia per il multicast
CA*net - www.canet3.net
Progetto Canadese da 60 M $ con finalita’ simili a vBNS e Abilene
Multicast
Gian Paolo Rossi
Requisiti al Desktop
OS TCP/IP stack
Lo stack TCP/IP deve supportare l’estensione multicast. MS Windows 95,
NT, Linux e UNIX lo supportano. IP multicast patches per SunOS 4.1+,
Solaris 2.3+, DEC OSF V2+ in:
http://www.starburstcom.com/patches/mcastres.htm
Supporto IGMP
Windows 95 e NT 3.5/4.0 supportano IGMP v1. La versione IGMP v2 di
molti routers e’ backward compatibile
Supporto multicast su schede NIC (esempi)
3Com Fast EtherLink XL NIC
[www.3com.com/products/dsheets/400250.html]
G-NIC Gigabit Ethernet NIC di Packet Engines Inc.
[email protected] - www.packetengines.com
Multicast
Gian Paolo Rossi
Scarica

lez-mcast-1