Wymagania i zalecenia dla usługi głosowej w Sieci FreePhone MASH.PL Wymagania i zalecenia dla usługi głosowej w Sieci FreePhone Strona 1
SPIS TREŚCI: Wymagania ogólne stawiane połączeniom głosowym-----------------------------------------3 Wymagania kodeków dotyczące przepustowości------------------------------------------------3 Zalecenia dotyczące QoS ----------------------------------------------------------------------------------4 Warunki niezbędne do działania protokołu IAX ----------------------------------------------------5 Warunki niezbędne do działania protokołu SIP z RTP ---------------------------------------------5 NAT oraz protokoły SIP/IAX/RTP----------------------------------------------------------------------------5 MASH.PL Wymagania i zalecenia dla usługi głosowej w Sieci FreePhone Strona 2
Wymagania ogólne stawiane połączeniom głosowym 1. Straty duŝo poniŝej 1% (najlepiej wcale) 2. Mniej niŝ 150ms opóźnienia w jedna stronę od telefonu do telefonu 3. Jitter (wahania opóźnień) musi być mniejszy niŝ 100ms Wymagania kodeków dotyczące przepustowości System obsługuje trzy kodeki: G.711, G.723 oraz G.729. RóŜnice miedzy nimi przedstawia poniŝsza tabela: Tabela 1: Charakterystyka kodeków VoIP Kodek Strumień audio generowany przez kodek (Kbps) ObciąŜenie procesora Jakość głosu Wprowadzane opóźnienie (codec delay) G.711 64 (bez niskie doskonała N/A kompresji) G.723 6.4/5.3 średnie dobra (6.4) duŝe słaba (5.3) G.729 8 wysokie dobra małe Poza przepływnością niezbędna do przesłania samych próbek głosu dodatkowy narzut dostarczają protokoły transportowe: IP, UDP oraz RTP jak równieŝ protokół warstwy drugiej. PoniŜsza tabelka przedstawia wymagania dotyczące przepustowości z uwzględnieniem róŝnych narzutów: Tabela 2: Rzeczywista przepustowość strumieni głosowych CODEC (Z KOMPRESJA I BEZ) PAKIETÓW NA SEKUNDE ETH (KBPS) ETH 802.1Q (KBPS) G.711 33 (30ms głosu w kaŝdym 78 79 G.711 CRTP 33 68 69 G.711 50 (20ms głosu w kaŝdym 86 87 G.711 CRTP 50 71 72 G.723 (6,3Kbps) 33 (30ms głosu w kaŝdym 21 22 G.723 CRTP33 (6,3Kbps) 11 12 G.723 (5,3Kbps) 33 (30ms głosu w kaŝdym 20 21 G.723 CRTP 33 10 11 (5,3Kbps) G.729 50 (20ms głosu w kaŝdym 30 32 G.729 CRTP 50 15 16 MASH.PL Wymagania i zalecenia dla usługi głosowej w Sieci FreePhone Strona 3
G.729 33 (30ms głosu w kaŝdym 23 24 G.729 CRTP 33 13 14 Kompresja RTP (CRTP) działa w obrębie danego łącza punkt-punkt i moŝna ją wykorzystać tylko jeśli urządzenia z obu stron ja wspierają. Kompresja ta dodaje opóźnienie, ale jest szczególnie skuteczna w przypadku przenoszenia niewielkich próbek głosowych, kiedy to nagłówki IP/UDP/RTP zajmują większość pakietu. Włączenie VAD (Voice Activity Detection) w kaŝdym z powyŝszych przypadków powoduje obniŝenie zapotrzebowania na pasmo o około 30-40%. Jeśli na danej linii ma jednak pracować fax, to VAD nie moŝe być aktywny. W przypadku, kiedy opóźnienia w sieci zaczną niebezpiecznie rosnąć, moŝna próbować zmniejszyć liczbę próbek głosu przesyłanych w jednym pakiecie, np.: tak, aby na pakiet przypadało 20ms lub nawet 10ms. Kosztem zwiększenia zapotrzebowania na pasmo opóźnienia powinny nieznacznie spaść. Czynność taka nie ma jednak sensu w przypadku kodeka G.723, który domyślnie generuje pakiety z 30 ms próbka głosu, która zajmuje 20 lub 24 bajty. Po zmniejszeniu rozmiaru próbki głosowej przy tak małych pakietach narzuty nagłówków protokołów zaczną pochłaniać znaczna ilość pasma. Zalecenia dotyczące QoS W wersji minimum naleŝy zagwarantować, Ŝe dla kaŝdego połączenia głosowego, które moŝe zostać wykonane dostępna będzie niezbędna ilość pasma (w obu kierunkach!) dla wybranego kodeka. Wartość ta odczytać moŝna z tabeli drugiej, przy czym wyliczenie wartości na styk nie jest zalecane. NaleŜy pamiętać, Ŝe doprowadzenia rozmów konferencyjnych na dwóch liniach z jednego telefonu wymagane jest podwojenie pasma. Jeśli nie korzysta się z opcji rozmów konferencyjnych, a jedynie prowadzi rozmowę na dwóch osobnych liniach z uŝyciem jednego telefonu (nie konferencje) w danym momencie generowany jest tylko jeden strumień pakietów RTP. W przypadku kiedy VoIP ma być wykorzystany do obsługi FAXu wymagane jest uŝycie kodeka G.711, a co za tym idzie rezerwacja minimum 86Kbps przepustowości. Dopiero jednak implementacja pełnego QoS (patrz niŝej) zapewni przewidywalne działanie faxów. Aby zagwarantować wysoka jakość połączeń głosowych, w tym poprawne działanie FAXów, naleŝy zminimalizować straty i opóźnienia pakietów VoIPowych poprzez zaimplementowanie gwarancji jakości usług (QoS). Mechanizm QoS moŝna oprzeć we własnej sieci o znakowanie DSCP oraz Cos przez adaptery VoIPowe. Aby markowanie pakietów VoIPowych miało sens, muszą być one poprawnie interpretowane przez wszystkie urządzenia uczestniczące w transporcie zarówno routery jak i przełączniki. Pakiety VoIPowe powinny otrzymywać priorytet (np.: za pomocą mechanizmu LLQ - Low Lantany Queuing lub PQ Priority Queuing) i być zawsze wysyłane przed ruchem mniej uprzywilejowanym. Takie zachowanie wymaga zaimplementowania w sieci modelu DiffServ z kolejka priorytetowa. MASH.PL Wymagania i zalecenia dla usługi głosowej w Sieci FreePhone Strona 4
Alternatywnie router dostępowy moŝe na podstawie adresu docelowego pakietów wskazującego na serwer SIP proxy wrzucać ruch VoIPowy do kolejki priorytetowej i przesyłać go do operatora zawsze jako pierwszy. Rozwiązanie to nie wprowadza jednak kontroli QoS wewnątrz własnej sieci, gdzie moŝe dochodzić do strat i opóźnień. PoniewaŜ jednak wąskim gardłem najczęściej jest łącze do operatora, zastosowanie tego modelu jako prostszego w implementacji - jest jak najbardziej polecane. Warunki niezbędne do działania protokołu IAX Protokół IAX2 wykorzystuje port 4569 UDP/TCP i tylko ten trzeba przepuścić na zaporze ogniowej. Warunki niezbędne do działania protokołu SIP z RTP Aby zadziałał protokół SIP naleŝy otworzyć port 5060 UDP. Wystarczy to do nawiązania połączenia (sygnalizacja będzie działać). Aby głos był przesyłany niezbędne jest otworzenie portów UDP dla protokołu RTP. W czasie nawiązywania połączenia kaŝda ze stron deklaruje, którego portu będzie lokalnie uŝywać. Platforma terminującą ruch VoIP potrafi wskazać jako docelowy (z punktu widzenia klienta) dowolny port UDP z zakresu 10.000 20.000. Te porty musza wiec być otwarte na ewentualnej zaporze ogniowej (FIrewall) NAT oraz protokoły SIP/IAX/RTP NAT nie wpływa na działanie wyŝej wymienionych protokołów. Nie ma technicznych przeszkód, aby umieszczać bramki VoIP za urządzeniem NATujacym. Jeśli jednak tak się stanie naleŝy odpowiednio do charakterystyki swojej sieci dobrać czasy keepalive-ów, aby sesje SIP oraz IAX z serwerem SIP proxy nie były zrywane. MASH.PL Wymagania i zalecenia dla usługi głosowej w Sieci FreePhone Strona 5