Linux-Magazin-Logo Die Zeitschrift für Linux-Professionals

Grundlagen: Voice-over-IP

Anders telefonieren

Jörg Reitter

Telefonieren übers Inter- und Intranet galt während der Dotcom-Blase als hippe Technologie - nur damals war VoIP denkbar unkomfortabel. Heute dürfen Privatanwender und Unternehmen dagegen mit ausgereifter VoIP-Software arbeiten und spezielle Provider verbinden preisgünstig VoIP-Netz und Festnetz.

Als Ersatz für den Zweidraht, über den heute die analoge oder ISDN-Telefonie läuft, drängt sich Voice-over-IP (VoIP) auf, das Sprache in IP-Pakete verpackt und kostengünstig über das Internet transportiert. Das Transportmedium Zweidraht bleibt dabei zwar erhalten, aber die Zugangstechnologie ändert sich, da für VoIP ein Internetzugang genügt. Der teure Festnetzanschluss darf endgültig in Rente gehen.

Für private Telefonkunden, die lediglich einen Anschluss besitzen, kommt die VoIP-Telefonie recht günstig daher. Als Endgerät empfiehlt sich ein Softphone für den Linux-PC - bis auf Soundkarte und Headset verlangt dies keine weiteren Investitionen (siehe auch Artikel "Wähl mal virtuell").

Anwender, die nicht ständig am Computer telefonieren wollen, besorgen sich ein Hardware-VoIP-Telefon. Die sind auf dem freien Markt mit 150 bis 250 Euro zwar relativ teuer, aber wer sich die Hardware von einem VoIP-Provider sponsern lässt, kommt günstiger weg. Zudem kann er sicher sein, dass das VoIP-Telefon auch alle nötigen Technologien unterstützt, um über den Provider zu telefonieren. Was man als Privatkunde oder im Firmennetz an VoIP-Hardware benötigt, zeigt der Artikel "Weg mit dem Schrott".

Global erreichbar mit VoIP-Providern

Wem es zu dumm ist, sich per E-Mail zu einem VoIP-Gespräch verabreden zu müssen, und wer zudem aus dem Fest- und Mobilfunknetz anwählbar sein möchte, kommt nicht um einen VoIP-Provider herum. Der versorgt seine Kunden mit echten Telefonnummern. Zusätzliches Bonbon: Gespräche innerhalb eines Providernetzes sind kostenlos. Allerdings muss ein DSL-Anschluss bereitstehen, da ein Gespräch mit rund 80 KBit/s in beiden Richtungen die Kapazität eines ISDN-B-Kanals mit 64 KBit/s deutlich übersteigt.

Bis Redaktionsschluss tummelten sich in Deutschland gerade mal vier Anbieter, die lediglich einen Datenanschluss voraussetzen und somit als vollwertiger Ersatz für die Festnetztelefonie gelten dürfen. Alle setzen auf den offenen Standard SIP[12] und liefern die VoIP-Hardware wie Terminaladapter oder SIP-Hardwaretelefon kostenlos oder gegen einen Aufpreis.

Vor dem Eintritt in die schöne neue VoIP-Welt sollte der Interessent in Ruhe die Preise in Tabelle 1 vergleichen. Broadnet-Mediascape und Nikotel verlangen eine Grundgebühr, in der bereits Gesprächsminuten enthalten sind. Andere, etwa Indigo Networks, verzichten auf eine Grundgebühr, verlangen aber, dass der Kunde die Gesprächskosten vorschießt (Prepaid).

Tabelle 1: VoIP-Provider
AnbieterBroadnet-MediascapeFreenetIndigo NetworksNikotel
Web[http://www.broadnet-mediascape.de][http://iphone.freenet.de][http://www.sipgate.de][http://www.nikotel.de]
Kosenstruktur
Grundgebühr monatlich9,99 Eurokeinekeine6,99 Euro
Abrechnungstakt: Erster/Folge60/60 s60/60 s60/60 s60/60 s
Postpaid/PrepaidPostpaidPostpaidPrepaidPrepaid
Minutentarife (Auswahl)
netzinternkostenloskostenloskostenloskostenlos
Deutschland: Festnetz/mobil2,52/31,52 Cent1,0/19 Cent1,79/22,9 Cent1,9/22,7 Cent
USA: Festnetz/mobil5,1/37,0 Cent4,9/- Cent2,3/2,3 Cent2,9/- Cent
Japan: Festnetz/mobil88,07/119,97 Cent85,0/- Cent3,6/18,2 Cent3,9/28,4 Cent
Anschluss
ProtokollSIPSIPSIPSIP
Anschluss HW-Telefon möglichjaneinjaja
gestellte HardwareTerminaladapter, SIP-TelefonkeineTerminaladapter, SIP-TelefonTerminaladapter, SIP-Telefon
Roamingneinjajaja
Firewall-Supportjaneinjaja

Kurz anrufen für 1 Cent

Bei den Kosten pro Anruf in externe Netze bieten Provider, die viele Gateways ins Festnetz unterhalten, die günstigeren Tarife pro Abrechnungszeitraum. Bei Indigo Networks oder Nikotel kostet ein Gespräch ins deutsche Festnetz knapp 2 Cent pro Minute. Etwas teurer ist das Gespräch bei Broadnet-Mediascape. Der DSL-Provider verlangt rund 2,5 Cent pro Minute, da er viele Gespräche übers reguläre Festnetz leitet.

Am günstigsten telefoniert der VoIP-Kunde zurzeit bei Freenet für 1 Cent pro Minute. Allerdings erlaubt der Provider gegenwärtig nur Gespräche innerhalb Deutschlands. Bei allen anderen Anbietern erreichen die VoIP-Nutzer auch Teilnehmer in vielen Staaten Europas und Asiens sowie in den USA.

Da der VoIP-Markt in Deutschland gerade erst in Fahrt kommt, sollten Kunden öfter die Preise vergleichen und das eigene Gesprächsverhalten analysieren. Hinzu kommt, dass nicht jeder Staat im Provider-eigenen VoIP-Netz liegt und auch Gespräche zu anderen VoIP-Providern bisher nicht kostenlos sind. Das liegt daran, dass jeder Provider einen eigenen Registrar betreibt, der sich nicht mit den anderen austauscht. Abhilfe wird hier erst der globale Messaging-Verzeichnisdienst ENUM schaffen.

ENUM als globales VoIP-Verzeichnis

Die Unified-Messaging-Idee vereint alle Kommunikationsformen unter einem Dach: Telefon, E-Mail, Mobilfunk und Web. Alle Adressen sollen in Verbindung stehen, und zwar transparent für den Benutzer, der nur eine Applikation benötigt. Er registriert lediglich eine herkömmliche Telefonnummer als Domain. Diese ENUM-Domains (Telephone Number Mapping, RFC 2916,[15]) setzen auf dem DNS auf, es entsteht ein globales Adressverzeichnis, in dem die Telefonnummern mit einer Liste von URIs verknüpft sind[1].

Der zentrale Registrar E164.arpa ist nach dem ITU-Standard E.164 benannt, der das Schema für die Verteilung von herkömmlichen Telefonnummern vorgibt. Das ENUM befindet sich zurzeit noch in der Testphase. Telefonnummern-Domains kann man daher kostenlos registrieren, das Validieren der Daten erfolgt mittlerweile auch schnell und sicher. Der deutsche Registrar Denic bietet über sein Mitglied Portunity diese automatisierte Variante an[2].

Das Besondere an solchen Telefon- Domains ist, dass sie verschiedene Messaging-Systeme wie IP-Telefon, E-Mail oder ISDN-Telefon miteinander in Beziehung setzen. Per Checkbox kann ein Benutzer angeben, dass seine URIs beim Versuch einer Kontaktaufnahme in einer bestimmten Reihenfolge abgefragt werden, falls das von Anrufer angeforderte Ziel nicht verfügbar ist. Dann bekommt den Angerufene zum Beispiel eine E-Mail zugestellt.

E164.org als Alternative

Wohl weil sich ENUM recht schleppend verbreitet und wegen des Zögerns, welches Verfahren nun zur Validierung einzusetzen sei, entstand ein weiteres Directory unter der Domain [e164.org]. Es nutzt zur Validierung ein Rückruf-PIN-Verfahren. Der Benutzer bekommt auf die angemeldete Nummer eine PIN, die er dann auf einer bestimmten Website eingibt. Allerdings ist bei E164.org eine eigene VoIP-Telefonanlage wie Asterisk nötig, um den Verzeichnisdienst zu nutzen. Das ENUM-Projekt hingegen unterstützen nahezu alle VoIP-Provider.

Wer VoIP ausschließlich im Peer-to-Peer-Modus ohne Provider betreibt, muss ebenfalls nicht auf ein komfortables Teilnehmerverzeichnis verzichten. Der Entwickler des H.323-Softphone Gnomemeeting betreibt einen so genannten ILS-Dienst (Internet Locator Service), der die aktuelle IP-Adresse des Teilnehmers ermittelt und sie in eine Datenbank einträgt. Die ILS-Datenbank wird alle paar Minuten aktualisiert, sodass Gnomemeeting- sowie MS-Netmeeting-Benutzer einfach über einen Klick im lokalen Adressbuch zusammenfinden.

Linux als VoIP-Server

Es gibt erfreulich viele Software-Telefonanlagen, die unter Linux laufen - wohl wegen dessen Zuverlässigkeit und Flexibilität. Die Pakete befinden sich in unterschiedlichen Entwicklungsstadien. Einige Software-Telefonanlagen wie Asterisk (siehe Artikel "Ein Stern am Telefonhimmel") sind Open Source, werden jedoch unter dem Dach eines Unternehmens programmiert. Asterisk integriert neben H.323 auch SIP sowie die hauseigenen Protokolle IAX/IAX2 und gilt als eine der vollständigsten, wenn auch komplexesten Software-Telefonanlagen.

Den gleichen Ansatz verfolgt Vovida Networks mit dem VoIP-Framework Vocal[3]. Die aktuelle Release 1.5.0 enthält diverse SIP-Server und bietet via CVS ein SIP-nach-H.323- und ein SIP-nach-MGCP-Gateway sowie einen Client und mehrere Tools. Eine weitere SIP-Anlage ist der SIP Express Router SER[4], der ebenfalls als Registrar, Redirect-Server oder Proxy agieren kann.

Andere Software wie PBX4Linux von Andreas Eversberg[5] muss sich vor den genannten Lösungen nicht verstecken. PBX4Linux implementiert zurzeit zwar nur H.323 für VoIP. Die Unterstützung für SIP steht aber ganz oben auf der To-do-Liste. Mit speziellen ISDN-Adaptern (HFC-Cards) ersetzt PBX4Linux sogar eine Hardware-ISDN-Telefonanlage, da es diese Karten erlauben, ein ISDN-Telefon direkt anzuschließen.

Weitere OSS-Projekte sind GNU Bayonne[6], OpenPBX der Firma Voice Tronics[7] oder das Isdn2H323-Gateway der Firma Telos[8], zu dem bereits ein Workshop im Linux-Magazin erschien[9]. Eine freie Software für ein VoIP-Serversystem auftreiben ist also nicht weiter schwierig. Das System aufziehen und eventuell mehrere LANs koppeln, das kommt allerdings als eigentliche Arbeit auf den Administrator zu. Zudem steht doppelter Verwaltungsaufwand an, bis die Hardware-Telefonanlage endgültig vom Netz geht.

Bei allem Konfigurationsaufwand für einen Linux-VoIP-Server sollte man sich den Mehrwert vor Augen führen: Das System kann als Schulungsmaterial dienen, als Backup für ein kommerzielles VoIP-Gateway fungieren oder im Einzelfall Kosten sparen. Doch gerade beim Punkt Kosten empfiehlt es sich, kühlen Kopf zu bewahren. Erstens kostet die Hardware ein Sümmchen und mit der Verfügbarkeit ist es bei der Kombination Ethernet und IP auch so eine Sache.

VoIP im Unternehmen

Als eines der wichtigsten Kriterien bei der Telekommunikation steht die Erreichbarkeit ganz oben. Fällt die Telefonanlage länger aus, ist der Imageschaden noch das geringste Übel. Der Ausfall des Telefonnetzes in einem Unternehmen ist oft erheblich umsatzrelevant; ein mehrtätiger Ausfall gerät darum zur Horrorvorstellung schlechthin.

IP-basierte Datennetze sind nicht gerade berühmt für ihre Zuverlässigkeit - im Gegensatz zu Telekommunikationsnetzen wie dem ISDN-Festnetz. Das heißt für das Telefonieren via VoIP, dass nicht nur der Provider zuverlässig sein muss, sondern auch der Administrator des LAN plötzlich im Brennpunkt der Telekommunikation steht. Normalerweise führen externe Mitarbeiter die Wartung der Hardware-TK-Anlage aus, da solche Anlagen nicht gerade einfach zu verwalten sind. Bei VoIP fällt diese Aufgabe dem Verwalter zu, der dann nicht nur mit defekter Hardware kämpfen, sondern auch Ausfälle der Software rechtfertigen muss.

Die VoIP-Kommunikation ist risikoreich für ein Unternehmen. Daher sind ausführliche Testsetups unerlässlich, während die herkömmliche Hardware-Anlage weiter läuft. Dies lässt sich einfach mit Softphones erreichen, die ausschließlich die Teilnehmer eines LAN verbinden. Ein Setup ist gleich in mehrerer Hinsicht geschickt: Das Unternehmen benötigt keinen Provider, muss sich weder mit den Problemen durch NAT noch mit der Konfiguration der Firewalls beschäftigen und kann in aller Ruhe die Kinderkrankheiten der VoIP-Kommunikation kurieren. Im LAN wird lediglich eine VoIP-Telefonanlage benötigt, die sich nach der Testphase gleich an die TK-Anlage anschließen lässt, um einen sanften Übergang zu ermöglichen (siehe Abbildung 1).

Abbildung 1: In der IP-Telefonanlage laufen VoIP-Traffic aus dem LAN und die Gespräche der TK-Anlage zusammen. Gleichzeitig verbindet die IP-Anlage das Unternehmen mit dem öffentlichen Telefonnetz.

Höhere Netzwerklast durch VoIP

Mit VoIP kommt mehr Last ins lokale Netzwerk. Ein Telefonat belegt abhängig vom Codec zwischen 6 und 64 KBit/s Bandbreite plus einige KBit/s Overhead, womit sich die tatsächlich erforderliche Bandbreite in eine Richtung bei zirka 80 KBit/s bewegt. Ein 100-MBit-Ethernet sollte diese Kapazität leicht liefern können. Eine genaue Übersicht über die verschiedenen Codecs listet[10].

Für ein kleines Netzwerk mit weniger als 50 Teilnehmern reicht ein Pentium- oder Athlon-Rechner als Basis für die Software-Telefonanlage völlig. Im Budget schlagen hier digitale Headsets oder Hardware-IP-Telefone zu Buche. Sie lassen sich direkt an der RJ45-Buchse anschließen. Idealerweise liefern dabei spezielle Switches gleich den für IP-Telefone notwendigen Speisestrom. Dieses PoE-Verfahren (Power-over-Ethernet) ist seit 2003 als IEEE 802.11af standardisiert und in modernen Switches mittlerweile häufig anzutreffen.

VoIP-Protokolle im Überblick

Die Protokolle im VoIP-Netz kümmern sich um den sauberen Auf- und Abbau der Verbindungen und die Signalisierung oder schalten Kanäle für Mehrfachverbindungen wie Konferenzen zusammen. 1995 empfahl die International Telecommunications Union (ITU) mit H.323 das erste VoIP-Protokoll[11]. H.323 orientiert sich eng an ISDN und bildet dessen Schema auf die IP-Welt ab.

Das Session Initiation Protocol SIP, das die IETF (Internet Engineering Task Force) im RFC 3261 beschreibt[12], nimmt sich Protokolle wie HTTP zum Vorbild. Damit lässt es Entwicklern viele Freiheiten, was diese auch gerne ausnutzen. Sowohl SIP als auch H.323 definieren verteilte Architekturen und stellen Peer-to-Peer-Protokolle dar.

Eine zentrale Lösung, um Multimedia- und Sprach-Applikationen zu erstellen, bringt die Erweiterung H.248/Megaco des Media Gateway Control Protocol MGCP[13]. Sie entstand in Zusammenarbeit von ITU und IETF. H.248/Megaco arbeitet parallel zu H.323 und SIP, trennt die Nutzdaten von der Signalisierung und kommt nur zwischen Netzgrenzen zum Einsatz.

H.323 war der Erste

Als frühe Entwicklung lehnt sich H.323 stark an die Empfehlung H.320 an, die das Bildtelefon beschreibt und somit Sprache und Video zusammenbringt. Im Laufe der Jahre kamen immer mehr Merkmale hinzu, letztes Jahr erschien Version 5 des Protokolls. Zahlreiche Unternehmen haben sich auf H.323 gestürzt und integrierten das Protokoll in ihre VoIP-Produkte. Vorteilhaft für seine Akzeptanz war anfangs, dass der Standard so gut wie alles vorschreibt. Doch die Hersteller pfiffen zusehends auf die Vorgaben - H.323 leidet heute an vielen zueinander nicht kompatiblen Endgeräten und Gateways. IT-Verantwortliche geraten sofort in die Abhängigkeit eines bestimmten Hersteller.

Negativ für Entwickler-Newcomer ist zudem, dass H.323 diverse weitere Protokolle nutzt, für die Lizenzgebühren fällig werden. Dienstleistern sind die vielen Protokolle ein Dorn im Auge, da die Komplexität beim Aufbau eines H.323-Netzes sehr hoch ist und das Netz anfällig für Fehler macht. Erst für gut befunden, dann als weiterer Komplexitätsfaktor entlarvt wurde die Umwandlung der (Steuer-)Nachrichten ins Binärformat. Zwar geht das Protokoll so schonender mit der Bandbreite um, die Umwandlung frisst diesen Vorteil durch höhere Rechenleistung und längere Verarbeitungszeit aber wieder auf.

Es gibt auch Gutes über H.323 zu berichten: Als ältestes VoIP-Protokoll ist es in vielen Geräten integriert, was die Hersteller zum Wettbewerb zwingt. Mit dem integrierten Load-Balancing hat die ITU schon früh die Notwendigkeit erkannt, die zusätzliche Last gerecht im Netzwerk zu verteilen. Zudem lässt sich die H.245-Signalisierung verschlüsseln.

Wer sich unter die VoIP-Entwickler begeben will, sollte sich auf der Website von OpenH323[14] umsehen. Programmierern stellt das Projekt eine entsprechende Bibliothek als Open Source zur Verfügung, die unter der Mozilla Public License steht.

SIP - der Herausforderer

Als SIP die VoIP-Bühne betrat, entbrannte unter den Beobachtern gleich der Streit, welches Protokoll denn nun besser sei. Fest steht gegenwärtig nur, dass H.323-Geräte weit verbreitet sind, SIP aber aufgrund seiner Eigenschaften immer beliebter bei den Herstellern wird. Auch viele Linux-PBX-Anlagen oder Softphones unterstützen mittlerweile das Protokoll.

SIP baut auf bekannten Internetprotokollen wie etwa HTTP auf und ist als Application-Layer-Protokoll definiert. Applikationen sind beispielsweise der Auf- und Abbau von VoIP-Anrufen, die Event-Notification oder das Aufsetzen von Multimedia-Sessions. Letztere können neben den VoIP-Calls auch Multimedia-Konferenzen sein, die Sprache und Video, E-Learning oder ähnliche Applikationen umfassen. Eine Open-Source-Implementierung kommt mit O-SIP vom GNU-Projekt[16].

Neben HTTP benutzt SIP auch andere IETF-Protokolle. Das DNS (Domain Name System) und URLs kümmern sich um die Namensgebung. Über das Session Description Protocol (SDP) tauschen die einzelnen Knoten ihre Fähigkeiten aus und Multipurpose Internet Mail Extensions (MIME) sorgen für die Integration von Applikationen. Damit lässt sich SIP einfach in andere Internet-Technologien respektive -Applikationen einbinden. Auch das Adressierungsschema ist nicht unbekannt: Die SIP-Benutzer erhalten E-Mail-ähnliche Adressen wie beispielsweise »sip:anton@foo .de«. Das RFC 2806 bringt zudem so genannte Tel-URIs wie »tel:+99.12345 .6789« ins Spiel, die sich an normalen Telefonnummern orientieren.

Das SI-Protokoll ist recht flexibel bei der Wahl des Transportprotokolls. Es kann UDP, TCP oder SCTP nutzen. UDP ist das effizientere Protokoll, da es den geringsten Overhead erzeugt. Dass SIP zudem selbst für Retransmits sorgen kann, erleichtert außerdem den Umgang mit Firewalls und Multicast-Applikationen. Ein Nachteil der Basisspezifikation ist allerdings, dass sich von Haus aus keine Ressourcen reservieren lassen. Immerhin ist den Endgeräten eine Dienstklasse per SDP übermittelbar, was aber wieder alle Geräte in der Route unterstützen müssen.

SIP im Detail

Ein SIP-Netzwerk besteht aus mehreren Softwarekomponenten, die unterschiedliche Aufgaben wahrnehmen. Ein SIP-User-Agent (IP-Telefon, SIP-Gateway oder ein PC) baut die Session auf und wieder sauber ab. Ein SIP-Registrar-Server bildet Namen auf Adressen um, ähnlich wie der DNS. Unter anderem arbeiten noch zwei Arten von Proxies (Stateless und Forking) sowie ein Redirect-Server im SIP-Netzwerk, der SIP-Anfragen entgegennimmt und eine neue Location zurückliefert.

SIP spricht SDP

Die verschiedenen Elemente sprechen eine einheitliche Sprache, die aus Aufforderungen (Requests) respektive Methoden und Antworten (Responses) besteht. Die Basisspezifikation unterscheidet zwischen den Methoden »Invite«, »Ack«, »Options«, »Cancel«, »Bye« und »Register«. Wenn ein Anrufer einen anderen Teilnehmer einlädt (»Invite«), sendet der User-Agent eine in SDP abgefasste Beschreibung der Session. Diese kann ein Einzelgespräch sein oder eine Konferenz. Der angerufene User-Agent bestätigt die Anfrage mit einem »Ack«. Das Gespräch wird nach einem »Bye« beendet. Abbildung 2 zeigt den Ablauf einer Kontaktaufnahme.

Abbildung 2: Der lange Weg durchs Netz bei einem SIP-Call nutzt oben den Redirect-Modus und unten den Proxy-Modus.

Die User-Agents verständigen sich über einen Real Time Protocol Stream (RTP). Die SIP-Transaktionen wickelt ein Proxyserver ab, wobei die Options-Methode für den Austausch der von den Agents oder Servern unterstützten Funktionen dient. Eine laufende Session bricht die Cancel-Methode ab. Die Registrar-Methode übernimmt das Registrieren eines Clients im Location-Service.

Die Antworten (Re-sponses) kommen als Zahlencode zurück. Er zeigt den Erfolg oder Misserfolg einer Anfrage. Zudem informiert er über einen eventuellen Redirect, falls sich der Eingeladene an einer anderen Stelle als erwartet befindet. Eine Anfrage an »sip:anton@foo.de« kann damit zuerst im Büro stattfinden. Hebt dort niemand ab, versucht der Forking-Proxy die Anfrage an das Mobiltelefon weiterzuleiten und dann an eine alternative Adresse oder URL. Dies geht so lange, bis eine positive Bestätigung kommt.

Proxies leiten Anfragen im Namen der User-Agents weiter und benutzen zur Adressierung DNS-Server. Den Aufenthaltsort eines User-Agent erfahren die Proxies von Location-Servern, an die sie sich während des Call-Routings wenden. Die Benutzerdatenbanken auf diesen Location-Servern aktualisieren die Benutzer, die sich an dem Server registrieren, über ihren Agent.

SIP und die (Un-)Sicherheit

Beim Einsatz einer offenen Internet-Architektur wie SIP muss der IT-Verantwortliche mit weiteren Sicherheitsprobleme rechnen. Angreifer sind schwer zu lokalisieren und zurückzuverfolgen. So kann ein Angreifer von innen Pakete spoofen. Bei einer Manipulation des From-Eintrags in der Register-Methode lassen sich Anrufe umleiten. Der gleiche Eintrag in der Invite-Methode umgeht hingegen Anruf-Filter.

Daneben kann ein Angreifer Pakete aus dem Medien- oder dem Signalpfad mitschneiden. Gelingt es ihm, RTP-Pakete mitzuschneiden, kann er Anrufe mithören. Wer SIP-Pakete abfängt, ist in der Lage, Kommunikationsbeziehungen zu dekodieren. Billig-Mechanismen werden mit gefälschten Paket-IDs ausgetrickst und mit zuvor mitgeschnittenen Paketen sind Replay-Attacken ausführbar.

Beim Thema Sicherheit sind die Admins gefordert

Denial-of-Service-Attacken (DoS) sind geeignet, ein Unternehmen von der Kommunikation zur Außenwelt abzuschneiden. Solche Angriffe lassen sich erschweren, indem der Administrator die SIP-Devices und die Transmit-Elemente wie Proxies entsprechend konfiguriert. Weiterhin sollte er das Netz mit Intrusion-Detection-Systemen auf verdächtige Aktivitäten überwachen.

Um das Mitschneiden von Paketen zu verhindern, müsste die Netzwerkschicht verschlüsselt sein, was beispielsweise IPSec erledigt. Es sorgt dann zwar für deutlich höhere Sicherheit, ist aber relativ aufwändig zu verwalten, da es nur Netzwerk-weit implementiert wirksam ist. Die Medien-Datenströme lassen sich zudem per Secure-RTP sichern.

Den Spoofing-Attacken setzt der Administrator geeignete Authentifizierungstechniken entgegen. Die SIP-Invite/Register-Methoden zwischen User-Agent und Proxy lassen sich per HTTP-Digest-Authentification oder Zertifikate sichern. Ersteres nutzt ein Challenge-Response-Verfahren mit einem Pre-Shared-Key. Beim Zertifikat werden Teile des Headers und der Anfrage signiert. Die HTTP- Basic-Authentification verwendet ein Passwort im Klartext.

VoIP ohne Risiko testen

Die Erfolgsaussichten für Umsteiger auf VoIP sind gut: Die heute schon günstigen Preise der VoIP-Provider werden mit verstärktem Wettbewerb weiter sinken. Der Test solcher Provider in einer PC-Zeitschrift ergab, dass die Sprachqualität durchweg gut bis sehr gut ist[17]. Mit der ENUM-Domain bekommt der Nutzer ein weltweit anerkanntes Directory zur Hand, das es anderen Teilnehmern erlaubt, schnell Personen aufzufinden und zu kontaktieren.

VoIP-Clients für H.323 oder SIP bietet die Open-Source-Community reichlich. Häufig eignen sie sich sogar für Linux und Windows, was sich in heterogenen Umgebungen (und auf Dual-Boot-Systemen) günstig auswirkt. Auf der Server-Seite laufen diverse Soft-PBX-Anlagen unter Linux. Sie verbinden die ISDN-TK-Anlage mit dem VoIP-Netz und gefährden bereits getätigte Investitionen nicht. Zudem sind durch den Wegfall der Lizenzkosten Betrieb und Tests der neuen Technik kostengünstig zu realisieren.

Codecs, Jitter und Packet-Loss

Bei VoIP spielt die Zeit, die ein Paket vom Sender zum Empfänger benötigt, eine wichtige Rolle. Die Spanne hängt in erster Linie vom Netzwerk und den beteiligten Komponenten ab. Spricht der Teilnehmer, schickt das Softphone die Pakete in regelmäßigen Abständen ins Netz. Die IP-Pakete schlagen unter Umständen unterschiedliche Routen zum Ziel ein und treffen zu früh oder zu spät beim Empfänger ein. Dieser Übertragungsfehler heißt Jitter und das Softphone gleicht ihn mit einem Jitter-Buffer oder einem einstellbaren Delay-Wert aus. Der Buffer nimmt die Pakete entgegen und reicht sie zwar mit einer geringen Verzögerung, aber in regelmäßiger Reihenfolge an den Codec weiter.

Der Codec selbst kann auch Übertragungsfehler ausbügeln. Er kümmert sich vor allem darum, Fehler in der Paketreihenfolge (Sequence Error) auszugleichen. Sie entstehen, wenn Pakete bei Überlastung eines Netzwerkknotens neu geroutet werden müssen und dann länger bis zum Ziel unterwegs sind. Auch falls Pakete unterwegs verloren gehen (Packet Loss) oder erst mit erheblicher Verzögerung eintreffen, muss der Codec dies überspielen. Bis zu fünf Prozent der Pakete dürfen verloren gehen, ohne dass dies mit hörbaren Qualitätseinbußen verbunden ist. Bleiben jedoch mehr als zehn Prozent der Pakete auf der Strecke, dann nimmt der betroffene Teilnehmer die Lücken deutlich wahr.

Infos

[1] ENUM: [http://www.enum.org]

[2] Portunity: [http://www.portunity.net/article17010-3083.html]

[3] Vocal: [http://www.vovida.org/applications/downloads/vocal/]

[4] SIP Express Router: [http://iptel.org/ser/]

[5] PBX4Linux: [http://isdn.jolly.de/]

[6] GNU Bayonne: [http://www.gnu.org/software/bayonne]

[7] OpenPBX: [http://www.voicetronix.com/open-source.htm]

[8] Isdn2H323: [http://www.telos.de/linux/H323/]

[9] Marco Budde, "Telefonieren übers Intranet": Linux-Magazin 05/01

[10] Codecs: [http://www.voip-info.org]

[11] H.323: [http://www.packetizer.com/iptel/h323/]

[12] SIP: [http://www.ietf.org/rfc/rfc3261.txt]

[13] H.248/Megaco: [http://www.networks.siemens.de/solutionprovider/_online_lexikon/9/f011829.htm]

[14] OpenH323: [http://www.openh323.org/]

[15] ENUM-RFC: [http://www.ietf.org/rfc/rfc2916.txt]

[16] O-SIP: [http://www.fsf.org/software/osip/osip.html]

[17] Test VoIP-Provider, "Weltweit wählen": c't 09/04, S. 86