Inter-Asterisk eXchange - Inter-Asterisk eXchange

Inter-Asterisk eXchange ( IAX ) ist ein Kommunikationsprotokoll, das in der Asterisk- PBX-Software ( Private Branch Exchange ) enthalten ist und von einigen anderen Softswitches , PBX-Systemen und Softphones unterstützt wird. Es wird zum Transportieren von VoIP- Telefoniesitzungen zwischen Servern und zu Endgeräten verwendet.

Das ursprüngliche IAX-Protokoll ist veraltet und wurde durch eine zweite Version ersetzt, die allgemein als IAX2 bezeichnet wird. Das IAX2-Protokoll wurde im Februar 2010 nach Ermessen des RFC-Editors als informativer (Nicht-Standard-Track) RFC 5456 veröffentlicht .

Grundeigenschaften

IAX ist ein VoIP- Protokoll, das für alle Arten von Streaming-Medien einschließlich Video verwendet werden kann, jedoch hauptsächlich für IP-Sprachanrufe entwickelt wurde.

IAX verwendet einen einzelnen User Datagram Protocol (UDP) Datenstrom zwischen den Endpunkten sowohl für die Session - Signalisierung und Medien Nutzlasten. Daher wird nur eine einzige UDP- Portnummer verwendet , normalerweise 4569. Diese Funktion bietet Vorteile beim Durchlaufen von Netzwerkadressübersetzern an Netzwerkgrenzen, da sie die Firewall- Konfiguration vereinfacht . Andere VoIP-Protokolle verwenden normalerweise unabhängige Streams für Signalisierung und Medien, z. B. das Session Initiation Protocol (SIP), H.323 , und das Media Gateway Control Protocol (MGCP), die Medien mit dem Real-Time Transport Protocol (RTP) übertragen.

IAX ist ein binär codiertes Protokoll. Neuen Erweiterungsfunktionen muss ein neuer numerischer Code zugewiesen werden. In der Vergangenheit wurde dies nach dem internen Datenübergang von Asterisk-Modulen modelliert.

IAX unterstützt Trunking und Multiplexing von Kanälen über eine einzelne Verbindung. Beim Trunking werden Daten aus mehreren Sitzungen zu einem einzigen Paketstrom zwischen zwei Endpunkten zusammengeführt, wodurch der IP-Overhead reduziert wird, ohne dass zusätzliche Latenz entsteht. Dies ist bei VoIP- Übertragungen von Vorteil , bei denen IP-Header einen großen Prozentsatz der Bandbreite beanspruchen .

IAX2 unterstützt die native Verschlüsselung von Steuerungs- und Medienströmen mit AES-128 .

Ursprung

Beide Versionen des IAX-Protokolls wurden von Mark Spencer erstellt und ein Großteil der Entwicklung wurde in der Open-Source-Community von Asterisk durchgeführt.

Tore

Die Hauptziele von IAX sind die Minimierung der bei Medienübertragungen verwendeten Bandbreite, wobei besonderes Augenmerk auf die Steuerung einzelner Sprachanrufe und die Bereitstellung von NAT-Transparenz ( Native Network Address Translation ) gelegt wird. Es sollte einfach hinter Firewalls zu bedienen sein .

Nachteile

  • Umständliche Erweiterbarkeit: Aufgrund des Fehlens eines generischen Erweiterungsmechanismus müssen neue Funktionen in die Protokollspezifikation aufgenommen werden, wodurch das Protokoll weniger flexibel als H.323 , SIP oder MGCP ist .
  • Sicherheitslücke: Ältere Implementierungen von IAX2 waren anfällig für DoS-Angriffe zur Erschöpfung von Ressourcen, die der Öffentlichkeit zur Verfügung stehen. Obwohl für diese Probleme keine Lösungen vorhanden waren, wurde empfohlen, den UDP-Portzugriff auf bestimmte vertrauenswürdige IP-Adressen zu beschränken. IAX2-Ports mit Internetanschluss gelten als anfällig und sollten genau überwacht werden. Der zur Erkennung dieser Anwendungsschwachstellen verwendete Fuzzer wurde auf milw0rm veröffentlicht und ist im VoIPer- Entwicklungsbaum enthalten. Diese Probleme wurden im IAX RFC 5456 auf Seite 94 kurz erwähnt . Dieser Fehler tritt bei aktuellen Installationen von Asterisk oder anderen PBX-Anlagen nicht auf.

Siehe auch

Verweise

Externe Links