Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
1
2: Architettura delle reti e modello OSI
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
1
Architettura di rete
Una rete è costituita da componenti hardware (cavi, interfacce, circuiti
integrati, processori, RAM,…) e componenti software (per la implementazione
di algoritmi finalizzati al trasferimento dei dati non realizzabili con hardware)
L’architettura di una rete definisce le specifiche con cui si vuole realizzarla
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
Architettura strutturata
Per ridurre la complessità del problema lo si spezza in parti
Si definisce l’insieme di compiti che ogni parte deve eseguire
Si definiscono i meccanismi con cui le diverse parti interagiscono tra loro
(interfaccia)
Si maschera la implementazione di ciascuna parte alle altre parti
2
2
Architettura stratificata
La strutturazione idonea per una architettura di rete è la stratificazione
La rete viene strutturata in livelli (detti anche strati, o layer), visti come una pila
di oggetti, dove ciascuno strato ha il compito di fornire un servizio allo strato
superiore.
La definizione delle regole di accesso ai servizi offerti da uno strato costituisce
l’interfaccia tra quello strato e lo strato superiore; è l’unica cosa che lo strato
superiore deve conoscere sullo strato sottostante
Ciascuno strato realizza i servizi per lo strato superiore comunicando
logicamente con lo strato paritario del nodo remoto, attraverso un insieme di
regole dette protocollo. Lo scambio di dati con lo strato paritario viene
realizzato utilizzando i servizi dello strato sottostante.
I dettagli realizzativi di come i servizi che lo strato N fornisce allo strato N+1
vengano realizzati sono sconosciuti agli altri strati
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
3
Struttura a strati
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
4
3
Lo strato
Uno strato è definito quando sono definite le sue funzioni
Uno strato può occuparsi dello scambio dei dati tra due applicazioni (ad es.
richieste, risposte, controllo della comunicazione logica), senza occuparsi
di questioni relative al modo in cui i dati debbano viaggiare sulla rete, o alla
codifica dei dati
Un altro strato può occuparsi di come recapitare i dati attraverso i vari nodi
della sottorete, senza occuparsi né del significato dei dati, né del modo in
cui vanno codificati i bit sul mezzo trasmissivo
Una questione comune a tutti gli strati riguarda l’indirizzamento
uno strato può fornire servizio a diverse entità dello strato superiore, e deve
poter indirizzare i dati verso la destinazione corretta
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
5
Il protocollo
Un protocollo è un insieme di regole che definiscono la comunicazione tra due strati
di pari livello
Esempio: protocollo per trasferimento di file
il client comunica al server “voglio trasferire un file” ed attende la risposta da lui
il server risponde “tu chi sei?” ed attende la comunicazione dal client
il client invia lo username
il server risponde: non sei autorizzato / dammi la password
nel primo caso il client chiude, nel secondo invia la password
il server accetta la password (se corretta) o la richiede
• nel secondo caso il client deve fornirla nuovamente
il client comunica il nome del file che vuole trasferire
il server fornisce il file
il client legge il file e lo copia localmente
il server chiude la comunicazione
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
6
4
Protocol Data Unit
Il protocollo definisce quindi le modalità con cui due entità comunicano
Generalmente un protocollo prevede lo scambio di dati e di informazioni di
controllo per gestire la comunicazione; ad esempio:
informazioni di controllo per negoziare le caratteristiche della
comunicazione (la dimensione dei pacchetti, la velocità, …)
informazioni di riscontro (acknowledge) sulla ricezione dei dati
Il pacchetto unitario (dati o informazioni di controllo) che si scambiano due
strati paritari è detto PDU
Normalmente ci si riferisce alla PDU dello strato X con la sigla X-PDU, o
XPDU
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
7
Il servizio
Il servizio offerto da uno strato allo strato superiore definisce cosa lo strato
superiore può ottenere dallo strato inferiore; ad esempio:
servizio di recapito dei dati affidabile o non affidabile
servizio orientato alla connessione o connection less
servizi di comunicazione multicast o broadcast
Il servizio è sostanzialmente la definizione di un rapporto client-server, dove il
client è lo strato superiore ed il server è lo strato inferiore
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
8
5
Servizi orientati alla connessione
La comunicazione si sviluppa in tre fasi:
attivazione della connessione: in questa fase non ci si scambiano “dati”,
ma si eseguono le operazioni necessarie al successivo scambio di dati
(si allocano le risorse, ci si accorda sulle modalità di comunicazione,
eventualmente si rifiuta la connessione, …)
trasferimento dati: non è necessario che i dati siano indirizzati, in quanto
la loro destinazione è determinata dall’appartenenza ad una
connessione.
rilascio della connessione: il rilascio lo si fa in modo che entrambi i lati
della connessione siano consapevoli di ciò, e rilascino le risorse
L’esempio classico di servizio connection oriented è la comunicazione
telefonica
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
9
Servizi non orientati alla connessione
La comunicazione non prevede una fase iniziale, nè una fase finale: i dati
vengono inviati alla controparte senza sapere se è pronta a riceverli.
Ogni blocco di dati deve riportare l’indirizzo del destinatario (e del mittente)
Il servizio non orientato alla connessione funziona come il servizio postale
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
10
6
Qualità del servizio
Servizio affidabile
garantisce che i dati arrivino correttamente a destinazione, nell’ordine
giusto
il servizio realizza l’affidabilità utilizzando un protocollo che preveda
riscontri sulla ricezione dei dati.
Servizio inaffidabile
non si occupa di garantire la riuscita del trasferimento dei dati, o
dell’ordinamento degli stessi: qualora fosse necessario, si occuperanno
della cosa gli strati superiori.
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
11
Qualità del servizio (2)
I servizi orientati alla connessione si possono classificare:
flusso affidabile di messaggi (servizio affidabile orientato al messaggio:
una sequenza di pagine di un libro, fax)
flusso affidabile di byte (servizio affidabile orientato al byte: trasferimento
file)
connessione inaffidabile (servizio non affidabile: telefonia)
I servizi non orientati alla connessione si possono classificare:
servizio di datagramma inaffidabile (servizio inaffidabile: accesso ad un
database)
servizio di datagramma affidabile (protocolli di data link layer)
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
12
7
L’interfaccia
L’interfaccia tra due strati adiacenti definisce le modalità con cui lo strato
superiore può usufruire dei servizi offerti allo strato inferiore
L’interfaccia è specificata dalla definizione di primitive di servizio, che
istruiscono lo strato inferiore ad eseguire determinate azioni
L’interfaccia definisce anche i parametri che gli strati si scambiano (ad
esempio un puntatore alla PDU che lo strato superiore deve inviare o che lo
strato inferiore deve recapitare)
nel caso di implementazioni software, le primitive di servizio sono di fatto
chiamate a funzione, ed i parametri sono gli argomenti delle funzioni
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
13
Primitive di servizio
Le primitive di servizio costituiscono le operazioni che lo strato superiore ha a
disposizione per accedere al servizio
Queste dipendono dalla natura del servizio reso disponibile
un servizio connection oriented metterà a disposizione primitive del tipo
• Listen (attesa di una connessione entrante)
• Connect (richiede una connessione)
• Receive (attesa di dati)
• Send (invio di dati)
• Disconnect (richiesta di disconnessione)
un servizio connection less potrebbe avere le sole Send e Receive
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
14
8
Definizione della architettura
L’architettura (stratificata) della rete si realizza con la definizione di
strati: partizionamento delle funzionalità
servizi: quali servizi lo strato è in grado di offrire allo strato superiore
interfacce tra gli strati: come lo strato superiore accede ai servizi offerti dallo
strato inferiore
protocolli: come comunicano i processi paritari
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
15
Flusso dei dati
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
16
9
Flusso dei dati (2)
Ogni livello organizza la sua comunicazione come se avvenisse direttamente con il
processo paritario, secondo il protocollo (flusso virtuale).
I dati in realtà scorrono dal livello superiore al livello inferiore nel nodo che trasmette,
ed in senso inverso nel nodo che riceve
Il livello N preleva la PDU del livello N+1, e costruisce la propria PDU:
se necessario spezza la PDU dello strato superiore in pezzi
aggiunge in testa a ciascun pezzo un header con informazioni di controllo
se deve, aggiunge in coda a ciascun pezzo un trailer con informazioni di
controllo
ciascun pezzo così formato costituisce una PDU del livello N
Il livello N accede quindi ai servizi dello strato N-1 per inviare i dati al processo
paritario N sul nodo remoto
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
17
Modello OSI
Nel 1977 l’ISO ha costituito un gruppo allo scopo di produrre uno standard
universale per le architetture di rete
Il modello è stato pubblicato nel 1983 col nome OSI (Open System Interconnection)
Lo scopo era quello di definire una architettura (strati, protocolli, interfacce) in modo
sufficientemente preciso da consentire implementazioni indipendenti ma
interoperanti
in realtà il modello non definisce esattamente i protocolli ed i servizi, ma piu’ in
generale quello che ogni strato deve fare; le specifiche di protocolli e servizi
sono state definite e pubblicate a parte.
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
18
10
Livelli del modello OSI
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
19
Livelli OSI: fisico
Lo strato fisico si occupa della trasmissione dei bit sul mezzo trasmissivo
La sua funzione è di fare in modo che un bit 0 sia ricevuto dal livello fisico del
nodo remoto come bit 0, e non come 1
Problemi tipici di questo livello sono:
la codifica (i valori delle tensioni, la durata dei bit)
modulazione e multiplexing
proprietà meccaniche dei connettori
specifiche elettriche dei circuiti dell’interfaccia
caratteristiche del mezzo trasmissivo
direzionalità della trasmissione
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
20
11
Livelli OSI: data link
Lo strato di data link si occupa di trasformare una trasmissione di bit grezzi tra
nodi adiacenti in una linea di trasmissione priva di errori (!)
Esegue funzioni quali
divisione dei dati in frame
controllo degli errori
conferma della ricezione (acknowledge)
controllo del flusso
controllo di accesso al mezzo trasmissivo in caso di canali condivisi
(substrato MAC: Medium Access Control)
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
21
Livelli OSI: network
Lo strato di network si occupa del recapito dei dati tra nodi non
necessariamente adiacenti (quindi del funzionamento della sottorete di
comunicazione)
Funzioni caratteristiche sono:
suddivisione dei dati in pacchetti
indirizzamento dei nodi della rete
recapito a destinazione (su quale canale uscente inoltrare i dati
provenienti da un canale), solitamente basandosi su tabelle
modalità di definizione ed aggiornamento delle tabelle
controllo della congestione, dei ritardi, dei tempi di transito
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
22
12
Livelli OSI: transport
Lo strato di trasporto deve prelevare dati dallo strato superiore,
eventualmente suddividerli in unità piu’ piccole, ed inviarli (tramite lo strato di
rete) al nodo remoto occupandosi di controllare che le unità arrivino al
processo paritario del nodo remoto nell’ordine di trasmissione
è il primo protocollo end-to-end
Deve occuparsi del tipo di servizio offerto allo strato superiore (affidabile, non
affidabile)
OSI specifica solo un servizio connection oriented
Affronta diverse problematiche simili a quelle del livello di data link su
connessioni punto-punto ma in un contesto molto piu’ complesso
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
23
Livelli OSI: session
Lo strato di sessione si occupa del controllo del dialogo
controllo su quale delle due parti abbia diritto di trasmettere
supervisione di una comunicazione temporalmente estesa con eventuale
ripristino della sessione in caso di fallimento temporaneo del livello sottostante
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
24
13
Livelli OSI: presentation
Il livello di presentazione si occupa essenzialmente di rendere trasparente eventuali
rappresentazioni differenti dei dati
codifiche differenti dei dati (ASCII/EBCDIC, …)
• ASCII: American Standard Code for Information Interchange (7 bit
encoding, esteso in seguito ad 8 bit)
• EBCDIC: Extended Binary Coded Decimal Interchange Code (8 bit
encoding)
compressione
crittografia
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
25
Livelli OSI: application
Il livello di applicazione si occupa di definire le specifiche che le applicazioni utente
possono utilizzare per accedere alla rete
L’ISO ha fornito specifiche su sole tre applicazioni:
FTAM (file transfer)
X.400 (posta elettronica)
X.500 (servizio di directory)
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
26
14
Schema del modello OSI
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
27
Service Access Point
Uno strato può fornire servizio a piu’
entità dello strato superiore
Per essere identificabili queste entità
devono avere un indirizzo
R. Cusani, F. Cuomo: Telecomunicazioni - Architettura delle Reti e Modello OSI, Marzo 2010
L’indirizzo generico di accesso ad uno strato si chiama Service Access
Point (SAP)
L’indirizzo di accesso allo strato di Network è detto NSAP, allo strato di
trasporto TSAP
Lo strato N del computer ricevente deve sapere a quale entità dello
strato N+1 deve recapitare le informazioni, quindi ricevere dal pari
l’informazione dell’ NSAP utilizzato dallo strato N+1 destinatario
28