Telekom VoIP Telefonie hinter (draytek) Router Probleme

VoIP mit DrayTek Routern und dem DrayTek Softphone. SIP (Session Initiation Protocol), CODEC, RTP, SRTP und DTMF, ...

Moderatoren: TommyTC, alf, Petrus, andreastc, DSL-Hexe, nobody

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Do 02.06.2016 - 12:30

Dann sollte aber auch die Telekom offiziell TCP unterstüzten. Stehen tut das nämlich nirgendswo.
Ich fände den workaround auch pakete mit noch >1700 bytes anzunehmen besser, denn 1620 bytes werden ja schon angenommen.

Viel besser aber wäre es wenn die Telekom etwas transparenter würde und eben einfach auch den Fehler beheben könnte.
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Do 02.06.2016 - 13:16

Die 1620Byte verstehe ich ehrlich gesagt nicht. Soll das die maximale UDP-Datagrammgröße sein, bis zu der ein UDP-Datagramm von den Draytek-Routern auch in Fragmenten akzeptiert wird? Warum sind das nicht Vielfache der MTU?

Hier an ein paar Byte zu schrauben, ist wohl nicht zielführend. Erstens legt die SIP-Response bis zu 200Byte drauf und wird dann genau so verworfen wie die Invite-Message und zweitens kann jederzeit der nächste geschwätzige SIP-Client kommen, für den die neue Größe wieder nicht reicht.

Gestehen wir der Telekom mal zu, dass sie das Problem noch nicht auf dem Schirm haben und sich deshalb auch noch keine Lösung überlegt haben.

Dass SIP-Provider möglichst wenig TCP-Traffic haben wollen, dürfte auch nachvollziehbar sein.
Was meinst du mit "offiziell unterstützen"?
Ich denke schon, dass SIP per TCP bei der Telekom offiziell unterstützt aber nicht gerade aktiv beworben wird.
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Do 02.06.2016 - 14:06

Die telekom hat nirgendwo eine Dokumentation aus der hervorgeht, wie und, dass man die Kommunikation auch mit tcp machen kann. Solange es das nicht gibt, koennen die dieses Fearture jederzeit abschalten ohne Vorwarnung, und, das ist nicht gut, wenn man bei NN kunden etwas installiert auf der Basis eine features das es offiziell nicht gibtn und, ploetzliche gibt es das wirklich nicht mehr.

Daher obwohl dies sicher die schlechtere Loesung ist, faende ich es ratsamer, wenn man einen workaround macht, diesen so zu implementieren dass der Router sich den Erwartungen der telekom gemaess verhaelt.

Das SIP ueber tcp das geht ja auch nur, wenn das telefon/die TA das auch kann. Meine 3CX Anlage kann das nocht nicht. Und, ist damit sicher nicht alleine.
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Do 02.06.2016 - 14:55

Mein Bauchgefühl sagt mir, dass bessere SIP-TA, die eher in kleinen und mittleren Unternehmen eingesetzt werden und deshalb häufiger hinter anspruchsvolleren Routern/Appliances werkeln, alle SIP per TCP machen/können.
Die Telekom kann da nichts so einfach abschalten.

Deine TA-Anlage wird SIP per TCP prinzipiell schon können, du kannst nur nicht konfigurieren, dass sie die SIP-Accounts von vornherein per TCP registrieren soll.

Ich bin mir relativ sicher, dass ich mal eine FB mit älterer Firmware in den Fingern hatte, wo man einstellen konnte, ob man TCP oder UDP machen will bei der SIP-Registrierung.

Wer geschäftskundenmäßig etwas mit der Telekom machen will, kann sicher auch konkret anfragen, ob er zur Lösung des UDP-Fragmentierungsproblems mit dem Router/der Appliance die TA auf TCP konfigurieren darf.
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Do 02.06.2016 - 16:27

Wenn man bei SIP über UDP bleiben möchte, dann müsste der Router mindestens an Port 5060 auch prinzipiell fragmentierten UDP-Traffic durchlassen. D.h. ohne Größenbeschränkung für das UDP-Datagramm.

Bzgl. 3CX und TCP: kann sich X-Lite per TCP an der 3CX registrieren?
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Do 02.06.2016 - 16:32

Das stimmt so nicht denke ich.
Die RFC sagt:
Ist das sip paket >MTU-200, dann muss der, der es schickt einen anderen transport als UDP verwenden, der sicherstellt, dass das paket auch ankommt.
Welches protokoll dann verwendet wird, ist nicht interessant, aber es muss ggf. Bis zu 65535 bytes unterstutzen.
Kein wort davon, dass hier ein transportueber udp 65535 bytes unterstuetzen muss.
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Do 02.06.2016 - 18:30

Das war nicht als prinzipielle Anmerkung gemeint, sondern bezog sich auf deinen Ansatz, eine "Telekom-konforme" Lösung zu finden.
Und da die Telekom ganz offensichtlich voraussetzt, dass man fragmentierten UDP-Traffic empfangen kann, gehört zu so einer Lösung eben ein Router, der mindestens auf 5060 fragmentierten UDP-Traffic ohne Größenbeschränkung akzeptiert.

Und in rfc3261 steht:

If a request is within 200 bytes of the path MTU, or if it is larger
than 1300 bytes and the path MTU is unknown, the request MUST be sent
using an RFC 2914 [43] congestion controlled transport protocol, such
as TCP. If this causes a change in the transport protocol from the
one indicated in the top Via, the value in the top Via MUST be
changed. This prevents fragmentation of messages over UDP and
provides congestion control for larger messages. However,
implementations MUST be able to handle messages up to the maximum
datagram packet size. For UDP, this size is 65,535 bytes, including
IP and UDP headers.


Also: UDP muss bis 64KByte trotzdem gehen.
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Do 02.06.2016 - 20:17

Da bin ich nicht Deiner meinung.
Ich übersetze es nun nochmals wörtlich:
Wenn eine Anforderung innerhalb von 200Bytes der Maximalen Transport Einheit, oder, wenn die Anforderung größer als 1300 bytes ist, und, die Maximale Transport Einheit nicht bekannt ist, dann *MUSS* die anforderung mit einem RFC2914[43] kompatiblen transport, der auch unterbrechungen/geringe Bandbreiten verkraftet gemacht werden, wie zum Beispiel TCP. Wenn das eine änderung des Transport Protokolls bedingt, das anders ist als das im obersten Header(? VIA) angegebene, dann muss der wert im obersten Header(? VIA) passend geändert werden. Die vermeidet eine fragmentierung von Nachrichten über UDP und, stellt eine Verbindungskontrolle/Handshake für grosse Nachrichten zur Verfügung. Jedoch, eine solche Implementierung *MUSS* in der lage zu sein Nachrichten zu verarbeiten bis zur maximalen größe eines Datagram pakets. Im Falle von UDP, ist das 65.536 bytes, inclusive IP und UDP headern.

Da steht:
Du darfst keine UDP pakete senden <MTU-200. Wenn die notwendigkeit aber da ist, das zu tun, dann musst Du ein anderes Protokoll verwenden, zum beispiel TCP. Aber es muss ein protokoll mit handshake sein, dass auch unterbrechungen verkaftet.
Trotzdem aber muss dieses Protokoll (das man impletentiert wie auch immer) in der Lage sein, die gleiche Menge daten zu übertragen wie in einem UDP paket, das typischweise 65536 Bytes ist!
Also, udp (was kein handshake hat), aber eben eine implementierung mit handshake, und da bleibt derzeit an stdnards nur TCP übrig, und, man soll dann aber, was mit TCP ja auch geht, ein (fragmentiertes) SIP paket schicken dürfen das max. 65536 Bytes gross ist.

klar?
für mich schon, wenn Du zweifel hast, leg den Text doch mal einem Amerikaner vor, für mich ist da aber kein Zweifel.
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Do 02.06.2016 - 21:47

Der Begriff Datagramm ist für mich fest mit UDP verbunden. Bei TCP redet man nicht von Datagrammen sondern von Segmenten.

Die letzten 2 Sätze übersetze ich also so:

SIP-Implementierungen müssen trotzdem mit Messages bis zur maximalen Datagrammgröße, die für UDP 65535 Byte beträgt, umgehen können.

Und das "trotzdem" bezieht sich auf die vorausgehenden Ausführungen zu TCP.

Aus Sicht einer SIP-Applikation (Server oder user agent) gibt es prinzipiell nichts dagegen einzuwenden, ein langes UDP-Datagramm aus mehreren IP-Paketen zusammenzusetzen. Geht ein Paket verloren, fordert der Empfänger die Message einfach neu an. D.h. die Übertragungssichterheit die TCP bietet lässt sich prinzipiell auch mit UDP auf Applikationsebene erreichen. Dass TCP für größere Messages gefordert wird, hat wohl eher damit zu tun, dass den RFC-Autoren bereits klar war, dass fragmentierter UDP-Traffic an anderer Stelle (z.B. an Routern) zu Problemen führen kann.

Aber das sollen die Telekom und die Router-Hersteller unter sich ausmachen.

Bis dahin denke ich, dass man sich als Telekom-SIP user entweder einen Router besorgt, der fragmentierten UDP-Traffic passieren lässt oder einen SIP-Client verwendet, der die Registrierung per TCP macht.
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Do 02.06.2016 - 21:50

Ein udp paket das verloren geht, das kann der empfänger nicht neu anfordern, er weiss nichts davon.

ggf. wenn wir die frage der korrekten übersetzung weiterdiskutieren möchten, sollte man das in einen anderen thread verlegen....
klar maximum datagram size ist 65536, aber das ist nur der hinweis darauf, das die implementation die man macht, das eben auch unterstützt (was mit TCP kein problem ist).
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Fr 03.06.2016 - 08:44

nobody hat geschrieben:Ein udp paket das verloren geht, das kann der empfänger nicht neu anfordern, er weiss nichts davon.


Richtig.
SIP kompensiert das auf Applikationsebene. Bekommt der Sender nicht innerhalb einer sehr kurzen Zeit eine Response, dann sendet er selbst neu. Untern Strich geht das schneller, als wenn TCP seine Timeouts abwartet, bis es ein retransmit eines verlorenen Pakets macht.

nobody hat geschrieben:ggf. wenn wir die frage der korrekten übersetzung weiterdiskutieren möchten, sollte man das in einen anderen thread verlegen....
klar maximum datagram size ist 65536, aber das ist nur der hinweis darauf, das die implementation die man macht, das eben auch unterstützt (was mit TCP kein problem ist).


Sowohl "datagram" als auch "65536" sind klare Hinweise auf UDP. Für TCP Segmente kenne ich diese Größenbeschränkung nicht.

Zurück zur Realität:

Vermutlich kann man die Unterstützung von TCP bei allen SIP-Servern als gegeben voraussetzen.
Genau genommen muss ja ein SIP-Client bei der Registrierung sogar TCP verwenden, wenn seine Register-Message größer als 1300Byte ist. Und da er die Message bliebig aufblähen kann, muss der SIP-Server immer damit rechnen, dass sich Clients per TCP registrieren.

Dass man mit dem serverseitigen dynamischen Wechsel von UDP auf TCP, in Abhängigkeit der Messagegröße, mehr Probleme schafft als löst, dürfte auch plausibel sein. An NAT-Routern ohne extra eingerichtetes Forwarding für SIP ist normal nur der Port+Protokoll offen, den der SIP-Client bei der Registrierung aufgemacht hat.

Akuten Handlungsbedarf sehe ich seitens Draytek für die Routermodelle mit VOIP.
Sollen diese Modelle mindestens für Telekomanschlüsse nicht als ungeeignet eingestuft werden, dann müsste Draytek etwas ändern.
D.h. entweder fragmentierten UDP-Traffic passieren lassen oder in der SIP-Konfiguration die Auswahl für TCP erlauben oder standardmäßig gleich nur TCP machen.

Je nachdem, wie Draytek hier entscheidet, wird man auch die Lösung des Problems für die Modelle ohne VOIP ableiten können.
D.h. entweder lassen dann die Modelle ohne VOIP ebenfalls fragmentierten UDP-Traffic durch oder man kann nur SIP-Technik einsetzen, die SIP per TCP macht.
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Fr 03.06.2016 - 09:01

"SIP kompensiert das auf Applikationsebene. Bekommt der Sender nicht innerhalb einer sehr kurzen Zeit eine Response, dann sendet er selbst neu."
Schoen waers!
Die telekom sendet nicht neu, die sendet ein paket zu gross, fragmentiert per udp, wartet 15sec, und sagt dann dem anrufer "der teilnehmer ist... Rufen sie spaetzer an".

Und im rfc text steht,
Du darfst ein protokoll Deiner wahl nehmen wenn Du MTU-200 bytes groesse ueberschreitest, aber, es muss die gleiche paketgroesse unterstuetzen wie udp, und, es muss handshake haben um sicherzustellen dass die daten ankommen.
Das macht die Telekom alles nicht.

Es ist richtig, dass fuer das, was die telekom derzeit als telephonie anbietet 99% aller router der Fa. Draytek ungeeignet sind, der Fehler ist aber bei der Telekom, die sich nicht an die Standards haelt.

Wenn draytek hier einen Workaround einbaut, dann waere das natuerlich schoen.
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Fr 03.06.2016 - 09:20

Ok. Wieder nur Theorie.

http://www.netlab.tkk.fi/opetus/s38130/ ... Camarr.pdf
3 SIP over UDP
Transporting SIP over UDP overcomes some of the problems associated with TCP. UDP is a connectionless protocol. Thus, it does not perform any kind of connection establishment before sending data. Therefore, a particular INVITE will be sent encapsulated in a UDP packet without any establishment delay introduced by the transport protocol.

Since UDP does not provide reliable transport, reliable delivery is achieved through application level retransmissions. The SIP application retransmit a particular SIP messages when the retransmission timer expires. This retransmission timer is lower than in TCP. Its default value is 0,5 seconds. Therefore, the retransmission policy of SIP when it runs over UDP is more aggressive than when it runs over TCP.


Hat Draytek ein Supportforum, wo man dieses Problem anmelden kann?
Hat schon jemand das Problem angemeldet?
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon nobody » Fr 03.06.2016 - 10:01

"This retransmission timer is lower than in TCP. Its default value is 0,5 seconds"
Wenn das so ist, dann macht die Telekom noch mehr falsch, denn die wiederholt einfach gar nichts.

Dies ist mehr oder minder das supportforum von draytek wenn es in DE eines gibt.
Und, wenn Du diesen Thread durchliest, dann wirst Du dort lesen können das ich das getan habe.
nobody
Hardcore-Poster
 
Beiträge: 1333
Registriert: So 19.09.2004 - 16:45

Re: Telekom VoIP Telefonie hinter (draytek) Router Probleme

Beitragvon broeselmeier » Fr 03.06.2016 - 10:27

In deinem Fall (kein VOIP-Router) könnte Draytek das damit abtun, dass du SIP per TCP machen kannst.

Hat man das Geld für einen VOIP-Router hingelegt, dann greift die Ausrede nicht mehr.

Und dann muss man das sicher noch so knackig auf den Punkt bringen, dass man verstanden wird.

Also vielleicht so:

* german T-Online uses same transport protocol for SIP signaling as user agent used for registration
* if user agent used udp for registration and SIP Invite message is bigger than path MTU, the udp datagram is fragmented
* starting with firmware version xyz draytek routers drop fragmented udp datagrams
* there is no option to accept fragmented udp datagrams in router configuration
* there is no option too to enforce tcp in VOIP configuration
* therefore draytek routers are no longer usable for T-Online SIP accounts
broeselmeier
Ambitionierter User
 
Beiträge: 36
Registriert: Sa 21.05.2016 - 13:04

VorherigeNächste

Zurück zu VoIP - Voice over IP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste