Qualità del servizio IPTV

Documenti analoghi
Codifica di canale. (dalle dispense e dalle fotocopie) Trasmissione dell Informazione

1) Codici convoluzionali. 2) Circuito codificatore. 3) Diagramma a stati e a traliccio. 4) Distanza libera. 5) Algoritmo di Viterbi

1) Hamming bound, coset, codici equivalenti

La memoria - tecnologie

Codici convoluzionali

La memoria - tecnologie

10.. Codici correttori d errore. Modulo TLC:TRASMISSIONI Codici correttori d errore

Corso di Informatica

Protocolli multimediali

- 5 - Controllo a finestra

La memoria - tecnologie

4) Teorema fondamentale della codifica di canale. 6) Definizione di codifica di canale (FEC e ARQ)

Algoritmi Randomizzati per parole di peso minimo

Introduzione alla qualità del servizio. Gruppo Reti TLC Qualità di servizio

1) Probabilità di errore di trasmissione. 2) Capacità di canale. 3) Esempi di calcolo della capacità. 4) Disuguaglianza di Fano

Teoria dell informazione

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK.

Sub-Optimal Measurement-Based CAC Algorithm

1) Codici ciclici. 2) Esempi di codici ciclici. 3) Algoritmi di codifica e decodifica. 4) Circuiti di codifica

VideoStreaming su IP

La codifica di sorgente

Codici a controllo dell errore per le memorie

Codici Lineari G = [I K P], (1)

IMPIANTI DI RICEZIONE TV

Comunicazioni Elettriche II

Profs. Roberto Cusani Francesca Cuomo

Il tema proposto può essere risolto seguendo due ipotesi:

L evoluzione di UMTS: HSDPA

E02 ESERCIZI SU MODI DI TRASFERIMENTO

Tipi di comunicazione

Capitolo 7 Strato Fisico- Codici correttori d errore e capacità di canale

ATM Asynchronous Transfer Mode

CODIFICA CANALE. Comunicazione con successo: ricevitore ottiene output sorgente. Rumore. Sorgente Cofificatore Canale. Decodificatore.

Architettura per multimedia

Codici binari decimali

Classificazione delle applicazioni multimediali su rete

Tecniche di protezione dell informazione

Sistemi RAID. Motivazioni Concetti di base Livelli RAID. Sommario

La memoria - tecnologie

Numeri interi. Laboratorio di Calcolo Paola Gallo

R. Cusani, F. Cuomo: Telecomunicazioni - DataLinkLayer: Gestione degli errori, Aprile 2010

Call Admission Controll (CAC)

( ) le colonne della matrice dei coefficienti, con. , risulta A 3 = A 1 + 4A 2 + 4A 5, A 4 = A 1 + A 2,

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Metodi iterativi per sistemi lineari

Tecniche di commutazione

Controllo e correzione degli errori

SCUOLA DOTTORALE DI INGEGNERIA INGEGNERIA DELL ELETTRONICA BIOMEDICA, DELL ELETTROMAGNETISMO E DELLE TELECOMUNICAZIONI XXIII CICLO

Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio

di Napoli Prof. Antonio Fratini

Sistemi di rilevazione e correzione automatica di errori di trasmissione

Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni. Esercitazioni del corso di. Telecomunicazioni

ESERCIZI SVOLTI. Eserczio

Reti di Telecomunicazione Lezione 2

01GSZ Tecniche di protezione dell informazione

Progettazione di Algoritmi

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente

Le visioni sulle architetture della Televisione su Internet degli organismi rappresentativi degli attori del settore

Livello di trasporto: meccanismi trasferimento dati affidabile, TCP

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Elettronica digitale: cenni

Roberto Maieli La trasmissione dell informazione

Introduzione alla codifica entropica

Reti di Calcolatori a.a

1 Esercizio - caso particolare di ottimalità

Introduzione. Obiettivo: Sommario: Introduzione alle reti di telecomunicazioni approccio:

3.4 Metodo di Branch and Bound

Internet (- working). Le basi.

Reti logiche (2) Circuiti sequenziali

Protocolli e Architetture. Dr. Greco Polito Silvana

1. Introduzione alle Reti di TLC

CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)

La modulazione numerica

Digital Video Broadcasting

L informazione numerica

Cenni di teoria dell informazione

5.3 Metodo dei piani di taglio

Principi di Teoria dei Codici

Statistica4-29/09/2015

CENTRALITA nella RETE

Networking e Reti IP Multiservizio

Sintesi di Reti Sequenziali Sincrone

Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE

1.1 Servizi e reti di telecomunicazioni

Corso di Applicazioni Telematiche

Algoritmi di ricerca locale

La codifica digitale

Reti di Calcolatori:

Fondamenti di Reti di Telecomunicazioni Prof. Guido Maier IV appello 8 febbraio 2010

Sicurezza delle informazioni

CAMPIONAMENTO E RICOSTRUZIONE. Y(f) Y(f-15) Y(f+15) f[hz] Yc(f) Y(f) Y(f-17.5) Y(f+17.5) Yc(f) Esercizio 1

Prefazione all edizione italiana Descrizione dei contenuti. PARTE I Introduzione e modelli 1. Capitolo 1 Introduzione 3

La codifica video. Il codificatore ibrido. Principi di base Compressione spaziale Tecniche di predizione temporale Stima e compensazione del movimento

Routing IP. IP routing

1. i limiti di p che garantiscono un funzionamento stabile del sistema ;

Descrizione mediante linguaggio dei segni sui canali DTT

Trasmissione Seriale e Parallela. Esempio di Decodifica del Segnale. Ricezione e Decodifica. Tecniche di Comunicazione di Dati Digitali

RETI DI TELECOMUNICAZIONE

Automa a Stati Finiti (ASF)

Transcript:

Qualità del servizio IPTV Elena Mammi emammi@fub.it Fondazione Ugo Bordoni Roma, 2 Aprile 2009

Sommario Introduzione SMPTE 2022-1 Codici a fontana Codici LT Codici Raptor 2

Introduzione Il traffico IPTV ha requisiti di banda, ritardo, jitter e perdita di pacchetti molto stringenti. Gli utenti si aspettano un alta qualità del servizio, paragonabile alla qualità della TV analogica tradizionale. Queste caratteristiche non possono essere garantite da una gestione best-effort. 3

Tipi di perdite Burst sparso: periodo che inizia e finisce con un pacchetto perso o scartato, durante il quale vengono soddisfatti alcuni vincoli; tra questi il vincolo per il quale all interno di un burst sparso devono occorrere meno di Gmin pacchetti consecutivi ricevuti. Il valore di Gmin viene scelto in maniera tale che il tasso minimo effettivo di perdita, all interno di un burst, corrisponda al più basso tasso di perdita dei pacchetti, per il quale si presenta qualche distorsione visibile all interno del media stream decodificato. Sono periodi, dell ordine di alcuni secondi, in cui si ha un elevato tasso di perdita di pacchetti. {CAUSA: congestione di rete} 4

Tipi di perdite Burst continuo: periodo durante il quale vengono persi tutti i pacchetti. {CAUSA: guasti nella rete IP} Perdite isolate: pacchetti persi isolati. {CAUSA: bit error} Gli stream video sono molto sensibili alla perdita di informazione. 5

Latenza e jitter La latenza è il tempo necessario impiegato da uno o più pacchetti a raggiungere un altro server in rete. Il jitter è la variazione nel tempo degli arrivi dei pacchetti (ritardo). In generale, valori ragionevoli di jitter e di ritardo end-to-end non sono problematici grazie ai buffer de-jitter dei Set Top Box (STB), dato che la dimensione dei buffer de-jitter viene stabilita in maniera tale da essere compatibile con le prestazioni degli elementi di rete e i decoder video. 6

Tabelle e requisiti Le tabelle che verranno presentate in seguito mostrano i requisiti di perdita e jitter nel trasporto dei pacchetti IP per ottenere degli obiettivi soddisfacenti di qualità del servizio. Parametri minimi raccomandati a livello di trasporto per una QoE soddisfacente per i servizi SDTV codificati MPEG-2 7

Tabelle e requisiti Parametri minimi raccomandati a livello di trasporto per una QoE soddisfacente per i servizi HDTV codificati MPEG-2 8

Sommario Introduzione SMPTE 2022-1 Codici a fontana Codici LT Codici Raptor 9

Forward Error Correction Il Forward Error Correction (FEC) ai livelli applicazione e trasporto generalmente fa riferimento alle tecniche di correzione pacchetti cancellati. In queste tecniche, una quantità di dati che viene inviata in totale è superiore allo stream che deve essere comunicato, con la proprietà che lo stream può essere ricostruito da qualsiasi sottoinsieme di dati trasmessi sufficientemente ampio. Lo stream diventa così resistente ad un determinata quantità di perdita. 10

SMPTE 2022-1 1. Si basa sul Generic Forward Error Correction RFC2733. 2. È sviluppato per stream RTP per contrastare le perdite IP. 3. I pacchetti FEC sono inseriti nei pacchetti RTP. 4. Si colloca a livello applicativo. 11

Base: principio del FEC su una riga Stream da proteggere Pkt 1 Pkt 2 Pkt 3 Pkt 4 Pkt 5 Pkt n Pkt n+1 Pkt n+2 Pkt n+3 FEC 1 FEC (n+2)/3 Pkt 1 Pkt 2 Pkt 3 FEC 1 Pkt 4 Pkt 5 Pkt n Pkt n+1 Pkt n+2 FEC (n+2)/3 Stream con pacchetti FEC inseriti 12

Vantaggi & Svantaggi + FEC molto semplice. + Meccanismo con bassa latenza. - Può proteggere solamente un singolo pacchetto perso. 13

Panoramica sul FEC 1D colonna stream da proteggere 0 1 2 L-1 L L+1 L+2 2L-1 2L 2L+1 2L+2 3L-1 D righe 3L Pkt 3L+1 3L+2 4L-1 (D-1)L (D-1)L+1(D-1)L+2 DL-1 stream combinati FEC C 0 FEC C 1 FEC C 2 FEC C L-1 L colonne 14

Esempi di correzioni avvenute con successo con la tecnica 1D Uno e un solo pacchetto dati perso per colonna Un burst di L pacchetti dati consecutivi persi 0 1 2 3 4 0 1 2 3 4 5 6 7 8 9 10 11 6 7 8 9 14 15 16 17 16 17 18 19 20 21 22 23 18 19 20 21 22 23 24 25 27 28 29 24 25 26 27 28 29 30 31 32 33 34 35 30 31 32 33 34 35 FEC 0 FEC 1 FEC 2 FEC 4 FEC 5 FEC 0 FEC 1 FEC 2 FEC 3 FEC 4 FEC 5 15

Esempi di correzioni fallite con la tecnica 1D Due pacchetti dati persi sulla medesima colonna Un pacchetto dati perso e il proprio pacchetto FEC associato perso 0 1 2 3 4 5 0 1 2 3 4 5 6 12 7 13 8? 9 15 10 16 11 17 6 12 7 13 8 14 9 10 16 11 17 18 24 19 25 20? 21 27 22 28 23 29 18 24 19 25 20 26 21 27 22 28 23 29 30 31 32 33 34 35 30 31 32 33 34 35 FEC 0 FEC 1 FEC 2 FEC 3 FEC 4 FEC 5? FEC 0 FEC 1 FEC 2 FEC 4 FEC 5 16

Panoramica sul FEC 2D stream da proteggere 0 1 2 L-1 L L+1 L+2 2L-1 FEC R 0 FEC R 1 2L 2L+1 2L+2 3L-1 3L Pkt 3L+1 3L+2 4L-1 FEC R 2 FEC R 3 D righe (D-1)L (D-1)L+1(D-1)L+2 DL-1 FEC R D-1 FEC C 0 FEC C 1 FEC C 2 FEC C L-1 L colonne stream combinati 17

Esempio di correzioni avvenute con successo con la tecnica 2D (1/2) 1. Matrice 6x6 di dati con 9 pacchetti di dati persi e un pacchetto FEC perso. 2. I 9 pacchetti persi verranno recuperati con successo. 18

Esempio di correzioni avvenute con successo con la tecnica 2D (2/2) 0 6 12 18 24 1 7 13 19 2 3 4 5 FEC 0 8 9 10 11 14 15 16 17 20 21 22 23 25 26 27 28 29 30 31 32 33 34 35 FEC 1 FEC 3 FEC 4 FEC 5 FEC 0 FEC 1 FEC 2 FEC 3 FEC 4 FEC 5 19

Esempi di correzioni fallite con la tecnica 2D Un pacchetto dati perso e i relativi pacchetti FEC persi Quattro pacchetti dati persi posizionati esattamente su due righe e due colonne 0 1 2 3 4 5 FEC 0 0 1 2 3 4 5 FEC 0 6 12 18 7 13 19 8 14 20 9? 21 10 16 22 11 17 23 FEC 1 FEC 3 6 12 18 7 13 19 8 14 20 9? 10 11 17 23 FEC 1 FEC 2 FEC 3 24 25 26 27 28 29 FEC 4 24 25 26 27 28 29 FEC 4 30 31 32 33 34 35 FEC 5 30 31 32 33 34 35 FEC 5 FEC 0 FEC 1 FEC 2 FEC 4 FEC 5 FEC 0 FEC 1 FEC 2 FEC 3 FEC 4 FEC 5 20

Limitazioni Mittenti e destinatari supporteranno tutte le combinazioni di valori di L e di D che soddisfano i seguenti limiti: 1 L 20 4 D 20 L D 100 Se L 4 allora il dispositivo dovrà supportare due stream FEC. 21

Introduzione codici a fontana,, LT, Raptor (1/3) CODICI A FONTANA CODICI LT CODICI RAPTOR I codici LT sono la prima realizzazione pratica dei codici a fontana. I codici Raptor sono un evoluzione dei codici LT. 22

Introduzione codici a fontana,, LT, Raptor (2/3) Codici rateless (con un ritmo non fissato a priori dai parametri del codice). Canale erasure (con cancellazione). Capacità del canale: 1-p. 23

Introduzione codici a fontana,, LT, Raptor (3/3) Il canale trasmissivo quindi che si considera è il Bynary Erasure Channel (BEC). L'alfabeto d'ingresso di tale canale è binario (quindi gli ingressi del canale sono bit). L'alfabeto di uscita è invece costituito dai simboli 0 ed 1 e da un elemento addizionale chiamato e (cancellazione). Ciascuna cifra binaria è trasmessa correttamente (con probabilità 1 -p) o cancellata (con probabilità p). Una generalizzazione di tale canale è il canale PEC (Packet Erasures Channel). L'unica differenza è che gli alfabeti d'ingresso e di uscita non sono costituiti da bit, ma da pacchetti di bit. 24

Sommario Introduzione SMPTE 2022-1 Codici a fontana Codici LT Codici Raptor 25

Codici a fontana Producono per un dato insieme di K simboli in ingresso un flusso potenzialmente infinito di simboli in uscita. I simboli in uscita sono ottenuti in maniera indipendente uno dall altro e in maniera casuale. L algoritmo di decodifica può recuperare K simboli d ingresso da un insieme di K(1-ε) simboli d uscita con un elevata probabilità. 26

Codice random linear fountain (1/5) Il file è composto da K pacchetti sorgente Le fasi di codifica sono scandite da un clock. In ciascun ciclo di clock (n) il codificatore produce K bit random (Gkn). Il pacchetto trasmesso è: s1, s2,, s K ( ) t K = s G n k kn k = 1 27

Codice random linear fountain (2/5) 28

Codice random linear fountain (3/5) Si indica con G il frammento di matrice generatrice KxN. N Se, allora il ricevitore non possiede abbastanza informazioni per recuperare il file. N < = K K Se, allora è plausibile che il ricevitore possa recuperare il file. 29

Codice random linear fountain (4/5) Se la matrice G di dimensioni KxK è invertibile, il ricevitore può calcolare l inversa della matrice stessa e recuperare i pacchetti sorgente: s N 1 k = tng nk n= 1 La probabilità che una matrice binaria di dimensioni KxK casuale sia invertibile è il prodotto di probabilità, ognuna delle quali è la probabilità che una nuova colonna di G sia linearmente indipendente dalle precedenti colonne. ( K ) ( (K 1) 1 2 *1 2 )* *1 ( 1/8*1 ) ( 1/4*1 ) ( 1/2) 30

Codice random linear fountain (5/5) N= K+ E Se N è leggermente più grande di K, ovvero (con E che indica il piccolo numero di pacchetti in eccesso) allora si deve calcolare la probabilità che la matrice binaria di dimensioni KxN contenga una matrice di dimensioni KxK invertibile. 1 δ Tale probabilità è, dove è la probabilità che il ricevitore non sia in grado di decodificare il file una volta ricevuti gli E pacchetti in eccesso. Per qualsiasi K, la probabilità di fallimento è limitata superiormente da:. δ E 2 δ ( ) E 31

Sommario Introduzione SMPTE 2022-1 Codici a fontana Codici LT Codici Raptor 32

Codici LT (1/6) Sono la prima realizzazione pratica dei codici a fontana. Mantengono le buone prestazioni dei codici a fontana lineari casuali. Riducono drasticamente le complessità di codifica e di decodifica. 33

Codici LT (2/6) Codificatore Si sceglie in modo casuale il grado del pacchetto da una distribuzione di gradi ρ ( d ); la scelta appropriata di tale distribuzione dipende dalla dimensione K del file sorgente. Il grado del pacchetto codificato equivale alle connessioni che ha esso con i pacchetti sorgente. Si scelgono, uniformemente a caso, pacchetti di ingresso distinti, e si setta il pacchetto codificato t n pari alla somma bit a bit, modulo 2, dei pacchetti. d n d n d n 34

Codici LT (3/6) Se un pacchetto codificato ha grado d significa che esso è connesso a d pacchetti sorgente. Pacchetti codificati occasionalmente dovrebbero avere grado elevato (cioè prossimo a K), in modo da assicurare che non ci siano pacchetti sorgente non connessi a nessun pacchetto codificato; nel caso invece di parecchi pacchetti codificati, questi dovrebbero avere grado basso, in maniera tale che il numero totale di operazioni di addizione effettuate dal decodificatore rimanga basso. 35

Codici LT (4/6) Decodificatore Si trova un nodo check pacchetto sorgente. Si pone s = t. k s k n Si somma a tutti i nodi check s k per tutti gli n per cui G = 1. s k che è connesso ad un solo che sono connessi a Si rimuovono tutti gli edge connessi al pacchetto sorgente. t n nk Si ripete il primo punto finché non vengono determinati tutti gli. s k t n 36

Codici LT (5/6) Esempio di una decodifica di tipo LT: DEVO DETERMINARE I SEGUENTI VALORI: 1 0 1 37

Codici LT (6/6) 1 0 1 S1 S2 S3 x X X 1 X X X 0X X X 1 + + + + 1 10 1 10 x x x x x x x 38

Complessità computazionale La complessità del processo LT dipende dal numero di edge presenti nel grafo. Affinché il processo di decodifica abbia successo, ciascun pacchetto sorgente deve avere almeno un edge. Il codificatore crea edge tra pacchetti codificati e pacchetti sorgente in maniera random. Il numero di edge dovrà essere dell ordine di KlnK, quantità che deriva dalla distribuzione dei gradi. Idealmente, per evitare ridondanze, il grafo ricevuto dovrebbe avere la proprietà di contenere soltanto un check node di grado uno ad ogni iterazione. 39

Complessità computazionale Idealmente, per evitare ridondanze, il grafo ricevuto dovrebbe avere la proprietà di contenere soltanto un check node di grado uno ad ogni iterazione. Questo comportamento ideale è ottenuto per mezzo della distribuzione solitona ideale. ( 1) ρ ( 1) = 1/K 1 ρ ( d) = per d = 2, 3,, K d d Il grado atteso nel caso di questa distribuzione è lnk. 40

Sommario Introduzione SMPTE 2022-1 Codici a fontana Codici LT Codici Raptor 41

Codici Raptor (1/5) Riescono a migliorare le prestazioni dei codici LT, ottenendo dei tempi di codifica e di decodifica che variano linearmente con la dimensione del file. La loro idea base è quella di rilassare le condizioni dei codici LT. Concatenano un codice LT indebolito e un codice esterno che compensa i gap nel codice LT. Possono generare tanti simboli codificati da un blocco sorgente quanti sono necessari per contrastare gli effetti della perdita dei pacchetti. 42

Codici Raptor (2/5) Usano un codice LT con un grado medio circa pari a 3. Con il grado medio basso la fase di decodifica diventa più leggera. Una frazione dei pacchetti sorgente non sarà connessa al grafo e quindi non sarà recuperata dal codice LT. Si ovvia al problema effettuando una precodifica con un codice esterno eccellente che può correggere le cancellazioni. 43

Codici Raptor (3/5) 16 simboli sorgente; 20 simboli intermedi; 18 simboli di uscita; grado medio 3. 44

Codici Raptor (4/5) I codici Raptor si possono dividere in due grandi gruppi: codici sistematici e codici non sistematici. NB: un codice sistematico è un codice nel quale i simboli sorgente sono inclusi come parte dei simboli codificati trasmessi dallo stesso blocco sorgente. Tale tipo di codice lascia i dati sorgente inalterati; da ciò si deriva che è possibile processare i dati ricevuti anche da parte di terminali che non hanno implementato un decodicatore FEC. 45

Codici Raptor (5/5) I codici Raptor non sistematici hanno come input alla pre-codifica i simboli sorgente. I codici Raptor sistematici non hanno come input alla pre-codifica i simboli sorgente, in quanto questi vengono moltiplicati prima con l inversa della matrice generatrice del codice Raptor nonsistematico. 46

Bibliografia ITU-T IPTV Focus Proceedings, Part II.2 QoS and Performance Aspects, 2008. SMPTE specification 2022-1: "Forward Error Correction for Real-time Video/Audio Transport Over IP Networks". D.J.C. MacKay, Fountain Codes, IEE Proceedings- Communications Volume 152, December 2005. M. Luby, LT Codes, Proc. 43rd Ann. IEEE Symp. on Foundations of Computer Science, November 2002. A. Shokrollahi, Raptor codes, Technical report, 2003. 47