Sicherheit beruht auf der vermeintlichen Kenntnis und der tatsächlichen Unkenntnis der Zukunft. – Helmut Nahr
18 Netzwerkprogrammierung
Verbindungen von Rechnern unter Java aufzubauen ist ein Kinderspiel – somit ist die Netzwerkprogrammierung, die heutzutage noch aufwändig und kompliziert ist, schnell erledigt. Für Sun Microsystems sind Netzwerke das zentrale Computerthema, deshalb hat die Firma den Slogan »The Network is the Computer« gleich als Warenzeichen eingetragen. Die Netzwerk-API ist mehrheitlich im Paket java.net zu finden, wobei es auch zwei Klassen in javax.net gibt.
18.1 Grundlegende Begriffe 

Genau wie in anderen Bereichen gibt es in der Netzwerktechnik eine Reihe von Begriffen, deren Bedeutung bekannt sein sollte. Wir wollen daher für die wichtigsten unter ihnen eine Definition versuchen.
- Host: eine Maschine im Netzwerk, die mit einer eindeutigen Adresse (IP-Nummer) angesprochen werden kann.
- IP-Nummer: eine eindeutige Adresse, die jeden Host im Internet kennzeichnet. Die Adresse ist für IPv4 eine in die Teile Host und Netzwerk untergliederte 32-Bit-Zahl.
- Hostname: ein symbolischer Name für die IP-Nummer. Durch Techniken wie DNS (Domain Name Service) und Suns NIS (Network Information Services) werden diese Namen auf die IP-Adressen abgebildet.
- Paket (engl. packet): eine einzelne, über das Netzwerk verschickte Nachricht.
- Router: ein Host, der Pakete zwischen verschiedenen Netzwerken weiterreicht.
- IETF (Internet Engineering Task Force): eine Gruppe, die sich um Standards im Internet kümmert.
18.1.1 Internet-Standards und RFC 

Das Kürzel RFC (Request For Comment) wird uns im Folgenden noch öfter begegnen. RFCs sind frei verfügbare Artikel, in denen Standardisierungsvorschläge offiziell gemacht werden, die sich dann zum Standard etablieren sollen. Sie sind nicht so förmlich wie Normen (DIN, ISO oder IEEE), aber dennoch sehr weitreichend, und gelten als De-facto-Standard. Jeder RFC wird durch eine eigene Nummer referenziert; so ist das Internet Protocol (das IP in TCP/IP) in RFC 791 und das Protokoll, mit dem E-Mails befördert werden, in RFC 2821 (früher RFC 821) beschrieben. Der Diskussionsprozess selbst ist in RFC 1310 dokumentiert. Der Titel ist »The Internet Standards Process«. Wer selbst Ideen für einen Standard (Proposed Standard) hat, übergibt diese der Internet Engineering Task Force (IETF). Die Vorschläge werden diskutiert und können dann, sofern sie stabil, sinnvoll und verständlich sind, zu einem RFC werden. Falls zwei unterschiedliche Implementierungen existieren, kann dieser Vorschlag spätestens nach einem Jahr offiziell werden. RFCs lassen sich über http://www.rfc-editor.org/ suchen. Die Seite http://rfc-ref.org/ bietet die RFCs im HTML-Format mit Verlinkungen.