MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo...

57
MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo Rossi Multicast n you think you have an adequate protocol design, just say the word ‘multica Dave Clark

Transcript of MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo...

Page 1: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

MULTICAST in INTERNET

C.so di laurea in Informatica Reti di Calcolatori II

a.a. 2003-2004

Gian Paolo RossiMulticast

“When you think you have an adequate protocol design, just say the word ‘multicast’”Dave Clark

Page 2: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Multicast - perche’ ?

Applicazionila disponibilita’ di una rete multicast-enabled semplifica lo sviluppodelle nuove applicazioni su piattaforma Internet

Rete“…multicast is a requirement, not an option, if the Internet is goingto scale…” (rif.IETF)Ottimizza l’uso di risorse sui link, sui router, sulle stazioni sorgenti,….

Network managementL’astrazione di un gruppo di destinazioni in rete consente di gestirecon una azione piu’ apparati di rete

Gian Paolo RossiMulticast

Page 3: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

IETF – Routing Area

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

Gian Paolo RossiMulticast

www.ietf.org

www-irtf.orgwww.ipmulticast.com

Page 4: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Multicast - il modello

Gsender

[multicast][join/leave]

receiver

una o piu’ stazioni sorgente che spediscono secondo uno stile IPil sender non conosce la membership di G, ma solo il suo indirizzo multicast

join e leave libere da parte dei membri del gruppospecifica da end-system, il modello non dice come la rete fornisce il multicast

[RFC 1112]

Gian Paolo RossiMulticast

Page 5: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Indirizzi Multicast

IPv4 Class D 1110 Multicast Group ID

0 1 2 3 31

28 bits

224.0.0.0 - riservato224.0.0.1 a 224.0.0.255 riservato routing e protocolli di basso livello

per discovery/maintenance della topologia di rete224.0.0.1 all-hosts group nella subnet224.0.0.2 all-routers group nella subnet224.0.1.1 riservato protocollo NTP

224.0.1.0 a 238.255.255.255 dinamicamente assegnati ad applicazioni mcast239.0.0.0 a 239.255.255.255 riservati per ‘administrative scoping’ senza TTL

Uso del campo TTL (Hop-Limit in IPv6) per definire lo ‘scope’ del pacchetto multicast

Gian Paolo RossiMulticast

Page 6: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Architettura per il Multicast

IPIP

Reliable multicast protocolReliable multicast protocol

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

IGMPIGMP RoutingmulticastRoutingmulticast

switchingswitching

TCPTCP UDPUDP

Best-effort

MulticastAPI

In Linux, il multicast e’programmabile attraverso

setsockopt ()getsockopt ()

[ftp://www.video.ja.net/mice/mrouted/Linux/]

Gian Paolo RossiMulticast

Page 7: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Applicazioni 1toMDistribuzione audio/video programmata

una o piu’ sorgenti e richiesta di banda relativamente alta. Spesso piu’ flussi sono sincronizzati e hanno diverse priorita’

Push mediaaggiornamento di informazioni dinamiche quali previsioni meteo, sport, news.

Applicazioni “drip-feed” a banda relativamente limitata

Cachingcontenuti web, file eseguibili, o update di file distribuiti a siti di replicazione o

caching

Announcementsnetwork time, programmi multicast, distribuzione chiavi, configuration updates

Monitoringtraffico CBR o a burst per rilevazione sensori, quotazione titoli o altri dati RT

Gian Paolo RossiMulticast

Page 8: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Applicazioni MtoMConferenza multimediale

streaming audio/video e whiteboard. Data stream con diverse priorita’ e problemi di coordinamento e gestione

Sincronizzazione risorseaggiornamento di copie replicate di database

Collaborazione e lavoro coordinatoworkflow e editing di documenti condivisi

Chat groupsconferenze text-based con possibilita’ di avatars di ogni speaker in ambiente

simulatoDistributed Interactive Simulation (DIS)

multicast di info descrittive per il rendering distribuito di oggetti di simulazioneGiochi distribuiti

sostanzialmente DIS con funzioni di chat line [MiMaze su Mbone, Quake]Jam sessions

encoded audio condiviso (eg. Musica)

Gian Paolo RossiMulticast

Page 9: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Applicazioni Mto1

Resource discoverymulticast 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 collectionraccolta di dati da un gruppo distribuito di sensori

Auctionsschema di relazione fra inserzionista e gli interessati che spediscono la proposta

di acquisto

Gian Paolo RossiMulticast

Page 10: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Requisiti di banda

Push media caching distribuzione a/vannouncements monitoring

Resource discovery data collectionauctions auctions

Chat group collaboration conferencing sincronizzazione risorse DIS

giochi distribuiti jam sessions

MtoM

Mto1

1toM

limitata media alta

banda

Gian Paolo RossiMulticast

Page 11: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Tolleranza sul ritardo

monitoring distribuzione a/v Push media announcements caching

data collectionauctions Resource discovery

DIS Chat groupconferencing sincronizzazione risorsejam sessions collaboration giochi distribuiti distance learning

MtoM

Mto1

1toM

limitata media alta

delaytolerance

Gian Paolo RossiMulticast

Page 12: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Applicazioni multicast

Infrastruttura di retemulticast-enabled

Infrastruttura di retemulticast-enabled

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

Active Theatre - EMULive Imaging

ICAST Broadcaster/Recorder

CU-seeMe - White Pine

Precept IP/TV e StreamWatch

Gian Paolo RossiMulticast

Page 13: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Applicazioni multicast

Infrastruttura di retemulticast-enabled

Infrastruttura di retemulticast-enabled

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

Proshare - Intel

RealAudio/Video/Server - RealNetw.

ShowMe TV - SUN

NetMeeting - Microsoft

StarBurst Omnicast

Gian Paolo RossiMulticast

Page 14: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

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.comper suonare MP3: Winamp per conversione, player Adaptec EasyCD

Gian Paolo RossiMulticast

Page 15: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Sicurezza

Le applicazioni multicast non differiscono da quelle unicast per le loro esigenzein 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 alteratocontrollare se sender o altri receiver conoscono l’identita’ dei receiverQUANDO, COME e a CHI distribuire le chiaviQUANDO, COME e PERCHE’ le chiavi sono revocate

Secure Multicast Research Group (SMUG) IRTFhttp://www.ipmulticast.com/community/smug/ftp://ietf.org/internet-drafts/draft-ietf-aft-mcast-fw-traversal-01.txt - SOCK v5http://www.epm.ornl.gov/tildedunigan/gkm.html - Group Key Mngt.

Gian Paolo RossiMulticast

Page 16: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Architettura per il Multicast

IPIP

Reliable multicast protocol

Reliable multicast protocol

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

IGMPIGMP RoutingmulticastRoutingmulticast

switchingswitching

UDPUDP TCPTCP

QoS e CoS

RTPRTPRTCPRTCP

RSVPRSVP

RTSPRTSP

Management

Management

Gian Paolo RossiMulticast

Page 17: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Reliable multicast

Caching distribuzione a/v push mediamonitoring

data collectionauctions polling

Collaboration conferencingsincronizzazione risorse chat group DIS giochi

MtoM

Mto1

1toM

limitata media alta

losstolerance

Gian Paolo RossiMulticast

Page 18: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Reliable Multicast

problemi simili a quelli dovuti a receiver eterogenei per raccolta NACKspossibilita’ di graduare loss-rate in funzione dei requisiti

soluzioni proprietarie in commercio - non esiste uno standardrequisiti diversi sull’ordine di consegna

scalabilita’burstiness dei dati, delay tolerance, real-time

standardizzazione di diversi protocolli per soddisfare diversi requisitifocus 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 protocolliresearch.ivv.nasa.gov/RMP/links.html - reliable multicast links

Gian Paolo RossiMulticast

Page 19: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Problema del feedbackLa 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

Gian Paolo RossiMulticast

Page 20: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Reliable Multicast

GlobalCast Reliable Multicast - www.gcast.come-cast Reliable Multicast software - www.lucent.comStarBurst Multicast - www.starburstcom.com

inoltre, www.tibco.com, www.probita.com

alcune applicazioni: THE BOX, Toys’R US, GM

Gian Paolo RossiMulticast

Page 21: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

MFTPMulticast File Transfer Protocol

Blocco 1 Blocco 2 Blocco 3 Blocco 4

File

source receiver

ack/nack ack/nack ack/nack ack/nack

Blocco 1 Blocco 2 Blocco 3 Blocco 4source receiver

Pass 1

Pass 2

Blocco1frame 251

Blocco 4frame 37

Blocco 2frame 288

Blocco 2frame 295

Blocco 4frame 185

Gian Paolo RossiMulticast

Page 22: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

RTP, RTCP e RTSP

IPIP

Reliable multicast protocol

Reliable multicast protocol

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

IGMPIGMP RoutingmulticastRoutingmulticast

switchingswitching

UDPUDP

RTPRTPRTCPRTCP

RSVPRSVP

RTSPRTSP

Management

Management RTPRTPRTCPRTCP

RTSPRTSP

Gian Paolo RossiMulticast

Page 23: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

RTPRTP 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.

RTP RTP

Sender Receiver N

A B

router

mixtrsl

[translator e mixer]

Payload typetimestamp

sequencemarkerSource-ID

[RFC 1889]

Gian Paolo RossiMulticast

Page 24: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

RTCP

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 siadalle stazioni sender che receiver per fornire alla applicazioneinformazioni sulla qualita’ della trasmissione

Identificazione della sorgente RTP - RTCP trasferisce il nomecanonical (CNAME) di ogni partecipante per membership eper identificare flussi dalla stessa sorgente su diverse sessioni RTP

Controllo trasmissione RTCP - il traffico di controllo RTCP vieneadattato in funzione del traffico di sessione e del #partecipanti

[RFC 1889]

Gian Paolo RossiMulticast

Page 25: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

RTP-RTCP

applicazione

RTP/RTCP

Playbackbuffer

applicazione

RTP/RTCP

Playbackbuffer

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

di gruppo e consente di monitorare i singoli media. Un ricevente puo’ decidere diselezionare un solo medium in funzione delle risorse di cui dispone.

Internet

Gian Paolo RossiMulticast

Page 26: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

RTP/RTCP

Usano porte UDP contigue, #pari RTP e dispari superiore RTCPRTP v2 e’ maturo per supportare la maggior parte di payload medialiAlcuni tool di network monitoring possono non parsare ancora RTP

Vendors/prodotti che utilizzano RTP/RTCP: esempiMS 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 diversistream allo scopo di monitoraggio e management

Gian Paolo RossiMulticast

Page 27: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

RTSPRTSP fornisce il controllo remoto di server multimediali. Definisce il frameworkper ricevere uno o piu’ media, anche da server diversi, ma si appoggia a RTP peril trasporto e la consegna dei diversi stream.

WebBrowser

WebBrowser

MediaPlayerMediaPlayer

Media ServerMedia Server

WebServerWeb

Server

HTTP GET

session description

SET UP

PLAY

RTP audio/video-RTCP

PAUSE

TEARDOWN

Gian Paolo RossiMulticast

Page 28: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

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’ identificareserver diversi. Il server mantiene un identificatore per ogni sessione e, poiche’lo stream di fatto viaggia con un protocollo separato, il serverdeve anche mantenere un session state per associare la sessione RTSP conun dato stream. Il client puo’ contemporaneamente aprire sessioni con altri media server.

Gian Paolo RossiMulticast

Page 29: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

SDPSDP

Session Management

IPIP

UDPUDPRSVPRSVP TCPTCP

SAPSAP SIPSIP

SCCPCCCPSCCPCCCP

Conference Setup&Discovery

Conference Control

MultipartyMultimediaSessionControl WG-IETF (MMUSIC)

Gian Paolo RossiMulticast

Page 30: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

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 multicast224.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 networkmanagement in sessioni con moderatore designato che deve dare permessodi join ad un nuovo membro “SCCP”, draft-ietf-mmusic-sccp-03.txt, 1998

Gian Paolo RossiMulticast

Page 31: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

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 adorchestrare sessioni multipunto di teleconferenza con distribuzione chiaviin 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

Gian Paolo RossiMulticast

Page 32: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Multicast Routing e LAN Switching

IPIP

Reliable multicast protocol

Reliable multicast protocol

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

IGMPIGMP RoutingmulticastRoutingmulticast

switchingswitching

UDPUDP

RTPRTPRTCPRTCP

RSVPRSVP

RTSPRTSP

Management

Management

TCPTCP

switchingswitching

Gian Paolo RossiMulticast

Page 33: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

IGMP v1

LAN 1

LAN 2

Groupmember

router

LAN 3

Groupmember

router

Groupmember

router

IGMPquery

IGMP query (TTL=1,all-host group)

IGMPreport

IGMPreport

IGMP routing update

Un router non deve conoscere lamembership. E’ sufficienteconoscere l’esistenzadi un membro di gruppo

[in IPv6 le funzioni di IGMP sono incorporate in ICMP]

Gian Paolo RossiMulticast

Page 34: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Pruning

router

routerrouter

routerrouter router

GroupMember

GroupMember

GroupMember

IGMPquery

Gian Paolo RossiMulticast

Page 35: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

IGMP v2IGMP 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 unrouter 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 algruppo 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

Gian Paolo RossiMulticast

Page 36: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Multicast LAN Switching

Multicast Packet

switch

LAN 1 LAN 2

Groupmember

router

Gian Paolo RossiMulticast

Page 37: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

IGMP Snooping

switch

LAN 1 LAN 2

Groupmember

router

Multicast Packet

IGMPReport

Snooping di query/report IGMP e di pacchetti di routing per id.le porte del router. Upgrade graduale.

Gian Paolo RossiMulticast

Page 38: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

GMRP - Layer 2 Switching

Multicast Packet

switch

LAN 1 LAN 2

Groupmember

router

GMRPReport

GMRP-capableNIC driver

IEEE 802.1p servizi per Traffic Class (CoS) e Multicast FilteringIEEE 802.1Q std. che definisce estensioni alla frame Ethernet per propagare attraverso le reti VLAN info

Tabellae filtri

Gian Paolo RossiMulticast

Page 39: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Mapping di Indirizzi Multicast

1110

0 7 8 15 23 31

00000000 01011110 0 00000001

Low-order 23 bit del multicast

addr. copiato nell’Ethernet addr.unused

IP addressClass D

48-bit Ethernet Address

Indirizzi IP-multicast in Classe D, liberi da 224.0.1.0 a 239.255.255.255. Lo IANAha assegnato una porzione di 23 (LO) bit nel IEEE-802 MAC multicast addressspace. Tutti gli indirizzi Ethernet nello spazio IANA iniziano con 01-00-5E (hex).

Gian Paolo RossiMulticast

Page 40: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Multicast Routing

IPIP

Reliable multicast protocol

Reliable multicast protocol

Applicazionione-to-manyApplicazionione-to-many

Applicazionimany-to-manyApplicazioni

many-to-manyApplicazionimany-to-oneApplicazionimany-to-one

IGMPIGMP RoutingmulticastRoutingmulticast

switchingswitching

UDPUDP

RTPRTPRTCPRTCP

RSVPRSVP

RTSPRTSP

Management

Management

TCPTCP

switchingswitching

Gian Paolo RossiMulticast

Page 41: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Protocolli di Multicast Routing

Ogni protocollo per il multicast costruisce un albero di consegna. L’alberocollega 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 sorgentiche collega un nodo core, radice dell’albero, a tutte le destinazioni di un gruppo.A questa categoria appartengono i protocolli CBT, PIM-SM

Gian Paolo RossiMulticast

Page 42: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Dense ModeReverse Path Multicasting

router

routerrouter

routerrouter router

GroupMember

GroupMember Group

Member

router

router

sorgente

sorgente

FLOOD

router

routerrouter

routerrouter router

& PRUNE

Gian Paolo RossiMulticast

Page 43: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Dense Mode

router

routerrouter

routerrouter router

GroupMember

GroupMember Group

Member

router

router

sorgente

sorgente

router

routerrouter

routerrouter router

GroupMember

GroupMember Group

Member

router

sorgente

sorgente

Reverse Path MulticastingSoft-state con

flooding periodico

Gian Paolo RossiMulticast

Page 44: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

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

Gian Paolo RossiMulticast

Page 45: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Shared Tree

router

routerrouter

routerrouter router

GroupMember

GroupMember Group

Member

router

router

core router

routerrouter

routerrouter router

GroupMember

GroupMember Group

Member

router

sorgente

sorgente

Rete diconnessione

Rete diconnessione

Multicast incapsulatoin pacchetti unicast

Gian Paolo RossiMulticast

Page 46: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Shared Tree

Migliore scalabilita’ rispetto a Dense Mode. Solo i router sull’alberomantengono 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

Gian Paolo RossiMulticast

Page 47: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

DVMRP

CARATTERISTICHEIl primo protocollo di routing multicastIncorpora il protocollo unicast distance-vectorDense-ModeImplicit-join

DEPLOYMENTIl protocollo piu’ implementato e disponibile

Usato in Mbone, grande esperienza e sperimentazioneSupporta tunneling

Il candidato ideale per le prime esperienze di test-bedImprobabile implementazione in IPv6

Ogni router, anche quelli pruned, mantiene uno stato sull’albero di distribuzione

[RFC 1075]

Gian Paolo RossiMulticast

Page 48: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

MOSPF

CARATTERISTICHEEstensione multicast del protocollo OSPFCrea alberi shortest path di distribuzione centrati sulla sorgenteEredita da OSPF la buona scalabilita’ e adattivita’Piu’ adatto a routing in Dense-ModeEsplicit-join

DEPLOYMENTIl protocollo puo’ operare in domini di routing OSPF

Adatto a casi con poche coppie (sorgente,gruppo) contemporaneeNon supporta tunneling

Meno implementazioni rispetto a DVMRPSara’ disponibile anche con IPv6

[RFC 1584]

Gian Paolo RossiMulticast

Page 49: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

PIM-SM

CARATTERISTICHEIndipendente dal protocollo unicastShared tree con rendez-vous pointIl flusso di distribuzione e’ unidirezionale (da RP)Si puo’ convertire in source-based con explicit joinSparse-ModeExplicit-join

DEPLOYMENTIl protocollo e’ installabile in congiunzione a qualsiasi protocollo unicast

Adatto all’uso su WAN, anche se le prime esperienze sono state fatte su LANPuo’ essere portato a IPV6

PIM sparse-dense-mode specificati per regioni separate

[RFC 2117]

Gian Paolo RossiMulticast

Page 50: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

MBone

Multicast-enablednetwork

Tunnelunicast

Multicast-capablerouter (mrouted)DVMRP

The multicast backbone, H.Eriksson, CACM, Vol.8, 1994

Gian Paolo RossiMulticast

Page 51: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Inter-Domain Routing

MBone e’ stato il piu’ importante test-bed multicast, ha consentito lo sviluppodi competenze sul multicast ed ha favorito lo sviluppo di numerosi prodottisw (freeware) per applicazioni audio/video su piattaforma IP.

In circa 7 anni, nel 1997, MBone ha raggiunto 3500 sottoreti connesse sparse su25 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.

Gian Paolo RossiMulticast

Page 52: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

PIM-SM/BGP4+/MSDP

Intra-Domain network

Intra-Domain network

Intra-Domain network

Intra-Domain network

MBGP fornisce ilnext-hop router

PIM-SM costruiscel’albero multicast

MBGP-capableborder router

[RFC 2283 per BGP4]

Gian Paolo RossiMulticast

Page 53: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

PIM-SM/BGP4+/MSDP

RP

RP

Dominio A

Dominio B

connessione MBGP

Le sorgenti si registrano su RP delproprio dominio. I receiver spediscono

JOIN a RP nel loro dominio

Non c’e’ modo per i receivernel dominio A di conoscere le

sorgenti del dominio B

C’e il problema di connettere gruppi distribuiti in molti domini sparse-mode

Gian Paolo RossiMulticast

Page 54: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Multicast Source Discovery Protocol

RP/MSDP

Salbero

RP/MSDP

albero

RP/MSDP

albero

RP/MSDP

albero

1. S si registra presso RP di dominio

2. MSDP peer nel dominio conosce Se spedisce SA a tutti i peer one-hop

3. Ricevuto SA, si esegueil check di “correct path”e il “peer RPF flooding”

4. Se esistono receiver per il gruppo nel dominio, RP spedisce una PIM join alla sorgente

MBGP fradomini

Gian Paolo RossiMulticast

Page 55: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

PIM-SM/BGP4+/MSDP

MSDP e’ una soluzione di breve/medio termine.

1. Ha problemi prestazionali con gruppi dinamici (problema della latenza di join) e con sorgenti che generano traffico a burst (p.e. sdr)2. 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 ‘98Express Multicast - D.Cheriton, ACM Sigcomm ‘99Simple Multicast - T. Ballardie e altri, TR April ‘99, Univ.College London

Gian Paolo RossiMulticast

Page 56: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Inter-Domain RoutingSperimentazioni

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/ten155supporta anche multicast con PIM-SM, MSDP e MBGP con clouds DVMRP

non comprende l’Italia per il multicast

CA*net - www.canet3.netProgetto Canadese da 60 M $ con finalita’ simili a vBNS e Abilene

Gian Paolo RossiMulticast

Page 57: MULTICAST in INTERNET C.so di laurea in Informatica Reti di Calcolatori II a.a. 2003-2004 Gian Paolo RossiMulticast When you think you have an adequate.

Requisiti al DesktopOS TCP/IP stackLo 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 IGMPWindows 95 e NT 3.5/4.0 supportano IGMP v1. La versione IGMP v2 dimolti 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 [email protected] - www.packetengines.com

Gian Paolo RossiMulticast