Netzwerk Socket Programmierung (Win)

Gast #5733640
Lesenswert?

Hallo zusammen,

ich habe hier ein Usb Device basierend auf der HID Class. Das Device ist 
selbstgebaut und HID wird lediglich dazu benutzt Control und Status 
Daten zu tunneln. Es ist geplant das Gerät in Serie zu produzieren. Die 
Kommunikation geschied über eine Wrapper DLL.
Nun ist der Wunsch aufgekommen das Gerät über das Netzwerk 
fernbediehnbar zu machen. Erste Versuche habe ich dazu mit einem USB 
Device Server durchgeführt. Das funktioniert problemlos.

Unser Device wird immer an einem PC betrieben, der am Netzwerk 
angeschlossen ist. Deshalb würde es ja ausreichen, auf diesem PC einfach 
eine Server App zu starten (als Dienst?) und so den USB Device Server 
einzusparen.
Die Server App würde also einfach die empfangenen Netzwerkpakete 
decodieren und diese über die Wrapper DLL an das lokale USB Device 
senden. Umgekehrt würden die USB Daten dann an den Client geleitet. Die 
Datenrate ist überschaubar HID bei weitem ausreichend. Das Netzwerk 
würde einfach ein weiterer Tunnel für die HID Daten sein.

Ich habe mich schon etwas in die Socket Programmierung eingelesen und 
mir mal ein Loopback Adapter mit fixer IP auf dem PC installiert. Vom 
Loopback Adapter erhoffe ich mir, dass ich  die Netzwerkfunktionalität 
erst mal lokal testen und debuggen kann.

Nun ist Netzwerkprogrammierung nicht meine Kernkompetenz deshalb meine 
Fragen:
 - Was haltet Ihr prinzipell von diesem Konzept?
 - Sind Sockets der richtige Ansatz?
 - Wird das mit em Loopback Adapter so funktionieren?

Bitte keine Diskussion über HID, das funktioniert schon perfekt und ist 
meines Wissens die einzige Softwareschnittstelle die OS übergreifent 
überall verfügbar ist. Ebenso werde ich am Device sicher keine 
Netzwerkschnittstelle dazubauen.

Vielen Dank im vorraus

Thomas
Persönliche Seite #5733722
Lesenswert?

Es gibt auch USB-Device-Server-Software für Windows.

https://www.virtualhere.com/windows_server_software

Mit der kostenlosen Varianten kann man ein Gerät im Netzwerk zur 
Verfügung stellen, nach Geldeinwurf entsprechend mehr.

Den korrespondierenden Client gibt es für verschiedene Betriebssysteme:

https://www.virtualhere.com/usb_client_software

Vielleicht hilft das ja schon bei Deiner Anwendung.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren