View
215
Download
0
Category
Preview:
Citation preview
1
Reti di Trasporto
Ing. Stefano Salsano
AA2006/07 - Blocco 6
2
Programma del corsoProgramma del corso
• Rete di accesso e rete di trasporto • Tecniche di multiplazione, PCM, PDH • SDH • Evoluzione tecnologie per reti per dati • ATM • IP su ATM • MPLS • Trasporto voce su IP
• Esercizi, routing IP, OSPF, OSPF-TE
3
VocalGateway
Router
PSTN
GSM
ISDN
PSTN
GSM
ISDNInternet/Intranets
(IP based packet networks)
Voice over IP, IP Telephony, Internet TelephonyVoice over IP, IP Telephony, Internet Telephony
Circuit switchedvoice networks
“Phone-to-phone”
“PC-to-phone”o “IP-to-phone”“PC-to-PC”
o “IP-to-IP”
Circuit switchedvoice networks
Router
4
La sigla VoIP (“Voce su IP” o “Voice over IP”) rappresenta l’insieme delle
tecniche che consentono di trasferire il segnale vocale su una rete IP.
Si utilizzano anche le denominazioni “IP telephony” o “Internet telephony”. Le
tre denominazioni sono spesso usate come sinonimi, ma...
“Voice over IP”: supporto di comunicazioni vocali usando il protocollo IP su
Internet o su delle Intranet. E’ il termine più generale, il percorso dei flussi vocali
puoi essere intereramente o parzialmente su una rete IP
Se si usa “IP telephony” o “Internet telephony” vuol dire che almeno uno dei
terminali deve stare su IP, il servizio non è quello della rete telefonica
tradizionale (PSTN).
In particolare “Internet Telephony” rappresenta un servizio sulla rete Internet
(best-effort), mentre “IP telephony” è in teoria più generico, ma è tipicamente
usato per un servizio offerto su una Intranet o comunque da un “provider”.
5
Vi sono diversi scenari di utilizzo della voce su IP: “Phone-to-phone”, “PC-to-
Phone” (detto anche “IP-to-phone”), “PC-to-PC” (detto anche “IP-to-IP”).
Lo scenario “Phone-to-phone” prevede che ci siano due telefoni tradizionali
(ossia su tecnologia a circuito) che parlino tra di loro. La tecnologia a circuito
può essere la PSTN, la rete cellulare, oppure un centralino aziendale (PABX)
tradizionale. Una parte del flusso vocale tra i due telefoni è trasferita utilizzando
la voce su IP, idealmente senza che i terminali se ne accorgano. Ad esempio le
chiamate interurbane nella rete di Telecom Italia da pochi anni viaggiano su un
“backbone” IP per quanto riguarda il trasporto tra centrali.
Lo scenario prevede che vi siano degli apparati detti “gateway” che convertano la
chiamata a circuito in un flusso di pacchetti e viceversa.
6
Lo scenario “PC-to-PC” rappresenta una comunicazione che viaggia interamente
su reti IP. Viene indicato in questo modo perché originariamente questo scenario
si realizzava tra due PC utilizzanti un software per fare la co/decodifica della
voce e per inviare e ricevere i pacchetti vocali sulla rete IP (e cuffia e microfono
per parlare). Attualmente è sempre possibile realizzare la comunicazione in
questo modo, ma sono disponibili anche telefoni dalla forma tradizionale che
operano utilizzando la voce su IP. Per questo si può indicare come scenario “IP-
to-IP”. Ad esempio nelle aziende che implementano centralini con Voce su IP, i
telefoni VoIP sostituiscono il telefono tradizionale sulle scrivanie dei dipendenti.
Lo scenario “PC-to-phone” prevede che uno dei due terminali sia su una rete IP,
mentre l’altro sia in una rete a circuito. Anche in questo scenario è ovviamente
necessaria la presenza di un elemento “gateway” che faccia parlare la rete IP con
la rete a circuito.
7
GSM
Scenari VoIPScenari VoIP
IP network
PSTN PSTN
Phone-to-phone
PC-to-PC(IP-to-IP)
PC-to-phone(IP-to-phone)
Gateway Gateway
8
VoIP general architectureVoIP general architecture
System Management
PSTN/IP Interworking
SpeechRepresentation
And Coding
Packet Transport
TelephoneCall
Control
Requirements: Latency, Packets lossLimited Delay, Jitter
Signaling Protocol and Service Transparency regardless the used technology
Security, Addressing,AccountingVoice coding and
packetization
PSTN/IP Interworking: Gateways between networks
9
L’architettura di un sistema VoIP può essere decomposta in tre piani diversi: il
primo contiene gli elementi strettamente necessari per una comunicazione VoIP
in ambito puramente IP. Il secondo considera gli aspetti di interlavoro tra i
sistemi VoIP e la telefonia a circuito, il terzo include tutti gli aspetti di “gestione”
del servizio come la sicurezza, la misura dell’uso del servizio, la fatturazione.
A sua volta il primo piano può essere diviso in:
- Codifica e decodifica del segnale vocale
- Segnalazione per l’instaurazione e l’abbattimento delle “sessioni”
- Trasporto dei pacchetti IP con la qualità necessaria
10
VoIP general architectureVoIP general architecture
Co-decodificadella voce
Co-decodificadella voce
TrasportoIP
Segnalazione
11
Codifica della voceCodifica della voce
• La codifica della voce» Si passa dai 64 kb/s della codifica PCM G.711 a bit rate inferiori
es. 13 kb/s (gsm), 8 kb/s (G729), 5.3 kb/s (G723)
• Si possono avere codifiche a qualità migliore dellavoce telefonica tradizionale (es. Skype)
» “Wideband VoIP sampling” @ 16khz
» Skype has a proprietary codec, Speex is open source
12
Codifica della voceCodifica della voce
yearyear
13
La codifica della voce a pacchetto può essere fatta utilizzando diversi algoritmi di
codifica (basta che trasmettitore e ricevitore siano concordi!!) che differiscono
per qualità della voce, complessità elaborativa, capacità di trasporto richiesta
(bit/s) ritardo che introducono (ms).
La codifica “di base” è quella PCM che come è noto richiede 64kb/s. Tale codifica
è detta anche G.711 dal nome della raccomandazione ITU che la specifica.
Esempi di altre codifiche sono rappresentate nella figura precedente.
I valori di ritmo binario (bit/s) riportati nella figura si riferiscono al bit/rate del
flusso vocale al netto degli overhead introdotti dai protocolli utilizzati per
trasportarlo. (IP, UDP e vedremo RTP).
14
La codifica vocale introduce dei ritardi:
- Processing delay: il tempo che il coder impiega per effettuare l’operazione di
codifica. Questo tempo ovviamente dipende dal tipo di algoritmo di compressione
utilizzato, dall’implementazione dello stesso e dalla potenza di calcolo della
macchina. Questo tipo di ritardo è in generale trascurabile rispetto agli altri due.
- Frame size delay: per effettuare la codifica il coder ha bisogno di collezionare
una serie di campioni in un buffer per poi elaborarli. Ovviamente questo buffer
introduce un certo ritardo, detto frame size delay, che dipende esclusivamente
dal tipo di algoritmo di codifica utilizzato.
- Look ahead delay: per migliorare la qualità della codifica, alcuni algoritmi
collezionano anche alcuni campioni vocali del frame successivo introducendo
altro ritardo, il cosiddetto look ahead delay.
15
Trasporto nei pacchetti IPTrasporto nei pacchetti IP
• IP: Internet Protocol» Intestazione IP: 20 bytes (indirizzo IP di origine, indirizzo IP di
destinazione …)
• UDP: User Datagram Protocol» nessuna ritrasmissione, nessun controllo di flusso (a differenza del TCP!)
Intestazione UDP: 8 bytes (port identifier, …)
• RTP: Real Time Protocol» Intestazione RTP: 12 bytes
• Payload: flusso vocale o multi-mediale condification (esempio20 bytes ogni 20 ms)
IP UDP RTP Payload
40 bytes 20 bytes
16
Voice over IP: headers overheadVoice over IP: headers overhead
V=2 P X CC M PT Sequence Number
Time Stamp
Synchronization SouRCe (SSRC) identifier
Source Port Destination Port
Message Length Checksum (optional)
Source Address
Destination Address
Version HLen TOS Total Length
Identification F Fragment Offset
TTL Protocol Header Checksum
Payload
IP Header
UDP Header
RTP Header
20 bytes
8bytes
12 Bytes
17
Codifica della voceCodifica della voce
• Il trasporto su IP introduce vari overhead: es. 29 kb/s (gsm), 24 kb/s (G729), 21.3 kb/s (G723)
• La soppressione del silenzio o “Voice Activity Detection” (VAD) ci riporta bit rates medi intorno a:
es. 13 kb/s (gsm), 11 kb/s (G729), 9,5 kb/s (G723)
18
Il Voice Activity Detection consiste nel rilevare se una sorgente vocale è attiva o
in silenzio e nel trasmettere il flusso vocale solo se la sorgente è attiva. Dato che in
una conversazione normalmente uno dei due interlocutori parla e l’altro ascolta
(e in più ci sono degli intervalli in cui entrambi sono silenti), si riesce a ridurre
molto il bit rate (fino al 40% del valore di una trasmissione “continua”).
Dato che la sensazione di silenzio all’altro capo può disturbare (non si ha la
percezione che la chiamata sia ancora attiva) si può aggiungere a destinazione il
cosiddetto “confort noise” o “rumore di conforto”, che è un rumore fittizio
generato a destinazione.
19
Il trasporto dei pacchettiIl trasporto dei pacchetti
• Il trasporto dei pacchetti» Trasferisce i flussi vocali da un utente all’altro utilizzando la rete IP
e in particolare i protocolli: RTP, UDP, IP
• È necessario che siano rispettati dei vincolirelativamente alla perdita, al ritardo e alla variabilitàdel ritardo (jitter) – ossia controllare la “QoS” (Qualitàdel Servizio)
» Questi meccanismi non sono integrati direttamente nellearchitetture per la VoIP (a differenza di quanto accade nella retetelefonica)
20
• I problemi per il trasporto della voce sono:loss (perdita)
delay (ritardo)delay variation, detta anche “jitter” (Variazione del ritardo – jitter)
• Questi inconventi hanno un impatto negativo sulla qualità dellavoce
• Per misuarare la qualità della voce si utilizza una misura“soggettiva”, detta “Mean Opinion Score” (MOS). Il MOS siottiene facendo ascoltare un flusso vocale ad un largo insiemedi “giudici” che ne danno una valutazione.
21
Requisiti per il trasporto della VoceRequisiti per il trasporto della Voce
21
Rating Speech Quality Level of Distortion
5 Excellent Imperceptible
4 Good Just perceptible, not annoying
3 Fair Perceptible, slightly annoying
2 Poor Annoying but not objectionable
1 Unsatisfactory Very annoying, objectionable
MOS of 4.0 = MOS of 4.0 = ““Toll QualityToll Quality””
ossiaossia la la qualitqualitàà didi unauna chiamatachiamata ““interurbanainterurbana””..N.B. Toll N.B. Toll significasignifica ““a a pagamentopagamento””, la , la notazionenotazione derivaderiva daldal fattofatto cheche neglinegli USA le USA le
chiamatechiamate urbane urbane sonosono gratuitegratuite, , mentrementre quellequelle interurbaneinterurbane sonosono a a pagamentopagamento
Speech quality: Mean Opinion Score (MOS)Speech quality: Mean Opinion Score (MOS)
22
End-to-end delay componentsEnd-to-end delay components
• End-to-end delay is given by :
» Fixed component:» processing delay (voice coding and packetization) » propagation delay
» serialization delay
» Variable component» Delay introduced by the network (queuing delay, packet processing)
» Variable packet sizes
23
Analizziamo ora le componenti di ritardo “da estremo ad estremo” relative al
trasferimento di un flusso vocale. Il ritardo si compone di una parte fissa e di una
parte variabile.
La parte fissa del ritardo è a sua volta composta dal ritardo “di processamento”
(relativo alla codifica vocale e alla “pacchettizzazione” della voce), dalla somma
dei ritardi di propagazione in tutti i collegamenti di rete, dalla somma dei ritardi
di serializzazione in tutti i collegamenti di rete.
Per ritardo di serializzazione si intende il tempo che passa dalla trasmissione del
primo bit alla trasmissione dell’ultimo bit sul canale: se L è la lunghezza del
pacchetto [bit] e C la capacità di un canale [bit/s] il ritardo è: L / C [s]
24
• Propagazione— circa 6 microsecondi per chilometro
• Serializzazione: per ogni collegamento i, è dato dalla lunghezza del pacchetto L [bit] diviso la capacità della linea Ci [bit/s]: L/Ci
• Processamento della voce»Codifica/decodifica
»Pacchettizzazione
Processing Delay
Propagation Delay
Serialization Delay—Buffer to Serial Link
Fixed Delay ComponentsFixed Delay Components
VoIP phone PC
Router RouterRouter
25
Nel caso Phone to Phone il tratto VoIP inizia e termina sui“Gateway” che includono le funzionalità di co-decodifica
Processing Delay
Propagation Delay
Serialization Delay—Buffer to Serial Link
Fixed Delay ComponentsFixed Delay Components
RouterGateway GatewayTelefono
tradizionaleTelefono
tradizionale
26
Fixed Frame Serialization Delay MatrixFixed Frame Serialization Delay Matrix
56kbps
64kbps
128kbps
256kbps
512kbps
768kbps
1536kbs
1Byte
143us
125us
62.5us
31us
15.5us
10us
5us
64Bytes
9ms
8ms
4ms
2ms
1ms
640us
320us
18ms
128Bytes
16ms
8ms
4ms
2ms
1.28ms
640us
36ms
256Bytes
32ms
16ms
8ms
4ms
2.56ms
1.28ms
72ms
512Bytes
64ms
32ms
16ms
8ms
5.12ms
2.56ms
144ms
1024
Bytes
128ms
64ms
32ms
16ms
10.24ms
5.12ms
1500Bytes
46ms
214ms
187ms
93ms
23ms
15ms
7.5ms
Frame Size L
LinkSpeed
C
27
La parte variabile è data dal tempo di accodamento dei pacchetti nelle code dei
collegamenti e (in parte molto minore) dalla differente lunghezza che potrebbero
avere i pacchetti di un flusso.
La variabilità del ritardo viene compensata da un cosiddetto buffer di de-jitter
che è logicamente anteposto al decodificatore.
28
• Queuing delay• Variable packet sizes
• “Dejitter” buffers compensate the variable component
DejitterBuffer
Queuing Delay
Queuing Delay
Queuing Delay
Variable Delay ComponentsVariable Delay Components
Router RouterRouter
29
DejitterBuffer
Queuing Delay
Queuing Delay
Variable Delay ComponentsVariable Delay Components
Router RouterRouter
Nel caso Phone to Phone il de-jitter buffer è nel Gateway dove viene infatti effettuata la decodifica
30
t
t
Sender Transmits
Sink Receives
AA BB CC
AA BB CC
D1 D2 = D1
Sender Receiver
Network
D3 = D2D3 = D2
Delay Variation—“Jitter”Delay Variation—“Jitter”
Dejitter bufferDejitter buffer
RTP Timestamp From Router AInterframe gap of 20ms
CC
Sender
ReteIP
BB AA50 30 10
20ms 20ms
RTP Timestamp From Router AVariable Interframe Gap (Jitter)
CC BB AA50 30 10
10ms 80ms
RTP Timestamp From Router ADelitter Buffer removes Variation
CC BB AA50 30 10
20ms 20ms
• “De-jitter buffer” or “playback buffer” can accommodate some delay variation
RouterRouter
Receiver
DejitterBuffer
32
0
25 msEcho
Canceller
25 msEcho
Canceller
400 ms“ Natural ”Interaction
Limit
400 ms“ Natural ”Interaction
Limit
150 msDelay not Perceived
in Most Cases
150 msDelay not Perceived
in Most Cases
Good
150ms
Annoying
250ms
Poor
450ms
Sta
nd
ard
Th
resh
old
s
ITU -T G.131 ITU -T G.114 ITU -T G.114
End-to-end delay budgetEnd-to-end delay budget
33
Il piano di controllo - la segnalazioneIl piano di controllo - la segnalazione
» I protocolli di segnalazione creano, modificano ed abbattono le sessioni
» Coinvolgono, oltre ai terminali anche i “server” (Proxies, gatekeepers…)
» Le procedure di autenticazione si svolgono a questo livello» Non c’è relazione diretta e “standardizzata” con i
meccanismi di QoS delle reti
34
SIP: architectural elementsSIP: architectural elements
User AgentUser Agent
Proxy Server
IP network
Redirect Server
Registrar Server
SIP Gateway
PSTN
35
SIP call setupSIP call setup
User AgentUser Agent
INVITE user@xy.it ( … audio G.729 … )
100 PROGRESS
200 OK
ACK
IP network
Media (UDP)
RTP StreamsRTP Streams
SIP - SDP (UDP)
36
SIP principles - Client ServerSIP principles - Client Server
• Proxy can be easily introduced in the call flows...
User AgentUser Agent
INVITE
200 OK
Client
Server ACK
Proxy Server Proxy Server
Client Server
INVITE INVITE
200 OK200 OK
ACK ACKServer
Client
37
Principi del SIPIndependenza della descrizione della sessione
Principi del SIPIndependenza della descrizione della sessione
• Il protocollo SIP è disaccoppiato dalla descrizione dellesessioni
• La sessione è descritta dal Session Description Protocol - SDP• SIP trasporta gli elementi SDP come “Payload”
SIP HEADER
SDP PAYLOAD
38
SDP - Session Description ProtocolSDP - Session Description Protocol
• Il protocollo SDP (Session Description Protocol, RFC 2327) consente ai terminali di descrivere i tipi di media (audio, video…) e le loro codificheNon è in realtà un protocollo, ma una sintassi didescrizione
• SDP descrive gli indirizzi IP, le porte TCP/UDP, i tipi dicodifica
• SIP trasporta le informazioni di SDP in modo trasparente
39
SIP VoIP protocol stackSIP VoIP protocol stack
layer 2 technologies (ATM, Ethernet, PPP, ...)
IP*
audio/video coding
audio/video equipmentaudio/video equipment session controlsession control
UDP TCP or UDP
RTPSIP with SDP
* plus anything required for QoS guarantees (Diffserv, MPLS,...)
40
Principi del SIP - IndirizzamentoPrincipi del SIP - Indirizzamento
• Si indirizza l’utente e non il terminale (come nella e-mail)
• URL - Uniform Resource Locatorsip:user@domain
sip:stefano.salsano@uniroma2.it
sip:salsano@192.168.10.1
sip:1212@gateway.uniroma2.it
sip:+39-06-72597450@gateway.com;user=phonesip:stefano@yahoo.com?subject=meeting
sip:salsano@registrar.com;method=REGISTER
41
Principi del SIP - IndirizzamentoPrincipi del SIP - Indirizzamento
• Thanks to user based addressing provides SIP has built in Personal Mobility
• The user can access the service from different points and can associate different terminals with different capabilities (phone, videophone, answering machine)
Registrar Server
42
SIP URLsSIP URLs
sip:salsano@coritel.it:5060;user=ip;…
scheme
user-namehost
portlist of parameters
The user parameter is used to determine if a telephone number ispresent in the user-name portion of the URL
A SIP URL is resolved to an IP address using by using DNS lookups and (possibly) SIP servers and at the time of the call
sip:+39-06-72597450@gateway.com;user=phone
43
SIP RegistrationSIP Registration
User Agent X Registrar Server
REGISTER sip:uniroma2.it SIP/2. 0From: sip:stefano.salsano@uniroma2.itTo: sip:stefano.salsano@uniroma2.itContact: <sip:195.37.78.173>
Expires: 3600
200 OK
REGISTER
Location Server
This registration example establishes presence of user with address sip:stefano.salsano@uniroma2.it and binds this address to user’s current location 195.37.78.173.
12
3
44
SIP URL resolution with DNS & proxySIP URL resolution with DNS & proxy
User Agent Yuniroma2.it
incoming proxy server
200 OK
INVITE
Location Server
User Agent Y wants to call sip:stefano.salsano@uniroma2.it
6
4
3
DNS server
DNS SRV Query? uniroma2.it
1
2
IP address of uniroma2.itSIP proxy server
200 OK
INVITE5
7
User Agent X
INVITE sip:stefano.salsano@uniroma2.it
INVITE sip:195.37.78.173
45
Outbound proxy - Proxy ChainingOutbound proxy - Proxy Chaining
User Agent Y
uniroma2.itproxy server
Location Server
User Agent Y wants to call sip:stefano.salsano@uniroma2.it
It has to use its own Outbound proxy server...
DNS server
Internet
User Agent Z
Outboundproxy server
User Agentstefano.salsano@uniroma2.it
LAN
Recommended