1.CAPITOLO
1.1 Che cos’è internet?
E’ davvero impossibile definire internet in una sola frase, in quanto essa è molto
complessa sia in termini dei suoi componenti hardware e software e sia nei servizi che
fornisce.
La internet pubblica è una rete di calcolatori che abbraccia il mondo, cioè una rete
che collega tra loro milioni di unità di calcolo, tra cui PC, stazioni di lavoro basate su
Unix e i cosidetti server che archiviano informazioni come pagine Web e messaggi
email. Tutti gli apparecchi che vengono collegati a internet sono chiamati host o end
system (terminali).
I terminali sono collegati tra loro attraverso link di comunicazione, e che sono
costituiti da diversi tipi di mezzi trasmissivi, compresi cavi coassiali, cavi di rame e
fibre ottiche. Diversi link possono trasmettere dati a differenti velocità, e la velocità di
trasmissione di un link è spesso detta larghezza di banda del link e di solito si
misura in bit/ secondo. Normalmente i terminali non sono collegati direttamente fra di
loro attraverso un singolo link di comunicazione. Essi sono collegati indirettamente
attraverso dispositivi di commutazione detti router. Un router preleva un ‘pezzo’ delle
informazioni che arrivano su uno dei suoi link di comunicazione in ingresso e lo
reindirizza a uno dei suoi link di comunicazione in uscita. Nel gergo del computer
networking ‘il pezzo’ di informazioni è chiamato pacchetto. L’itinerario compiuto dal
pacchetto a partire dal terminale di origine, attraverso una serie di link di
comunicazione e router, fino al terminale ricevente è conosciuto come cammino
(route) o percorso(path) attraverso la rete. Piuttosto di fornire un percorso dedicato
fra terminali in comunicazione tra loro, Internet usa una tecnica conosciuta come
commutazione di pacchetto che permette a più terminali di condividere un
cammino o parte di un cammino.
I terminali accedono a Internet attraverso gli Internet Service Providers (ISP) che
includono gli ISP per utenza residenziale. Ogni ISP è una rete di router e di link di
comunicazione e i diversi ISP forniscono diverse velocità tipi di accesso alla rete. La
rete di ogni ISP, di livello sia superiore sia inferiore, è gestita indipendentemente,
impiega il protocollo IP e aderisce a determinate convenzioni di nomenclatura e
indirizzamento. I terminali eseguono protocolli che controllano l’invio e la ricezione
di informazioni all’interno di Internet. Due dei più importanti protocolli internet sono il
TCP (protocollo di controllo della trasmissione) e l’IP (protocollo internet). Il protocollo
IP specifica il formato dei pacchetti che sono scambiati fra router e fra terminali. I due
protocolli principali di internet sono conosciuti collettivamente come TCP/IP.
Oltre alla rete pubblica, vi sono numerose reti private , i cui host non possono
scambiare messaggi con gli host esterni alla rete privata, a meno che i messaggi non
possano attraversare i cosidetti firewall che servono a selezionare il traffico da e
verso la rete. A queste reti private ci si riferisce di solito come Intranet, poiché usano
gli stessi tipi di host.
Ietf: l’internet Engineering task force si occupa di sviluppare gli standard internet. La
documentazione sugli standard è nota come Request For Comment (RFC), sono
1
molto tecniche e definiscono i protocolli per il TCP, IP.
1.1.2 descrizione del servizio
Internet permette la distribuzione delle applicazioni che girano sui suoi terminali
per scambiare dati fra le diverse unità. Internet inoltre fornisce due servizi per le
applicazioni da esso distribuite:
- un servizio orientato alla connessione: garantisce che i dati trasmessi
saranno consegnati al destinatario nella loro integrità e interezza.
- un servizio senza connessione: non da alcuna garanzia circa l’eventuale
consegna.
Tipicamente un’applicazione distribuita usa l’uno o l’altro di questi servizi e non
entrambi. Attualmente internet, non fornisce alcun servizio che dia garanzia sul tempo
richiesto per spedire i dati dal mittente al destinatario.
1.1.3 Che cos’è un protocollo?
Un protocollo di rete è simile a un protocollo umano, eccezione fatta per le entità che
si scambiano messaggi e compiono azione che sono componenti hardware e software
di alcuni dispositivi. Tutte le attività in Internet che coinvolgono due o più
entità remote atte alla comunicazione sono gestite da un protocollo. Il
protocollo nei router determina il percorso del pacchetto dalla sorgente al destinatario;
i protocolli implementati dal’hardware nelle schede di interfaccia con la rete di due
calcolatori fisicamente connessi controllano il flusso di bit sul cavo fra le due schede di
interfaccia; nei terminali un protocollo di controllo della congestione regola la velocità
con i pacchetti sono trasmessi tra la sorgente e il destinatario.
“ Un protocollo definisce il formato e l’ordine dei messaggi scambiati tra due o più
entità comunicanti, così come le azioni che hanno luogo a seguito della trasmissione
e/o ricezione di un messaggio o di altri eventi.
1.2 SEZIONE DI ACCESSO ALLA RETE
1.2.1 TERMINALI, CLIENT, SERVER
I computer collegati a Internet sono spesso chiamati host o end system o
semplicemente terminali. Ci si riferisce ad essi come terminali perché sono collocati
nella sezione di accesso a Internet. I terminali di internet includono molti tipi diversi di
calcolatori. Ci si riferiscee ad essi anche come host (ospite) perché ospitano
1 In effetti una connessione in internet consiste in nient’altro che buffer allocati e variabili di
stato nei terminali. I commutatori di pacchetto non mantengono alcuna informazione sullo
stato della connessione.
(eseguono) programmi di livello applicativo come i browser del Web, i programmi Web
server o i programmi server. Gli host molte volte sono suddivisi in:
- client: spesso Pc fissi e portatili;
- server: macchine molto molto più potenti che funzionano da server come i
server Web.
Programma client: programma che gira su un altro terminale che richiede e riceve
un servizio da un programma server che gira su un altro terminale. Poiché un client
gira su un calcolatore mentre il server gira su un altro, le applicazioni client/server in
Internet sono, applicazioni distribuite. Il programma client e il programma server
interagiscono tra loro attraverso comunicazioni in Internet. A questo livello di
astrazione i router, i link e altri “componenti” di Internet servono come scatola nera
che trasferisce messaggi tra i diversi componenti per la comunicazione in Internet.
1.2.2 SERVIZIO SENZA CONNESSIONE E SERVIZIO ORIENTATO
ALLA CONNESSIONE
I terminali utilizzano i servizi di Internet per mandarsi messaggi l’un l’altro. Le
caratteristiche dei servizi di comunicazione che internet fornisce ai suoi terminali sono
determinanti.
In particolare le reti TCP/IP, e in particolare Internet, forniscono due tipi di servizio per
le sue applicazioni: un servizio senza connessione e uno orientato alla
connessione. Lo sviluppatore progetta le proprie applicazioni utilizzando uno dei due
servizi
Servizio orientato alla connessione: quando un applicazione utilizza il servizio
orientato alla connessione, il client e il server si scambiano pacchetti di controllo prima
di spedire i pacchetti conteneti i dati reali. Queste cosidette procedure di stretta di
mano (handshaking procedure),allertano client e server, permettendo loro di
prepararsi per l’arrivo massiccio dei pacchetti. Una volta terminata la procedura di
handshakin si dice che la connessione tra i due terminali è instaurata. Si parla di
servizio orientato alla connessione, in quanto, solo i terminali stessi sono consapevoli
di questa connessione; i router (commutatori di pacchetto) all’interno di internet sono
del tutto ignari della connessione. Il servizio orientato alla connessione è raggruppato
con molti altri servizi come:
- trasferimento di dati affidabile: un applicazione può affidarsi a una
connessione per consegnare tutti i suoi dati senza errori e nell’ordine
appropriato. L’affidabilità in internet è ottenuta attraverso l’impiego di segnali di
riscontro e ritrasmissioni; Quando il terminale B riceve un pacchetto da A, invia
un segnale di avvenuta ricezione, quando il terminale A riceve un segnale di
ritorno sa che il corrispondente pacchetto è stato definitivamente ricevuto,
quando il terminale A non ottiene da B il segnale di avvenuta ricezione desume
che il pacchetto non sia stato ricevuto, allora lo ritrasmette;
- controllo del flusso: assicura che nessuna delle due estremità della
connessione satura l’altra con l’invio a velocità eccessiva di troppi pacchetti. Il
servizio di controllo del flusso, in presenza del rischio di saturazione, costringe il
terminale trasmittente a ridurre la sua velocità.
- controllo della congestione: aiuta a prevenire che Internet entri nello stato di
blocco incrociato (gridblock). Quando un router è congestionato, i suoi buffer
sono sovraccaricati e può verificarsi la perdita dei pacchetti. Internet evita
questo problema costringendo i terminali a ridurre la velocità di invio nella rete
dei pacchetti durante i periodi di congestione. E i terminali si accorgono
dell’esistenza di uno stato di congestione nel momento in cui non sono più
raggiunti dai segnali di avvenuta ricezione dei pacchetti spediti.
NB: il servizio orientato alla connessione di Internet è accoppiato a un trasferimento
affidabile, al controllo del flusso e al controllo della congestione, ma tuttavia queste 3
caratteristiche non sono componenti essenziali di un servizio orientato alla
connessione.
Il servizio orientato alla connessione internet ha un nome: TCP (Trasmission control
protocoll). Esso fornisce un servizio di trasferimento dati affidabile, controllo del
flusso e controllo della congestione.
Servizio senza connessione: nel servizio senza connessione su internet non esiste
handshake. Quando un estremità di un’applicazione vuole inviare pacchetti a un’altra,
semplicemente li invia. Poiché manca l’handshake, i dati sono inviati più velocemente
ma non esiste un messaggio di riscontro dell’avvenuta ricezione, così il mittente non
ha mai la certezza di quali pacchetti abbiano raggiunto la destinazione. Inoltre non
sono previsti controllo di flusso e di congestione. Il servizio Internet senza connessione
è fornito dal protocollo UDP (User Datagram Protocol). Tale protocollo viene
utilizzato dalla telefonia internet.
1.3 LA SEZIONE INTERNA DELLA RETE
1.3.1 Commutazione di circuito e commutazione di pacchetto
Esistono due principali tipi di approccio per la costruzione della sezione interna di una
rete: la commutazione di circuito (circuit switching) e la commutazione di
pacchetto(packet switching).Nelle reti a commutazione di circuito le risorse
necessarie lungo un percorso per fornire la comunicazione fra due terminali sono
riservate per la durata della sessione, mentre nelle reti a commutazione di pacchetto,
queste risorse non sono riservate, ovvero i messaggi della sessione usano le risorse a
richiesta e, di conseguenza, devono aspettare per accedere al link di comunicazione.
Un esempio di rete a commutazione di circuito sono le reti telefoniche, mentre
l’attuale internet è un esempio di rete a commutazione di pacchetto.
Commutazione di circuito: In una rete a commutazione di circuito, i quattro
commutatori di circuito (nodi di commutazione) sono collegati da due link (linee di
trasmissione); ognuno di questi link è costituito da n circuiti, in modo che ciascun link
possa mantenere n connessioni simultanee. I terminali sono collegati direttamente a
uno dei commutatori. Quando due host desiderano comunicare, la rete stabilisce un
circuito dedicato end-to-end. Perché l’host A inviii un messaggio all’host B, la rete
deve prima prenotare un circuito su ciascuno dei due link. Poiché ciascun link ha n
circuiti, a ciascun circuito end to end su un link viene dedicata la frazione 1/n della
larghezza di banda del link per la durata del circuito.
Un circuito in un link è realizzato mediante la
multiplazione a divisione di frequenza
(FDM) o la multiplazione a divisione di
tempo (TDM). Con l’FDM, lo spettro di
frequenza di un link è diviso fra le connessioni
stabilite sui link. Il link dedica una banda di
frequenza a ciascuna connessione per tutta la
sua durata. L’ampiezza di banda viene chiamata
bandwidth. Le stazioni radio usando anche esse
l’FDM per suddividersi lo spettro di frequenza
delle microonde.
Per un link TDM, il tempo è suddiviso in frame (trame o intervalli) di durata prefissata,
e ciascun intervallo è suddiviso in un numero fisso di slot (blocchi). Quando una rete
stabilisce una connessione attraverso un link, dedica uno slot di tempo di ciascun
frame alla connessione. Questi slot sono dedicati a quella sola connessione, con uno
slot di tempo disponibile per trasmettere i dati della connessione.
Commutazione di pacchetto: Nelle moderne reti di calcolatori, la sorgente
suddivide i messaggi lunghi in pezzi più piccoli di dati conosciuti come pacchetti. Fra
sorgente e destinazione, ciascuno di questi pacchetti viaggia lungo link di
comunicazione e commutatori di pacchetto (router). I pacchetti sono trasmessi su
ogni link di comunicazione a velocità uguale a quella massima dei link. Molti router
utilizzano la trasmissione store-and-forward (immagazzinamento e rilascio)
all’ingresso del link. Trasmissione store-and-forward significa che il router deve
ricevere l’intero pacchetto prima di poter cominciare a trasmettere il primo bit sul link
in uscita. Quindi i router store-and-forward introducono un ritardo store and
forward all’ingresso di ciascun link lungo il percorso del pacchetto. Questo ritardo è
proporzionale alla lunghezza in bit del pacchetto, in particolare se un pacchetto
consiste di L bit e deve inoltrato su un link in uscita a R bit/s, il ritardo store-and-forwrd
al router è L/R secondi.
Ogni router è collegato a molti link. Per ciascun link cui è collegato il router ha un
buffer in uscita (detto anche coda in uscita) che immagazzina pacchetti che il router
si appresta a spedire su quel determinato link. Se un pacchetto in arrivo richiede di
essere trasmesso attraverso un link ma trova il link occupato dalla trasmissione di un
altro pacchetto, il pacchetto in arrivo deve aspettare nel buffer in uscita. Quindi in
aggiunta al ritardo store-and-forward, i pacchetti subiscono il ritardo dovuto alla coda
nel buffer in uscita (ritardo in coda). L’entità di questi ritardi è variabile e dipende
dal livello di congestione della rete. Inoltre poiché lo spazio disponibile nel buffer è una
quantità finita, si può verificare una perdita di pacchetti.
Multiplazione statistica: molto spesso diciamo che la commutazione di pacchetto
impiega la multiplazione statistica. La multiplazione statistica è in netto contrasto con
la multiplazione a divisione di tempo (TDM), con la quale ciascun host ottiene uno
stesso slot nei frame TDM che si succedono.
Confronto tra commutazione di pacchetto e commutazione di circuito: La
commutazione di pacchetto offre una migliore suddivisione della larghezza di banda
rispetto alla commutazione di circuito ed è più semplice, più efficiente e meno costosa
da implementare della commutazione di circuito. Dunque la tendenza, è quella di
utilizzare commutazione di pacchetto.
1.3.2 Inoltre dei pacchetti nelle reti di calcolatori
Nelle reti a commutazione di pacchetto l’obiettivo è di instradare i pacchetti attraverso
i router verso le loro destinazioni. Esistono due ampie classi di reti a commutazione di
pacchetto: datagram e circuito virtuale. Possiamo chiamare rete datagram ogni
rete che invia i pacchetti in base all’indirizzo dell’host di destinazione. Qualunque rete
che invia i pacchetti in base alla numerazione dei circuiti virtuali è detta rete a
circuito virtuale.
Circuito virtuale: un circuito virtuale è costituito da un percorso (cioè una serie di
link e commutatori di pacchetto) fra i terminali sorgente e destinazione, i numeri del
circuito virtuale, un numero per ciascun link lungo il percorso e voci nella tabella di
conversione dei numeri di VC in ciascun commutatore lungo il percorso.
Ciascun pacchetto è dotato di un identificatore, che determina il salto successivo. Il
percorso viene determinato quando il circuito viene stabilito per la prima volta, e
rimane fisso per tutta la durata del collegamento. Un commutatore in una rete
mantiene informazioni di stato per le proprie connessioni in corso.
Reti a datagramma: l’indirizzo di destinazione sul pacchetto determina il salto
successivo. I percorsi possono cambiare durante una sessione.
Tassonomia della rete: Un link di una rete a commutazione di circuito può adottare
sia FDM sia TDM. Le reti a commutazione di pacchetto possono avere sia l’approccio a
circuito virtuale sia a datagram. I commutatori nelle reti a circuito virtuale indirizzano i
pacchetti in accordo con i numeri di VC e ricordano lo stato della connessione. I
commutatori nelle reti datagram indirizzano i pacchetti secondo l’indirizzo del
destinatario e non ricordano lo stato della connessione.
1.4 ACCESSO ALLA RETE E MEZZI TRASMISSIVI
1.4.1 ACCESSO ALLA RETE
L’accesso alla rete è il link fisico che collega un terminale al suo router di
confine(edge router), cioè il primo router sul percorso che parte dal terminale e
arriva a qualunque terminale distante. Una rete di accesso fornisce l’infrastruttura
per collegare il client alla rete. L’accesso alla rete può essere classificato in tre
categorie:
- accesso domestico: collega alla rete un terminale casalingo;
- accesso aziendale: collega alla rete i terminali di imprese e istituiti scolastici;
- accesso per terminali mobili: collega
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.