LabVIEWForum.de
TCP IP Verzögerung / Delay / Ping über Netzwerk - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: TCP IP Verzögerung / Delay / Ping über Netzwerk (/Thread-TCP-IP-Verzoegerung-Delay-Ping-ueber-Netzwerk)



TCP IP Verzögerung / Delay / Ping über Netzwerk - LazyBoNe - 24.02.2014 15:11

Hallo zusammen.

Zu einem Haupt-VI möchte ich eine Visualisierungs-VI für den Patienten auf einem zweiten PC im Netzwerk laufen lassen. Eine wichtige Anforderung ist, dass diese ich Echtzeit läuft, bzw. mit möglichst kleiner zeitlicher Verzögerung Signalverläufe auf einem Chart anzeigt.

Nach gründlicher Suche bin ich zum Resultat gekommen, dass die beste Leistung mit dem Low-Level Verfahren TCP / IP erreicht werden kann. Im Testaufbau habe ich einen zweiten PC direkt am gleichen Netzwerk-Switch wie der Haupt-PC am laufen und somit eine hervorragende Ping von 1ms. (getestet mit cmd)

Ich habe nun die Beispiel VI zum TCP IP ein wenig abgeändert (siehe Anhang). Mit dem Slider kann die Signaländerung im Server realisiert werden. Im Client sieh man dann die Änderung des Signals. Es scheint ein ziemlich grosses Delay zu geben, vllt. 200ms (das ist leider gut bemerkbar für eine Visu und kann den Patienten verwirren) durch den Nagle Algorithmus? Dies ist für eine Visualisierung ziemlich ungünstig Confused

Leider habe ich kein LV2012 und kann nicht nachvollziehen, wie man den Nagle Algorithmus ausschaltet:
NagleOff

Fragen an euch:
-Ist TCP IP grundsätzlich der richtige Ansatz für echtzeitfähige Visualisierungen? (Verzögerungszeit<50ms gewünscht, wie beim gaming)
-Könnte der Nagle Algo verantwortlich sein für diese Verzögerung oder habe ich etwas noch falsch gemacht?
-Könnte mir jemand die VI, welche den Nagle ausschalten auf LV2011 speichern, damit ich dies ausprobieren kann?

Mit freundlichen Grüssen
LazyBoNe


RE: TCP IP Verzögerung / Delay / Ping über Netzwerk - macmarvin - 24.02.2014 17:06

Ohne deinen Code angeschaut zu haben, klingt dein Lösungsansatz Nagle deaktivieren richtig.
Anbei die Version für LV2011. Auf der NI Seite lag an dieser Stelle jahrelang so eine uralte (räudige) LLB. Immerhin hat da NI nochmal etwas Arbeit rein gesteckt und es aufgehübscht.
Die VIs sehen im wesentlichen so aus wie die Alten, deshalb würde ich vermuten, dass du damit dein Problem löst.
Sonst gibt es noch Windowseinstellungen für die Netzwerkkarte Stichwort: tcpackfrequency/nagle
Das wird dann aber schon esoterisch, mir ist bisher nur ein Messgerät gesehen, das sowas gebraucht hätte.


RE: TCP IP Verzögerung / Delay / Ping über Netzwerk - LazyBoNe - 25.02.2014 16:19

Zurück aus dem Google-Land mit neuen Erkenntnissen. Google

Besten Dank für die Version11 der Files. Ich war geschockt als ich diese angeschaut habe Blush
Scheint doch wohl ein Gebastel zu sein mit TCP und dem Aussschalten von Nagle... Construction Da merkte ich, dass da etwas nicht stimmen konnte.

Nach langem googeln bis tief in die Nacht habe ich die Lösung gefunden:

UDP verwenden.

UDP wird meistens bei realtime Anwendungen verwendet (z.B. VOIP), da TCP diesen Anforderungen nur schwer gerecht werden kann. Moderne PC games verwenden eine Kombination aus TCP und UDP.

Wichtig: Es kann bei UDP zu Paketverlust kommen.
Die ist das bei einer Visualisierung aber total egal, solange genügend Daten/Sekunde ankommen.

Source:
TCP or UDP in games
TCP vs UDP


Habe nun UDP verwendet und es funktioniert tadellos. Rofl2

Mit freundlichen Grüssen
LazyBoNe