Capitolo 7 Reti multimediali - unich.itscozzari/informatica/old/... · 2008. 3. 18. · 7-1...

38
7-1 Capitolo 7 Reti multimediali Reti di calcolatori e Internet: Un approccio top-down 3 a edizione Jim Kurose, Keith Ross Pearson Education Italia ©2005

Transcript of Capitolo 7 Reti multimediali - unich.itscozzari/informatica/old/... · 2008. 3. 18. · 7-1...

  • 7-1

    Capitolo 7Reti multimediali

    Reti di calcolatori e Internet: Un approccio top-down

    3a edizione

    Jim Kurose, Keith RossPearson Education Italia

    ©2005

  • 7-2

    Multimedia - Qualità del servizio: di cosa si tratta?

    Applicazioni multimediali: contenuti audio e video(“applicazioni continue”)

    Le reti forniscono alle applicazioni un livello di performance adeguato per un corretto funzionamento dell’applicazione.

    QoS

  • 7-3

    Capitolo 7: obiettiviPrincìpi ❒ Classificazione delle applicazioni multimediali.❒ Identificazione dei servizi di rete necessari per le

    applicazioni.❒ Utilizzo ottimale del servizio best-effort.❒ Meccanismi per fornire QoS.

    Protocolli e architetture ❒ Protocolli specifici per il servizio best-effort.❒ Architetture per QoS.

  • 7-4

    Capitolo 7: Reti multimediali7.1 Applicazioni multimediali di rete 7.2 Streaming memorizzati7.5 Reti per la distribuzione di contenuti multimediali7.6 Oltre il best-effort

  • 7-5

    Applicazioni multimediali di rete

    Caratteristiche fondamentali

    ❒ Sensibili al ritardo:❍ Ritardo end-to-end❍ Ritardo jitter

    ❒ Ma tolleranti alla perdita: perdite occasionali causano solo marginali interferenze.

    ❒ In antitesi con i dati: lunghi ritardi possono risultare fastidiosi ma la completezza e l’integrità dei dati trasferiti risultano di fondamentale importanza.

    Classi di applicazioni multimediali:

    1) Streaming audio e video memorizzato.

    2) Streaming audio e video in diretta.

    3) Audio e video interattivi in tempo reale.

    Jitter: termine con il quale si indica la variabilità dei ritardi subita dai pacchetti dello stesso flusso.

  • 7-6

    Streaming audio e video memorizzato

    Streaming: ❒ Il contenuto multimediale è

    memorizzato sul server.❒ Viene trasmesso al client.❒ Streaming: il client può iniziare la

    riproduzione di una parte del file prima di averlo interamente scaricato.

    ❒ La riproduzione del file multimediale procede in sincronia con i tempi di registrazione originali.

  • 7-7

    Streaming audio e video memorizzato

    1. videoregistrato

    2. videoinviato 3. Video ricevuti,

    riprodotti dal cliente.

    Dat

    i cum

    ulat

    ivi

    streaming: in questo momento,il client può iniziare la riproduzionedi una parte del file audio/videoprima di averlo interamente scaricato.

    reteinvio tempo

  • 7-8

    Streaming audio e video memorizzato: interattività

    ❒ Funzionalità simili a quelle di un videoregistratore: il cliente può mettere in pausa, mandare avanti o indietro il video

    ❍ 10 sec ritardo iniziale OK❍ 1-2 sec prima che il comando abbia effetto OK❍ Spesso usato RTSP

  • 7-9

    Streaming audio e video in diretta

    Esempi:❒ Programmi radiofonici in Internet. ❒ Eventi sportivi in diretta.Streaming❒ Riproduzione buffer.❒ È tollerato un ritardo di una decina di secondi

    prima che avvenga la riproduzione. ❒ È necessaria la continuità della riproduzione.Interattività❒ Non è possibile usare l’avanzamento rapido.❒ Riavvolgimento e pausa sì!

  • 7-10

    Audio e video interattivi in tempo reale

    ❒ Requisiti del ritardo end-to-end:❍ audio: < 150 msec buono, < 400 msec accettabile

    • Comprende i ritardi a livello di applicazione (pacchettizzazione) e il ritardo di rete

    • Ritardi superiori risultano frustranti, o impediscono addirittura la conversazione

    ❒ applicazioni: telefonia Internet, video conferenze

  • 7-11

    Ostacoli alla multimedialità in Internet

    TCP/UDP/IP: servizio best-effort❒ Non offre garanzie sulla consegna, né sul ritardo

    Oggi le applicazioni multimediali in Internet utilizzano tecniche a livello di applicazioneper mitigare (quanto possibile) i ritardi

    e le eventuali perdite.

    Ma non abbiamo detto che le applicazioni multimedialirichiedono QoS e adeguati livelli di performance?

    ?? ?? ?

    ? ??

    ?

    ?

  • 7-12

    Evoluzione di Internet verso un miglior supporto alle applicazioni multimediali

    Filosofia di intergrazione dei servizi:

    ❒ Cambiamenti radicali, per fornire alle applicazioni la possibilità di prenotare larghezza di banda.

    ❒ Software nuovi e più complessi in host e router.

    Filosofia del “laissez-faire”❒ Nessun cambiamento radicale.❒ Più larghezza di banda quando

    necessario.❒ Reti per la distribuzione dei

    contenuti

    Filosofia di differenziazione dei servizi:

    ❒ Piccoli interventi, limitati ai livelli di rete e di trasporto

    ❒ Suddivisione dei datagrammi in due classi di servizio

    Qual è la vostra opinione?

  • 7-13

    Compressione audio

    ❒ Campioni di segnali analoghi a tasso costante:

    ❍ telefono: 8.000 rilevazioni al secondo

    ❍ CD musicali: 44.100 rilevazioni al secondo

    ❒ Ogni campione quantizzato, cioè arrotondato a un intero.

    ❍ es., 28=256 valori possibili di quantizzazione.

    ❒ Tutti i valori di quantizzazione sono rapprentato dallo stesso numero di bit.

    ❍ 8 bit per 256 valori.

    ❒ Esempio: 8.000 campione/sec, 256 valori di quantizzazione --> 64.000 bps

    ❒ Questo segnale digitale può essere riconvertito in un segnale analogico per la riproduzione:

    ❍ possibile perdita di qualità.

    Alcuni esempi: ❒ CD: 1.411 Mbps❒ MP3: 96, 128, 160 kbps❒ Telefonia Internet: 4 - 13 kbps

  • 7-14

    Compressione video

    ❒ Un video è una sequenza d’immagini, solitamente mostrate a un tasso costante:

    ❍ es. 24 immagini/sec❒ Un’immagine digitale

    consiste in una sequenza di pixel.

    ❒ Ogni pixel è codificato da una serie di bit.

    ❒ Due tipi di ridondanza:❍ Spaziale.❍ Temporale.

    Esempi:❒ MPEG 1 (CD-ROM) 1,5 Mbps❒ MPEG2 (DVD) 3-6 Mbps❒ MPEG4 (spesso usata in

    Internet < 1 Mbps)

  • 7-15

    Capitolo 7: Reti multimediali7.1 Applicazioni multimediali di rete 7.2 Streaming memorizzati7.5 Reti per la distribuzione di contenuti multimediali7.6 Oltre il best-effort

  • 7-16

    Streaming memorizzati

    Tecniche di streaming a livello di applicazione per ottimizzare il servizio best effort:❍ buffering lato client❍ utilizzo di UDP

    ❒ Rimozione del jitter ❒ Decompressione ❒ Correzione degli errori❒ Interfaccia in cui appaiono

    pulsanti e cursori interattivi.

    Media Player

  • 7-17

    Accesso ad audio e video tramite server web

    ❒ Audio o video sono contenuti in un unico file.

    ❒ Il file viene trasferito tramite un messaggio HTTP:❍ ricevuto per intero dal client❍ il media player riproduce il file.

  • 7-18

    Accesso ad audio e video tramite server web

    ❒ Il browser ottiene un metafile.❒ Il browser lancia il media player e passa il metafile.❒ Il media player contatta direttamente il server.❒ Il server invia il file audio/video al media player.

  • 7-19

    Invio di contenuti multimediali da server di streaming

    ❒ Questa architettura evita l’uso del protocollo HTTP tra server e media player.

    ❒ Si può anche utilizzare UDP invece che TCP.

  • 7-20

    UDP o TCP?

    UDP ❒ Il server invia a un tasso appropriato per il cliente

    ❍ In genere: tasso di invio = tasso di codifica = tasso costante❍ quindi, tasso di riempimento = tasso costante - perdita di

    pacchetti❒ Il media player ritarda la riproduzione di 2-5 secondi per

    eliminare l’eventuale jitter indotto dalla rete.

    TCP❒ Il server immette, il più velocemente possibile, il video nella

    socket TCP.❒ Il tasso di riempimento fluttua nel tempo a causa del controllo

    della congestione di TCP.❒ Maggiore ritardo di riproduzione❒ HTTP/TCP passano più facilmente attraverso i firewall

  • 7-21

    Protocollo di streaming in tempo reale: RTSP

    HTTP❒ Non prevede contenuti

    multimediali. ❒ Non è previsto il comando

    di avanzamento rapido ecc.

    RTSP: RFC 2326❒ Protocollo di streaming in

    tempo reale. ❒ Usato per il controllo della

    riproduzione: pausa, fermo immagine, ricerca in avanti e all’indietro, avanzamento rapido ecc.

    Cosa non può fare:❒ Non definisce gli schemi di

    compressione audio e video.❒ Non prescrive il modo (UDP o

    TCP) in cui i dati sono trasportati.

    ❒ Non pone limiti a come il media player memorizza i file.

  • 7-22

    RTSP: protocollo fuori bandaFTP utilizza il concetto di

    fuori banda:❒ Un file viene trasferito su

    una connessione TCP.❒ Le informazioni di controllo

    (cambio di directory, cancellazione/rinomina di file, ecc.) vengono trasferite su un’altra connessione TCP.

    ❒ I canali “in banda” e i canali “fuori banda” utilizzano un numero di porta diverso.

    Anche i messaggi RTSP sono inviati “fuori banda”:

    ❒ I messaggi di controllo RTSP usano un numero di porta diverso dal flusso multimediale: fuori banda

    ❍ Porta 554

    ❒ Il flusso dei contenuti multimediale è considerato “in banda”.

  • 7-23

    RTSP: esempio

    Scenario:❒ Il browser richiede a un server web un file.❒ Il browser lancia il media player.❒ Per consentire il controllo della riproduzione, media

    player e server si scambiano informazioni impiegando RTSP.

  • 7-24

    Metafile - esempioTwister

  • 7-25

    Iterazioni tra client e server con RTSP

  • 7-26

    Esempio di una sessione RTSP C: SETUP rtsp://audio.example.com/twister/audio RTSP/1.0 Transport: rtp/udp; compression; port=3056; mode=PLAY

    S: RTSP/1.0 200 1 OK Session 4231

    C: PLAY rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=0-

    C: PAUSE rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=37

    C: TEARDOWN rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231

    S: 200 3 OK

  • 7-27

    Capitolo 7: Reti multimediali7.1 Applicazioni multimediali di rete 7.2 Streaming memorizzati7.5 Reti per la distribuzione di contenuti multimediali7.6 Oltre il best-effort

  • 7-28

    Reti per la distribuzione dei contenuti (CDN)Distribuzione di contenuti: ❒ Distribuzione in tempo reale di

    flussi di file di notevoli dimensioni (es., video) da un singolo server di origine.

    ❒ Soluzione: replicare il contenuto a centinaia di server attraverso Internet:

    ❍ Il contenuto viene prima caricato nel server CDN.

    ❍ La CDN replica i contenuti nei server CDN

    ❍ La CDN fornisce un meccanismo per cui il contenuto richiesto da un client viene fornito dal server CDN che può farglielo pervenire nel modo migliore.

    Server CDN in Sud America

    Server di origine in Nord America

    Nodo di distribuzione CDN

    Server CDNin Europa

    Server CDNin Asia

  • 7-29

    Reti per la distribuzione dei contenuti (CDN)Distribuzione di contenuti: ❒ I fornitori di servizi come

    CNN distribuiscono i contenuti attraverso una CDN (es., Akamai).

    ❒ Ogni volta che un fornitore modifica un oggetto, provvederà a inoltrare la versione aggiornata al nodo CDN, il quale lo replica immediatamente e lo distribuisce ai server CDN.

    Server di origine in Nord America

    Nodo di distribuzione CDN

    Server CDNin Europa

  • 7-30

    CDN - Esempio

    Server di origine (www.foo.com)

    ❒ Provvede a diffondere l’oggetto base HTML

    ❒ sostituisce: http://www.foo.com/sports.ruth.gif con

    http://www.cdn.com/www.foo.com/sports/ruth.gif

    Richiesta HTTP perwww.foo.com/sports/sports.html

    Richiesta DNS per www.cdn.com

    Richiesta HTTP per www.cdn.com/www.foo.com/sports/ruth.gif

    1

    2

    3

    Server di origine

    Server DNS di competenza della CDN

    Server CDN più vicino

    Server CDN (cdn.com)❒ Distribuisce file gif.❒ Utilizza il server DNS

    server per instradare le richieste di redirezione

  • 7-31

    Ancora su CDN

    Richieste di instradamento❒ CDN crea una “mappa” che indica le distanze tra gli

    ISP foglia e i nodi CDN❒ Quando arriva una richiesta al server DNS :

    ❍ Il server determina l’ISP dal quale è arrivata la richiesta❍ Usa tabelle d’instradamento per determinare il miglior

    server CDN.

  • 7-32

    Capitolo 7: Reti multimediali7.1 Applicazioni multimediali di rete 7.2 Streaming memorizzati7.5 Reti per la distribuzione di contenuti multimediali7.6 Oltre il best-effort

  • 7-33

    Migliorare la qualità di servizio nelle reti IP

    Fin qui: si è cercato di ottenere il meglio dal servizio best-effort.In futuro: una nuova generazione di Internet con garanzie di QoS.

    ❍ RSVP: protocollo di segnalazione che consente alle applicazioni di prenotare le risorse.

    ❍ Differenziazione dei servizi: architetture per fornire differenti garanzie.

    ❍ Servizi integrati: architetture per servizi integrati.

  • 7-34

    Princìpi per fornire garanzie di QoS

    ❒ Esempio: applicazione audio a 1 Mbps, collegamento a 1,5 Mbps con applicazione FTP.

    ❍ Una raffica di pacchetti dalla sorgente FTP può congestionare il router, causando la perdita di alcuni pacchett.

    ❍ Vogliamo dare priorità ai pacchetti audio rispetto a quelli FTP.

    La marcatura dei pacchetti consente ai router di distinguerli in base alla loro classe di traffico.

    Principio 1

  • 7-35

    Principi per fornire garanzie di QoS (segue)❒ Cosa succede se un pacchetto audio viene inviato a un un tasso

    più alto rispetto a quanto dichiarato?❍ controllo: costringere la sorgente ad attenersi all’allocazione di

    banda prevista❒ Marcatura e controllo

    È auspicabile che ciascun flusso sia isolato, in modo che l’uno non subisca gli effetti negativi derivati dal comportamento non conforme degli altri.

    Principio 2

  • 7-36

    Principi per fornire garanzie di QoS (segue)

    ❒ Allocare banda fissa (non-sharable) al flusso: uso inefficiente della banda se il flusso non rispetta la sua allocazione

    È auspicabile che l’utilizzo delle risorse sia quanto più efficiente possibile anche in presenza di isolamento dei flussi.

    Principio 3

  • 7-37

    Principi per fornire garanzie di QoS (segue)

    ❒ Assioma: è impossibile supportare richieste di traffico superiore alla capacità del collegamento

    È necessario un processo di ammissione alla chiamata durante il quale vengono confrontati i requisiti di servizio dei flussi con le risorse disponibili in quel dato momento. Sa la richiesta può essere soddisfatta il flusso potrà accedere alla rete, altrimenti il suo ingresso sarà negato.

    Principio 4

  • 7-38

    Sommario dei principi di QoS