Che cos'è la programmazione della rete di computer?
La programmazione della rete di computer descrive il processo di creazione di programmi in grado di utilizzare la comunicazione di rete per operare. I programmi realizzati con questo metodo - essenzialmente qualsiasi programma che richiede altri programmi di rete per funzionare - sono chiamati sistemi distribuiti. Questi programmi sostanzialmente rientrano in tre categorie: connessi, non connessi o peer-to-peer. Queste categorie descrivono, in termini generali, il modo in cui il programma utilizza la connessione di rete e la relazione che ha con i programmi all'altra estremità.
Quando si parla di programmazione di reti di computer, il termine "rete" è molto ampio. Copre tutto, dalle intranet locali, in cui una singola persona condivide l'accesso tra i sistemi connessi e l'accesso completo a Internet, dove i sistemi possono trovarsi a migliaia di miglia di distanza. Indipendentemente dallo scopo, dalla posizione o dalla distanza tra i programmi, hanno tutti bisogno di più pezzi in luoghi diversi per funzionare correttamente.
Il termine comune usato per descrivere questi programmi è "sistema distribuito". Ciò significa sostanzialmente che le singole parti del programma sono state distribuite in più posizioni. Il programma si comporta come un singolo sistema, ma richiede alla rete di consentire l'interazione di tali sistemi.
In generale, la programmazione della rete di computer rientra in tre categorie. Un sistema connesso richiede che due o più sistemi comunichino costantemente per funzionare. Si tratta spesso di relazioni client / server, in cui molti singoli client si connettono tutti a un server di grandi dimensioni. In questi casi, c'è generalmente una discreta quantità di disuguaglianza, in genere una metà del sistema collegato è molto più importante o ha più funzionalità dell'altra.
La programmazione di reti di computer non connesse crea sistemi che devono dialogare tra loro, ma funzioneranno in modo indipendente. Mentre questo modello ha molte applicazioni, un uso corrente comune è il server di autenticazione. In questa configurazione, un programma è pieno e completo in una posizione, ma non funzionerà se non indicato da un programma diverso. Quando un utente tenta di utilizzare il programma, chiederà l'autorizzazione al server di autenticazione e il server risponderà. Le informazioni sul server non sono necessarie al programma, ma non funzioneranno se non sono in grado di comunicare.
Il terzo tipo di programmazione della rete di computer è peer-to-peer. In questo stile, i programmi sono sia un client che un server, entrambi inviano e ricevono informazioni contemporaneamente. Questi programmi si collegheranno in genere ad altri programmi dello stesso tipo, creando un sistema chiuso composto da centinaia, se non migliaia, di sistemi indipendenti. Questo è generalmente il più equilibrato degli stili di programmazione della rete di computer poiché ogni singolo programma è essenzialmente lo stesso.