Was ist Computer-Netzwerkprogrammierung?
Computernetzwerkprogrammierung beschreibt den Prozess der Erstellung von Programmen, die die Netzwerkkommunikation für den Betrieb verwenden können. Mit dieser Methode erstellte Programme - im Wesentlichen alle Programme, für deren Ausführung andere vernetzte Programme erforderlich sind - werden als verteiltes System bezeichnet. Diese Programme lassen sich grundsätzlich in drei Kategorien einteilen: verbunden, nicht verbunden oder Peer-to-Peer. Diese Kategorien beschreiben in groben Zügen, wie das Programm die Netzwerkverbindung verwendet und in welcher Beziehung es zu Programmen am anderen Ende steht.
Wenn von Computernetzwerkprogrammierung die Rede ist, ist der Begriff "Netzwerk" sehr weit gefasst. Es deckt alles ab, angefangen von lokalen Intranets, in denen eine einzelne Person den Zugriff zwischen verbundenen Systemen teilt, bis hin zum vollständigen Internetzugang, in dem die Systeme möglicherweise mehrere tausend Kilometer voneinander entfernt sind. Unabhängig von dem Zweck, dem Ort oder der Entfernung zwischen den Programmen benötigen sie alle mehrere Teile an verschiedenen Orten, um korrekt zu funktionieren.
Der gebräuchliche Begriff zur Beschreibung dieser Programme lautet "verteiltes System". Dies bedeutet im Wesentlichen, dass die einzelnen Programmteile auf mehrere Standorte verteilt wurden. Das Programm verhält sich wie ein einzelnes System, aber das Netzwerk muss diese Systeme interagieren lassen.
Im Allgemeinen wird die Computernetzwerkprogrammierung in drei Kategorien unterteilt. Ein verbundenes System erfordert, dass zwei oder mehr Systeme ständig kommunizieren, um zu funktionieren. Hierbei handelt es sich häufig um Client / Server-Beziehungen, bei denen viele einzelne Clients eine Verbindung zu einem großen Server herstellen. In diesen Fällen gibt es im Allgemeinen ein gutes Maß an Ungleichheit. In der Regel ist eine Hälfte des verbundenen Systems viel wichtiger oder hat mehr Funktionen als die andere.
Durch nicht angeschlossene Computernetzwerk-Programmierung entstehen Systeme, die miteinander kommunizieren müssen, jedoch unabhängig voneinander arbeiten. Während dieses Modell viele Anwendungen hat, ist der Authentifizierungsserver eine gängige derzeitige Verwendung. In diesem Setup ist ein Programm an einem Ort vollständig und vollständig, funktioniert jedoch nur, wenn Sie von einem anderen Programm dazu aufgefordert werden. Wenn ein Benutzer versucht, das Programm zu verwenden, fragt er den Authentifizierungsserver nach seiner Berechtigung ab und der Server antwortet. Die Informationen auf dem Server sind für das Programm nicht erforderlich, funktionieren jedoch nur, wenn sie kommunizieren können.
Die dritte Art der Computernetzwerkprogrammierung ist Peer-to-Peer. In diesem Stil sind die Programme sowohl ein Client als auch ein Server, die gleichzeitig Informationen senden und empfangen. Diese Programme stellen in der Regel eine Verbindung zu anderen Programmen desselben Typs her und bilden ein geschlossenes System, das aus Hunderten, wenn nicht Tausenden, unabhängigen Systemen besteht. Dies ist im Allgemeinen der ausgewogenste Programmierstil für Computernetzwerke, da jedes einzelne Programm im Wesentlichen gleich ist.