F. Castiglione 1 Servizi Internet avanzati IP multicast, VoIP, Video Conferenza Filippo Castiglione, IAC – CNR, Roma
F. Castiglione 2 Argomenti
F. Castiglione 3 Argomenti
F. Castiglione 4 Cosè lIP Multicast? La tecnologia IP Multicast: trasmissione di dati che riproduce su Internet il modello di broadcasting delle trasmissioni radiofoniche e televisive. prevede la trasmissione di una sola copia di ciascun pacchetto IP ad un gruppo di client identificato da un singolo indirizzo IP di destinazione. Vantaggio trasmettere i dati sulla rete in modo più efficiente abbassando i costi di trasmissione di servizi audio e video: 1.si riduce il costo dellHW 2.e la larghezza di banda non deve crescere in misura direttamente proporzionale al numero degli utenti collegati
F. Castiglione 5 Storia Stanford University primi anni 80 –Steve Deering (progetto Vsystem) Agosto 1989: Host Extensions for IP Multicasting (RFC-1112) Dicembre 1991: Multicast routing in a Datagram Network
F. Castiglione 6 Unicast vs multicast Trasmissione diretta a a molte destinazioni.
F. Castiglione 7 Applicazioni Real-Time in Internet – Trasferimenti dati, e.g. distribuzione/aggiornamenti di software – Broadcast media (continuous media), e.g. audio, video, i.e. trasmissioni di tipo televisivo – Applicazioni condivise, e.g. whiteboard (testo), teleconferenza, teledidattica – Aggiornamento di dati in tempo reale, e.g. quotazioni di borsa, distribuzione di listini – Localizzazione di risorse (Server, stampanti, …) – Giochi interattivi
F. Castiglione 8 Caratteristiche Una certa tolleranza al ritardo Una certa tolleranza alla perdita di pacchetti
F. Castiglione 9 Come si può fare? Unicast Una copia di ogni pacchetto ad ogni partecipante. Semplice da implementare ma i problemi aumentano al crescere del numero di interlocutori. Ha grossi problemi per quello che riguarda l'occupazione di banda. Broadcast L'applicazione puo' mandare un pacchetto a un indirizzo broadcast. Tecnica è meno semplice però si deve fermare il broadcast a livello di LAN per prevenire i cosidetti broadcast storms oppure mandare il broadcast dovunque. (i.e. spendere gran parte delle risorse di rete magari per un piccolo numero di utenti).
F. Castiglione 10 Utilizzare il broadcast In altre parole … Tante connessioni separate quante sono le richieste (unicast) Multicast realizzato con linvio di più pacchetti unicast Multicast realizzato con linvio di un singolo pacchett duplicato nei router H4 H5 H6 H7
F. Castiglione 11 Come si può fare? Multicast Una copia del pacchetto al gruppo di host che vogliono riceverlo. Puo' essere implementato sia al livello data-link che al network layer. Ethernet e FDDI, supportano indirizzi unicast, multicast e broadcast. Il Token Ring supporta l'indirizzamento multicast però usa una tecnica diversa. Ci sono diversi parametri da definire da parte del livello rete per comunicazioni multicast.
F. Castiglione 12 Classi di Applicazione Multimediale Tre classi di applicazioni: –Streaming –Real-Time Unidirezionale –Real-Time Interattivo
F. Castiglione 13 Classi di Applicazione Streaming –Clients richiedono files audio/video al server e direzionano i dati ottenuti dalla rete alla corrispondente applicazione (helper). –Riproduzione continuata. –Interattivo: utente può controllare le operazioni (pausa, resume, avanti veloce, riavvolgi, etc.) –Ritardo: dalla richiesta del client fino al playback possono intercorrere da 1 a 10 secondi. –In alcune applicazioni è richiesta la memorizzazione completa prima del playback (ex: Napster, Gnutella)
F. Castiglione 14 Classi di Applicazione Real-Time Unidirezionale: –Simile alle stazioni TV e Radio, ma trasmesse sulla rete –Non interattivo, solo ascolto o visione, oppure interattivo in seguito a memorizzazione Real-Time Interattivo: –Conversazione telefonica o video conferenza –Requisiti sul ritardo più stringenti di Streaming e Real-Time unidirezionale Video: < 150 msec accettabile Audio: < 150 msec buono, < 400 msec accettabile
F. Castiglione 15 Indirizzamento Multicast Se si usa un singolo pacchetto duplicato alloccorrenza dai router come si specifica al router il gruppo di indirizzi (cioè quali host devono ricevere una copia del pacchetto)? Bisogna che tale pacchetto trasporti lindirizzo di tutte le destinazioni? No, è meglio astrarre lindirizzo delle destinazioni da un ben definito indirizzo di gruppo (indirizzo multicast)
F. Castiglione 16 Indirizzamento Multicast Ci deve essere un indirizzo di livello rete che è utilizzato per comunicare con un gruppo di host piuttosto che con uno solo. Si sono riservati gli indirizzi di classe D (con i bit più significativi pari a 1110).
F. Castiglione 17 Insieme di zero o più host identificato da un singolo indirizzo IP di classe D Indirizzi di classe D – – – – –
F. Castiglione 18 Indirizzamento Multicast In più ci deve essere un meccanismo di mapping per questi indirizzi nel data-link layer: Ethernet prende i 32 bit del multicast address e vi aggiunge un prefisso per arrivare ai 48 bit del MAC address (RFC 1112) MAC = Media Access Control (IEEE 802)
F. Castiglione 19 Indirizzo IP 32 bit Indirizzo Ethernet 48 bit Lindirizzo Ethernet viene riconosciuto dalla prima cifra esadecimale 32 bit totali 4 fissi 5 non usati 23 caratterizzano lindirizzo più gruppi Multicast possono essere mappati con lo stesso indirizzo Ethernet! RFC E + 24 bits IP addr Incapsulamento Ethernet
F. Castiglione 20 Conversione da multicast IP a multicast Ethernet MAC=Media Access Control
F. Castiglione 21 Well known addresses Well known addresses stabiliti dallo IANA – Per usi riservati da a tutti gli host in una LAN tutti i routers in una LAN – tutti I router PIM (Protocol Independent Multicast) Altri indirizzi utilizzati dinamicamente: – Global scope: – – Limited Scope: – –Site-local scope: /16 –Organization-local scope: /16 Esercizio: Leggere
F. Castiglione 22 Indirizzamento Multicast Due sono quindi gli aspetti significativi: 1.La gestione dei gruppi 2.La disseminazione dellinformazione (routing vero e proprio.)
F. Castiglione 23 Internet Group Management Protocol IGMP IGMPv1 RFC1112, obsoleto IGMPv2 RFC2236, in uso IGMPv3 bozza
F. Castiglione 24 Internet Group Management Protocol (IGMP) IGMP impiega datagrammi IP per trasportare messaggi Usato dai gateway multicast e dagli host per gestire linformazione di appartenenza ad un gruppo multicast
F. Castiglione 25 Gruppi Multicast Nella pratica un gruppo nasce nel momento in cui il primo elemento si aggrega, e termina la sua esistenza quando tutti gli elementi si sono dissociati. Il gruppo non è Statico ma Dinamico Associarsi (join) Abbandonare (leave) Elemento base del multicast è quindi il concetto di gruppo Rappresenta lassociazione fra un insieme di trasmettitori ed un insieme di ricevitori.
F. Castiglione 26 Internet Group Management Protocol (IGMP) Concettualmente ha due fasi 1.Un host si unisce ad un gruppo con un messaggio IGMP allindirizzo di tutti gli host. I gateway multicast propagano linformazione di appartenenza dellhost al gruppo ad altri gateway multicast in tutta linternet 2.Poiché lappartenenza ad un gruppo è dinamica, i gateway multicast locali interrogano periodicamente gli host di un gruppo per verificarne lo stato di appartenenza. Se un gruppo viene lasciato da tutti gli host di appartenenza iniziale, il gateway multicast cessa di annunciare lappartenenza al gruppo agli altri gateway.
F. Castiglione 27 Pachetto IGMPv1 Version: la versione dellIGMP Type: due tipi di messaggi IGMP 1.Host Membership Query. 2.Host Membership Report. Checksum Unused: 0 quando viene spedito Group Address
F. Castiglione Report IGMPv1: Associarsi a un gruppo Per associarsi a un gruppo un PC manda un pacchetto IGMP report allindirizzo con TTL 1 IGMPv1 H3 H1 H2
F. Castiglione 29 Membership Query allindirizzo Multicast Router IGMPv1: Membership Queries Periodicamente il router invia un pacchetto IGMP di Membership Query allindirizzo per aggiornare la tabella dei gruppi multicast attivi IGMPv1 H3 H1 H2
F. Castiglione 30 IGMPv1 #1 Router manda periodicamente la Membership Query Query a #1 #2 Solo un membro per gruppo invia il report Report #2 #3 Gli altri membri non inviano nulla Soppresso X # Soppresso X #3 H1 H2 H3
F. Castiglione 31 H3 Il router invia periodicamente i pacchetti IGMP Query a Il PC lascia il gruppo senza segnalarlo H3 Il router continua ad inviare le query periodiche Query a IGMPv1: Abbandonare un gruppo IGMPv1 H1 H2 Il router non riceve nessun report per quel determinato gruppo Il gruppo va in time out
F. Castiglione 32 Routing Multicast Un gruppo, in genere, è sparso su un insieme di LAN. Quindi si deve avere un piano di instradamento per raggiungere tutti gli elementi del gruppo Un router intermedio, deve tradurre lindirizzo multicast in una lista di reti cui inviare. Quando un router è connesso a una LAN che supporta il multicast deve tradurre lindirizzo IP in un indirizzo multicast locale I router devono scambiarsi due tipi di informazioni: 1. quali reti contengono membri del gruppo 2. come calcolare lalbero di raggiungibilità minima tra un trasmettitore e i ricevitori
F. Castiglione 33 Il Problema della Raggiungibilita` Le mappe non possono essere costruite localmente ma devono essere basate su un minimum spanning tree che parte dalla radice S D1 D2 D3 D4 R6 D5 LAN 1 R1 R5 R2 R4
F. Castiglione 34 Routing multicast Un ruolo primario di questo albero è di assicurarsi che esiste solo una coppia di ogni pacchetto in ogni sottorete. La IETF (Internet Engineering Task Force) sta sviluppando degli standard per questi meccanismi. Ci sono più standard disponibili per traffico IP Multicast
F. Castiglione 35 Distance Vector Multicast Routing Protocol DVMRP è il più vecchio protocollo di routing che è stato usato per il multicast. DVMRP supporta vari tipi di reti, incluse Ethernet, LAN. Può anche funzionare attraverso router che non sono multicast-capable. Tuttavia, è stato considerato una soluzione intermedia mentre soluzioni "realmente" multicast vengono sviluppate.
F. Castiglione 36 Albero basato sulla sorgenteAlbero Condiviso Distance Vector Multicast Routing Protocol (DVMRP) Multicast Open Shortest Path First Protocol Independent Multicast – Dense Mode Core Based Tree Protocol Independent Multicast - Sparse Mode Protocolli di routing MSDP –Multicast Source Discovery Protocol MBGP –Multicast Border Gateway Protocol Multicast geografico
F. Castiglione 37 Applicazioni VoIP
F. Castiglione 38 La telefonia su IP network Potenziale riduzione in termini significativi del costo delle comunicazioni vocali a lunga distanza. In più : video conferencing application sharing (eg. white-boarding)
F. Castiglione 39 Il suono Da 16 Hz a 20KHz È un segnale continuo quindi analogico Il campionamento (e.g Hz ) La quantizzazione, cioè i livelli di informazione (e.g. 256 = 8 bits) CD Audio Hz cioè intervalli al secondo
F. Castiglione 40 Un esempio Memorizzare il parlato con campionamento a 8 bit e con una frequenza di Hz, è necessario –60000 x 8 bit = 460 Kbyte circa per una canzone con campionamento a 16 bit e con una frequenza di Hz, per un minuto è necessario –60 x x 2 byte = 12 MB
F. Castiglione 41 La telefonia su IP network Per capire il fenomeno della telefonia Internet è necessario prendere confidenza con i principi fondamentali che stanno dietro Internet e con le principali differenze di IP rispetto alla rete telefonica (PSTN = Public Switched Telephon Network).
F. Castiglione 42 PSTN La rete telefonica (PSTN) è una rete a commutazione di circuito ottimizzata per le comunicazioni vocali in sincrono e in tempo reale con una qualità di servizio garantita (QoS:Quality of Service). Quando una sessione di comunicazione viene iniziata, si stabilisce un circuito fra la parte chiamante e quella chiamata. La PSTN garantisce la qualità del servizio (QoS) dedicando alla conversazione un circuito full-duplex con una larghezza di banda 64KHz. Tale larghezza di banda rimane inalterata indipendentemente dal fatto che le parti siano in conversazione attiva o in silenzio. Dato che la larghezza di banda è costante, il costo di una chiamata è strettamente basato sulla distanza e sul tempo.
F. Castiglione 43 La rete a commutazione di pacchetto Internet, invece, è una rete a commutazione di pacchetto ed è sempre stata usata per applicazioni dove una QoS variabile poteva essere un parametro tollerabile ( , ftp, …). Le reti a commutazione di pacchetto non dedicano un circuito tra le parti in conversazione e perciò non possono garantire la qualità del servizio. Per come sono strutturati i protocolli di comunicazione e per come è stata concepita Internet, il meccanismo primario di costo per unapplicazione di telefonia IP non è né la distanza né il tempo ma lampiezza di banda usata nella comunicazione. In ogni caso, tale costo è trasparente allutente finale. Il servizio a tali utenti è infatti fornito solitamente dagli ISP (Internet Service Providers) che gestiscono direttamente il costo delle connessioni.
F. Castiglione 44 La qualità del servizio (QoS, Quality of Service) Il problema fondamentale della comunicazione vocale su una rete come Internet è che la gestione dei pacchetti da parte del protocollo IP destinatario comporta una ricomposizione di questi nellordine originale (errori di trasmissione e/o ritardi vari rallentano il processo). Per applicazioni classiche (posta elettronica) non è un problema. Ma per applicazioni di telefonia questo può provocare un degradamento notevole nella qualità di conversazione.
F. Castiglione 45 La qualità del servizio (QoS, Quality of Service) In generale, che tipo di qualità nella comunicazione si possono aspettare gli utenti di VoIP ? Questo dipende in parte dalla velocità della connessione ad Internet che ciascun lato possiede e in parte dal traffico complessivo della rete.
F. Castiglione 46 La qualità del servizio (QoS, Quality of Service) Ci sono due fondamentali caratteristiche che determinano la qualità di VoIP: 1. Il tempo di latenza (Latency). Tale grandezza misura il ritardo che intercorre dal momento che certe parole sono pronunciate da un lato al momento che queste sono effettivamente sentite dallaltro lato. Spesso gli utenti di VoIP rapportano tale latenza ai ritardi che le normali telefonate subiscono quando parte del circuito è fatto da collegamenti satellitari. La latenza è qualcosa a cui gli utenti possono in genere abituarsi e compensare di conseguenza.
F. Castiglione 47 La qualità del servizio (QoS, Quality of Service) 2. Il grado di rispondenza della voce trasmessa rispetto alla voce naturale di chi parla. Se certi pacchetti vocali risultano ritardati oltre una certa soglia, il software di telefonia IP cercherà in genere di interpolare i dati mancanti tramite i contenuti dei pacchetti adiacenti. Naturalmente, più il software ricorre a questa tecnica interpolativa, più la qualità dellinformazione risulterà compromessa (distorsione del messaggio vocale). TCP/IP, in sostanza, non garantisce agli utenti la trasmissione di un certo numero di dati in un preciso periodo di tempo. Le prestazioni della rete possono fluttuare di momento in momento. A volte i dati sono trasmessi immediatamente, a volte subiscono ritardi o non sono inviati affatto.
F. Castiglione 48 La qualità del servizio (QoS, Quality of Service) La qualità nel campo della telefonia IP presenta dei notevoli margini di miglioramento. Il protocollo RSVP (Resource Reservation Setup Protocol) della Cisco, ad esempio, è progettato per riservare una certa porzione di banda proprio per le applicazioni che richiedono delle risposte in tempo reale quali quelle di VoIP. Ciascun Router che supporta tale protocollo ha la capacità difatti di riconoscere una priorità nei pacchetti che instrada, distinguendo tra quelli urgenti (real-time packets) e quelli meno, agendo così di conseguenza. Molti studiosi di Internet, sostengono che la proliferazione di grandi quantità di banda a basso costo renderà lo sviluppo di RSVP e, più in generale, la discussione su QoS, del tutto irrilevante.
F. Castiglione 49 Formati Audio Grafici Video
F. Castiglione 50 Formati Audio Real Audio QuickTime Microsoft Wave [estensione: WAV] MPEG Audio [estensione: MP3] Audio Interchange [estensione: AIF/AIFF] Microsoft NetShow [estensione: ASF] Yamaha SoundVQ [estensione: VQF]
F. Castiglione 51 insieme continuo di luce e colore Vettoriali –Formule matematiche e forme geometriche –Max qualità Bitmap –Con perdita di qualità –Senza perdita di qualità Compressi Non compressi Formati Grafici: le immagini
F. Castiglione 52 RGB pc CMYK stampe YUV tv –Luminanza Y Intensità luminosa di un punto dellimmagine –Crominanza UV Sono i canali che trasportano i colori –U = tinta –V = saturazione Due concetti: Luminanza e crominanza
F. Castiglione 53 Formati Grafici Targa [estensione: TGA] TIFF [estensione: TIF] CompuServe [estensione: GIF] JPEG [estensione: JPG] PC Paintbrush [estensione: PCX] Windows Bitmap [estensione: BMP] PNG [estensione: PNG] –Non supportato dai browser
F. Castiglione 54 Formati video digitali MS Video for Windows [estensione: AVI] Apple Quick Time for Windows [estensione: MOV] Formato DV Adobe Filmstrip [estensione: FLM] Autodesk Animation [estensione: FLI/FLC ] RealMedia Audio/Video [estensione: RA/RM/RAM] Microsoft NetShow [estensione: ASF]
F. Castiglione 55 Compressione Audio e Video I segnali audio/video necessitano la digitalizzazione e la compressione. Immagine –1024 x 1024, –24 bit per pixel (2 24 colori) richiede 3 Mbit Segnale Audio analogico –campionato ad 8000 camp/sec. –Ogni campione rappresentato con 8 bit richiede 64Kb/sec (superiore a connessione modem!) CD audio –705,6 Kb/sec (mono), –1411 Kb/sec (stereo) Video 720 x 576 x 8 x 3 x 25 = 30MBs 720x 576 pixel (PAL) 8 x 3 Quantizzazione a 8 bit per ciascuno dei tre colori 25 fps film 2 ore richiede 104GB
F. Castiglione 56 Compressione Audio e Video Compressione Audio: –GSM (13Kb/sec) –G.729 (8 Kb/sec) –G (6,4 Kb/s) –MPEG layer3, MP3. Comprime musica a 128 Kb/s con piccola degradazione del suono. Video: Compressione spaziale e temporale. –MPEG 1 per CD-ROM (1,5 Mb/s), –MPEG 2 per DVD (3-6 Mb/s) MPEG = Moving Picture Expert Group La fedeltà della ricostruzione dipende dalla frequenza del campionamento
F. Castiglione 57 Streaming
F. Castiglione 58 Per inviare un video di 500Kb a 6Kb/s oltre 90 s Notevole quantità di banda (+ qualità + banda) Notevole tempo per scaricare Streaming Le tecniche di "streaming" permettono di ridurre questo tempo ad un piccolo ritardo iniziale, senza richiedere alcuno spazio sul disco locale: il file richiesto viene infatti visualizzato al momento, senza un preventivo download.
F. Castiglione 59 Streaming Real time –Radio –Tv non esiste un vero e proprio file ma piuttosto un flusso continuo (stream) di bit
F. Castiglione 60 1.Una sorgente –File –Telecamera / tv / videoregistratore 2.Un encoder –PC –Streamfactory / Stream Genie 3.Un server 4.Un player Streaming: cosa serve
F. Castiglione 61 Real Networks –RealPlayer –RealProducer –RealServer Microsoft (WMT) –WindowsMediaPlayer –WindowsMediaEncoder –WindowsMediaServer Apple –QuickTimeStreaming Server –Darwin OpenSource Le offerte
F. Castiglione 62 TCP UDP RTP (Real-Time Protocol) –IETF (internet eng. task force) –Derivazione dellUDP –RTCP (Real Time Control Protocol) RTSP (RealTime Streaming Protocol) –Real Networks I protocolli MMS (Microsoft Media Server) –Microsoft –MMSU/MMST –MSBD (Media Stream Broadcast Ditribution) HTTP –Più lento –Trasparente ai firewall
F. Castiglione 63 Videoconferenza La videoconferenza
F. Castiglione 64 Videoconferenza La videoconferenza è un metodo di comunicazione on-line che permette a due o più persone dislocate in luoghi diversi di comunicare tramite audio e video. Permette nel contempo lo scambio di documenti in formato elettronico. IP o ISDN IP o ISDN Utente 1 Utente 2 Videoconferenza punto-punto
F. Castiglione 65 Il protocollo H.323 Fornisce la base per limplementazione di comunicazioni multimediali (audio/video/dati) su reti IP Definisce i metodi di controllo delle chiamate Gestisce la banda Gestisce linterfacciamento con altre tecnologie di rete (es. ISDN)
F. Castiglione 66 Il protocollo H.323: Gli apparati Nello standard vengono identificati i seguenti componenti: –Terminali –Gateway –Gatekeeper –MCU
F. Castiglione 67 in dettaglio… Terminali: –sono i punti terminali di un collegamento multimediale. Devono supportare: –Comunicazione audio Video e dati sono opzionali –H.245 per la negoziazione –Q.931 per la segnalazione della chiamata e il setup della stessa –H.225 RAS per le interazione con il gatekeeper –RTP/RCTP per la corretta gestione dei pachetti multimediali
F. Castiglione 68 Gateway –Elementi che si frappongono nella comunicazione tra 2 terminali. –Fornisce il supporto di inoltro a conferenze con tre o più terminali –Sia hardware che software –Interfacciano i sistemi di videoconferenza che non sono aderenti allo standard H.323 (es. ISDN H.320) –Comunicazione verso terminali sulla rete telefonica pubblica (PSTN) –Comunicazione verso apparati telefonici standard o centralini (PABX) Altri apparati
F. Castiglione 69 Gatekeeper È la componente che gestisce TUTTI gli apparati H.323 che operano nella zona di competenza. Gestisce la politica sulluso della LAN e della banda Interagisce attraverso il protocollo RAS
F. Castiglione 70 MCU Fornisce il supporto di inoltro a conferenze con tre o più terminali Sia hardware che software
F. Castiglione 71 Internet multimedia protocol stack
F. Castiglione 72 Hardware e software Qualsiasi PC o MAC attualmente in vendita Sistema Operativo: Windows98 o superiori oppure Macintosh Linux in fase di sperimentazione con OpenH323
F. Castiglione 73 Economiche Facili da installare e da usare Si interfacciano benissimo con: – Microsoft NetMeeting – CUSeeMe Webcam
F. Castiglione 74 Desktop VideoConference (DTVC) Kit con scheda dedicata e telecamera Apparato costoso Software proprietario Linstallazione e la configurazione richiedono una certa esperienza Possono supportare sia ISDN che IP
F. Castiglione 75 Set – Top - Box Non necessitano di PC Si collegano ad una TV Supportano sia ISDN che IP Le versioni più evolute incorporano una MCU Apparati molto costosi Buon investimento
F. Castiglione 76 Group Conferencing System Dispositivi costosissimi per sale riunioni Includono schermo di alta qualità Sia ISDN che IP
F. Castiglione 77 MCU H.323/H.320 Gateway H.323 Bologna H.323 Roma H.320 Sito X ISDN IP Network H.323 Sito Y Multi videoconferenza
F. Castiglione 78 Fine