<< Chapter < Page Chapter >> Page >
Si presentano i principali protocolli e strumenti per far comunicare tra loro applicazioni software e dispositivi diversi.

Socket

Il protocollo tcp/ip

La comunicazione tra macchine diverse è strutturata secondo cinque strati:
  • Application layer
  • Transport layer
  • Internet layer
  • Network access layer
  • Physical layer
Il protocollo IP (Internet Protocol) viene usato nel layer 3 per instradare i messaggi tra reti diverse. Esso è presenteanche nei router, cioè in quelle macchine che fungono da snodo per la comunicazione tra le reti.Il protocollo TCP (Transmission Control Protocol) viene usato nel layer 2 per fornire una modalità di comunicazione che siaaffidabile e che garantisca in ricezione lo stesso ordine del flusso di dati ( stream ) imposto in trasmissione. TCP deve essere presente nei due terminali(host) della comunicazione.

Indirizzi

Ogni host ha un indirizzo internet univoco in senso globale,usato da IP per instradare i messaggi. Esso è di 32 bit (in IPv4, e di 128 bit in IPv6, diventato standard nel 1996) enormalmente fornito in notazione "dotted-quad" (e.g. 157.138.204.250) o come nome di host(e.g. www.iuav.it). La traduzione da nomi a numeri puo' avvenire mediante il file /etc/hosts o mediante il databasedistribuito chiamato Domain Name Service (DNS). Ogni applicazione deve avere un numero di port (di 16 bit)univoco all'interno dell'host, usato da TCP per gestire la comunicazione da e verso l'applicazione. I numeri fino aIPPORT_RESERVED (tip. 1024) sono riservati per un accesso ai server di sistema (HTTP, FTP, etc.).

Dati

Un blocco di dati inviato da una applicazione si arricchisce di informazioni aggiuntive (header) mentre scende verso glistrati piu' bassi dei protocolli di comunicazione.
  • A livello di trasporto viene aggiunto il TCP header (in modo da formare un TCP segment), il quale contiene leseguenti informazioni:
    • Destination Port
    • Sequence Number (per poter riordinare i blocchi di dati)
    • Checksum (per poter rilevare errori di trasmissione)
  • A livello di internet viene aggiunto l'IP header, in modo da formare un IP datagram. Tra le informazioni contenutein questo header vi è l'indirizzo dell'host di destinazione.

Affidabilità della trasmissione

All'interno del TCP header, il sequence number tiene tracciadell'ordine dei pacchetti inviati (non piu' grandi di 64KB), in modo che in ricezione si possano individuare i pacchettipersi e ricostruire l'ordine corretto. Mediante il checksum il ricevente è in grado di rilevare errori di trasmissione. Ilricevente notifica la corretta ricezione mediante messaggi di risposta. Essendo questo protocollo basato sulla connessionedi due nodi, tale connessione (virtuale) deve essere stabilita prima di iniziare la comunicazione.Il protocollo UDP (User Datagram Protocol) consente la comunicazione priva dell'overhead dovuto ai controlli diintegrità e consistenza dei messaggi. Essenzialmente, UDP aggiunge ad IP soltanto la capacita' di indirizzare deiport. Nell'UDP header c'è anche un campo checksum, ma non è previsto l'acknowledgement di ricezione corretta. Ilprotocollo UDP non ha bisogno di una connessione stabilita prima della comunicazione. Il protocollo UDP, oltre ad avereminore overhead rispetto a TCP, è anche essenziale al supporto di certe attività. Si pensi ad esempio al programmaping, il quale verifica la qualità di una connessione. Esso può funzionare solo se ha la possibilita' di verificare laperdita eventuale di pacchetti.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Programmazione di artefatti interattivi. OpenStax CNX. Dec 09, 2010 Download for free at http://cnx.org/content/col10417/1.9
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Programmazione di artefatti interattivi' conversation and receive update notifications?

Ask