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


von Frank E. (Firma: Q3) (qualidat)


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

von __tom (Gast)


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.

von Frank E. (Firma: Q3) (qualidat)


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

von bingo (Gast)


Lesenswert?

Ist evtl. die "lifetime" der Verschlüsselung zu klein ?

von Peter (Gast)


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?

von __tom (Gast)


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.

von Frank E. (Firma: Q3) (qualidat)


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 ...

von (prx) A. K. (prx)


Lesenswert?

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

von Peter (Gast)


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.