mikrocontroller.net

Forum: PC-Programmierung VPN wird getrennt bei "größerem" UDP-Datenverkehr?


Autor: Frank Esselbach (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich arbeite an einer Datenerfassungs-Software (Online-BDE), die aus 
einem Server und Clienten besteht. Zur Funktionalität gehört auch, dass 
sich die Client-Applikation selbständig updaten kann. Dabei lädt sie 
ihren Nachfolger  über einzeln angeforderte UDP-Pakete von der 
Server-Applikation.

Während der Entwicklung und den Tests läuft der Server in einem 
Firmennetz und der Client (über VPN) auf meinem Desktop zuhause. Dezeit 
bin ich beim Testen dieser Update-Funktion. Blöderweise trennt sich die 
VPN-Verbindung immer nach 8..10 Paketen. Ich kann mich zwar sofort 
wieder verbinden, aber das nervt doch erheblich. Gehört sowas zur 
VPN-Funktionalität?

Ich habe verschiedene Paketgrößen ausprobiert - von 1024 
(unfragmentiert) bis 10240 Byte. Zwar scheint es tendenziell einen 
Zusammenhang zu geben (bei größeren Paketen passiert es früher), aber 
nicht eindeutig ganz genau bei einer bestimmten Datenmenge.

Der betriebiche Admin ist naturgeäß nicht erfreut und will mir erstmal 
einreden, meine Applikation sei schuld - dabei hat die doch mit der 
VPN-Verbindung garnix zu schaffen (ausser, dass sie sie nutzt). Was tun?

Es muss schon etwas mit der Datenmenge zu tun haben (obwohl es nur 5 MB 
sind), denn im normalen RDP-Betrieb oder im Normalbetrieb des Clients 
werden ja auch stunden- und tagelang problemlos Daten ausgetauscht (auch 
per UDP) ...

Frank

Autor: __tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UDP garantiert zu keinem zeitpunkt das pakete auch ankommen, ich würde 
TCP vorschlagen wenn du keine fehler/flusskontrolle machen möchtest.

wegen dem vpn, bei sowas sollte man einen blick in die logfiles 
riskieren.

Autor: Frank Esselbach (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> UDP garantiert zu keinem zeitpunkt das pakete auch ankommen, ich würde
> TCP vorschlagen wenn du keine fehler/flusskontrolle machen möchtest.

Weiss ich, ist aber (im Moment) nicht das Thema.

Das Problem ist: Warum wird VPN-Verbindung getrennt, wenn "zuviel" (?) 
UDP transportiert wird. Eigentlich ist (sofern nicht von der Firewall 
geblockt), eine solche Verbindung doch transparent?

Frank

Autor: bingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist evtl. die "lifetime" der Verschlüsselung zu klein ?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
eventuell schaut her woher die Daten kommen, bei UDP gibt es ja keine 
Antwort wenn es so konfiguriert ist das aus dem VPN netzt daten kommen 
müssen dann schlägt der Timeout zu.

Wie kommt man überhaupt auf die Idee sotwas per UDP machen zu wollen?

Autor: __tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank Esselbach schrieb:
> Das Problem ist: Warum wird VPN-Verbindung getrennt, wenn "zuviel" (?)
> UDP transportiert wird.

naja, das steht im logfile des vpn-dienstes. ansich ist es egal welche 
daten man durch das vpn transportiert, es dürfte nie dazu führen das das 
vpn zusammenklappt, ansonsten könnte ein böswilliger nutzer ja einen 
dos-angriff darauf ausführen.

Autor: Frank Esselbach (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Kommunikation der Clients mit dem Server wird aus verschiedenen 
Gründen mit UDP gemacht:

- weil es in der von mir bevorzugten IDE (Real Studio) eine 
vorgefertigte Klasse gibt ("EasyUDP"), die quasi Netzwerk-"Gruppensex" 
extrem einfach macht. Über einen Gruppen-Namen wird eine Klasse-D-IP 
erzeugt und der Rest passiert quasi automatisch - auch das Sammeln der 
eingehenden Messages in einer Warteschlange.

- die Kommunikation der Clients mit dem Server erfolgt nur sporadisch 
und in industriell "veseuchter" Umgebung. Mit dem krampfhaften 
Aufrechterhalten einer TCP-Verbindung (und deren ständige 
Wiederherstellung) habe ich in der vorherigen Version keine gute 
Erfahrungen gemacht. Immerhin hängen bis zu 100 Clients am Server.

- bisher funktioniert Alles (!) zur vollsten Zufriedenheit über UDP. Da 
der Client nie Daten sendet, ohe darauf auch eine Antwort zu erwarten, 
ergibt sich ein Handshake quasi automatisch. Die Daten sind per 
Checksumme gesichert und werden ggf. nochmal angefordert.

- das bisher einzige Problem ist der Updateprozess über VPN. Kommt in 
der praktischen Anwendung eigentlich auch nicht vor, nur in der 
Entwicklungs- und Testphase ...

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von was für einer VPN ist hier denn überhaupt die Rede? Gibt ja doch 
mehr als einen Weg sowas herzustellen.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank Esselbach schrieb:
> Immerhin hängen bis zu 100 Clients am Server

ist ja wahnsinn 100 Clients.

So wie es scheint habt ja denn fast TCP in UDP neu programmiert. Das mag 
alles in einem wenig ausgelasten Netzt gut zu funktionieren. Aber wenn 
es dann wirklich mal Packet verloren gehen oder sich gegenseitig 
überholen dann wird es spannend.

> weil es in der von mir bevorzugten IDE (Real Studio) eine
> vorgefertigte Klasse gibt ("EasyUDP"), die quasi Netzwerk-"Gruppensex"
> extrem einfach macht.

sotwas klingt immer nach: Ich habe keine Lust mir gedanken zu machen 
oder selber etwas zu programmieren.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.