Thematik Client server

elm84

Neues Mitglied
Hallo zusammen,
ich arbeit an und mit einer Software, welche Client Socketverbindungen zur Datenübertragung verwendet.
Problematik ist, das diese Software oft durch Firewalls muss und daher hohen Supportaufwand darstellt.

Bisher wird die einfache Socketverbindung verwendet über einen extra Port der freigeschaltet werden muss bei eingehender Verbindung.

Ich selber habe etwas java Erfahrung komme aber eigentlich aus dem C Bereich. Außerdem fehlt mir etwas der Hintergrund bei den IT Problemen.

Ich soll nun aber verschiedene Möglichkeiten Testen den Aufwand durch diese Firewalls zu kommen zu verringern.
Die Nutzer verwenden Hauptsächlich frei Port 80 und oder 443.

Nun meine Frage welche Möglichkeiten stehe mir für eine Client Server Kommunikation so überhaupt offen im Java Bereich. Ich habe sehr viele Themen gesehen. Weis aber nicht ohne erheblichen Aufwand welches Thema in diesem Netzwerkbereich gut passt.

Habe Themen wie JSON, http, Websocket, Socket und einiges anderes gesehen. Mit wird aus den einzelnen Themen durch oberflächliches lesen aber nicht gleich ersichtlich was mich zum Ziel führen könnte.

Darum meine Frage um mich einzulesen. Welche Technologien können mir helfen über Port 80/443 eine am besten verschlüsselte Datentransfers zu ermöglichen, welche auch nicht gleich durch Contentfilter geblockt werden. Dann würde ich mich in diesen Themen gezielt einarbeiten.

Danke schon mal!

Grüße elm84
 

empty23

Mitglied
Also die Beschreibung was die Anwendung denn eigentlich tun soll ist ein bisschen vage. Generell ist Port 80 für HTTP vorgesehen und 443 für HTTPs. Wenn du also etwas verschlüsseltest willst, dann würde ich schonmal zu HTTPS raten. Trotzdem will ich es vorher gesagt haben: Das Tunneln von Daten durch diese Ports, die eigentlich nicht auf diese Ports gehören, ist eigentlich nicht Sinn der Sache. Wenn es schon eine bestehende Software gibt, die auf einem gewissen Port agiert, dann wäre es wohl logischste Konsequenz, dass dieser Port auch freigegeben wird (und nicht die gesamte Software neu geschrieben wird und damit 1. Entwicklungskosten und 2. Wartungskosten entstehen)

Wenn wir die Grundüberlegung (ob diese Designentscheidung im Grunde überhaupt richtig ist) außen vor lassen, dann solltest du dir trotzdem selbst einen Überblick über die angesprochenen Technologien verschaffen. Du vermischst hier Protokolle (HTTP, ...) und einfache Datenformate in Form einer bestimmten Konvention (JSON). Diese Technologien sind keineswegs auf Java begrenzt sondern in so gut wie allen anderen Sprachen auch verfügbar - auch in C. Stell dir vielleicht vorher folgende Fragen:

1. Wie sollen die Daten übertragen werden (in welcher Form)?
1a. Kommen am Client & Server die gleichen Technologien zum Einsatz (z.B. sind beide in Java geschrieben)?
1b. Wird es unterschiedliche Clients geben?
1c. Entwickelt ihr sowohl Client, als auch Server und rollt die Updates gleichzeitig aus?

2. Welche Übertragungsmethode ist die richtige?
2a. Soll der Client immer eine Abfrage initiieren, oder soll es auch der Server können?
2b. Wie oft ist ein Datenaustausch notwendig? Ist es ein ständiges hin & her, oder holt der Client einmal Daten und verarbeitet die?
3c. So wie ich das verstanden habe, willst du ja nur den Client austausch - d.h. mit welchen Protokoll ist der Server überhaupt kompatibel?

Lg
 

elm84

Neues Mitglied
Hi empty23,
danke für deine Antwort.

Du hast recht die gefragt Thematik geht nicht direkt nur in JAVA. Habe das System zu wenig beschrieben.
Aktuell sind Client/Clients(verschiedene) und Server alle in Java. In Zukunft wird es vermutlich noch einen Client in C/C++ geben.
Dazu kommt das die Harwarekonstellation auch nicht immer gleich ist. Der Java Server ist mal auf nen Server im Netz und mal auf nem Server im Kundennetzwerk.

"Also die Beschreibung was die Anwendung denn eigentlich tun soll ist ein bisschen vage. Generell ist Port 80 für HTTP vorgesehen und 443 für HTTPs. Wenn du also etwas verschlüsseltest willst, dann würde ich schonmal zu HTTPS raten."
Ok danke. Das hilft mir ja schon mal.

"Trotzdem will ich es vorher gesagt haben: Das Tunneln von Daten durch diese Ports, die eigentlich nicht auf diese Ports gehören, ist eigentlich nicht Sinn der Sache. Wenn es schon eine bestehende Software gibt, die auf einem gewissen Port agiert, dann wäre es wohl logischste Konsequenz, dass dieser Port auch freigegeben wird (und nicht die gesamte Software neu geschrieben wird und damit 1. Entwicklungskosten und 2. Wartungskosten entstehen)"
Mir ist klar das der Aufwand nicht wenig ist und das http/https eigentlich nicht dafür gedacht ist. Aber bevor irgendwas in der Software geändert wird werde ich erst testen ob das ganze praktikabel ist mit einfacher Datenverbindung.
Das ganze passiert auch auf Wunsch diverser Kunden. Da diese in großen Netzwerken sitzen bei denen die EDV oft Richtlichnien hat bei denen wir schwer zu kämpfen haben einen Port frei zu bekommen. Deshalb der Wunsch der Kunden als auch von uns dazu.

"
1. Wie sollen die Daten übertragen werden (in welcher Form)?
1a. Kommen am Client & Server die gleichen Technologien zum Einsatz (z.B. sind beide in Java geschrieben)?
1b. Wird es unterschiedliche Clients geben?
"
Diese fragen wurden ja oben im Text beantwortet.

"
1c. Entwickelt ihr sowohl Client, als auch Server und rollt die Updates gleichzeitig aus?
"
Wenn es soweit kommt ja.

"
2. Welche Übertragungsmethode ist die richtige?
2a. Soll der Client immer eine Abfrage initiieren, oder soll es auch der Server können?
2b. Wie oft ist ein Datenaustausch notwendig? Ist es ein ständiges hin & her, oder holt der Client einmal Daten und verarbeitet die?
3c. So wie ich das verstanden habe, willst du ja nur den Client austausch - d.h. mit welchen Protokoll ist der Server überhaupt kompatibel?
"
Da werde ich nun dran arbeiten danke :)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Performanteste Kommunikationsmethode zwischen Client u. Server Netzwerkprogrammierung 4
L Socket Automatische Zuweisung von Server und Client Rolle Netzwerkprogrammierung 12
ExceptionOfExpectation Server/Client-Kommunikation Netzwerkprogrammierung 34
M Server-Client-System für Browsergame Netzwerkprogrammierung 5
B Axis2 Webservice mit Client Zertifikat Authentifizierung Netzwerkprogrammierung 3
Yonnig Threads mit Client/Server und GUI (laufend bis button-click) Netzwerkprogrammierung 9
T Jetty mit Client-Zertifikat nur bei spezifischer URL Netzwerkprogrammierung 1
J Einlesen von Servernachrichten von TCP-Client Netzwerkprogrammierung 17
J Client-Server und SOAP Netzwerkprogrammierung 23
L30nS RMI Aufruf einer Client-Methode von einem RMI-Server Netzwerkprogrammierung 3
T String von Client zu Server kommt nicht an Netzwerkprogrammierung 92
D WebSocket Server mit HTML Client und Java Server Netzwerkprogrammierung 5
D Server - Client Informationsaustausch, Möglichkeiten Netzwerkprogrammierung 3
H Socket Chat entwickeln mit Java Server Client Netzwerkprogrammierung 4
X Kann ich einen Client/Server verbindung hinkriegen die mir alle paar Sekunden die aktuellen Daten per Realtime zuschickt ? Netzwerkprogrammierung 9
T Client zu Client Kommunikation Netzwerkprogrammierung 2
D Slf4j - Logging - Client-Server Architektur Netzwerkprogrammierung 3
J client server mit nur einem PC Netzwerkprogrammierung 33
M Socket Nachricht von TCP-Client an Server schicken Netzwerkprogrammierung 12
M Socket Verbindung Matlab(Server) Java(Client) Netzwerkprogrammierung 1
R Socket FATAL EXCEPTION MAIN bei Socket based client/server app Netzwerkprogrammierung 2
G Server-Client IO Problem Netzwerkprogrammierung 6
ruutaiokwu ständig "sender address rejected: improper use of smtp" bei smtp-client Netzwerkprogrammierung 4
J HTTP [Java 9] Neuer HTTP Client - Tutorial Netzwerkprogrammierung 3
A Chatserver/-client - Code stoppt bei readUTF() Netzwerkprogrammierung 7
I Socket Das erste Server-Client Programm Netzwerkprogrammierung 16
L Zugriffprobleme Client - Webservice AspenTechnology Netzwerkprogrammierung 0
A Client Client Übertragung Netzwerkprogrammierung 12
M Socket Server antwortet dem Client nicht Netzwerkprogrammierung 6
K Socket Netty Client wirft Fehler! Netzwerkprogrammierung 3
I Client/Server Kommunikation bei einem Spiel Netzwerkprogrammierung 4
E Objekte versenden, Client-Server Netzwerkprogrammierung 25
C Mini Client-Server-Anwendung funktioniert nicht Netzwerkprogrammierung 8
U Client Soap Verbindung wieder schließen Netzwerkprogrammierung 0
U Socket Client mit hash authentifizieren Netzwerkprogrammierung 3
F HTTP HTTP Rest Client mit TLS1.2 und selbst signiertem Zertifikat Netzwerkprogrammierung 2
P Server als Client nutzen Netzwerkprogrammierung 8
D Socket Run Args Client/Server Socket Netzwerkprogrammierung 1
Cromewell Socket Multithreaded Server und Client Netzwerkprogrammierung 1
Y Client/Server/DB communication Netzwerkprogrammierung 3
JavaWolf165 Socket mit .writeUtf etwas vom Client zum Server schicken Netzwerkprogrammierung 13
J Client - Serversocket Netzwerkprogrammierung 1
P RMI Client Server Programm über Internet Netzwerkprogrammierung 2
brainless Client Server Kommunikation verschlüsseln Netzwerkprogrammierung 13
gamebreiti Socket Server / Client Anwendung Manipulation von Objekten durch Server Netzwerkprogrammierung 9
T Socket Server/Client Kommunikation Netzwerkprogrammierung 8
N Fragen zu Sockets Client Netzwerkprogrammierung 3
F Extasys TCp Client extends Funktion Netzwerkprogrammierung 0
F Server Client Anwendung mit UDP Netzwerkprogrammierung 2
O Client zwischen XML und JSON auswählen lassen Netzwerkprogrammierung 2
A RMI Wo treten Exceptions bei RMI Aufrufen auf? Auf Client oder auf Server? Netzwerkprogrammierung 3
A ByteBuffer - Client/Server Netzwerkprogrammierung 9
A Socket Wie ein einfacher Multithreads Service mit Telnet als Client mit Observable/Observer gelöst.... Netzwerkprogrammierung 0
K C# Server - Android Client Netzwerkprogrammierung 0
T Application Client NullPointerExc Netzwerkprogrammierung 7
V TCP Client funktioniert auf Emulator aber nicht auf Smartphone Netzwerkprogrammierung 5
H Machbarkeitsfrage: TCP/IP Client (z.B. Netty) für Java Web Applcation Netzwerkprogrammierung 1
P MIME-TYPE Erklaerung, Kommunikation zwischen Client und Server Netzwerkprogrammierung 3
H HTTP REST Jersey - PUT-Beispiel von Client senden Netzwerkprogrammierung 0
J Sichere Kommunikation bei Server Client Netzwerkprogrammierung 3
T Frage zu Client-Server Applikation Netzwerkprogrammierung 2
H Socket Client/Server Socket Programmieren Netzwerkprogrammierung 1
M Theoretische Frage zu Server - Client Netzwerkprogrammierung 2
P HTTP Server / Client Netzwerkprogrammierung 1
N FTP FTP Client invalid IPv6 address (Apache Commons Net API) Netzwerkprogrammierung 6
F TCP Client, verbindung aufrecht halten Netzwerkprogrammierung 0
X RMI: Woher kennt der Client das Schnittstellen-Interface? Netzwerkprogrammierung 2
D UDP Client empfängt nichts Netzwerkprogrammierung 2
D Client/Server per Crossover Lan Kabel Netzwerkprogrammierung 1
S Client Server Connection Netzwerkprogrammierung 4
V erste Client - Server Anwendung, paar Fragen wie Socketverbindung checken usw. Netzwerkprogrammierung 4
S Client Anwendung mit zentraler SQL-Datenbank Netzwerkprogrammierung 3
N Client Identifikation eines Servers Netzwerkprogrammierung 1
S Sichere Server/Client Architektur Netzwerkprogrammierung 1
D Chat Server/mehre Client Netzwerkprogrammierung 9
I Server+Client Netzwerkprogrammierung 3
N Client am Server abmelden Netzwerkprogrammierung 0
F Server/Client Probleme Netzwerkprogrammierung 3
D SSH Client Netzwerkprogrammierung 7
U Socket Instant Messanger (Server Linux, Client Windows) Netzwerkprogrammierung 1
B TCP Client Android Netzwerkprogrammierung 3
Athena Grundsatzfragen zu Client-Server-Architektur / Matchmaking Netzwerkprogrammierung 1
A Problem beim Senden von Client zu Server Netzwerkprogrammierung 10
F Client Server DB Netzwerkprogrammierung 0
A Verständnisfrage Multi-Threaded Client/Server Netzwerkprogrammierung 5
F Tipps zum Thema Server/Client vie SOAP Netzwerkprogrammierung 0
OnDemand Ist Client noch angemeldet? Netzwerkprogrammierung 7
F Socket Java - Server/Client simple Netzwerkprogrammierung 1
D Socket UDP Client reagiert nicht auf spontane Meldungen Netzwerkprogrammierung 5
R Zeitliche Syncronisation Server - Client Netzwerkprogrammierung 0
S Server-Client: Image senden Netzwerkprogrammierung 2
C Multithreading Client / Server erklärt Netzwerkprogrammierung 11
M Client sendet nur, wenn das Socket geschlossen wird Netzwerkprogrammierung 53
P server - client verbindung (anfänger) Netzwerkprogrammierung 8
S Socket (client) verbindet nicht Netzwerkprogrammierung 6
V Templates für Java Client rabbitmq Netzwerkprogrammierung 4
J Client Server - Serialisierung Netzwerkprogrammierung 8
C Client connection per Portforwarding auf einen lokalen Serverport Netzwerkprogrammierung 3
Luk10 Server / Client: Clients speichern! Netzwerkprogrammierung 6
M allgemeine Frage über Server-Client-Kommunikation Netzwerkprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben