Tunnel und Layer

Aktuell in dom50 keine tcp rst zu sehen.

Was mich stutzig macht:
netstat auf meinem Knoten liefert u.a.
udp 2240 0 192.168.178.41:34328 ausrufer.servers.freifunk-muensterland.de:20050 ESTABLISHED
udp 0 0 192.168.178.41:44576 commander1024.gw.freifunk-muenster.de:20050 ESTABLISHED
udp 2240 0 192.168.178.41:45733 commander1024.gw.freifunk-muenster.de:20050 ESTABLISHED

Wieso commander1024.gw.freifunk-muenster.de, laut uci ist tunneldigger nicht so konfiguriert?
Wird per udp getunnelt?? <- OK, hab’s nachgelesen. Ist so. Bin überrascht wegen verlorenen Paketen?

Was ist daran ungewöhnlich?

Überraschte mich, da dann z.B. verlorene Pakete oder auch ‘falche’ Reihenfolge von der Anwendung geregelt werden muss. Aber ich bin kein Netzwerker…
Ich spekulier jetzt mal: genau das könnte von der Applikation bei https-Verbindungen problematisch werden, da dann vielleicht die Applikation nicht wissen kann, dass etwas fehlt?

Commander24?

Was meinst du mit Anwendung?

Wir sprechen hier von Layer2 Tunneln.
Auf Layer 1 (Phy), Layer 2 (Ethernet), Layer 3 (IP) können Daten verloren gehen oder in falscher Reihenfolge ankommen. Völlig normal.

Eine Anwendung setzt typischerweise auf Layer 4…6 auf - je nachdem ob sie sich halt selbst kümmern will oder nicht.

Daran ändert der Tunnel garnichts. Schlimmer: Wenn der Tunnel selbst sich um Reihenfolge und Reliably Delivery kümmern würde, dann erfordert dies ja ein entsprechendes Protokoll und dies hätte einen ziemlichen overhead. Effektiv würde dieselbe Sache (reliable delivery) auf mehreren Layern passieren was typischerweise zu einem bescheidenen Ergebnis führt.

Gutes Protokolldesign: Tue eine Sache und tue diese gut.
Aufgaben eines Layer 2 Tunnel: Nehme Pakete von A und transportiere sie verkapselt nach B wo er diese wieder in ein Netz spuckt.

3 Like

Vielen Dank für die ausführliche Antwort.

Wie kann der Tunnel sicher stellen, dass er es - den Transport - tatsächlich macht, wenn reliable delivery wegen udp nicht vorhanden ist?
In diesem Sinne sprach ich von der Anwendung(sschicht), die das dann regeln muss. Bei https ist die Anwendung garantiert an reliable delivery interessiert, oder?

Er kann es nicht - und er muss es nicht. Da dies ein L2 Tunnel ist ist es einfach “best effort”.

Im Falle HTTPS kümmert sich TCP um verlorene Pakete und Reihenfolge.

2 Like

Über den Tunnel wird nochmal ein TCP Paket geschickt, wenn man sich das mit wireshark ansieht, würde man sehen, wie die TCP Pakete im UDP Payload gekapselt sind.

[edit]
Mist, nicht schnell genug, was der @kgbvax sagt erklärt es natürlich auch

1 Like

OK - danke!
Ich war gedanklich zu schnell in der Anwendungsschicht gelandet. Das von mir vermeintlich vermutete Design wäre grundsätzlich nicht lauffähig.
TCP->udp-tunnel->TCP

Wofür ist commander1024.gw.freifunk-muenster.de?