Telefonování po síti
1 Úvod
Komunikace zvukem, a případně i obrazem, je pro člověka přirozená a tedy rychlá a efektivní.
Pokud komunikujeme s partnerem na dálku,
naše smysly je třeba doplnit zařízením, které přenese zvuk a obraz tak daleko, aby ho
partner mohl vnímat. Takovým zařízením na přenos zvuku je telefon,
jehož vynález je datován do roku 1876 a je spojen se jménem Alexandra Grahama Bella.
Užitečnost telefonu je tedy prověřená více než stovkou let. Postupem času byla vytvořena
celosvětová telekomunikační síť. V 70. letech minulého století vzniká paralelně síť
pro přenos dat, rozrůstá se rovněž v celosvětovou síť (Internet) a koexistuje se sítí
telekomunikační.
Koncem 90. let 20. století bylo vytáčené spojení nejběžnějším způsobem připojování se
k Internetu. Docházelo tak vlastně k vytváření paketové sítě nad spojovanou sítí telefonní.
Dnes, o deset let později, je situace téměř opačná a dochází k vytváření spojované sítě nad
sítí paketovou. Většina domácností vlastní vysokorychlostní přípojku k Internetu a masově
se začíná projevovat fenomén známý jako IP telefonie či
Voice over Internet Protocol
(dále jen VoIP), ve volném překladu hlas přenášený po Internetu či jednodušeji,
telefonování po Internetu.
Během tohoto poměrně rychlého vývoje bylo vytvořeno několik
signalizačních a přenosových protokolů pro VoIP a mnoho klientů, které
nad nimi fungují. Jako přední dva signalizační protokoly se ukázaly
H.323 [2] a Session Initiation Protocol [3]
(dále jen SIP). Protokol SIP je díky svému návrhu a použití textové
komunikace daleko pružnější než již zmiňovaný protokol H.323 a proto
mu zřejmě patří budoucnost. Komunikační protokoly a síťová infrastruktura
tvoří nutný základ pro hlasovou komunikaci, ale běžný uživatel ji přímo neovlivňuje
a proto se jí zde dále nebudeme zabývat. Zájemce o technické podrobnosti
odkazujeme na odbornou literaturu.
Jak funguje IP telefonie v síti CESNET, tedy v akademické síti ČR, bylo popsáno
v [1]. Od té doby došlo k dalšímu rozvoji a IP telefonní síť CESNET
je jedna z nejrozvinutějších v Evropě. Propojuje telefonní ústředny vysokých škol
a šetří prostředky za telefonní provoz. Použijete-li pevnou linku na Masarykově univerzitě,
nepoznáte, zda šel hovor touto sítí a nebo sítí telefonního operátora.
V posledních letech ale získává stále více na oblibě flexibilnější způsob telefonování
po Internetu. Je jím vyžití softwarových klientů z osobních počítačů či laptopů. Výhodou
je cena hovoru odpovídající ceně připojení na síť. Pokud je cena za připojení paušální,
je cena hovoru nulová, protože cenu připojení nenavýší. Nejznámějším produktem pro tento typ
telefonování je software Skype.
Používají ho k dorozumění miliony lidí pro celém světe. V jeho stínu zůstává celá řada
dalších programů. Tento článek si klade za cíl upozornit čtenářskou obec na problematiku
softwarového telefonování a seznámit ji s dalšími softwarovými telefony.
2 HW vybavení
Co je tedy třeba, chci-li si takový telefon vyzkoušet?
Samozřejmě je nutné mít pracovní stanici či laptop se zvukovou kartou. I když např. v laptopu máme
vestavěný mikrofon i reproduktory, nedoporučuje se je používat, protože tím vznikne nepříjemná
ozvěna. Je třeba použít sluchátka a mikrofon (headset) a to buď klasický nebo
bluetoothový, pokud jsme na to vybaveni. Ten, kdo nemá rád sluchátka, může použít
zařízení s reproduktorem, mikrofonem a vestavěným echocancelerem, např. Polycom Communicator C100.
Dobrým nápadem jsou i sluchátka s odpojitelným usb zvukovým adaptérem, který může pomoci překonat
problém především nahrávacích částí interních zvukových karet a může být méně náchylný k rušení
(vzhledem k umístění mimo PC).
Pro audio vybavení platí, že čím více pohodlí požadujeme, tím více je třeba do zařízení investovat.
3 VoIP programy
3.1 Skype
Prvním a nejoblíbenějším software je bezesporu Skype
1.
Jak praví reklama, telefonování mezi uživateli Skype (oba volající mají nainstalován Skype)
je zdarma, šifrováno a to kdekoliv na světě a neomezeně na délce hovoru. Skype není citlivý na
omezené síťové prostředí a poskytuje slušnou kvalitu služby. Ovšem slůvko
zdarma neodpovídá úplně realitě.
Skype si vytváří vlastní překryvovou distribuční síť a pokud se nacházíte na dostatečně kapacitní síti,
bez Vašeho vědomí z Vašeho počítače udělá ústřednu, přes kterou směruje hovory. Využije tedy
jak kapacitu Vašeho stroje tak i síťové pásmo, které máte k dispozici. Kód i komunikační protokol
jsou proprietární, uživatel k nim nemá přístup. Skype podporuje nejen hlasovou komunikaci, ale také
výměnu videa a datových souborů. V některé organizacích je Skype kvůli využívání sítě
zakázán.
Tímto Vás nechceme od užívání Skype odrazovat, ale potenciální nebezpečí je třeba si uvědomit.
3.2 Ekiga
Dalším oblíbeným klientem je Ekiga
2, starším jménem
GnomeMeeting. Je šířen pod licencí GNU/GPL a má otevřený zdrojový kód. Ekiga podporuje jak
signalizaci nad protokolem SIP, tak nad protokolem H.323. Na platformě Linux je součástí některých
distribucí, ale je i volně ke stažení ve formě již připravených instalačních balíků
či zabalených zdrojových kódů. Pro platformu Windows existuje Ekiga jako betaverze.
Stažení i instalace na obou platformách, v případě použití připravených binárních
instalačních balíků, jsou operace, které zvládne i méně zkušený uživatel.
Na platformě Windows dojde během instalace k nainstalování prostředí GTK+,
což je grafické prostředí, ve kterém Ekiga běží.
Při prvním spuštění Ekiga automaticky otevře Asistenta pro první nastavení,
což je jednoduchý průvodce, který umožní v deseti krocích nastavit Ekigu dle potřeb uživatele.
Velmi pozitivní je možnost nechat si zdarma vytvořit SIPovou adresu na serveru
ekiga.net, která je nabídnuta jen jako možnost a není uživateli nijak vnucována.
Další, v dnešní době velmi užitečnou, položkou asistenta je automatická detekce typu
použitého překladu adres, takzvaného NATu. Po zjištění typu NATu Ekiga navrhne vhodná opatření,
aby vše fungovalo jak má. Vlastní provedení těchto opatření je již na uživateli samotném.
I Ekiga umí pracovat s videem, podpora videokodeku je však velmi omezená vzhledem k licenčním
podmínkám (typicky jen h.261). Velké očekávaní je vkládáno do verze 3.
V Linuxu mohou být obecně problémy s videem, protože stav ovladačů kamer není na takové úrovni jako ve Windows;
především protože výrobci, zdá se, stále ještě nevidí uživatele Linuxu jako zajímavou skupinu.
3.3 X-Lite
X-Lite je VoIP klient vyvíjený společností CounterPath, dříve známou jako Xten. X-Lite
je dostupný na webové adrese společnosti CounterPath
3 a je ke stažení ve verzi 3.0 pro platformy Windows,
Linux a Mac. Je dostupný zdarma,
má však uzavřený zdrojový kód. Tento VoIP klient podporuje signalizaci pouze nad protokolem SIP.
Společnost CounterPath vyvíjí ještě další dva VoIP klienty, Bria a eyeBeam, které jsou však placené.
Než je uživateli umožněno stažení tohoto VoIP klientu ze stránek výrobce,
je třeba zadat e-mailovou adresu, na kterou je následně zaslána žádost o vyplnění dotazníku.
Pro platformu Windows je ke stažení klient s instalátorem, pro Linux pouze zabalený binární
soubor, který stačí rozbalit a spustit. Během instalace na Windows se X-Lite dotáže,
zda se má spouštět okamžitě po naběhnutí systému. Při prvním spuštění se otevře
konfigurační okno, kde je možno vyplnit všechny důležité údaje, jako je nastavení
registrace na registrar server či zda má být použit proxy server pro odchozí hovory.
Podstatným omezením X-litu je jen jeden účet, což však na vyzkoušení může stačit.
Poskytuje také méně kodeků. Neumí TLS transport a šifrování medií (placené verze ano).
Všechny modely zobrazí během hovoru po stisku
ctrl+f9 v pravém dolním rohu plochy
údaje o spojení - jako dohodnuté kodeky, zpoždění, ztráty, použitá kapacita.
3.4 SJphone
SJphone je VoIP klient vyvíjený společností SJ Labs
4 a je dostupný ke stažení pro Windows, Linux, Mac
a pro kapesní počítače vybavené platformou Windows CE.
Stejně jako X-Lite je i SJphone dostupný zdarma, má ale uzavřený zdrojový kód. Podporuje
signalizaci nad protokoly SIP, H.323 a XMPP
5.
Stažení VoIP klientu SJphone není nijak limitováno. Při instalaci na platformě Windows
se SJphone bez jakéhokoliv vědomí uživatele přidá mezi programy spouštěné
po nastartování systému, a po dokončení instalace se okamžitě spustí.
Na platformě Linux stačí rozbalit obsah staženého souboru a spustit binární soubor.
Po prvním spuštění se otevře průvodce nastavením zvukových zařízení. Bohužel, další
nastavení musí uživatel hledat v menu sám. Menu je naštěstí docela přehledné. Lze v něm
nastavovat vlastnosti zvuku, používané zvukové kodeky či vzhled klienta.
Sjphone je pouze zvukovým nástrojem.
3.5 Linphone
Linphone
6 je projekt
s otevřeným zdrojovým kódem, který je volně šiřitelný pod licencí GNU/GPL. Podporuje
signalizaci pouze nad protokolem SIP. Linphone je ke stažení pro platformy Windows a Linux.
Instalace na obou platformách je naprosto bez potíží.
Linphone nenabízí při prvním spuštění žádného průvodce nastavením. Paradoxně,
i když má oproti všem ostatním porovnávaným VoIP klientům Linphone nejméně
konfiguračních položek, umožňuje nastavit nejvíce relevantních parametrů.
Samozřejmostí je možnost nastavení registračních údajů zasílaných na registrar server,
nastavení zvukových zařízení a zvukových kodeků, které se mají používat.
Co je ale důležitější, Linphone umožňuje v menu vybrat, jaká verze IP protokolu
se má používat, jaké porty má používat pro přenos SIPových zpráv, audia a videa
a jakou veřejnou IP adresu má uživatelův router. Po zadání těchto údajů je již
nastavení firewallu a domácího routeru zcela jednoduché.
Během testování došlo k zjištění, proč je Linphone pro Windows označen jako nestabilní.
SIPová signalizace na začátku hovoru proběhla korektně, ale jakmile mělo dojít k navázání RTP spojení,
Linphone provedl neplatnou operaci a předčasně se ukončil. Výsledkem bohužel je, že Linphone
je na Windows aktuálně nepoužitelný.
Linuxová binární verze nepodporuje komunikaci videem, je potřeba rekompilace.
3.6 WengoPhone
VoIP klient WengoPhone
7, občas také nazývaný OpenWengo,
má otevřený zdrojový kód a je volně šiřitelný pod GNU/GPL licencí. Podporuje signalizaci pouze
nad protokolem SIP. Je dostupný pro platformy Windows, Linux a Mac. Navíc je možné WengoPhone stáhnout
a používat i jako rozšíření do prohlížeče webových stránek
Firefox
8.
WengoPhone je dostupný pro Windows ve formě instalátoru, pro Linux je pak dostupný
binární instalační balíček. V obou případech se aktuálně jedná o verzi 2.1.2.
Instalace je na obou platformách bezproblémová.
WengoPhone umožňuje zadat při prvním spuštění registrační údaje, registrar server
a odchozí proxy server, případně vytvořit nový SIPový účet u
wengo.com.
Bohužel, tím prakticky možnosti konfigurace sítě a SIPu končí.
V případě použití účtu u
wengo.com používá WengoPhone pro překonání NATu
proprietární řešení na bázi HTTP tunelu.
3.7 SIP Communicator
Posledním zde uváděným VoIP klientem je SIP Communicator
9.
Jedná se o klienta s otevřeným zdrojovým kódem šířeným pod licencí GNU/GPL.
Zvláštností tohoto klienta oproti ostatním testovaným je, že je napsaný v jazyce Java.
Tím je zajištěna jeho funkčnost na obou testovaných platformách. SIP Communicator,
jak již název napovídá, využívá signalizaci nad protokolem SIP. Kromě toho ovšem
implementuje i mnoho protokolů pro zasílání textových zpráv, jako jsou XMPP,
AIM/ICQ, MSN, RSS a některé další.
Ke stažení je SIP Communicator dostupný s instalátorem pro Windows,
jako instalační balíčky pro Linux, s instalátorem napsaným v Javě, či jako zdrojové kódy.
Instalace probíhá na obou platformách bez potíží.
I přesto, že je SIP Communicator rozsáhlý projekt, má překvapivě málo konfiguračních položek.
Prakticky jediné, co lze nastavit, jsou registrační údaje, adresa a port registrar serveru,
adresa a port proxy serveru a způsob udržování spojení. Tento VoIP klient
tedy uživatele odsuzuje v případě potřeby překonat NAT k nutnosti
použití odchozího proxy serveru. Žádná možnost nastavení zvukových
zařízení ani kodeků se zde taktéž nenalézá.
4 Závěr
Určitě byste během chvíle objevili další VoIP klienty. Zde byl uveden pouze výběr na ty často používané
a něčím zajímavé. Stejně tak se zde mohl objevit Twinkle s podporou pro SRTP/ZRTP a pro zapřísáhlé MACisty
Xmeeting. Ale to by šlo do nekonečna a to není účelem tohoto příspěvku.
Snad ještě zmiňme ZRTP10 - jako blok, který lze teoreticky použít k jakémukoliv SIP VoiP klientu
(Win,Lin,Mac) jako vřazený prvek, který umožní přidat šifrování medií včetně obrany proti
útoku typu Man in the Middle, protože bezpečnost hlasové komunikace je důležitá.
Čtenáři, který se nepohybuje v této problematice, jde určitě z té spousty nových termínů a zkratek hlava kolem.
Pro začátek s VoIP není třeba rozumět všem zde uvedeným detailům, ale pro pokročilejšího čtenáře
to určitě bude mít smysl. Proto neklesejte na mysli a v případě potřeby se obraťte na autory.
Všechny klienty otestoval pod platformami Linux a Windows a ověřil jejich funkčnost
Michal Vávra (voodoocz@mailmunicz) a vážným zájemcům o tuto problematiku
je ochoten poradit. Za cenné rady děkujeme J. Růžičkovi z CESNETu.
IP telefonie je zajímavým úkazem mezi síťovými aplikacemi. Lze na ní sledovat konvergenci Internetu
a telekomunikační sítě. Je také užitečným pomocníkem, který pomáhá spojovat lidi na libovolné
vzdálenosti nejpřirozenějším způsobem, tedy hlasovou komunikací. V tomto článku jsme nezodpověděli
řadu otázek a ukázali jen zlomek možností. Příště bychom se rádi vrátili a ukázali možnost
telekonferencí v síti CESNET.
ÚVT MU, poslední změna 14.11.2011