Hallo miteinander,
ich lese hier schon eine ganze Weile im Forum mit und habe auch davon sehr profitiert - Danke an alle! Weil das ECHO-Problem hier doch reichlich oft vorkommt und - soweit ich das im Wust überblicke - keine vollständige oder sogar völlig falsche Erklärungen und Vermutungen zu finden sind, möchte ich hier mal mein Wissen darüber beisteuern.
1. Wie entsteht ECHO?
Grundsätzlich gibt es eine Voraussetzung (Laufzeit zwischen Anrufer und Angerufenen) und zwei Ursachen, die je nach Telefonstrecke auch gemeinsam auftreten können:
a) Akustische Kopplung zwischen Hörer und Mikrofon
Praktisch immer vorhanden und daher auch bei reinen ISDN-Verbindungen nicht zu vermeiden. Mehr dazu weiter unten.
b) Elektrische Kopplung an einem analogen Endgerät
Hier werden beide Sprachkanale (hin und rück) über nur zwei Leitungen
gemeinsam analog im gleichen Frequenzbereich übertragen. Um die beiden Sprachkreise wieder zu trennen, wird im analogen Endgerät eine Brückenschaltung (genannt Gabelschaltung) verwendet. Diese Brückenschaltung setzt aber bekannte und konstante Leitungs-Wellenwiderstände (das hat mit den ohmischen Widerständen der Leitung nur wenig zu tun!) voraus. Das ist allerdings nicht ganz einfach zu realisieren, so dass man hier keine
vollständige Trennung erreichen kann und die Brücke auf einen Kompromiss abgleichen muss.
Das ist aber noch nicht alles: Der DATU (dümmste anzunehmende Telefon-User) hat es nicht so gerne, wenn er sich beim Sprechen nicht selbst im Hörer hören kann. Daher ist eine vollständige Kompensation der beiden Sprechkreise gar nicht wünschenswert und auch nicht realisiert! Das kommt der bei Zweidrahtleitungen ohnehin nicht einfach realisierbaren, vollständigen Trennung aber nur entgegen. Bei älteren Telefonen (z.B. meinem antiken W48) kann man im Telefon den Leitungsabschluss über Jumper verändern und die sog. Rückhördämpfung in geringen Grenzen einstellen und damit das ECHO reduzieren. Ganz unendlich wird sie aber nie!
Das ECHO entsteht nun beim Anrufer, indem das durch die Gabelschaltung beim Angerufenen nicht vollständig unterdrückte, empfangene Sprachsignal des Anrufers den gesamten Weg zum Anrufer wieder zurück läuft. Es hat daher immer die doppelte Verzögerung (hin und rück). Hat der Anrufer selbst eine schlecht kompensierte Gabelschaltung, so kann das Signal bei genügender Signalamplitude auch mehrmals hin und her laufen. Ist die Laufzeit relativ kurz (10ms-Bereich), so ist das ECHO ein Hall; aber im Prinzip ändert das nichts an den weiteren Ausführungen.
Ergänzende Infos hier:
http://www.ip-phone-forum.de/forum/viewtopic.php?p=142044#142022
2. Wie kann man ECHO kompensieren?
Für akustische Kopplung gibt es eine "Krückenlösung", die in einigen DECT-Telefonen eingebaut ist. Sie ist zwar recht wirksam, aber meiner Meinung auch reichlich gewöhnungsbedürftig: Einige dieser Telefone regeln die Lautstärke des Hörers einfach etwas herunter, wenn das Mikrofon besprochen wird. Entsteht nun auf der anderen Seite ein ECHO, so hört man es einfach nicht mehr so laut, weil man ja noch spricht und der Hörer gerade etwas leiser ist. Wenn dieser Effekt zu sehr übertrieben wird, ist das Gegensprechen bei diesen Telefonen praktisch unmöglich, weil man erst in einer eigenen Sprechpause die Gegenseite wieder hören kann!
Elektrisch kann man ein ECHO aber auch adaptiv kompensieren. Adaptiv deshalb, weil man weder die Lautstärke, noch die Verzögerungszeit kennt! Man macht das i.d.R. mit einer Art digitalen Filter, bei dem die Koeffizienten variabel sind und eben adaptiv durch einen Iterationsprozess (oder auch schlauer, aber aufwendiger durch Berechnen) so eingestellt werden, dass das empfangene Echosignal durch ein gegenphasiges gleich grosses Signal möglichst vollständig kompensiert wird.
So macht man es übrigens auch bei Satelliten- und Seekabelstrecken. Diese Strecken bringen die zum ECHO erforderliche Verzögerung und am Ende ist - zumindest ausserhalb von der "ISDN-Insel" Deutschland - meist immer ein analoges Telefon mit unvollständiger Gabelschaltung (siehe oben). Im Umkehrschluss kann man folgern, dass bei wirklich reinen (!) ISDN-ISDN-Verbindungen kein (elektrisches) ECHO auftreten kann. Wenn doch, dann ist es höchstwahrscheinlich ein akustisches Problem, bzw. ein ungenügend arbeitender ECHO-Canceler in einem Freisprech-ISDN-Telefon!
Alles braucht - man ahnt es schon - Rechenpower und bei den üblichen 125us Abtastperiode bei 8 bit/Abtastwert einen entsprechend grossen Buffer. Will man z.B. noch bis zu 300ms kompensieren können, so sind das mindestens 300ms/125us = 2400 Byte. Nicht all zu viel, aber es kommen noch einmal mindestens (!) ebensoviele variable Koeffizienten und damit auch Rechenoperationen (Summe von Produkten) dazu, die alle innerhalb von 125us abgearbeitet werden müssen. - Man sieht: Rechenpower wird das Hauptproblem sein. Kein Wunder, denn dazu verwendet man üblicherweise Signalprozessoren und die sind in den Routern wohl kaum zu finden.
Wenn so ein "armer" Controller diesen Job dennoch halbweg erledigen soll, so muss man sich also auf möglichst wenige und einfache Rechenoperationen beschränken. Das führt dann automatisch dazu, dass die Kompensation nicht ganz optimal sein kann und auch noch von der Komplexität des vorgeschalteten CODECs abhängt!
3. Was ganz sicher ziemlich irrelevant ist
* Das Ändern irgend welcher Internet-Einwahlparameter.
* Höhere Up-/Downstreamraten als 128kBit/s.
* Das Bevorzugen irgend eines VoIP-Providers (es sei denn: siehe unten)
* Das Verwenden spezieller Rufnummern (es sei denn: siehe unten)
* Die Frage ob DECT oder nicht (trotz zusätzlichen 10ms Verzögerung/Kanal).
* Die räumliche Trennung von DECT und WLAN (bei mir: 20cm!).
* Das Abschalten von WLAN (ich streame darüber gleichzeitig Musik).
* Dass es nur ein VoIP-Problem ist. (ECHO gibt es auch im Festnetz, aber hier gibt es ECHO-Canceler auf Fernstrecken!)
* Gespräche zu GSM-/UMTS-Netzen (sie verhalten sich wie ISDN).
4. Was ganz sicher ziemlich relevant ist
* Wenn irgendwo zwischen Anrufer und Angerufenen eine analoge Zweidrahtleitung ist.
* Wenn die akustische Kopplung zwischen Hörer und Mikrofon zu hoch ist (ggf. Hörer ausstopfen!).
* Zu hohe Wiedergabelautstärke auf beiden Seiten.
* Freisprechen ist der GAU und eher zu vermeiden (kommt aufs Telefon drauf an).
* Der verwendete CODEC, da hier zusätzliche Laufzeiten dazu kommen, die den ECHO-Canceler im Router überfordern.
* Grundsätzlich ein zu hohes Delay zwischen Anrufer und Angerufenen. (Fastpath kann also was bringen!)
5. Was man kaum abschätzen kann
* Einfluss der Prozessorauslastung im Router durch gleichzeitigen up-/download (ist eher unkritisch).
* Zusätzlich im Router installierte Software (eher kritisch).
* Die Laufzeit der Anbindung des DSL-Providers an das Internet.
* Tageszeitabhängige Laufzeiten der IP-Routen des Internet-Providers.
* Ob der VoIP-Provider nicht doch irgendwo
aus Kostengründen bei der Übergabe ins Festnetz eine analoge Zweidrahtstrecke verwendet.
* Ob je nach CODEC noch Platz für eine zusätzliche Echokompensation war und wie gut sie ist (ist immer ein Kompromiss).
* Ob und wann die Router-FW selbstständig die CODECs umschaltet.
* Alles an das ich jetzt nicht gedacht und daher vergessen habe zu erwähnen :lol:
6. Was also optimieren?
* Möglichst ISDN-Telefone verwenden (da sie keine Gabelschaltung haben).
* DECT-ISDN-Telefone sollten unkritisch sein.
* DECT-Analog-Telefone haben oft die oben erwähnte "Krückenlösung".
* Analoge Telefone könnte man elektrisch besser kompensieren. (Vergiß es bei modernen Telefonen!)
* Auf möglichst geringe Laufzeiten achten (betrifft CODEC und ggf. auch ISP, sowie alle Telefon-Vermittlungslaufzeiten)
* Wiedergabelautstärke auf beiden Seiten reduzieren.
* Freisprechen vermeiden oder Luxustelefon verwenden, dass das gut kann! (Es enthält selbst eine Echokompensation.)
* Gespräche von und zu reinen ISDN-Endgeräten via VoIP bevorzugen. (Aber wer kann das schon?)
* Analoge Zweidrahtleitungen und -Endgeräte möglichst vermeiden (da sie eine Gabelschaltung haben)!
* CODEC mit geringster Verzögerung (z.B. G.711a/u ggf. auch noch G.726) benutzen.
* Andere Hardware (z.B. DSP) im Router einsetzen! (Ist aber zu teuer.)
* Firmware natürlich mit Echokompensation verwenden :wink:
* Ach ja: Bei einem Software-Phone (X-Lite usw) ein Headset verwenden, um wenigstens die akustische Koppung zu minimieren.
Bleibt noch eine Frage zu klären: Warum ist SKYPE so gut? - Antwort: Es wird eine sehr effektive Echokompensation haben, denn ein PC ist i.d.R. besser als number-cruncher geeignet als ein Controller in einem Router! :idea: Da spielt es dann keine Rolle mehr, ob am anderen Ende eine ungünstig kompensierte Gabelschaltung in einem analogen Telefon vorhanden ist.
So, ich hoffe das Thema ist mal an dieser Stelle hinreichend dargestellt.