Università degli studi di Pisa
Ingegeria Informatica
Applicazione di videoconferenza in ambiente
Multicast con supporto per il protocollo di
controllo di congestione RLC
Giansalvo Gusinu
Relatori: Prof. Luigi Rizzo , Prof. Luciano Lenzini
1
Sommario
•
•
•
•
•
Caratteristiche videoconferenza
Videoconferenza e Internet
Video gerarchico
Il transcoder nlvt
Architettura dell’applicazione
2
Caratteristiche videoconferenza
•
•
•
•
•
Molte informazioni da trasmettere
Ridondanza dei dati
Trasmissione in tempo reale
Un trasmettitore, tanti ricevitori
Qualità del video medio-bassa
3
Soluzioni adottate
• Compressione dei dati trasmessi
• Nessun meccanismo per il recupero
degli errori
• Protocollo Multicast per la
trasmissione dei dati
4
Scenario Internet (1)
MBone
Trasmettitore
Gateway
ISDN
? kbit/s
64 kbit/s
Router
MBone
500 kbit/s
Rete locale
10 Mbit/s
Backbone
5
Eterogeneità
Problemi:
• Congestione dei link con banda disponibile
inferiore a quella trasmessa;
• Sottoutilizzo dei link con banda superiore a
quella trasmessa.
Soluzione:
Trasmetto più segnali.
6
Simulcast
Si trasmettono più copie indipendenti del video con
banda diversa; ogni ricevitore sceglie il canale con la
banda migliore che può ricevere.
Semplice da realizzare, ma introduce troppa ridondanza:
spreca banda sui link a comune tra ricevitori collegati a
canali diversi.
RX 1
128 Kbit/s
TX
256 Kbit/s
128 Kbit/s
256 Kbit/s
il ricevitore n.2
non utilizza appieno
il collegamento
256 Kbit/s
RX 2
7
Video gerarchico (1)
Trasmettitore:
Trasmette porzioni diverse del video su
canali diversi in modo che la qualità
aumenti con il numero di canali.
Ricevitore:
Riceve tanti canali quanti rientrano nella
banda disponibile fino al trasmettitore.
RX 1
128 Kbit/s
TX
ogni ricevitore sfrutta
tutta la banda disponibile
256 Kbit/s
128 Kbit/s
128 Kbit/s
256 Kbit/s
RX 2
8
Video gerarchico su Internet
MBone
Trasmettitore
Max
10 Mbit/s
Gateway
ISDN
64 kbit/s
Router
MBone
500 kbit/s
Rete locale
10 Mbit/s
Backbone
9
L’applicazione nlvt
nlvt (New Layered Video Transcoder) è un transcoder per
flussi di videoconferenza.
Sorgente
Ricevitore Ricevitore
Ricevitore
Ricevitore
MBone
nlvt
(ripetitore)
sul gateway
Ricevitore
nlvt
(assemblatore)
sul gateway
nlvt ripetitore riceve un video codificato
nlvt assemblatore riceve la
H.261/RTP dalla sorgente e lo ritrasmette codifica gerarchica e ricostruisce
codificato gerarchicamente su Mbone.
un segnale unico
10
Video gerarchico (2)
Come spezzare il video su più canali?
Codifica gerarchica
Quanti canali ricevere?
Trasmissione gerarchica
11
Codifica gerarchica (1)
• Qualità incrementale
• Controllo della banda e del frame rate
• Selezione dei blocchi
12
Codifica gerarchica (2)
livello
1s
4 livelli
8 fps
32 Kbpf
512 Kbit/s
4(alto)
3
Il livello alto non
incrementa il frame rate,
ma solo la risoluzione.
2
1 (base) 32
kbit
1
2
3
4
5
6
7
8
frame
L’immagine bufferizzata è inviata alternativamente sui canali
secondo una sequenza prestabilita.
La banda totale è pari a quella della sorgente; la banda aggregata
raddoppia ad ogni livello.
Il frame rate totale è scelto dall’utente, raddoppia ad ogni livello.
13
Selezione dei blocchi
livello
qualità normale
bassa qualità
4(alto)
3
Sul livello alto si trasmette un
raffinamento dell’immagine,
negli altri livelli il segnale può
essere degradato.
2
1 (base)
1
2
3
4
frame
I frame sono elaborati a blocchi di 8x8 pixel.
Si sfrutta la ridondanza temporale: i blocchi scelti sono quelli che hanno
subito variazioni.
Se la banda non è sufficente si invia con una risoluzione inferiore.
14
Trasmissione gerarchica: RLC
Algoritmo eseguito dai ricevitori:
• in caso di congestione abbandona un canale;
• se aumenta la banda aggiungi un canale.
livello
Congestione
4(alto)
3
2
1 (base)
tempo
15
Architettura dell’applicazione
TRANSCODER:
inizialializzazione;
UI: interazione con l’utente;
interfaccia grafica nlvtgui
Transcoder
utente
Ui
H261
H261: frame buffer e procedure
di codifica/decodifica H261;
DemuxQ
Scheduler
DEMUXQ: coda di demultiplexing
dei frame per la ricostruzione del
segnale completo;
M lay
Slay
SCHEDULER: controllo della
banda e del frame rate, scelta dei
blocchi da inviare;
SLAY: interfaccia verso la
sorgente video e I ricevitori;
nlvt
Rlc
LayeredQ
librlc
ripetitore
librerie e
sistema
assemblatore
MLAY: interfaccia verso la rete;
RLC e LAYEREDQ: moduli di integrazione del controllo di congestione RLC.
16
Conclusioni
E’ stato illustrato un sistema efficente basato sul
transcoder nlvt per la trasmissione di videoconferenza su
Internet con caratteristiche di:
• scalabilità: indipendenza dal numero dei ricevitori;
• compatibilità: codifica video standard H.261/RTP;
• architettura modulare;
• bassa complessità.
17
Scarica

Applicazione di videoconferenza in ambiente Multicast con