Reti di calcolatori
Indice
•
•
•
•
•
Reti di calcolatori
definizione
classificazione
modelli di comunicazione
terminologia
protocollo, livello, interfaccia
Architettura degli elaboratori modulo B- A.Memo
1
definizione
Una rete di calcolatori è un insieme di nodi
di elaborazione totalmente autonomi tra loro,
connessi mediante un opportuno sistema di
comunicazione, ed in grado di interagire
mediante scambio di messaggi al fine di
condividere le risorse messe a disposizione da
ciascun nodo.
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
2
definizione
A
messaggio
da A a B
B
sistema di
comunicazione
C
Reti di calcolatori
D
Architettura degli elaboratori modulo B- A.Memo
3
motivazioni
• condivisione delle risorse
– memorie di massa, periferiche, accessi
• possibilità di soddisfare a richieste
distribuite
– basi di dati distribuite
• affidabilità e tolleranza ai guasti
• scalabilità e uniformità in caso di crescita
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
4
problematiche
• maggiore complessità della progettazione,
installazione e manutenzione
• problemi di sicurezza, sia come integrità e
correttezza dei dati, che come controllo
degli accessi
• sbilanciamento e parziale rallentamento
nell’uso delle risorse
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
5
classificazione
Le reti di calcolatori si possono classificare in
• LAN (Local Area Network), reti locali
• MAN (Metropolitan Area Network), reti
cittadine
• WAN (Wide Area Network), reti
geografiche
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
6
classificazione
reti locali (LAN):
• estensione inferiore al Km
• ambito privato, senza attraversamento di
suolo pubblico o cambio di proprietà
• architettura relativamente omogenea,
proprietà unica e accessi conosciuti
• alta velocità (4-1000 Mbps)
• bassa probabilità di errore (10-9)
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
7
classificazione
reti cittadine (MAN):
• ambito comunale e pubblico
• offerta gratuita di servizi locali
• mezzo telefonico (doppino o fibra ottica)
• velocità dipendente dal mezzo
• sistemi eterogenei che si adeguano al mezzo
ed al software imposto dal gestore
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
8
classificazione
reti geografiche (WAN):
• ambito nazionale o mondiale
• mezzo utilizzato: rete telefonica tradizionale
e dorsali pubbliche e/o private
• velocità variabile in funzione del mezzo
attraversato, anche molto bassa
• problemi di tariffazione
• problemi di internetworking
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
9
classificazione
internetworking
BRIDGE
ROUTER
RTG
ROUTER
MULTIPLEXER
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
10
modello di comunicazione
client/server
• il client richiede un servizio al server
• in genere il client resta in attesa del
completamento del servizio (modalità
sincrona)
• se non vuole bloccarsi (modalità asincrona)
ha due possibilità:
– modalità pull
– modalità push
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
11
client/server - modalità pull
• la responsabilità dell’ottenimento delle
informazioni è a carico del client
• attiva un ciclo di richieste ad intervalli
prestabiliti (polling)
– la risposta può essere negativa, e lascia il client
nel ciclo di richieste
– la risposta può essere positiva, e comunica al
client l’esito del servizio richiesto al server
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
12
client/server - modalità push
• scompone le responsabilità del client e del
server, e rovescia i ruoli nella risposta
• il client inoltra al server la richiesta di
servizio, e poi se ne disinteressa
• quando il server ha completato il servizio,
richiama il client e gli restituisce i risultati
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
13
Modello di comunicazione
• il modello di comunicazione elementare è
del tipo N:1, molti client che interpellano un
solo server
• il modello reale è più complesso, del tipo
N:M, molti clienti che possono accedere a
molti server
• il modello client/server non utilizza lo stato
connessione, ma quello di interazione
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
14
client/server
• stato di interazione client/server:
–
–
–
–
–
server che conosce i client
server che memorizza i client
server che memorizza la storia dei client
server che consente l’interazione tra client
più server coordinati che consentono
l’interazione tra client
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
15
modelli di mobilità di codice
• invece di trasferire i risultati di un dato
servizio può essere trasferito il codice in
grado di eseguire il servizio stesso
– REV, Remote EValuation , o elaborazione lato
server, in cui il client invia al server sia i dati
che il codice per svolgere il servizio
– COD, Code On Demand, o elaborazione lato
client, il cui il client chiede al server il codice
per svolgere localmente il servizio
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
16
Java, esempio di modello COD
applet e/o
applicazioni Java
applet e/o
applicazioni Java
classi
base
classi
base
classi
estese
classi
estese
Java Virtual Machine
Java Virtual Machine
browser
browser
Sistema Operativo
Sistema Operativo
Sistema di rete
Sistema di rete
Sottosistema di comunicazione
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
17
terminologia
Affinché A e B possano comunicare occorre
1. un sistema fisico di collegamento comune
2. software di base (N.O.S.) in A e in B
3. software applicativo per A e B
4. connessione abilitata e identificata di A e B
5. funzione di instradamento nel sistema fisico
sottosistema di interconnessione (1+5)
sottosistema di comunicazione (2+3+4)
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
18
livelli
• la complessità e la grande dimensione di un
sistema di comunicazione impone la sua
realizzazione a livelli
• ogni livello ha un compito ben preciso, offre
una serie di servizi ai livelli superiori, e per
farlo sfrutta quelli del livello inferiore
• esistono sistemi di comunicazione da 2 fino
a 7 livelli
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
19
protocollo
• definizione letterale: insieme di regole
(procedure e formati) che governano lo
scambio di dati
• ogni livello di un sistema di comunicazione
ha il proprio protocollo
• affinché due sistemi possano comunicare
devono utilizzare i medesimi protocolli nei
rispettivi livelli (peer process su peer layer)
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
20
entità
• definizione: soggetto che svolge effettivamente un servizio, all’interno di un livello
• ogni livello può contenere più entità, se
svolge contemporaneamente più servizi
• analogia tra classe e servizio disponibile, e
tra istanza della classe ed entità
• il punto di accesso (identificatore) attraverso cui un’entità offre il suo servizio al
livello superiore si chiama SAP (Service
Access Point)
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
21
interfaccia
• definizione: insieme dei formati che regolano lo scambio di messaggi tra due livelli
adiacenti
• analogia tra servizio e funzione, ed
interfaccia e prototipo
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
22
terminologia
host A
interfaccia }
n-1 / n
interfaccia }
2/3
interfaccia }
1/2
interfaccia }
mezzo fisico
Reti di calcolatori
host B
Ln
protocollo
di livello n
Ln
L2
protocollo
di livello 2
L2
L1
protocollo
di livello 1
L1
Architettura degli elaboratori modulo B- A.Memo
23
esempio di architettura
mittente
entità2
entità1
SAP1
SAP1
SAP2
entità1
entità1
Sistema A
Reti di calcolatori
destinatario
L3
applicazione
L2
trasporto
entità1
SAP1
L1
accesso
SAP1
entità1
entità1
Sistema B
Architettura degli elaboratori modulo B- A.Memo
24
esempio di architettura (1A)
mittente
Sistema di
comunicazione
Il programma che sta operando sul sistema mittente
deve trasferire un messaggio al sistema destinatario:
per far ciò richiede il servizio
trasferisci(mess, mitt, dest)
al suo livello L3 del sistema di comunicazione che a
tal fine attiva l’entità2
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
25
esempio di architettura (1B)
mittente
ROSSI BIANCHI
aiutante
del ponte
aiutante
del ponte
Reti di calcolatori
testo
L3
aiutante
del ponte
Il crocerista Rossi, che sta
navigando sulla NAVE_A,
decide di inviare un messaggio
al suo amico Bianchi, sulla
NAVE_B. Per far ciò scrive il
messaggio sul modulo
opportuno, in cui specifica
anche il suo nome e quello del
suo amico, e poi passa il tutto
all’aiutante del ponte in cui ha
la cabina.
Architettura degli elaboratori modulo B- A.Memo
26
esempio di architettura (2A)
mittente
L’entità2 del livello L3, per
svolgere il suo compito,
deve
determinare
quale
entità
2
L3
applicazione
percorso dovranno seguire i
SAP2
pacchetti per giungere a destinazione, e comporre un nuovo messaggio
contenente anche gli opportuni indirizzi di accesso ai
rispettivi livelli L3 (Sistema_A/SAP2 e Sistema_B/
SAP1), che passerà al livello sottostante L2.
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
27
esempio di architettura (2B)
mittente
ROSSI BIANCHI
testo
L3
NAVE_A NAVE_B
L2
Da L3
aiutante del ponte
Reti di calcolatori
L’aiutante del ponte trascrive il
modulo pervenuto in un
ulteriore modulo prestampato,
nel cui frontespizio deve
specificare i numeri delle
cabine del mittente e del
destinatario. Alla fine consegna
il nuovo modulo all’ufficiale di
bordo.
Architettura degli elaboratori modulo B- A.Memo
28
esempio di architettura (3A)
entità2
L’entità1 del livello L2, per
SAP2
svolgere il suo compito,
L2
suddivide il messaggio in
trasporto
entità1
SAP1
tanti pacchetti, li numera
per distinguerli, vi aggiunge
all’inizio gli indirizzi del mittente e del destinatario di
Livello 2 (mittente: SAP1 destinatario: SAP1) ed alla
fine il numero di caratteri che li compongono, e poi li
passa all’entità1 del livello inferiore L1.
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
29
esempio di architettura (3B)
ROSSI BIANCHI
NAVE_A NAVE_B
testo
Da L3
ufficiale di bordo
0 C003 C153 Frase 1
56
1 C003 C153 Frase 2
63
2 C003 C153 Frase 3
11
Reti di calcolatori
L’ufficiale di bordo scompone il
messaggio in frasi, le enumera e
le ricopia su foglietti
prestampati, una frase per
foglietto, indicando anche il
numero della cabina del mittente
e quella del destinatario. Per
sicurezza calcola il numero di
caratteri che compongono
ciascuna frase. Infine passa i
foglietti al radiotelegrafista.
Architettura degli elaboratori modulo B- A.Memo
30
esempio di architettura (4A)
L’entità1 del livello L1 ha il compito di trasferire
fisicamente i pacchetti dal Sistema_A al Sistema_B.
Ha ovviamente caratteristiche strettamente correlate al
mezzo di comunicazione in uso, e deve verificare solo
che i singoli bit arrivino a
destinazione in maniera
L1
corretta.
accesso entità1
Sistema A
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
31
esempio di architettura (4B)
ROSSI BIANCHI
NAVE_A NAVE_B
testo
Da L3
0 C003 C153 Frase 1
56
1 C003 C153 Frase 2
63
2 C003 C153 Frase 3
11
radiotelegrafista
Reti di calcolatori
Il radiotelegrafista riceve i
foglietti delle informazioni da
trasferire, in base alla nave da
collegare determina la frequenza
su cui trasmettere, si mette in
contatto con il suo corrispettivo
della NAVE_B, e finalmente
invia i dati in codice Morse. Alla
fine si sincera che i singoli
codici vengano ricevuti
correttamente,
Architettura degli elaboratori modulo B- A.Memo
32
esempio di architettura (5A)
L’entità1 del livello L1 del Sistema B, generalmente
posta in attesa dal suo livello superiore, intercetta i
messaggi, se ne riconosce come destinataria e li
acquisisce.
SAP1
Quando un pacchetto è riceL1
vuto correttamente, viene
entità1 accesso
passata attraverso la SAP1
all’entità1 del livello L2
Sistema B
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
33
esempio di architettura (5B)
0 C003 C153 Frase 1
56
1 C003 C153 Frase 2
63
2 C003 C153 Frase 3
11
Il radiotelegrafista della
NAVE_B riceve i singoli codici,
verifica che siano
(singolarmente) corretti, e ne
ricopia il contenuto su foglietti
analoghi a quelli usati nella
NAVE_A. Dagli indirizzi in essi
contenuti desume il nome
dell’ufficiale di bordo a cui deve
consegnarli.
radiotelegrafista
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
34
esempio di architettura (6A)
L’entità1 del livello L2
riceve i vari pacchetti dal
SAP1
suo livello L1, in base alla
L2
numerazione ricompone il
trasporto entità1
SAP1
messaggio totale, eventualmente richiedendo la ritrasmissione di qualche specifico pacchetto che risulta
errato o perso, e poi passa il messaggio all’entità del
livello superiore attraverso il SAP1 indicato.
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
35
esempio di architettura (6B)
ufficiale di bordo
NAVE_A NAVE_B
Da L3
0 C003 C153 Frase 1
56
1 C003 C153 Frase 2
63
2 C003 C153 Frase 3
11
Reti di calcolatori
L’ufficiale di bordo della NAVE_B
riceve i singoli foglietti dal suo radiotelegrafista e ricompone il messaggio trasmesso. Se per caso un
foglietto risulta mancante o incomprensibile, ne richiede la ripetizione
dal radiotelegrafista della NAVE_A
Alla fine ricopia i singoli foglietti in
un modulo messaggio, ed in base al
numero della cabina del destinatario, passa il messaggio alrelativo
aitante di ponte.
Architettura degli elaboratori modulo B- A.Memo
36
esempio di architettura (7A)
L’entità1 del livello L3 rileva
destinatario
l’indirizzo di destinazione contenuto nel messaggio, e lo
L3
entità
1 applicazione
inoltra al programma che lo
stava aspettando. Potrebbe anSAP1
che succedere che il Sistema_B
non sia l’effettivo destinatario finale, ma solo quello
intermedio, indispensabile per raggiungerlo. In questo
caso l’entità2 ne cambia l’indirizzo di destinazione e
lo ripassa ai suoi livelli inferiori per la ritrasmissione.
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
37
esempio di architettura (7B)
aiutante del ponte
ROSSI BIANCHI
NAVE_A NAVE_B
testo
Da L3
0 C003 C153 Frase 1
56
1 C003 C153 Frase 2
63
2 C003 C153 Frase 3
11
Reti di calcolatori
L’aiutante del ponte estrae dal
messaggio il testo della
comunicazione tra i due clienti,
lo,riporta nel modulo
opportuno specificando anche i
rispettivi nominativi, ed in base
al numero di cabina indicato
consegna al destinatario la
comunicazione.
Architettura degli elaboratori modulo B- A.Memo
38
esempio di architettura considerazioni (1)
Ln
Ln
L2
L2
L1
L1
trasferimento
fisico delle
informazioni
attraverso
livelli adiacenti
standardizzato
dalle interfacce
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
39
esempio di architettura considerazioni (2)
Ln
L2
L1
Reti di calcolatori
protocollo di livello Ln
protocollo di livello L2
protocollo di livello L1
Ln
L2
L1
Architettura degli elaboratori modulo B- A.Memo
trasferimento
logico delle
informazioni
attraverso
livelli paritari
standardizzato
dai protocolli
40
terminologia approfondimenti (1)
(N+1)ICI (N+1)SDU
(N+1)IDU
livello N+1
SAP
IDU
SDU
PDU
ICI
Service Access Point
Interface Data Unit
Service Data Unit
Protocol Data Unit
Interface Control Information
(N)SAP
(N)PCI
proprietà
del livello
(N)PCI
N_entità
(N)SDU
(N)PDU
(N)ICI (N)SDU
livello N
Reti di calcolatori
(N)IDU
Architettura degli elaboratori modulo B- A.Memo
41
terminologia approfondimenti (2)
servizi connessi
(connection-oriented)
servizi non connessi
(connectionless)
tre fasi:
1. creazione connessione
2. trasferimento dati
3. rilascio connessione
• PDU correlate
• identificativo connessione
• negoziazione connessione
Reti di calcolatori
inoltro diretto
• PDU indipendenti
• indirizzamento esplicito
• uso efficiente del mezzo
Architettura degli elaboratori modulo B- A.Memo
42
terminologia approfondimenti (3)
Le primitive offerte da un servizio si dividono in:
• request
richiesta di servizio da parte di un’entità
• indication avviso di un’entità del verificarsi di un dato evento
• confirm risposta di un’entità ad un certo evento
• response risposta ad una entità, relativa a precedente richiesta
servizi confermati
utilizzano le primitive:
request
indication
response
confirm
Reti di calcolatori
servizi non confermati
utilizzano le primitive:
request
indication
Architettura degli elaboratori modulo B- A.Memo
43
terminologia servizi non confermati
N_entità
N_entità
D.request
D.indication
(N-1)_PDU
(N-1)_entità
Reti di calcolatori
(N-1)_entità
Architettura degli elaboratori modulo B- A.Memo
44
terminologia servizi confermati (1)
N_entità
N_entità
D.request
D.indication
(N-1)_PDU
(N-1)_entità
Reti di calcolatori
(N-1)_entità
Architettura degli elaboratori modulo B- A.Memo
45
terminologia servizi confermati (2)
N_entità
N_entità
D.confirm
D.response
(N-1)_PDU
(N-1)_entità
Reti di calcolatori
(N-1)_entità
Architettura degli elaboratori modulo B- A.Memo
46
terminologia approfondimenti (4)
• Servizi non confermati e non connessi
– datagram (analogo ai telegrammi)
• Servizi non confermati e connessi
– (analogo alla segreteria telefonica)
• Servizi confermati e non connessi
– (analogo alle raccomandate R.R.)
• Servizi confermati e connessi
– (analogo al telefono)
Reti di calcolatori
Architettura degli elaboratori modulo B- A.Memo
47
Scarica

ret_cal