Flexibilitätskünstler
Voice-over-IP hat das Potenzial, Telefoniesysteme beinahe beliebig zu erweitern. Eine preisgünstige und flexible Lösung zum Aufbau einer VoIP-Infrastruktur ist Asterisk - nicht der bekannte Gallier ähnlichen Namens, sondern ein vollständig in Software realisierter Open-Source-VoIP-Switch.
- Torsten Krüger
- Dieter Michel
Asterisk läuft unter Linux und kann eine vorhandene „klassische“ Telefonanlage sowohl einbinden als auch ersetzen. Hauptsponsor der unter der GPL verbreiteten Soft-PBX ist die amerikanische Firma Digium, deren Mitarbeiter Mark Spencer Asterisk entwickelte und nach wie vor das Projekt koordiniert. Digium stellt unter anderem Asterisk-kompatible Schnittstellenkarten zur Anbindung analoger Endgeräte her, dadurch kann sich der Anwender zumindest für einen großen Teil der benötigten Hardware auf eine gute Softewareunterstützung verlassen.
Release Candidate 1.0 erschien am 18. Juli dieses Jahres. Grund genug, die Leistungsfähigkeit der Software auszuloten und ein beispielhaftes Umstiegsszenario auf Asterisk-Basis für einen mittelständischen Betrieb nachzuvollziehen.
Der Name Asterisk (engl: Stern(chen)) ist Programm: In vielen Betriebssystemen ist der „*“ ein Platzhalter für alle möglichen Inhalte. Ebenso steht die Software Asterisk dafür, die unterschiedlichsten Aufgaben in einem Telefoniesystem übernehmen zu können, auch solche, die mit VoIP (zunächst) nichts zu tun haben. Der Grund für diese Flexibilität liegt in der modularen Architektur, die beinahe alle gängigen Techniken einbinden kann, seien es VoIP-Protokolle wie SIP, H.323, MGCP und das Asterisk-spezifische Protokoll IAX oder traditionelle Verfahren wie T1, ISDN PRI und BRI sowie analoge PSTN.
| Akronymia | |
| CAPI | Common Application Programming Interface, standardisierte Programmierschnittstelle zum Ansprechen von ISDN-Hardware. |
| E1 | siehe ISDN PRI. |
| FXO | Foreign Exchange Office, Interface von Telefonie-Endgeräten, etwa die Buchse am analogen Telefon. |
| FXS | Foreign Exchange System/Subscriber, Gegenstück zu FXO, Interface der Nebenstellenanlage oder des Providers, „die Buchse an der Wand“. |
| H.323 | Standard zur Übertragung von Audio und Video über IP-Netze aus der Telekommunikationswelt, 1996 verabschiedet von der International Telecommunication Union (ITU); Alternative zu IAX, MGCP und SIP. |
| IAX | Internet Asterisk Exchange, Asterisk-eigenes Protokoll zur Übertragung von Audio über IP-Netze, Alternative zu H.323, MGCP und SIP. |
| ISDN BRI | Basic Rate Interface, ISDN-Basisanschluss für den SoHo-Bereich mit zwei 64-kbps-Nutzkanälen (B-Kanäle) und einem 16-kbps-Signalisierungskanal (D-Kanal). |
| ISDN PRI | Primary Rate Interface, ISDN-Primärmultiplexanschluss für den Enterprise-Bereich mit 30-B-Kanälen je 64 kbps und einem D-Kanal mit 64 kbps (in Europa, 23 B-Kanäle in den USA). |
| MGCP | Media Gateway Control Protocol, von RSL Com, Level 3 Communications, Telcordia und Vertical Networks entwickeltes Verfahren zur Übertragung von Audio über IP-Netze, niedergelegt in RFC 2705 (1999); Alternative zu H.323, IAX und SIP. |
| NT | Network Terminator eines ISDN-Zugangs, der Übergabepunkt des Tk-Providers zum Kunden. |
| PABX | Private Automatic Branch Exchange; automatisch vermittelnde Nebenstellenanlage. |
| PBX | Private Branch Exchange; Nebenstellenanlage, heute gleichbedeutend mit PABX. |
| POTS | Plain Old Telephone Service, englisches Synonym für die klassische Telefonkommunikation, also Sprachdatenübertragung. |
| PSTN | Public Switched Telephone Network; das klassische, leitungsvermittelte Festnetz. |
| QoS | Quality of Service - garantierte Dienstgüte etwa für den Transport von Echtzeitdaten über IP-Netze, was Latenzität und Bandbreite angeht. |
| RTP | Real-Time Transport Protocol nach RFC 1889 zum Management des Transports echtzeitkritischer Multimediadaten. |
| SIP | Session Initiation Protocol; Verfahrensvorschriften für IP-Telefonie aus der IT-Welt, entwickelt von einer Arbeitsgruppe der IETF, veröffentlicht im RFC 2543; Alternative zu H.323, IAX und MGCP. |
| T1 | 1,5-mbps-Verbindung, US-amerikanisches Übertragungsformat. |
| TDM | Time Division Multiplexing, Zeitscheibenverteilung einer Leitung. |
| TE | Terminal Endpoint einer ISDN-Verbindung, also die Geräteschnittstelle. |
Flexibilität durch modulare Architektur
Kernstück von Asterisk ist der PBX-Vermittlungskern, der Anrufe über die verschiedenen Schnittstellen entgegennimmt und anhand des internen Wählplans an andere Schnittstellen weitervermittelt, Endgeräte anspricht oder Voicemail- und Call-Assistant-Anwendungen startet. Gesteuert durch Konfigurationsdateien „weiß“ der Vermittlungskern, auf welche Kommunikationskanäle und Anwendungen er zugreifen kann und ob für die Gesprächsvermittlung zwischen verschiedenen Kanälen beziehungsweise Endgeräten Transkodierungen nötig sind. Der Zugriff auf die verschiedenen Kanäle, Anwendungen, Codecs und Dateiformate (wie Audiodaten im MP3-, Wav- oder GSM-Format) erfolgt über Module, die der Dynamic Module Loader bei Bedarf lädt.
Ein ebenfalls eingebauter Codec-Übersetzer (Transcoder) ermöglicht es, Verbindungen zwischen Schnittstellen herzustellen, deren Sprachdatenströme mit unterschiedlichen Codecs digitalisiert sind.
Zur Integration analoger Telefone respektive Anschlüsse bietet Digium verschiedene Schnittstellenkarten an, etwa die Wildcard TDM400P für bis zu vier FXS- oder FXO-Schnittstellenmodule. Jedes Modul stellt entweder eine Verbindung zu einem analogen Endgerät (FXS) oder einer analogen Amtsleitung (FXO) her. In Deutschland vertreibt unter anderem Beronet (www.beronet.com) die Digium-Produkte.
Da ISDN, insbesondere in der Basisvariante, in den USA wenig bis gar nicht verbreitet ist, hält sich der dortige Bedarf an entsprechender Asterisk-kompatibler Schnittstellenhardware in Grenzen. Hier springt der in Berlin ansässige Hersteller Junghanns.net in die Bresche und bietet mit der QuadBRI (und seit neuestem der OctoBRI) eine Asterisk-kompatible Schnittstellenkarte mit vier beziehungsweise acht ISDN-Basisanschlüssen an. Die Ports der Karten lassen sich wahlweise im NT- oder im TE-Modus betreiben, je nachdem, ob ISDN-Endgeräte angeschlossen oder Amtsanschlüsse beziehungsweise Querverbindungen zu anderen TK-Anlagen betrieben werden sollen.
Darüber hinaus ist es möglich, beliebige ISDN-Karten zu verwenden, für die unter Linux eine CAPI bereitsteht. Auf Grund des fehlenden NT-Mode der meisten Karten kommt dies jedoch nur für Amtsanschlüsse in Betracht. Für den Primär-Multiplexanschluss (E1) hat wiederum Digium passende Karten mit einem oder vier E1/T1-Anschlüssen im Portfolio (Wildcard TE410P/E100P).
Die für Asterisk verfügbare Schnittstellenhardware deckt somit die meisten gängigen Interface-Standards der konventionellen Telefonietechnik für Nebenstellenanlagen ab.
Mittelständisches Anwendungsszenario
Ein typisches Anwendungsszenario in mittelständischen Betrieben dürfte der Ersatz beziehungsweise die Erweiterung einer vorhandenen Telefonanlage sein. Ziel eines solchen Projekts könnte die verbesserte Anbindung externer Standorte oder Außendienstler sowie die Erweiterung der vorhandenen Telefonanlagenfunktionen durch die Möglichkeiten von VoIP sein.
Beispiel: Die Telefonanlage wird bisher genutzt, um mehrere ISDN-Basis- oder -Primärmultiplexanschlüsse zu verwalten. Da den Kunden die Telefonnummern gut bekannt sind, soll eine Vorgabe darin bestehen, die vorhandenen ISDN-Anschlüsse einzubinden. Darüber hinaus sollen mehrere Außendienstler sowie eine in einer anderen Stadt angesiedelte Abteilung über die Zentralrufnummer und Weiterleitung per VoIP zu erreichen sein. Eine Internetanbindung mit ausreichender Bandbreite ist vorhanden, auch zur Filiale. Die Außendienstler sind über DSL an die Zentrale angebunden.
Im Rahmen einer Asterisk-basierten Lösung würde dieses Szenario den Einsatz jeweils eines Asterisk-Switches in der Zentrale sowie in der Zweigniederlassung erfordern. Die Außendienstler behalten für eine Übergangszeit ihre, den Kunden bekannten, Rufnummern und Telefonanschlüsse und bekommen zusätzlich ein IP-Telefon. Dieses ist von der Zentrale aus über eine Durchwahlnummer erreichbar, beim Kunden wird bei Anrufen des Außendienstlers künftig diese Durchwahlrufnummer angezeigt. Bei einem eventuellen Umzug des Außendienstlers würde sich so für den Kundenkontakt nichts mehr ändern.
Als Endgerät könnte hier zum Beispiel das Zultys 4x5 IP-Telefon zum Einsatz kommen, das in einem Gerät DSL-Router, VoIP-Telefon, 4-Port-Switch, VPN-Gateway mit IPSec und einen Bluetooth-Sender/Empfänger für ein Headset vereint.
Will man die vorhandene Telefonanlage in der Zentrale ganz durch Asterisk ersetzen, muss diese Software-PBX die vorhandenen analogen Amtsleitungen oder ISDN-Anschlüsse verwalten. Für beide Aufgaben gibt es die eingangs erwähnten Schnittstellenkarten. Die Junghanns.net-Produkte ermöglichen das Setzen von Karten-IDs, so dass in einem Asterisk-Rechner je nach Anzahl der verfügbaren PCI-Steckplätze und im Rahmen der Kapazitätsgrenzen des karteninternen TDM-Busses bis zu acht QuadBRI-Karten einsetzbar sind.
Von den vier ISDN-Anschlüssen auf der QuadBRI haben wir für die Beispielkonfiguration je zwei Ports im NT- und zwei im TE-Modus betrieben. Zur Stromversorgung angeschlossener ISDN-Endgeräte im NT-Modus dient ein externes Netzteil, das ebenfalls Junghanns.net zur Verfügung stellte.
Als Hardwarebasis diente ein PC mit Intel MicroATX-Board, 1,8-GHz-Celeron, 128 MByte Speicher und 40-GB-IDE-Festplatte in einem handlichen Micro-Towergehäuse, in das alle Komponenten gerade hineinpassen.
Betriebssystembasis für die Asterisk-Installation war ein Debian-Linux. Dafür gibt es bereits Asterisk-Packages als Binaries, die per apt-get geladen werden können. Für die Junghanns.net-Karten muss man allerdings die aktuelle Version aus dem Asterisk-CVS laden und neu kompilieren.
Bristuff, die Treibersoftware für die QuadBRI-Karte, residiert in einem eigenen CVS und lädt sich beim make die passende Asterisk-Version. Zudem bedarf es verschiedener Patches für die Asterisk-Quelldateien, damit diese gemeinsam mit den Bristuff-Treibern übersetz- und linkbar sind. Diese Patches sind Teil des Bristuff-Pakets.
Bevor man mit Asterisk telefonieren kann, müssen die verschiedenen Anschlüsse beziehungsweise Kanäle konfiguriert und ein Rufnummernplan festgelegt werden. Dieser bestimmt, wie Asterisk die verschiedenen innerhalb des Systems verfügbaren Kanäle miteinander verbindet und gegebenenfalls Anwendungen startet. Die wichtigsten Konfigurationsdateien für die Beispielinstallation sind zaptel.conf und zapata.conf (für die TDM-Ka-näle traditioneller Telefonietechnik), sip.conf (für VoIP-Kanäle via SIP), extensions.conf sowie voicemail.conf (für Voicemail-Anwendungen).
Kanäle und Rufnummern konfigurieren
Während in zaptel.conf, zapata.conf, sip.conf und voicemail.conf die Kanäle, die Asterisk zur Verfügung stehen, sowie die Voicemail-Anwendung definiert sind, befindet sich der eigentliche Rufnummernplan in der Datei extensions.conf. Er besteht aus so genannten Extension Contexts, die jeweils mit Namen benannt sind und Anweisungen an Asterisk enthalten, wie hereinkommende und ausgehende Anrufe zu behandeln sind. Dabei geht es um weit mehr als nur das einfache Durchstellen an Endgeräte. Eine der Stärken des Asterisk-Systems ist, dass über Extension Contexts komplexe Abläufe inklusive des Startens von Anwendungen wie Voice-Mail oder des Weiterleitens von Anrufen an andere Standorte beziehungsweise Asterisk-Systeme (zum Beispiel über das IAX-Protokoll) realisierbar sind. Wie das prinzipiell funktioniert, zeigt der Kasten „Asterisk-Konfiguration - die ersten Schritte“ (in der Printausgabe). Die Beschreibung der Konfiguration dort kann natürlich die verschiedenen Konfigurationsmöglichkeiten nur skizzieren und will auf keinen Fall eine gründliche Einführung in das Thema ersetzen.
Das Potenzial einer Nebenstellenanlage auf Asterisk-Basis ist enorm. Man hat viele Optionen, die mit überschaubaren Kosten umsetzbar sind. Nimmt man sich die Zeit für eine gründliche Einarbeitung oder zieht im Rahmen eines Projektes Fachleute hinzu, kann man ohne einen grundlegenden Architekturwechsel mit der Open-Source-PBX leistungsfähige und umfangreiche Telefonie-Infrastrukturen aufbauen; je nach Bedarf sogar mit mehreren im Netz verteilten Systemen, die über das IAX-Protokoll miteinander in Verbindung stehen.
Auch hier gilt übrigens: Der Appetit kommt beim Essen. Ein einfaches Asterisk-System ist mit überschaubarem Aufwand anhand der mitgelieferten Konfigurationsdateien aufgesetzt. Fragen die Benutzer dann nach weiteren Funktionen, muss dieses nicht mit einem Verweis auf die Kosten sofort abgeschmettert werden, denn vieles lässt sich allein durch eine geänderte Konfiguration realisieren - ganz anders als bei konventionellen Telefonanlagen.
Natürlich darf man dabei den Zeitaufwand nicht aus den Augen verlieren. Für das eingangs beschriebene Umstiegsszenario fallen hardwareseitig nur die Kosten für einen durchschnittlich ausgestatteten Rechner sowie die Karten zum Anschluss der Endgeräte und Amtsleitungen an. Softwareseitig allerdings ist die Installation und Konfiguration des Systems nicht an einem Abend erledigt und erfordert mindestens die Qualifikation eines erfahrenen Linux-Anwenders, besser eines Systemadministrators.
Dieter Michel
leitet als freier DV-Journalist und ist Chefredakteur der Fachzeitschrift Prosound.
Torsten Krüger
ist Geschäftsführer der Ncore GmbH in Duisburg und betreut seit 1999 die VoIP-Infrastruktur des Unternehmens.
iX-TRACT
- Eine herkömmliche Nebenstellenanlage lässt sich mit der freien Software Asterisk ersetzen oder erweitern.
- Die Möglichkeiten des Anrufmanagements sind mit einer Soft-PBX wie Asterisk vielfältiger als bei den meisten Nebenstellenanlagen.
- Asterik unterstützt die wichtigsten Übertragungsprotokolle für VoIP sowie Karten zur Anbindung vorhandener Endgeräte und Nebenstellenanlagen.
Wie man Asterisk konfiguriert und was man bei der Codec-Auswahl beachten muss, lesen Sie in der Print-Ausgabe der aktuellen iX.
VoIP-Tutorial
Teil 1 bietet bietet einen vergleichenden Einstieg zu den verbreiteten Protokollen H.323 und SIP.
In Teil 2 geht es um die nötige Ausrüstung und Anwendungen.
Teil 3 beschreibt den praktischen Einsatz von VoIP anhand von Asterisk.
(js)