Billigere VoIP-Telefone mit IAX-Protokoll

21.04.2005
Ein neues Protokoll soll die Implementierung von VoIP vereinfachen und die Kosten für die Endgeräteentwicklung wie Telefone und Adapter senken.

Klassische Telefone dürften deshalb noch so weit verbreitet sein, weil sie nicht nur billig sind, sondern sich auch einfach per Plug and Play anschließen lassen. VoIP-Telefone sind dagegen in der Regel nicht nur teurer, sondern aufgrund der verwendeten Protokolle in vielen Netzumgebungen schwierig und zeitaufwändig zu konfigurieren.

Ein Punkt, der auch Mark Spencer störte. Eigentlich wären die Befindlichkeiten Spencers nicht weiter erwähnenswert, würde es sich bei ihm nicht um den Entwickler der Open-Source-VoIP-TK-Anlage "Asterisk" handeln. Wie damals bei der Entwicklung von Asterisk, als Spencer die hohen Preise der etablierten VoIP-Anbieter kritisierte, war er auch in Sachen IP-Telefone nicht bereit, die Marktlage einfach zu akzeptieren. Er analysierte vielmehr, warum VoIP-Telefone einerseits so teuer, andererseits so umständlich einzurichten sind.

Als einen Kostentreiber machte Spencer die bei der IP-Telefonie verwendeten Protokolle wie SIP (Session Initiation Protocol) oder RTP (Real Time Protocol) aus. Als weiteren Knackpunkt identifizierte der Asterisk-Vater die Network Adress Translation (NAT), die häufig zu einem hohen Konfigurationsaufwand führt, wenn IP-Telefone mit privaten Adressen hinter einem Router mit nur einer öffentlichen IP-Adresse betrieben werden.

Um diese Probleme zu umschiffen, hatte Spencer die Idee, ein neues Protokoll zu entwickeln, das sowohl weniger Bandbreite für die Signalisierung und den Transport der Sprache benötigt als auch gleichzeitig eine interne, transparente Unterstützung für NAT-Umgebungen beinhaltet. Aus diesen Überlegungen heraus entstand das neue Protokoll Inter-Asterisk-Exchange (IAX). Glaubt man den Ausführungen von Spencer, so lassen sich mit IAX unter Verwendung eines G.729-Codecs (dieser übernimmt die Sprachkomprimierung für die einzelnen Telefonate) dreimal so viele VoIP-Telefonate über eine 1-Mbit/s-Verbindung transportieren als mit den herkömmlichen Protokollen. Eigenen Angaben zufolge konnte Spencer so über 100 Telefonate auf einer 1-Mbit/s-Leitung abwickeln.

Diese Leistungssteigerung erreichte der Tüftler dadurch, dass er aus technischer Sicht an drei Punkten ansetzte: den Protokollen, der Befehlssyntax sowie den Netz-Layern.

So verwendet IAX anstelle des komplexen Real Time Protocol (RTP) einfachere UDP-Pakete (User Datagram Protocol), die über einen einzigen Internet-Port (in der Regel Port 4569) transportiert werden. Der zweite Unterschied zur klassischen VoIP-Implementierung liegt darin, dass IAX keine Textkommandos zur Steuerung nutzt, sondern nur Binärcode, also Maschinensprache. Dies senkt den Overhead deutlich. Ferner vereinfachte Spencer die Signalisierung der VoIP-Telefonate: Statt komplexe IP-Protokolle auf den höheren Netzebenen abzuarbeiten, setzt IAX bereits auf der Layer-2-Ebene an. Damit muss IAX nicht langwierig mit einer fremden IP-Adresse eine Verbindung aushandeln, sondern kann die Daten direkt an den Absender zurücksenden. Um dennoch eine eventuelle Störung auf der Leitung entdecken zu können, sendet IAX konstante Ping-pong-Anfragen. Für die eigentliche Signalisierung verwendet Spencer dann Dualtone Multifrequence Tones, die auf Netzebene 2 verschickt werden.

Effizientere Sprachübertragung

Einen weiteren Vorteil bietet IAX bei der eigentlichen Sprachübertragung: Die Audiopakete benötigen nur noch einen 4 Byte großen Header und verursachen damit weniger Overhead. Noch größer sind die Vorteile, so heißt es, wenn mehrere Gespräche gleichzeitig geführt werden. Dann verschicke IAX nämlich die Daten der verschiedenen Übertragungskanäle nicht getrennt, sondern in gemeinsamen Paketen und reduziere so nicht nur die Zahl der Header, sondern auch der verwendeten Pakete. Ein Punkt, der besonders für die Implementierung von VoIP in Wireless LANs mit ihrer begrenzten Bandbreite von Interesse ist.

Beim VoIP-Hersteller Digium, dem kommerziellen Arm von Spencers Open-Source-Aktivitäten, ist man davon überzeugt, dass sich mit Hilfe des IAX-Protokolls künftig ATAs für rund zehn Dollar bauen lassen. Heute kosten diese Analog Telephony Adapter, mit denen klassische Telefone an VoIP angeschlossen werden, im Schnitt zwischen 50 und 90 Euro. Dieser Kostenvorteil, so erklären Digium-Mitarbeiter, rührt daher, dass ein ATA auf IAX-Basis deutlich geringere Hardwareanforderungen habe als ein heute üblicher VoIP-Adapter. Bereits ein 8-Bit-Mikroprozessor, 4 KB RAM sowie 64 KB Flash Memory würden ausreichen, um die gesamte Software für den IAX-Stack und die Intelligenz zum Ansteuern von Telefon und Ethernet in einem Adapter unterzubringen.

So vielversprechend der Ansatz auch klingt, die ganze Sache hat einen Pferdefuß: Im Unterschied zum heute so populären SIP handelt es sich bei IAX noch um einen nicht dokumentierten Standard. Über diese Tatsache können auch die Bestrebungen etlicher Hersteller, die IAX in ihre Produkte integrieren wollen, nicht hinwegtäuschen.