metoda doboru ścieżek transmisyjnych dla poprawy jakości

Transkrypt

metoda doboru ścieżek transmisyjnych dla poprawy jakości
www.pwt.et.put.poznan.pl
Krystian Ryłko
Zakład Sieci Komputerowych
Wydział Informatyki
Politechnika Szczecińska
[email protected]
2005
Poznańskie Warsztaty Telekomunikacyjne
Poznań 8 - 9 grudnia 2005
METODA DOBORU ŚCIEŻEK TRANSMISYJNYCH DLA POPRAWY
JAKOŚCI POŁĄCZEŃ GŁOSOWYCH IP
Streszczenie: W referacie zaprezentowano mechanizm
zróżnicowania ścieżek transmisyjnych w sieciach
pakietowych IP, służący poprawie jakości połączeń VoIP.
Przybliżono relacje pomiędzy parametrami transmisji sieci
IP a jakością połączenia głosowego. Zaproponowano
przykładowy mechanizm doboru ścieżki w oparciu o
szacowaną jakość połączenia MOS. Omówiono również
rezultaty przeprowadzonych testów.
1. WSTĘP
Obecne sieci transmisji głosu migrują ze
środowiska komutacji kanałów do sieci pakietowych.
Usługi głosowe wykorzystujące ogólnodostępne sieci IP
(Voice over IP) zyskują coraz większą popularność
zarówno w zastosowaniach klasy przedsiębiorstwa, jak i
wśród użytkowników domowych. Wkraczają one także
w obszar sieci radiowych standardu IEEE 802.11 (Voice
over WLAN), rywalizując na małym obszarze z sieciami
GSM/3G. Do ich sukcesu przyczyniają się niski koszt i
wykorzystanie publicznej infrastruktury sieci IP.
Niemniej jednak oferowana transmisja w sieciach IP,
typu best-effort nie zaspokaja wymagań połączeń
głosowych, bardziej wrażliwych na jakość transmisji od
danych. Dlatego poszukuje się metod poprawiających
jakość przekazu głosowego.
Sieci IP charakteryzują szybkie zmiany stanów
poszczególnych łączy i węzłów. Obecnie stosowane
mechanizmy transmisji zwykle przysyłają dany strumień
głosu raz ustanowioną trasą. Dzieje się tak, ponieważ
tablice rutingu odnawiane są znacznie wolniej niż
zachodzą chwilowe zmiany stanu sieci. Mechanizmy
rutingu nie są zaprojektowane do transmisji pakietów
głosowych, a aplikacje VoIP nie oferują wyznaczania
ścieżek dla swoich pakietów. Przesyłanie strumienia
audio pojedynczą, najkorzystniejszą w momencie
nawiązywania połączenia marszrutą może być w danej
chwili mało korzystne.
2. ZRÓŻNICOWANIE ŚCIEŻEK
Dywersyfikacja ścieżek jest mechanizmem, w
którym pakiety przenoszące dane pomiędzy aplikacją
nadawczą i odbiorczą transportowane są częściowo bądź
zupełnie rozłącznymi marszrutami, czyli poprzez
odmienne węzły pośrednie. Celem zastosowania
dywersyfikacji ścieżek VoIP jest poprawa uzyskanej
oceny jakości połączenia głosowego, przy dostępnych
warunkach panujących w sieci transportowej.
PWT 2005 - POZNAŃ 8-9 GRUDNIA 2005
Polepszenie jakości realizowane jest poprzez wybór tras
o aktualnie najlepszych parametrach (straty, opóźnienie,
jitter)
oraz
minimalizację
prawdopodobieństwa
negatywnych zjawisk (zator, awaria łączy) w sieci.
Dekoncentracja tras powoduje pewne uśrednienie
stanów poszczególnych ścieżek, które przez aplikacje
końcowe postrzegane są nadal jako pojedyncza ścieżka.
O jakości połączenia głosowego IP decydują
zarówno wykorzystane mechanizmy transmisyjne: typ
kodeka, korekcja FEC (Forward Error Correction), PLC
(Packet Loss Concealment) [1], jak również czynniki
zależne od stanu sieci: opóźnienie, jitter, starty pakietów.
Dywersyfikacja ścieżek oferuje minimalizację tych
ostatnich poprzez dobór tras o najlepszych parametrach.
Dywersyfikacja ścieżek może być stosowana
poprzez wykorzystanie kilku niezależnych łączy (tzw.
Multihoming), kanałów transmisji. Oddzielne ścieżki
mogą być również wyznaczane z zastosowaniem
protokołów sieciowych: MPLS (Multi Protocol Label
Switching) bądź opcji nagłówka IPv4/IPv6.
Możliwych jest kilka scenariuszy dywersyfikacji
ścieżek:
- z wykorzystaniem multihomingu, gdzie dany węzeł
źródłowy połączony jest z niezależnymi od siebie
sieciami,
- dokładne wyznaczanie oddzielnych tras przez nadawcę.
Wymaga wiedzy o topologii logicznej sieci oraz jej
stanach na całej trasie połączenia. Dodatkowo konieczna
jest znajomości adresacji kolejnych urządzeń
sieciowych, które częstokroć są ukrywane przez
operatorów. Metoda ta miernie nadaje się dla sieci
WAN.
- za pomocą węzłów-przekaźników (luźne trasowanie).
Pakiety kierowane są do konkretnych, wyznaczonych do
tego węzłów, które kierują je dalej do sieci. Pakiety
VoIP zawierające adres docelowy, po stronie nadawczej
opakowywane są w adres węzła-przekaźnika, który jest
usuwany po dotarciu do tego węzła, a pakiet jest
przesyłany dalej.
- kodowanie podstrumieni głosu. Strumień danych
głosowych dzielony jest na mniejsze strumienie,
oddzielnie kodowane i niezależnie przesyłane.
Podstrumienie mogą być niesymetryczne, zależnie od
parametrów danej ścieżki.
Kanały transportowe Ci, w najprostszym przypadku
mogą być wybierane równomiernie, cyklicznie
Ci+1=(Ci+1)mod n. Mogą być również kierowane
zależnie od bieżących stanów środowiska sieciowego,
1/5
www.pwt.et.put.poznan.pl
tak aby uzyskać maksymalizację jakości przesyłanego
głosu.
3. OCENA JAKOŚCI POŁĄCZEŃ
Jakość połączeń głosowych zależy zarówno od
stanów sieci transportowej: opóźnienia, straty, jitter,
przekłamania transmisji, jak i od mechanizmów VoIP:
algorytm kodeka, mechanizmy ukrywania błędów, bufor
pakietów głosowych po stronie aplikacji odbiorczej.
Przekroczenie odpowiednich parametrów transmisji
powoduje zauważalne pogorszenie konwersacji.
Głos zanim zostanie umieszczony w sieci IP
poddawany jest próbkowaniu, dyskretyzacji, kompresji,
pakietyzacji,
kolejkowaniu,
serializacji
oraz
enkapsulacji, zwykle w stos RTP/UDP/IP. W węźle
docelowym następuje jego depakietyzacja, skierowanie
do kolejki bufora odbiorczego (bufor jittera),
dekompresja i emisja dźwięku. Kolejkowanie pakietów
w buforze jittera ma na celu wygładzenie fluktuacji
opóźnień. Rozmiar tego bufora może ustalany statycznie
bądź adaptacyjnie. Pakiety dostarczone ze zbyt dużym
opóźnieniem lub jitterem można klasyfikować jako stratę
pakietów, ponieważ nie nadają się one do emisji i są
odrzucane. Sieci transportu danych, takie jak np. TCP
radzą sobie ze stratami pakietów poprzez mechanizm
retransmisji i kanału zwrotnego.
Starty pakietów VoIP można sklasyfikować jako:
• odizolowane, pojedyncze straty. Niweluje się je
wykorzystując techniki typu PLC, FEC, dzięki czemu
nie wpływają istotnie na jakość połączenia.
• sekwencja straconych pakietów – zauważalnie
degraduje jakość odbioru. Wykorzystanie dywersyfikacji
ścieżek
pakietów
znacząco
zmniejsza
prawdopodobieństwo ich wystąpienia, zamieniając je na
odizolowane straty lub całkowicie im zapobiegając – w
zależności od techniki doboru ścieżek.
• chwilowy brak transmisji – całkowita strata większej
sekwencji pakietów, skutkująca najczęściej zerwaniem
połączenia.
Jeżeli prawdopodobieństwo zatoru dla danej ścieżki
wynosi Pzator, to w przypadku zróżnicowania tras wynosi
ono zaledwie (Pzator)n, gdzie n - ilość ścieżek.
ścieżka 1
czas
Strumień
odbiorczy
Źródło
pakietów
VoIP
czas
ścieżka 2
Strata pakietu
Rys 1. Dostarczanie i wybór pakietów ze
zduplikowanego strumienia VoIP
ścieżka 1
czas
Strumień
odbiorczy
Źródło
pakietów
VoIP
czas
ścieżka 2
Rys 2. Dostarczanie pakietów przy podziale
strumienia na dwa podstrumienie (mod2)
Ponieważ metody oceny jakości połączenia
stosowane dla sieci PSTN, nie nadają się dla systemów
pakietowych VoIP, opracowano nowe metody oceny
przeznaczone dla VoIP i stosowanych w nim kodeków.
Jedną z metod jest uśredniona ocena jakości głosu MOS
(Mean Opinion Score), która odzwierciedla ludzkie
wrażenia odsłuchowe. Określa ona stosunek ilości
zgłosek odebranych poprawnie przez słuchaczy do
liczby zgłosek wysłanych [2].
Jakość połączenia głosowego
doskonała
dobra
dostateczna
słaba
zła
MOS
4.34 - 4.5
4.03 – 4.34
3.60 – 4.03
3.10 – 3.60
2.58 – 3.10
Tab 1. Ocena jakości głosu i odpowiadające jej wartości
MOS [2]
Ocena MOS może być również wyznaczana dla
dwóch przypadków: ocena odsłuchu MOS-LQ (Mean
Opinion Score Listening Quality) lub konwersacji MOSCQ (Mean Opinion Score Conversional Quality).
Aby możliwa była estymacja jakości połączenia
VoIP,
ITU-T
opracowało
przybliżony
model
oczekiwanej jakości połączeń, tzw. E-model [4]. Jego
zaletą w odróżnieniu od innych metod, jest to że ocena
może być przeprowadzana w czasie rzeczywistym.
Czynniki wpływające na degradację oceny MOS
wyrażane są współczynnikiem R:
R = R0 − I s − I e − I d + A ,
(1)
gdzie:
R0 – stosunek sygnału do szumu, porównuje głośność
nadawania oraz szumu z różnych źródeł (np. szum tła),
Is – spadek jakości wskutek czynników występujących
równolegle z transmisją głosu, m.in. efekt lokalny,
zniekształcenia kwantyzacji,
Ie – suma czynników związanych ze stosowaniem
określonego kodeka, startami podczas transmisji oraz ich
wpływ na jakość głosu,
Id – pogorszenie jakości wynikające z opóźnienia: kanału
transmisyjnego, echa,
A – współczynnik kompensacji (od 0 do 20) wyrażający
akceptację przez użytkownika niższych parametrów
połączenia w zamian za inne korzyści z danego systemu
telefonicznego (np. mobilność – telefony GSM,
satelitarne).
Współczynnik R określa jakości połączeń w
przedziale od 100 (najlepsza) do 0 (najgorsza). Wartość
oceny MOS w zależności od uzyskanej wartości R
określa się zależnością:
if R < 0 → MOS = 1,
if 0 < R < 100 →
→ MOS = 1 + 0.035R + 7 × 10−6 R( R − 60)(100 − R) ,
if R > 100 → MOS = 4,5
(2)
Strata pakietu
PWT 2005 - POZNAŃ 8-9 GRUDNIA 2005
2/5
www.pwt.et.put.poznan.pl
Przyjmując na podstawie [4] wartości domyślne,
można zredukować (1) do:
(3)
R = 94.2 − I e − I d
danej ścieżki/metody - jakości połączenia. Rysunek
przedstawia
przykładowy
sposób
realizacji
„klasyfikatora
ścieżek”,
który
może
być
zaimplementowany bądź po stronie aplikacji VoIP bądź
bramy VoIP.
Przychodzące pakiety VoIP
Pomiar param.
transmisji
Statystyki:
delay, packet
loss, jiter
E-Model
Ekstrapolacja MOS dla pathi, wybór
pathi ← max. MOS
Rys 4. Wartość współczynnika R w zależności od
opóźnienia i strat pakietów (kodek G.711)
Kodeki przejawiają różną wrażliwość na straty
pakietów. Wartość Ie dla danej wielkości utraconych
pakietów można oszacować wyrażeniem:
I e ≈ γ 1 + γ 2 ln(1 + γ 3e) ,
(4)
γ1 - pogorszenie jakości głosu wskutek zastosowanego
algorytmu kodeka,
γ2, γ3 - wpływ start na subiektywną jakość połączenia dla
danego kodeka,
e - całkowite prawdopodobieństwo strat pakietów, tzn:
(5)
e = esieć + (1 - esieć) ebufor_jittera,
esieć – prawdopodobieństwo start w sieci transportowej,
ebufor_jittera - prawdopodobieństwo start związane z
buforem jitter (aplikacja odbiorcza).
Oszacowano współczynniki γ1, γ2, γ3, dla różnych
kodeków wynoszą [5]:
- G.711 (γ1=0, γ2=30, γ3=15), G.729A (γ1=11, γ2=30,
γ3=16), G.723A (γ1=15, γ2=30, γ3=17),
natomiast po wypełnianiu strat pakietów ciszą (PLC):
- G.729 (γ1=10, γ2=48, γ3=18), G.723A (γ1=19, γ2=71,
γ3=6).
Aplikacja VoIP/
Centrala IP PBX
Programowy przełącznik
ścieżek (adresacja pakietów)
Pakiety
wychodzące
Rys 4. Mechanizm wyznaczania ścieżek pakietów
Do pakietów przenoszących głos dodawany jest
znacznik czasu (time stamp) oraz numer pakietu, które
służą
do
gromadzenia
statystyki
parametrów
transmisyjnych. Ponieważ trudne jest dokładne
zsynchronizowanie zegarów w dwóch różnych hostach,
dlatego taki pomiar różnicy nadania i odbioru pakietu nie
jest wiarygodny. Do szacowania czasu transmisji
wykorzystuje się łączny czas w obu kierunkach RTT
(Round-trip time) lub w jednym kierunku OWD (Oneway delay). Ponieważ szybkość transmisji w obu
kierunkach zwykle nie ma charakteru symetrycznego,
dlatego pomiar RTT nie pozwoliłby wybrać trasy o
najkrótszym czasie transmisji w danym kierunku.
Mierzony jest więc czas OWD dla wszystkich ścieżek i
wybierany ten o najmniejszej wartości.
Pomiar czasu przeprowadzany po synchronizacji
protokołem NTP z tym samym serwerem czasu może
wprowadzać znaczący błąd pomiaru [7]. Za punkt
odniesienia wykorzystuje się ścieżkę o najkrótszym
czasie propagacji.
5. MECHANIZM DOBORU ŚCIEŻKI
Rys 5. Relacja współczynnika Ie do
prawdopodobieństwa strat dla różnych kodeków
Jeżeli
suma
opóźnienia
całkowitego,
jednostronnego OWD (One-way delay) przekroczy 177,3
ms, wtedy następuje znaczna degradacja jakości
konwersacji [5].
4. OCENA SCIEŻEK
Aby wybrać najlepszą metodę dywersyfikacji
należy przeprowadzić estymację przewidywanej dla
PWT 2005 - POZNAŃ 8-9 GRUDNIA 2005
Celem jest takie opracowanie algorytmu doboru
ścieżek, aby był on jak najbardziej zbliżony do
optymalnego wyboru, przy znajomości aktualnych
warunków sieci w danej chwili. Mechanizm ten
powinien również chronić przed zbyt częstym
przełączaniem ścieżek wskutek krótkotrwałych wahań
stanów poszczególnych łączy. Należy tak dobrać okres
służący ocenie jakości danego łącza, aby uchronić
aplikację przed jej nadregulowaniem.
Aby możliwa była ocena korzyści z zastosowanego
mechanizmu należy przyjąć model odniesienia.
Dokonywany jest pomiar jakości transmisji głosu
danymi ścieżkami (i,..,k,..,j) bez mechanizmu
przełączania. Następnie najlepszy z tych wyników
3/5
www.pwt.et.put.poznan.pl
Awz obierany jest jako wzorcowy i porównywany z
wynikiem po zastosowaniu dywersyfikacji ścieżek.
Jeżeli jakość wzorcowego połączenia głosowego w
t ∈ [1,.., T ] – Atwz , a jakość połączenia
czasie
wyznaczonego w drodze wyboru ścieżki k dla tej samej
k
wartości czasu t – Bt , to zysk D z dywersyfikacji
ścieżek w czasie [1,..,T]:
1 T
1 T
(6)
( Btk − Atwz ) = ∑ Dt ,
∑
T t =1
T t =1
Należy ustalić taką wartość ∆D , aby ewentualna
D=
zmiana jakości była zauważalna, np. 0,2.
Najprostszą metodą wyznaczania ścieżki o
najlepszych parametrach jest wybór na podstawie
bieżącej wartości, tzn. Bt +1 = Bt .
k
k
Jeżeli Dt jest zbyt małe wówczas zamiana ścieżek
Rys 5. Oszacowana jakość transmisji MOS dla
początkowej ścieżki, kodek G.711
jest nieopłacalna. Mała wartość czasu służącego do
oceny jakości połączenia, z jednej strony sprawia, że
mechanizm szybciej reaguje na zmianę parametrów
sieci, z drugiej zaś czyni go podatnym na krótkotrwałe
fluktuacje stanów sieci, co może powodować
pogorszenie
jakości
transmisji.
Dlatego
do
porównywania jakości transmisji wykorzystywane jest
~
okno D< t − n;t > .
Jeżeli nowo wybrana ścieżka ma większy czas
propagacji sygnału, wówczas podczas przełączania
zwiększy się jitter, d i − d k > 0 . Gdy natomiast
opóźnienie jest mniejsze może dojść do przepełnienia
bufora odbiorczego (playout buffer), d i − d k < 0 .
Przykład algorytmu wyboru ścieżki:
i
begin
path ← path
for t = 1 to T do
Dt (loss, delay, jitter)
If t > n do
Rys 6. Oszacowana jakość transmisji MOS dla
alternatywnej ścieżki, kodek G.711
~i
If Dt − D< t − n −1;t −1> > ∆D then
k
pathi ← pathk
jitter ← jitter + (di-dk)
end
end
t ← t+1
end
6. TEST MECHANIZMU DOBORU SCIEŻEK
Poniżej przedstawiono uzyskany w teście pomiar
jakości transmisji głosowej w skali MOS dwóch ścieżek
oraz po zastosowaniu mechanizmu dywersyfikacji. Nie
zastosowano mechanizmu wykrywania ciszy (VAD), ani
kompresji nagłówka RTP - cRTP.
Rys 6. Oszacowana jakość transmisji MOS przy
zastosowaniu doboru ścieżek, n=10
Na rys 7 widoczne jest w dwóch punktach
opóźnienie przy zmianie ścieżki spowodowane
PWT 2005 - POZNAŃ 8-9 GRUDNIA 2005
4/5
www.pwt.et.put.poznan.pl
mechanizmem zabezpieczającym przed chwilowymi
wahaniami parametrów transmisyjnych, n=10.
7. PODSUMOWANIE
Zastosowanie dyspersji ścieżek pakietów do
transmisji nie tylko audio, ale również multimedialnych
może zwiększyć jakość przekazu, niezawodności
transmisji, poprzez zmniejszenie opóźnień, jittera oraz
minimalizację prawdopodobieństwa utraty sekwencji
pakietów, awarii i przeciążeń sieci pakietowej. Uzyskane
efekty różnią się zależnie od zastosowanej metody
dyspersji.
Jakość połączeń VoIP nie zależy tylko od opóźnień
i strat pakietów. Bezpośredni wybór ścieżek o
najlepszych parametrach transmisyjnych nie jest
tożsamy z uzyskaniem najlepszej jakości połączenia, a
zależy również od specyficznej dla danej aplikacji
parametrów.
Polepszenie parametrów transmisji pakietów
głosowych umożliwia stosowanie kodeków o
zwiększonych wymaganiach odnośnie pasma (np.
G.722), oferujących jednocześnie lepsze wrażenia
dźwiękowe.
Zastosowany mechanizm powinien realizować
pomiar aktualnego stanu łącza i predykcję jego stanu z
danym wyprzedzeniem. Dostosowywać otrzymane
wyniki do wymagań danej usługi oraz podejmować
decyzję o przełączeniu na daną ścieżkę w oparciu o
przeprowadzoną estymację jakości połączenia.
8. LITERATURA
[1] Y. Liang, E. Steinbach, B. Girod, Real-time Voice
Communication over the Internet Using Packet Path
Diversity, Proceedings of the ninth ACM international
conference on Multimedia, pp. 431 – 440, 2001
[2] ITU Recommendation P.800, Methods for subjective
determination of transmission quality, 1996
[3] J. G. Apostolopoulos, Reliable video communication
over lossy packet networks using multiple state encoding
and path diversity, Proc. Visual Communication and
Image Processing, pp. 392-409, 2001
[4] ITU Recommendation G.107, The E-model, a
computational model for use in transmission planning,
2003
[5] R. Cole, J. Rosenbluth, Voice over IP performance
monitoring,
ACM
SIGCOMM
Computer
Communication Review, Volume 31 , Issue 2, pp. 9-24,
2001
[6] L. Ding, R. Goubran, Speech quality prediction in
VoIP using the extended E-model, Proc. Of IEEE
GLOBECOM, 2003
[7] V. Smotlacha, One-way delay measurement using
NTP synchronization, TERENA, 2003
PWT 2005 - POZNAŃ 8-9 GRUDNIA 2005
5/5