Nahtlose Socket-Programmierung in Java

Ein Hauptgrund für den Erfolg der Java-Plattform ist, dass sie von Anfang an Netzwerkunterstützung bot. In diesem Artikel geht es darum, wie man die grundlegende Netzwerkfähigkeit durch die Verwendung von Java-Sockets nutzen kann.

Was sind Sockets? Die TCP/IP-Familie von Protokollen ist ein wichtiges Werkzeug für die Organisation von verteiltem Rechnen und die Kommunikation innerhalb von Unternehmensapplikationen. Das TCP-Protokoll erledigt Transportaufgaben für eine Applikation, während das IP-Protokoll als Hülle für TCP-Paketdaten dient und Netzwerk- und Adressierungsfähigkeiten zur Verfügung stellt. Es gibt noch ein anderes Protokoll auf der Transportschicht, User Datagram Protocol (UDP) genannt, das in das IP-Paket gekapselt ist. Es dient als verbindungsloses Datagramm-Protokoll. Da die UDP-Paketübertragung keine Verbindung erfordert, ist sie eine Einwegnachricht ohne Bestätigung. Sie ist schneller, aber weniger zuverlässig.

An beiden Enden einer TCP-Verbindung müssen offene Sockets vorhanden sein, bevor irgendwelche Daten übertragen werden können. Aus der Sicht eines Programmierers ist ein Socket ein Kanal zum Senden und Empfangen von Daten an beziehungsweise von einer Applikation auf einem anderen Rechner.

Um eine TCP-Verbindung zu öffnen, kann man Funktionen der Standard-Java-Bibliothek aus Klassen verwenden, die sich in einem Java.net-Paket befinden. Das Paket enthält Klassen für die Arbeit mit Sockets in jeder Betriebssystemumgebung. So bleibt Java wirklich plattformunabhängig. Aufrufe durch Java.net-Klassen werden zu Betriebssystem-API-Aufrufen übersetzt. Sämtliche Details einer TCP/IP-Implementierung sind für den Applikationsentwickler unsichtbar. Für TCP-Sockets nutzt man InetAddress-, Socket– und ServerSocket-Klassen. Für UDP-Sockets verwendet man die Klassen DatagramSocket und DatagramPacket. Es können sogar neue Netzwerkprotokolle auf der Grundlage von TCP oder UDP entwickelt werden. Für diese Zwecke werden spezielle Klassen und Schnittstellen verwendet, wie zum Beispiel SocketImplFactory, SocketImpl und DatagramSocketImpl.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Nahtlose Socket-Programmierung in Java

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *