Entwickler-Ecke

Sonstiges (Delphi) - Datenaustausch


icho2099 - Fr 28.04.17 13:41
Titel: Datenaustausch
Hallo,
eine Fragestellung allgemein, ohne konkrete Programmiersprache, auch wenn die Umsetzung ggf dann in Delphi erfolgen würde.

Ich habe ein Firmennetzwerk mit recht strengen Regeln was die Kommunikation "nach außen" angeht und überlege wie ich
mobile Devices außerhalb zur Verbindungsaufnahme mit anderen Devices innerhalb bewegen könnte.

Meine Überlegung:
Ich richte außerhalb einen Service auf einer Maschine ein, die jederzeit (feste IP) erreichbar ist.
Devices von innerhalb und außerhalb wenden sich an den Service auf dieser Maschine. Wenn ich dazu gängige Ports verwende,
also 80 z.B. kann ich diese Maschine auch von innerhalb erreichen.
Der Service selber wird also nur über requests von Clients angesprochen, empfängt Daten und leitet diese an den jeweiligen
"Partner" weiter.
Der Service selber kennt alle Teilnehmer und reicht nur Daten hin und her. In etwa so wie ein Proxy das auch tut.
Die Identifikation der Teilnehmer durch den Service würde nicht über die IP Adressen sondern über eigene Namen erfolgen.

Als ersten Ansatz würde ich so etwas wie das Steuerzeichenprotokoll von Narses verwenden und die Nutzdaten darin verstecken.
Innere und äußere Devices würden unterschiedliche Ports verwenden. Die äußeren wären immer die Initiatoren einer Kommunikation
mit Inneren. Der/die Inneren würden versuchen permanent eine Verbindung zu dem Service zu halten, um ggf von äußeren erreichbar
zu sein.

Was denkt ihr, würde das so im Prinzip funktionieren oder hab ich etwas grundlegendes übersehen?

Aspekte bzgl. Sicherheit etc. sollen zunächst keine Rolle spielen, es geht um das Funktionsprinzip selber.


Lemmy - Fr 28.04.17 23:15

Du meinst in etwa so was:
https://github.com/thinktecture/relayserver

habe das Produkt noch nicht eingesetzt, die Präsentation auf der letzten EKON fand ich aber sehr ansprechend.....

hier die Readme:
https://github.com/thinktecture/relayserver/blob/master/README.md


icho2099 - Sa 29.04.17 10:00

Ja, genau so. Dachte mir schon, dass es das bereits gibt, kannte den Begriff Relay-Server nicht.
Danke für den Hinweis, damit wäre die grundlegende Fragestellung geklärt.
Der Rest ist "nur" noch viel Arbeit