Adamski Damian
Bosak Katarzyna
WIMiIP IS
Rok: I gr. 1
Voice Conference
Standardy używane w konferencjach głosowych:
H.323 – jest to standard w multimedialnej komunikacji (głos, obraz, wiadomości tekstowe). Protokół ten przesyła dane w czasie rzeczywistym, dzięki czemu możemy kontrolować opóźnienia. Standard ma także pewne wady. Dane przesyłane są pakietowo, korzystając zarówno z TCP zapewniającego dostarczenie każdego pakietu, jak i UDP, który tego nie gwarantuje. Głównym konkurentem tego protokołu jest standard SIP (Session Initiation Protocol), mający rozszerzoną funkcjonalność względem opisywanego protokołu. H.323 nadzoruje proces przesyłania danych multimedialnych w sieciach pakietowych, wykonując to zadanie w czasie rzeczywistym.
SIP (ang. Session Initiation Protocol) – standard dla zestawiania sesji pomiędzy jednym lub wieloma klientami. Jest obecnie dominującym protokołem sygnalizacyjnym dla Voice over IP i stopniowo zastępuje H.323. Istnieje kilka problemów z protokołem SIP i telefonią internetową: połączenie inicjowane z zewnątrz przy niewłaściwej konfiguracji zapory sieciowej (firewall) jest przez nią zatrzymywane, a jego rozproszona natura utrudnia spełnienie wszystkich prawnych wymagań nałożonych na operatorów telekomunikacyjnych. Jakkolwiek, komercyjne rozwiązania radzą sobie z tymi ograniczeniami. Wiele zapór rozpoznaje już i przepuszcza ruch SIP.
Transmission Control Protocol (TCP) – połączeniowy, niezawodny, strumieniowy protokół komunikacyjny wykorzystywany do przesyłania danych pomiędzy procesami uruchomionymi na różnych komputerach. Korzysta z usług protokołu IP do wysyłania i odbierania danych oraz ich fragmentacji wtedy, gdy jest to konieczne.
UDP (ang. User Datagram Protocol – protokół pakietów użytkownika) – jeden z podstawowych protokołów internetowych. Jest to protokół bezpołączeniowy, więc nie ma narzutu na nawiązywanie połączenia i śledzenie sesji (w przeciwieństwie do TCP). Nie ma też mechanizmów kontroli przepływu i retransmisji. Korzyścią płynącą z takiego uproszczenia budowy jest większa szybkość transmisji danych i brak dodatkowych zadań, którymi musi zajmować się host posługujący się tym protokołem. Z tych względów UDP jest często używany w takich zastosowaniach jak wideokonferencje, strumienie dźwięku w Internecie i gry sieciowe, gdzie dane muszą być przesyłane możliwie szybko
1.Open Phone
Jest to program służący do komunikacji głosowej przez Internet(VoIP). Do połączenia nie wykorzystuje on zewnętrznego serwera(jak np. Skype) lecz łączy się bezpośrednio z odbiorcą, używając jako adresu numeru IP. Dzięki temu, że nie używa on zewnętrznego serwera(jak Skype) możliwe jest łączenie się pomiędzy sobą bez dostępu do internetu (np. w sieci LAN). Program pozwala wybrać kodeki, jakich chcemy używać w trakcie konwersacji, jednak muszą one być zgodne z kodekami używanymi przez naszego rozmówcę.
Przed rozpoczęciem pracy z programem Open Phone sprawdziliśmy obciążenie sieci i procesora w „warunkach normalnych”.
Pierwszy screen prezentuje stan procesora.
Drugi screen przedstawia użycie sieci.
W pierwszej kolejności użyliśmy kodeka G711 ALaw. Jak widać na dołączonym screen’ie użycie procesora nie zmieniło się, z czego można wnioskować, iż program nie obciąża zbytnio procesora. Jakoś rozmowy była zadowalająca. Funkcja Silence Suppresion była wyłączona.
W porównaniu ze stanem początkowym, jak można było się spodziewać, sieć została obiązona lecz w niewielkim stopniu.
Kolejnym kodekiem którego użyliśmy był MS-amr. CPU w dalszym ciągu bez zmian.
W porównaniu z poprzednim kodekiem, użycie sieci (liczba wysyłanych i odbieranych danych ) zmniejszyła się trzykrotnie. Można wnioskować z tego, że dźwięk uległ większej kompresji niż w przypadku G711 ALaw. Nie zauważyliśmy jednak znaczącej zmiany w jakości.
Kolejnym kodekiem był g722.1-32k Pomimo zmiany kodeka, procesor dalej nie wykazał zwiększonego lub zmniejszonego trybu pracy.
Dostrzegliśmy niewielki wzrost ilości przepływających danych w porównaniu z MS- amr. Jest on jednak zbyt mały alby móc stwierdzić, czy dźwięk kompresowany był w mniejszym stopniu, czy ilość danych była zwiększona przez większe natężenie dźwięku.
Kolejnym kodekiem był g726- 40k. Jak w poprzednich przypadkach, wykres użycia procesora nie wykazał żadnych znaczących zmian.
Jak pokazuje wykres, użycie sieci jest niewiele wyższe niż w poprzednim przypadku. Ilość wysyłanych i odbieranych danych jest porównywalna.
Ostatnim kodekiem był ILBCie . Użycie CPU nie zmieniło się.
Wykres wykazuje, iż użycie sieci jest o 2/3 mniejsze niż w przypadku poprzedniego kodeka.
Wnioski:
Poszczególne kodeki różniły się między sobą stopniem kompresji dźwięku stąd różnice w ilościach wysyłanych i odbieranych pakietów. Wynikiem tego różnice w obciążeniu dotyczyły tylko sieci a nie procesora gdyż sam program wykorzystywał go w minimalnym stopniu.
Funkcja Silence Suppresion była włączona tylko w przypadku pierwszego kodeka. Zmniejszyła ona ilość wysyłanych danych gdyż program nie przesyłał szumów obecnych przy przerwach w rozmowie (nie wysyłał danych podczas ciszy).
Team Speak
W wielu sieciach lokalnych, w tym w naszej, istnieje problem z rozmowami głosowymi przez Internet. Problem ten objawia się tak, że jedna ze stron takiej konferencji jest niesłyszana. Wynika to z tego że w naszej sieci i w wielu podobnych używane są adresy z puli tzw. "prywatnych" (np. 192.168.1.XX). Z tego powodu trzeba stosować na serwerze, stanowiącym bramę do takiej sieci, maskaradę czyli NAT. I właśnie stosowanie maskarady ogranicza wiele usług głównie multimedialnych w tym rozmowy głosowe np. przez Gadu-Gadu. I tutaj ten problem rozwiązuje program TeamSpeak, który posiada darmowy serwer i klienta zarówno pod Linux jak i Windows.
W pierwszej kolejności prowadzimy naszą konferencję używając kodeka CELT Mono (48kHz). Dźwięk słyszalny dla ludzkiego ucha zawiera się w paśmie do 22 kHz. Kodek, którego używamy pracuje na częstotliwości 48 kHz, więc pomimo dużo większej częstotliwości, kosztem zwiększonej ilości danych, poprawa jakości jest niezauważalna.
Następnie testowaliśmy Speex Narowband (8kHz). Używa on 6razy mniejszej częstotliwości niż poprzedni kodek, czego potwierdzeniem jest zamieszczony poniżej screen (ilości wysyłanych i odbieranych danych są ok. 6x mniejsze). Jakość nie zmieniła się drastycznie. Natomiast ilość gubionych pakietów zmniejszyła się
W ten sam sposób sprawdzaliśmy pozostałe 2 kodeki: Speex Wideband (16kHz) i Speex Ultra-Wideband(32kHz). W przypadku pierwszego z nich, jak można było się spodziewać, ilośc wysyłanych i odbieranych danych zwiększyła się dwukrotnie w porównaniu z Narrowband. Natomiast w przypadku Speex Ultra-Wideband(32kHz) wzrost był czterokrotny.
Wnioski:
Do przeprowadzenia konferencji głosowej wystarczają kodeki korzystające z mniejszych częstotliwości i w przypadku gdy istotne są dla nas ilości przepływających danych, wydają się być najlepszą opcją. W przypadku kodeków o wyższych częstotliwościach, liczba gubionych pakietów wzrasta, co negatywnie wpływa na jakość rozmowy.