Reti di calcolatori - Dipartimento di Informatica e Automazione

Elementi di Informatica
Reti di calcolatori
Febbraio 2007
1
03- Reti di Calcolatori
Elementi di Informatica
Contenuti
2
Accesso al World Wide Web
Reti di calcolatori
scambio di dati tra calcolatori
connessione in rete di calcolatori
reti di reti di calcolatori
architettura a livelli della comunicazione
il modello cliente/servente
03- Reti di Calcolatori
Elementi di Informatica
Introduzione
La fusione delle tecnologie dell’informazione e della comunicazione ha
avuto un impatto notevole sul modo in cui i moderni sistemi informatici
sono organizzati
il modello di organizzazione prevalente dei sistemi informatici è
quello delle reti di calcolatori
una rete di calcolatori è un insieme di calcolatori indipendenti,
che sono collegati tra di loro per potersi scambiare dati
le applicazioni per reti di calcolatori sono organizzate sulla
base del modello cliente/servente (client/server) e del
concetto di servizio (offerto dalla rete)
Vengono ora studiati
Internet, la più grande rete di calcolatori
il World Wide Web, il principale servizio di Internet
alcuni elementi tecnologici e architetturali
3
03- Reti di Calcolatori
Elementi di Informatica
Accesso al World Wide Web
Che cosa sono Internet e il World Wide Web? Come funzionano?
anche in questo caso, è possibile rispondere a queste domande in
molti modi, relativamente a diversi punti di vista
Il nostro studio di Internet e del World Wide Web seguirà questo
percorso
4
vengono ora introdotti informalmente alcuni concetti elementari, dal
punto di vista dell’utente del servizio World Wide Web di Internet
verranno successivamente considerati gli aspetti tecnologici e
architetturali delle reti di calcolatori, di Internet e del World Wide
Web
03- Reti di Calcolatori
Elementi di Informatica
Reti di calcolatori
Una rete di calcolatori è un insieme di calcolatori che operano
autonomamente e che sono collegati per potersi scambiare dati
collegamenti
rete di calcolatori
5
03- Reti di Calcolatori
Elementi di Informatica
Servizi in una rete di calcolatori
I calcolatori in una rete di calcolatori
possono essere usati per eseguire applicazioni di uso individuale
possono essere usati per usufruire di “servizi” basati sullo scambio
di dati
ad esempio, possono condividere risorse informatiche — come
stampanti e dischi
possono scambiarsi dati e messaggi
Intuitivamente, un servizio in una rete di calcolatori corrisponde a una
modalità di condivisione di dati e/o risorse tra i calcolatori collegati alla
rete
6
03- Reti di Calcolatori
Elementi di Informatica
Internet e World Wide Web
Internet è la più grande rete di calcolatori, a diffusione mondiale
La connessione di un calcolatore a Internet può avvenire con diverse
modalità
un calcolatore può essere collegato a Internet mediante una scheda
di rete nell’ambito di una rete di calcolatori
un calcolatore può essere collegato a Internet mediante un modem
e una connessione telefonica di accesso remoto a un fornitore
(provider) di servizi Internet
7
03- Reti di Calcolatori
Elementi di Informatica
World Wide Web
Internet, in quanto rete di calcolatori, rende disponibile ai suoi utenti
diversi servizi
ad esempio, il servizio di posta elettronica e il servizio di
trasferimento di file
Il World Wide Web (o, più semplicemente, Web) è il servizio più diffuso
di Internet
il Web permette la condivisione e l’accesso a documenti che sono
distribuiti sui calcolatori di Internet e collegati tra di loro
La condivisione di documenti su Internet e sul Web è resa possibile dal
fatto che a ciascuna risorsa di Internet è associato un nome univoco
possibili risorse su Internet e sul Web sono i calcolatori, gli utenti, i
documenti
il nome di una risorsa di Internet è l’indirizzo della risorsa
gli indirizzi su Internet sono chiamati anche URL
8
03- Reti di Calcolatori
Elementi di Informatica
Browser web
Per accedere a documenti sul Web, un calcolatore
deve essere collegato a Internet
deve disporre di una applicazione chiamata browser web
ad esempio, Microsoft Internet Explorer o Netscape
Communicator
Un browser web è una applicazione che permette l’accesso a documenti
sul Web
è possibile accedere a documenti sul Web con diverse modalità
fornendo al browser l’indirizzo del documento — scrivendolo
nella barra dell’indirizzo
raggiungere un documento seguendo un collegamento
ipertestuale nel documento correntemente visualizzato dal
browser — cliccando con il mouse sul collegamento
9
03- Reti di Calcolatori
Elementi di Informatica
Accesso a documenti sul web
Esempio di accesso all’indirizzo www.virgilio.it
10
03- Reti di Calcolatori
Elementi di Informatica
Navigazione ipertestuale
... cliccando sul collegamento Alla conquista dello spazio
11
03- Reti di Calcolatori
Elementi di Informatica
Siti web
Un sito web è un insieme di documenti gestiti da una organizzazione,
memorizzati su uno o più calcolatori collegati a Internet, e che possono
essere acceduti mediante il servizio Web
L’accesso a un sito web inizia solitamente da un documento chiamato
home page del sito
l’home page di un sito
fornisce informazioni di carattere generale sul sito
contiene collegamenti alle parti principali del sito, che possono
essere accedute mediante navigazione ipertestuale
contiene collegamenti ad altri siti correlati
12
03- Reti di Calcolatori
Elementi di Informatica
Il Web e il paradigma ipertestuale
Il World Wide Web è un vastissimo insieme di documenti
l’unità di informazione sul Web è il documento o pagina
una pagina è composta solitamente da testi e immagini
ciascuna pagina ha un indirizzo univoco
il Web è un insieme di pagine
I documenti del Web sono organizzati mediante una struttura
ipertestuale
agli elementi (come parole, frasi e immagini) di una pagina possono
essere associati dei collegamenti ad altre pagine
un collegamento ipertestuale è composto da
l’elemento della pagina a cui è associato il collegamento —
chiamato ancora (letto àncora)
la pagina referenziata dal collegamento, mediante il suo indirizzo
— che viene visualizzato dal browser sulla barra di stato quando
il cursore del mouse si trova sopra l’ancora
13
03- Reti di Calcolatori
Elementi di Informatica
Un esempio di ipertesto
pagine
Piccola guida al
sistema solare
ancore
14
Il sistema solare è
composto da nove
pianeti che ruotano
intorno al Sole.
Questi pianeti, in
ordine di distanza
crescente dal Sole
sono: Mercurio,
Venere, Terra,
Marte, Giove,
Saturno, Urano,
Nettuno e Plutone.
…
collegamenti
Il Sole
La struttura interna del
Sole è stata ricostruita in
base all'elaborazione
teorica dei dati conosciuti.
…
La Terra
La Terra è il terzo pianeta
in ordine di distanza dal
Sole, e il quinto per
dimensioni. …
03- Reti di Calcolatori
Elementi di Informatica
Reti di calcolatori
Una rete di calcolatori è un insieme di calcolatori che operano
autonomamente e che sono collegati per potersi scambiare dati
vengono ora discussi i seguenti aspetti della tecnologia delle reti di
calcolatori
scambio di dati tra una coppia di calcolatori
collegamento in rete di un insieme di calcolatori
reti di reti di calcolatori
architettura a livelli della comunicazione in una rete di calcolatori
modello cliente/servente per applicazioni per reti di calcolatori
15
03- Reti di Calcolatori
Elementi di Informatica
Scambio di dati tra calcolatori
Lo scopo di una rete di calcolatori è quello di permettere la
comunicazione (ovvero, lo scambio di dati) tra due o più calcolatori
viene ora affrontato il problema della comunicazione tra due
calcolatori — chiamata comunicazione punto-punto
che cosa serve affinché due calcolatori possano scambiarsi dei
dati?
Sono necessari
un canale fisico di comunicazione tra i due calcolatori
la componente hardware della comunicazione
un insieme di regole che regolano lo scambio di dati
la componente software della comunicazione
16
03- Reti di Calcolatori
Elementi di Informatica
Mezzi di trasmissione
Per la comunicazione tra calcolatori è possibile usare molti canali
(mezzi) fisici di trasmissione
collegamento elettrico con cavi in rame
consente una velocità/capacità di trasmissione fino a 100 Mbit/s
su una distanza di 100 m
collegamento con fibra multimodale
consente una velocità/capacità di trasmissione superiore al
Gbit/s su una distanza di 1-10 km
collegamento con fibra monomodale
consente una velocità/capacità di trasmissione superiore al
Gbit/s su una distanza di 10-100 km
Sono possibili anche altre tipologie di collegamento
collegamento alla rete telefonica mediante modem
collegamento wireless (senza fili)
collegamento mediante ponti radio
17
03- Reti di Calcolatori
Elementi di Informatica
Protocolli di comunicazione
Si supponga di voler effettuare il trasferimento di un file tra due
calcolatori collegati fisicamente
la presenza del collegamento fisico non è sufficiente (anche se è
necessaria) per permettere il trasferimento del file
è necessario anche che ciascun calcolatore sia dotato di una
applicazione in grado di effettuare il trasferimento del file
Nella comunicazione tra calcolatori, è necessaria la presenza di uno
“strato” software che consenta lo scambio di dati sulla base di un
insieme prefissato di regole e convenzioni
un protocollo di comunicazione è un insieme di regole, relative ai
messaggi consentiti e al loro formato, che controllano lo scambio di
informazioni in una comunicazione
La comunicazione tra due o più entità è possibile solo sulla base
dell’accettazione e dell’adozione di uno o più protocolli
solitamente, è necessaria l’adozione di un protocollo per ciascun
diverso aspetto della comunicazione
18
03- Reti di Calcolatori
Elementi di Informatica
Esempio — i due filosofi
Due filosofi, uno africano e uno cinese, vogliono discutere del
oryctolagus cunilicus (il coniglio)
il filosofo africano vuole esprimere al suo collega cinese la sua
simpatia a favore dei conigli
Problema
i due filosofi non parlano la stessa lingua, e nemmeno riescono a
trovare un interprete che conosca entrambe le loro lingue
l’africano parla swahili e inglese, il cinese parla cinese e francese
i filosofi possono comunque accordarsi su una lingua da usare nella
comunicazione (ad esempio, il danese)
possono poi comunicare utilizzando due interpreti, ciascuno dei
quali sa tradurre da una delle lingue note a uno dei filosofi alla
lingua usata per la comunicazione
19
03- Reti di Calcolatori
Elementi di Informatica
I due filosofi . . .
Altro problema
i due filosofi non vivono nello stesso luogo, e non sono abituati a
viaggiare
i due filosofi possono comunque decidere di comunicare in altro
modo
ad esempio, scelgono di utilizzare il fax, ricorrendo al supporto
del servizio di telefonia locale e internazionale
Ora i due filosofi possono effettivamente comunicare
hanno adottato due diversi protocolli di comunicazione
il protocollo relativo alla lingua - il danese
il protocollo relativo al mezzo di comunicazione - il fax
la comunicazione basata sul fax è possibile solo perché esistono
degli standard internazionali sulle caratteristiche elettriche e
temporali dei segnali utilizzati per la telefonia
20
03- Reti di Calcolatori
Elementi di Informatica
I due filosofi . . .
I like rabbits
Jáime les lapins
Danese
Ik hou konijnen
Danese
Ik hou konijnen
Fax
Danese
Ik hou konijnen
21
Fax
Danese
Ik hou konijnen
03- Reti di Calcolatori
Elementi di Informatica
Connessione in rete di calcolatori
Come è possibile collegare un insieme di calcolatori ?
Sono possibili diverse scelte
22
1) ciascun calcolatore è collegato direttamente a tutti
gli altri mediante una collegamento punto-punto
dedicato
2) ciascun calcolatore è collegato a uno stesso mezzo
di comunicazione - collegamento a bus
3) ciascun calcolatore è collegato ad almeno un altro
calcolatore, e quindi tra di loro sono tutti connessi,
anche se non tutti direttamente
03- Reti di Calcolatori
Elementi di Informatica
Collegamento punto - punto
Nel collegamento punto-punto ogni calcolatore è
collegato a ciascuno degli altri calcolatori ed è semplice
realizzare lo scambio di dati tra essi
Se il calcolatore A deve inviare un insieme di dati (un
messaggio) a un calcolatore B, lo può fare direttamente
sulla connessione punto-punto che collega A a B
Questa soluzione è evidentemente molto costosa !
In pratica, vengono adottate le soluzioni 2 e 3
Come può avvenire la comunicazione in questi casi?
23
Elementi di Informatica
03- Reti di Calcolatori
Collegamento a bus
Nel collegamento a bus, ogni calcolatore è collegato a un insieme di
collegamenti condivisi, il bus
calcolatori
rete a bus
bus
La soluzione basata sul bus è adottata frequentemente
esistono realizzazioni tecnologiche del bus estremamente
economiche
un semplice cavo coassiale
esistono anche realizzazioni estremamente sofisticate, che
garantiscono una velocità elevata di comunicazione
soluzioni basate su hub
è una soluzione facilmente espandibile
24
03- Reti di Calcolatori
Elementi di Informatica
Collegamento a bus
Un possibile protocollo di comunicazione (semplificato) basato sul
collegamento a bus è il seguente
se il calcolatore A deve inviare il messaggio M al calcolatore B
A forma un pacchetto di dati P usando il messaggio M e i nomi
del destinatario B e del mittente A (con un formato specificato dal
protocollo) e trasmette P sul bus
un pacchetto è simile a una busta, che all’interno contiene un
messaggio e all’esterno riporta i nomi del destinatario e del
mittente
i pacchetti trasmessi sul bus sono ricevuti da tutti i calcolatori
ogni calcolatore riceve ciascun pacchetto P che viaggia sul bus,
e ne decodifica il messaggio M, il destinatario e il mittente
se un calcolatore si identifica nel destinatario di un messaggio M
codificato in un pacchetto, allora ascolta e interpreta il messaggio
M, che è effettivamente rivolto a lui
gli altri calcolatori, invece, ignorano il messaggio
25
03- Reti di Calcolatori
Elementi di Informatica
Collegamento ad anello
Nel collegamento ad anello, i calcolatori sono disposti logicamente ad
anello, con un collegamento tra ciascuna coppia di calcolatori adiacenti
ogni pacchetto transita nell’anello in una direzione fissata, dal
mittente al destinatario
26
se un calcolatore non è il destinatario del messaggio, allora
ritrasmette il pacchetto al calcolatore successivo nell’anello
il destinatario del messaggio leva il pacchetto dall’anello
03- Reti di Calcolatori
Elementi di Informatica
Altri tipologie di collegamento
Le figure mostrano altre tipologie di collegamenti
ogni linea indica la presenza di un collegamento punto-punto tra una
coppia di calcolatori
stella
completo
27
albero
irregolare
03- Reti di Calcolatori
Elementi di Informatica
Reti di reti di calcolatori
Una rete di reti di calcolatori (o internet, con la “i” minuscola) è un
insieme di reti di calcolatori, tra di loro collegate (interconnesse) per
potersi scambiare dati
ci sono diverse motivazioni per voler collegare tra di loro più reti di
calcolatori
superare i limiti fisici dei mezzi di comunicazione usati in una rete
(tra reti omogenee)
collegare reti che utilizzano mezzi di comunicazione diversi
collegare reti fisicamente lontane
collegare reti eterogenee
La realizzazione di una rete di reti richiede la presenza di dispositivi di
rete dedicati alla ritrasmissione dei dati tra reti
questi dispositivi sono genericamente chiamati IMP (Interface
Message Processor) e corrispondono a ripetitori, ponti, instradatori
(router) e gateway
28
03- Reti di Calcolatori
Elementi di Informatica
Interconnessione di reti
In una rete di reti
ciascuna rete contiene almeno un IMP
un IMP può essere considerato un calcolatore dedicato
l’insieme degli IMP forma una rete, chiamata sottorete
IMP
sottorete
29
03- Reti di Calcolatori
Elementi di Informatica
Instradamento
Ciascun IMP ha il compito di far giungere i pacchetti che riceve all’IMP
della rete destinataria del pacchetto
per i pacchetti originati dalla propria rete e destinati a calcolatori che
non appartengono alla propria rete
l’IMP deve ritrasmetterli a un IMP adiacente affinché vengano
trasmessi all’IMP della rete destinataria
per i pacchetti ricevuti da altri IMP
se sono destinati alla propria rete, deve ritrasmetterli sulla propria
rete affinché giungano al calcolatore destinatario
se non sono destinati alla propria rete, deve ritrasmetterli a un IMP
adiacente
Gli IMP devono risolvere il problema dell’instradamento
il problema dell’instradamento di un pacchetto consiste nel
determinare (in modo dinamico e distribuito) un percorso per il
pacchetto tra un insieme di IMP che sono generalmente collegati in
modo irregolare e variante nel tempo
30
03- Reti di Calcolatori
Elementi di Informatica
Instradamento . . .
I possibili percorsi tra una coppia di calcolatori
mittente
destinatario
31
per risolvere il problema dell’instradamento, ciascun IMP dispone di
informazioni relative alle reti e agli IMP a cui è attualmente collegato
03- Reti di Calcolatori
Elementi di Informatica
Architettura a livelli
Per ridurre la complessità della comunicazione in una rete (di reti) di
calcolatori, le reti di calcolatori sono organizzate con una architettura
a livelli
Può essere utile per capire il funzionamento, fare una analogia con
una comunicazione telefonica, come mostrato in figura.
32
03- Reti di Calcolatori
Elementi di Informatica
Architettura a livelli . . .
Nell’architettura a livelli
ciascun livello è relativo a un particolare aspetto della
comunicazione
ciascun livello permette la comunicazione con il livello
analogo di un altro calcolatore
ciascun livello è basato su un diverso protocollo di
comunicazione
In pratica, la comunicazione richiede l’adozione di un
insieme di protocolli, uno per ciascun livello della
comunicazione
un insieme compatibile di protocolli è chiamato una
famiglia di protocolli
33
03- Reti di Calcolatori
Elementi di Informatica
Il modello ISO-OSI
Esistono diverse famiglie di protocolli per reti di calcolatori
ad esempio, il modello ISO-OSI (teorico), TCP-IP (o Internet Suite),
SNA
la figura mostra il modello di riferimento OSI proposto dall’ISO
Applicazione
Presentazione
Sessione
Trasporto
Rete
Collegamento dati
Fisico
34
Protocollo di applicazione
Protocollo di presentazione
Protocollo di sessione
Protocollo di trasporto
Protocollo del livello di rete
Protocollo del livello
di collegamento dati
Protocollo del livello fisico
03- Reti di Calcolatori
Applicazione
Presentazione
Sessione
Trasporto
Rete
Collegamento dati
Fisico
Elementi di Informatica
I livelli nel modello ISO-OSI
Applicazione
a questo livello si trovano i programmi applicativi che utilizzano i
servizi offerti dalla rete, mediante una varietà di protocolli di alto
livello
ad esempio, la posta elettronica, il trasferimento di file, il World
Wide Web
in generale, i servizi sono basati sullo scambio bidirezionale di
messaggi tra utenti di applicazioni
Presentazione
si occupa di un insieme di funzionalità relative alla sintassi dei
messaggi trasmessi (ad esempio, codifica, compressione e
crittografia)
Sessione
gestisce l’instaurazione e il controllo di sessioni di comunicazione tra
utenti collegati ai calcolatori della rete
35
03- Reti di Calcolatori
Elementi di Informatica
I livelli nel modello ISO-OSI . . .
Trasporto
si occupa della trasmissione di messaggi tra coppie di calcolatori,
gestendo la suddivisione dei messaggi in pacchetti
Rete
si occupa della trasmissione di pacchetti tra reti, gestendo il
problema dell’instradamento
Collegamento dei dati (data link)
si occupa della comunicazione libera da errori di sequenze
(chiamate trame) di byte, tra nodi della rete collegati direttamente
Fisico
si occupa della trasmissione dei singoli bit attraverso il canale fisico
di comunicazione, gestendo quindi gli aspetti di livello più basso
della comunicazione
36
03- Reti di Calcolatori
Elementi di Informatica
Il modello cliente/servente
Una applicazione distribuita è una applicazione costituita da più
componenti software che vengono eseguite, in modo più o meno
coordinato, su più calcolatori collegati da una rete
l’utente di una applicazione distribuita ha l’impressione di utilizzare
una tradizionale applicazione informatica
in pratica, l’esecuzione dell’applicazione è distribuita su più
calcolatori
L’architettura più comunemente usata nella realizzazione di applicazione
distribuite è descritta dal modello cliente/servente (client/server)
ad esempio, una applicazione cliente/servente può essere realizzata
suddividendo funzionalmente l’applicazione in due componenti
il servente, che fornisce un insieme di servizi applicativi, come la
gestione dei dati e l’esecuzione di operazioni
il cliente, dedicato all’interazione con l’utente e alla
visualizzazione dei dati
37
03- Reti di Calcolatori
Elementi di Informatica
Servizi, serventi e clienti
Il modello cliente-servente è basato sui seguenti concetti
servizio
un servizio è una risorsa informatica da condividere
ad esempio, un insieme di dati o una operazione
servente
è una applicazione in grado di erogare uno o più servizi ad altre
applicazioni
cliente
è una applicazione utilizzatrice di servizi
L’erogazione di servizi da parte di un servente avviene solo su richiesta
da parte di un cliente
per ottenere un servizio, un cliente deve richiederne l’erogazione a
un servente
i clienti hanno un ruolo attivo, i serventi hanno un ruolo reattivo
38
03- Reti di Calcolatori
Elementi di Informatica