PROGRAMMIAMO
Internet - Protocolli
Definizione di protocollo

Il termine protocollo viene usato in generale per indicare un complesso di regole e di procedure a cui ci si deve attenere in determinate attività. Per esempio in campo medico un protocollo definisce le regole da seguire per una diagnosi o una terapia. In ambito diplomatico il protocollo identifica l'insieme delle norme e dei cerimoniali che regolano lo svolgimento di visite di stato, ricevimenti ufficiali etc.

Un protocollo di comunicazione (o più semplicemente protocollo) è un insieme di regole standard nell'ambito delle telecomunicazioni. Tali regole standard sono necessarie per permettere a dispositivi diversi di comunicare correttamente. In pratica un protocollo è uno standard condiviso che specifica in quale modo deve avvenire la comunicazione.

Ci sono semplici esempi di protocolli di comunicazione anche al di fuori delle reti di telecomunicazione. Per esempio un italiano e un cinese, volendo comunicare fra loro, potrebbero mettersi d'accordo nell'utilizzare la lingua inglese: tale accordo sulle regole di comunicazione è appunto un esempio di protocollo di comunicazione.

 

Un esempio più elaborato di protocollo di comunicazione è quello che viene usato per instaurare una comunicazione via radio. In questo caso esistono particolari linguaggi e serie di procedure codificate per stabilire la comunicazione, per condurla e per terminarla. Si consideri, a titolo di esempio, il seguente scambio fra un aereo e la torre di controllo a terra:

Aircraft: Boston Tower, Warrior tree fife foxtrot (35F), holding short of two two right.

Tower: Warrior tree fife foxtrot, Boston Tower, runway two two right, cleared for immediate takeoff.

Aircraft: Roger, tree fife foxtrot, cleared for immediate takeoff, two two right.

Come si può notare, anche senza comprenderne i contenuti nel dettaglio, il protocollo di comunicazione in questo caso usa un linguaggio codificato in modo molto preciso.

Protocolli dettagliati e privi di ambiguità sono a maggior ragione indispensabili per regolare la comunicazione fra dispositivi automatici, come per esempio i computer collegati in una rete. La figura seguente mostra per esempio lo scambio di messaggi necessari per stabilire una connessione fra un PC client e un server:

Caratteristiche generali di un protocollo e definizione di entità

Utilizziamo il termine generico entità per indicare la sorgente e il destinatario di una comunicazione: le due entità potrebbero essere due persone, due computer, due programmi in esecuzione, etc.

In generale un protocollo deve specificare:

Per illustrare che cosa in generale deve prevedere un protocollo, consideriamo il semplice esempio di una telefonata fra due persone. Potremmo definire il protocollo di comunicazione in questo modo:

  1. per quanto riguarda il chiamante:
    1. DEVE sollevare il ricevitore del telefono
    2. DEVE attendere il segnale di linea libera
    3. DEVE comporre il numero completo di prefisso e indicativo internazionale
    4. se il telefono del ricevente non dà il tono di occupato, DEVE attendere la risposta; altrimenti deve chiudere la chiamata e riprovare più tardi.
  2. per quanto riguarda il ricevente:
    1. quando squilla il telefono, DEVE afferrare il ricevitore
    2. DEVE portare il ricevitore alla testa (in modo da poter ascoltare dall'altoparlante e parlare nel microfono)
    3. DEVE enunciare chiaramente una formula di risposta alla chiamata;

  3. le formule di risposta alla chiamata valide DEVONO includere una fra le seguenti frasi: PRONTO, PARLA ... (seguito dal nome della persona) oppure semplicemente SI?;

  4. le formule di risposta alla chiamata valide POSSONO includere anche una fra le seguenti frasi: BUONGIORNO, SALVE;

  5. dopo aver enunciato le formule di risposta alla chiamata, colui che risponde DEVE smettere di parlare ed attende una replica dal chiamante;

  6. il chiamante DEVE attendere la fine del tono di chiamata e DEVE aspettare che il ricevente formuli la risposta alla chiamata;

  7. una volta che la formula di risposta alla chiamata è terminata, il chiamante DEVE fornire una replica al chiamante;

  8. le repliche al chiamante valide DOVREBBERO includere almeno una fra le seguenti: un saluto (es. "Ciao"), un'identificazione (es. "mi chiamo Giancarlo") o una richiesta (es. "potrei parlare con Alice?");

  9. chiamante e ricevente proseguono la telefonata parlando a turno e aspettando ogni volta che l'altro abbia terminato di parlare;

  10. la chiamata DOVREBBE essere terminata da una delle due parti pronunciando una fra le seguenti frasi: DEVO ANDARE ORA, E' STATO UN PIACERE, ARRIVEDERCI.

Naturalmente la comunicazione reale fra due persone segue regole molto meno rigide di queste, ma dovendo stabilire il protocollo di comunicazione fra due "macchine" è necessario specificare con precisione tutti i casi possibili. Si noti che alcune prescrizioni fornite dal protocollo sono obbligatorie (DEVE), altre sono possibili (POSSONO) e altre ancora sono semplicemente raccomandate (DOVREBBERO).

La comunicazione fra due persone avviene tipicamente attraverso un linguaggio condiviso (es. la lingua italiana). Nel caso di due macchine, a questo proposito il protocollo potrebbe ulteriormente specificare che:

  1. chiamante e ricevente DOVREBBERO comunicare nello stesso linguaggio;
  2. chiamante e ricevente DOVREBBERO tentare di identificare un linguaggio comune;
  3. nel caso in cui non si riesca a identificare nessun linguaggio in comune, il chiamante o il ricevente POSSONO terminare la chiamata in qualsiasi momento.

Il protocollo deve anche stabilire anche chiaramente l'ordine e la sequenza in cui deve aver luogo la comunicazione. Per esempio chiamante e ricevente DEVONO aspettare che l'altro abbia terminato di parlare prima di parlare a loro volta. Se uno dei due parla contemporaneamente all'altro, la risposta può non essere ricevuta correttamente e la chiamata potrebbe terminare prima del tempo.

 

precedente - successiva

Sito realizzato in base al template offerto da

http://www.graphixmania.it