zwei Asterisk über IAX2 - ISDN Datenanrufen gehen nicht

Alti

Neuer User
Mitglied seit
26 Okt 2005
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo.

Folgendes Szenario:

Ein KENServer mit einer Fritz!-Karte ist über internen S0 mit einem Asterisk-Server(sub) mit Hfc-Karte(NT) verbunden. Dieser Server soll über S0 eingehende Gespräche weiterleiten an einen anderen Haupt Asterisk-Server. Dieser soll den Anruf dann über E1 ins PTSN weitergeben.
<Ken Server>---<FRITZ! Karte>---<S0>---<HFC-Karte(NT)>---<AsteriskSub>---<Ethernet>---<AsteriskMain>---<Digium WTC110TE>---<PSTN>

Die Daten über das Netzwerk übermittle ich per IAX2 Protokoll, die ISDN Karte ist mittels zaphfc angebunden.
Das Problem ist, das Datencalls von FritzData nicht draußen ankommen. laut den logs wird eine Verbindung aufgebaut und diese besteht dann 10 sekunden, bevor sie wieder abgebaut wird. FritzData kommt dabei nicht bis zur authentifizierung. Bei Anschluss eines ISDN telefons, statt des KenServers, wird ein normaler Sprachanruf in guter Qualität normal abgehandelt und kommt draußen auch an. Auf dem AsteriskSub wird der eingehende Anruf klar mit DATA transfercapability erkannt, auf dem Asterisk Main wird aber versucht mit SPEECH rauszuwählen. Selbst ein setzten (SettransferCapability) auf DATA bringt nicht den gewünschten Erfolg, da dann die Verbindung nur 10 sek hält.

Bei einem einsetzen der HFC-Karte in den AsteriskMain selbe Treiber etc. funktioniert das tadellos, Sprache und Daten. (Solange man in zapata.conf die lautstärke für diesen Kanal bei 0.0 lässt. Verändert man die tritt der selbe effekt auf,wie bei der Brücke)
Ein "abhören" der Leitung mit ZapScan bringt auf beiden Teilstrecken(interner S0 externer E1) die gleichen akustischen Töne(rhytmisches klicken) hervor.

Wo liegt das Problem? Kann IAX irgendetwas nicht übermitteln, das Fritz! brauch? Wie kann man IAX dazu bringen, das es übermittelt, das es ein Datenanruf ist? muss es das überhaupt?

Falls jemand Ideen hat, wie man das anders lösen könnte, bin ich gern für Vorschläge offen..

Danke!
 
Wenn Du eine Fritz benutzt, dann sicher mit chan_capi. Welche Version verwendest Du? Hast Du in der capi.conf die Eintraege rxgain und rxgain auch auf '1' stehen?
In der naechsten chan_capi Version wird das korrigiert sein, dass *gain auch auf DatenVerbindungen angewendet wird.

Armin
 
Die Fritz! Karte ist im KEN Server, also nicht in derMaschine, auf der Asterisk läuft, damit verwende ich auch kein Capi.
Im Asterisk ist nur eine HFC-Karte(Billion), die über zaphfc Konfiguriert wurde.
Diese Funktioniert auch, denn wenn ich sie in den Main-Asterisk einsetze, klappen Datenverbindungen darüber.
Die TX/RX gain für diese Datenverbindung müssen allerdings auf 0.0 stehen(zapata.conf), aber das ließ sich gut einrichten, weil ich von den 31 E1 Kanälen einen sozusagen reserviert habe, und Daten nur über diesen rauswähle. Das geht im Produktivsystem, in dem beide Karten stecken auch ohne Probleme.
 
Hallo Alti,

du wirst dieses Scenario so leider nicht hinbekommen. Ich habe an einem Patch für chan_zap gearbeitet, der eine Vorstufe für dein Vorhaben bildet.

Schau dir mal folgenden features request an:

http://bugs.digium.com/view.php?id=6251

du brauchst dasselbe für die BRI Seite und wahrscheinlich braucht man noch einen Patch für chan_iax2. Dann kann man es hinbekommen.

Liebe Grüße,

Christian
(crich)
 
hm...
Da ich in dem Thema doch relativ neu bin, kann ich nicht wirklich einen Zusammenhang entdecken zwischen dem angebotenen ZapSetHDL und meinem Scenario.
Kann mir das eventuell noch einmal jemand erklären?
Schließlich funktioniert das Setup ja wenn ich eine HFC-Karte in den HauptAsterisk einbaue und verkabele. Sprache und Daten gehen dann, nur eben halt nicht, wenn das ganze über eine IAX-Brücke betreiben werden soll, dann geht nur Sprache, keine Daten.

Kann es an Lautstärkeeinstellungen liegen? Ich errinnere mich, das im HaupAsterisk einmal die Lautstärke für die Datenanrufe von 0.0 abgewichen ist und dann auch n ur Sprache ging und Datenanrufe nicht. Wenn an die Leitunge abgehört hat, gab es akustisch das selbe Verhalten, auch wenn es nicht viel zu sagen haben mag.

Ich weiß wirklich nicht, was ich noch ausprobieren soll...
 
Bei Datenanrufen werden die Datenpakete in so genannten HDLC Frames verpackt, diese werden dann bitweise über die Leitung übertragen.

Das Problem ist, dass bei datenanrufen jedes bit sitzen muss, sonst geht der ganze frame verloren. Ein Datenanruf zwischen chan_iax2 und chan_zap kann nur dann erfolggreich sein, wenn die frames aus dem HDLC ausgeschält werden und nur die reinen Datenpakete übermittelt werden.

Deshalb ist es notwendig chan_zap in den HDLC dekodier/enkodier Modus zu versetzen, unter Umständen müsste man bei chan_iax noch an der Buffergrösse patchen damits läuft, aber es wäre prinzipiell möglich.

Fazit: Datenanrufe einfach transparent übertragen geht nicht, weil zu viele Bitfehler wegen timing problemen auftreten.
 
Kann man das irgendwo nachlesen, wie das verpacken ich HDLC läuft und auf welchem Kanal, als Daten oder Kontrollkanal?

Ansonsten:
Verstehe ich es richtige, das auf dem ersten Stück, von Ken zu nebenasteriskt, die richtigen Rahmen auf dem Steuerkanal generiert werden, beim "umpacken" in IAX2 allerdings verloren gehen und dann vom HauptAsterisk, der rauswählt, für den Steuerkanal falsch generiert werden? Weil der hauptAsterisk nicht weiß, welches die richtigen Rahmen wären, da IAX2 diese nicht mnitliefert?

ist diese Einschätzung so richtig?
welche anderen Möglichkeiten gibt es dann einen Datenanruf in diesem Szenario durchzuschleusen? Ein andres Protokoll? SIP vielleicht?
Wennich mich richtig errinnere, hab ich das mit dem SIP Protokoll mit gleichem Ergebniss probiert, bin mir aber nicht mehr recht sicher, kann auch sein, das ich gar nicht erste eine Verbindung hinbekommen habe. Gibt es dafür eine Anleitung, wie man 2 Asteriske über SIP verbinden, so das sie Anrufe durchstellen?

oder muss ich doch so einen Patch schreiben?
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.