RETI DI CALCOLATORI
Quarta Esercitazione
Limiti delle LAN
•
•
•
Massima estensione fisica
Massimo numero di stazioni
Banda condivisa
Si utilizzano bridge, switch e router per:
• partizionare una LAN;
• interconnettere più LAN.
2
Partizionare una LAN
10 Mb/s condivisi
tra 5 stazioni
10 Mb/s condivisi
tra 10 stazioni
10 Mb/s
condivisi tra
5 stazioni
3
Interconnettere più LAN
4
I bridge
•
•
•
•
Più propriamente detti MAC bridge, operano
al sottolivello MAC del livello 2 del modello
ISO/OSI
Hanno algoritmi di instradamento molto
semplici
Possono interconnettere reti omogenee
(stesso MAC) o eterogenee (MAC differenti),
per esempio Ethernet-FDDI, Ethernet-Token
Ring, Token Ring-FDDI
Sono principalmente utilizzati in ambito
locale
5
I bridge
Applicazione
Applicazione
Presentazione
Presentazione
Sessione
Sessione
Trasporto
Trasporto
Rete
Data Link
Fisico
BRIDGE
Data Link
Fisico
Rete
Data Link
Fisico
Data Link
Fisico
6
I router
•
•
•
•
Operano al livello 3 del modello
ISO/OSI
Hanno algoritmi di instradamento
sofisticati
Sono principalmente utilizzati per
interconnessioni geografiche
Fanno uso di indirizzi definiti in base a
criteri gerarchici, consentendo la
gestione di reti di grandi dimensioni
7
I router
Applicazione
Applicazione
Presentazione
Presentazione
Sessione
Sessione
Trasporto
ROUTER
Trasporto
Rete
Rete
Data Link Data Link
Rete
Data Link
Fisico
Fisico
Fisico
Data Link
Fisico
8
Gli switch
•
•
•
•
Sono dispositivi di rete ad alte
prestazioni con funzionalità di inoltro
dei pacchetti realizzate in hardware
Storicamente si tratta di bridge ad alte
prestazioni
Attualmente la stessa tecnologia è
stata applicata ai router
Molti prodotti operano sia al livello 2
che al livello 3
9
I gateway
•
•
•
Operano al livello 7 del modello
ISO/OSI
Vengono utilizzati per interconnettere
architetture di rete diverse (ad es. SNA
e TCP/IP)
Esempio tipico: gateway per posta
elettronica
10
I gateway
GATEWAY
Applicazione
Applicazione
Applicazione
Presentazione
Presentazione
Presentazione
Presentazione
Sessione
Sessione
Sessione
Sessione
Trasporto
Trasporto
Trasporto
Trasporto
Rete
Rete
Rete
Rete
Data Link
Data Link
Data Link
Data Link
Fisico
Fisico
Fisico
Fisico
11
I bridge
I bridge
I bridge si occupano di instradare il
traffico da una LAN all'altra. È
importante sottolineare che, anche se
l'instradamento di per se è una
funzione tipica del livello tre, qui
avviene sulla base dei soli indirizzi di
livello due, quindi il bridge appartiene
in tutto e per tutto al livello data link.
13
Architettura di un bridge
L'architettura fisica di un bridge consiste in una o più
CPU, una memoria ed una o più interfacce per
l'interconnessione delle LAN. Di particolare interesse
risultano essere le memorie:
• la ROM contiene il software che realizza tutte le
funzioni del bridge;
• la RAM contiene le tabelle di instradamento utilizzate
dal bridge, un'area utilizzata dal software per gestire
le strutture dati interne ed una serie di buffer per i
dati in transito.
Le interfacce vengono realizzate in parte mediante
opportuni dispositivi elettronici ed in parte mediante i
14
mezzi trasmissivi.
Architettura di un bridge
Per quanto riguarda l'architettura logica di un
bridge, questa è caratterizzata da tre
elementi:
• due o più porte, che si occupano di ricevere
o trasmettere i pacchetti per la LAN a cui
sono connesse;
• la MAC relay entity, ossia un'entità di
ritrasmissione dei pacchetti tra due porte e
di filtraggio degli stessi apprendendo delle
informazioni in merito;
15
Architettura di un bridge
•
le higher layer entities, ossia le entità
di livello superiore che si appoggiano
alle procedure del LLC per ogni porta.
Queste possono essere bridge protocol
entity se si occupano della
configurazione della LAN estesa o
bridge management entity se si
occupano della gestione delle funzioni
del bridge.
16
Architettura di un bridge
PORT
PORT
1
2
Higher Layer Entities
Relay
MAC
MAC
Fisico
Fisico
17
Funzionamento di un
bridge
Il funzionamento di un bridge, che ha
tante interfacce di rete quante sono le
LAN alle quali è fisicamente collegato, è
il seguente:
• quando una delle interfacce di rete del
bridge riceve un frame MAC, lo passa al
relativo software di livello MAC che
toglie la busta MAC;
18
Funzionamento di un
bridge
•
il resto viene passato dal livello MAC al
software di livello LLC del bridge, nel quale,
sulla base dell'indirizzo di destinazione, si
decide a quale LAN inviarlo:
 se la destinazione si trova sulla LAN di
provenienza il frame viene scartato;
 altrimenti, il frame LLC viene passato al livello
MAC competente per la LAN di destinazione, che
lo imbusta in un frame MAC e provvede ad
inviarlo su tale LAN, secondo le regole di
quest'ultima.
19
Funzionamento di un
bridge
Si noti che un bridge è ben diverso da un
ripetitore, che copia pedissequamente tutto
ciò che riceve da una linea su tutte le altre.
Il bridge infatti acquisisce un frame, lo
analizza, lo ricostruisce e lo instrada, quindi
può anche essere configurato in modo da
filtrare (cioé non far passare) alcuni tipi di
traffico. Ciò tipicamente avviene in funzione
dell'indirizzo LLC, che identifica il protocollo
di livello superiore, o sulla base dell'indirizzo
MAC del mittente o del destinatario.
20
Funzionamento di un
bridge
I bridge progettati per interconnettere
LAN di tipo diverso devono risolvere
vari problemi legati alle diverse regole
in vigore su tali LAN, tra cui:
• formati dei frame differenti;
• data rate differenti;
21
Funzionamento di un
bridge
•
•
massima lunghezza di frame differente: è
fuori questione spezzare un frame in questo
livello, dato che tutti i protocolli si aspettano
che il frame o arrivi per intero o non arrivi
affatto; ad esempio, nello standard 802 i
frame troppo grandi devono essere scartati;
funzioni previste da un tipo di LAN ma non
dall'altra: ad esempio, il concetto di priorità
ed i bit A e C presenti in 802.5 non hanno
un equivalente in 802.3.
22
Instradamento
I bridge calcolano tabelle di instradamento
usando un algoritmo molto semplice che
funziona solo su reti con topologia ad albero.
I bridge, per operare su topologie magliate,
devono riportarle ad albero, eliminando i
cammini eccedenti tramite un algoritmo di
spanning tree.
L’algoritmo di spanning tree opera
periodicamente e in presenza di guasti riattiva
automaticamente cammini precedentemente
eliminati.
23
Standard IEEE per i
bridge
Sono due i tipi di bridge standardizzati
da IEEE:
• transparent spanning-tree bridge;
• source-routing bridge.
24
Transparent spanningtree bridge
Il transparent bridge (IEEE 802.1 part D)
può essere installato e diventare
operativo in modo totalmente
trasparente, senza richiedere niente
altro che la connessione fisica e
l'accensione.
25
Transparent spanningtree bridge
Il mecccanismo è il seguente:
• dal momento in cui il bridge viene attivato,
esamina tutti i frame che gli arrivano dalle
varie LAN e sulla base di questi costruisce
progressivamente le sue tabelle di
instradamento. Infatti, ogni frame ricevuto
consente al bridge di sapere su quale LAN si
trova la stazione che lo ha inviato;
26
Transparent spanningtree bridge
•
ogni frame che arriva al bridge viene
ritrasmesso:
 se il bridge ha nelle sue tabelle di instradamento
l'indirizzo del destinatario, invia il frame sulla
corrispondente LAN;
 altrimenti il frame viene inviato a tutte le LAN
tranne quella di provenienza;
 man mano che il bridge aumenta la sua
conoscenza degli indirizzi delle varie macchine, la
ritrasmissione diventa sempre più selettiva (e
quindi più efficiente):
27
Transparent spanningtree bridge
•
•
le tabelle vengono aggiornate
periodicamente, rimuovendo gli indirizzi che
non sono transitati nell'ultimo periodo (così,
se una macchina viene spostata, entro pochi
minuti viene di nuovo indirizzata
correttamente). Questa tecnica prende il
nome backward learning;
se ci sono maglie nella topologia di
connessione delle LAN, i bridge si
costruiscono di essa uno spanning tree.
28
Bridge Forwarding
1.
2.
3.
4.
5.
6.
Inizio dell'algoritmo di "forwarding";
Il pacchetto è stato ricevuto senza errori
nella porta x? Se no vai a 3; se sì vai a 4;
Pacchetto scartato  fine algoritmi di
"forwarding" e "learning";
La porta x si trova in stato di forwarding? Se
no vai a 5; se sì vai a 6;
Fine algoritmo di "forwarding";
Il destination address si trova nel filtering
database? Se no vai a 7; se sì vai a 8;
29
Bridge Forwarding
7.
8.
9.
10.
Il pacchetto viene inoltrato attraverso
tutte le porte eccetto la x;
Il destination address risulta registrato
come proveniente dalla stessa porta?
Se sì vai a 9; se no vai a 10;
Pacchetto scaricato  vai a 5;
Inoltro del pacchetto alla LAN
mediante porta corretta  vai a 5.
30
Bridge Learning
1.
2.
3.
4.
5.
Fine algoritmo di "forwarding";
Il source address si trova nel filtering
database? Se no vai a 3; se sì vai a 5;
Aggiungere il source address al database
associando il timer e la direzione  vai a
4;
Fine algoritmo di "learning";
Aggiornare la direzione di provenienza e il
timer associato all'indirizzo presente in
tabella  vai a 4.
31
Spanning Tree
L'algoritmo di spanning-tree ha il compito di
trasformare, in modo dinamico e periodico, una
qualsiasi topologia di rete in un albero, eliminando i
percorsi alternativi. Tale algoritmo opera in tre fasi:
• elezione della radice dell'albero (root bridge
selection): tutti i bridge sono caratterizzati da una
root priority e da un indirizzo MAC; in questa fase
ogni bridge invia il proprio BPDU e riceve quelli
trasmessi dagli altri bridge. Quando un bridge
riceve una BPDU con priority minore assume che il
bridge mittente sia il root bridge (in caso di parità di
priority, viene designato root bridge il bridge con
MAC minore);
32
Spanning Tree
•
•
selezione della root port (root port
selection): viene scelta, per ogni bridge, una
porta con cui interconnettere il bridge al
root bridge;
selezione del designated bridge: viene
scelto, per ogni LAN, un bridge con cui
interconnettere la LAN con il root bridge. La
porta del designated bridge prescelto (che
di norma è quello più vicino al root bridge)
viene chiamata "designated port".
33
Spanning Tree
Alla fine delle suddette fasi vengono poste in
stato di blocking tutte le porte che non sono
né root né designated ed in stato di
forwarding le root port e le designated port,
ottenendo così una topologia attiva ad
albero. Occorre ricordare che una porta si
trova in stato di forwarding se partecipa alla
ritrasmissione dei pacchetti, in stato di
learning se si limita ad apprendere, in stato
di listening se si limita al semplice ascolto
del traffico ed in stato di blocking se scarta
tutti i pacchetti ricevuti.
34
Spanning Tree
L'algoritmo di spanning-tree si basa sulla
definizione, per ogni porta, di un path
cost che indica il costo di
attraversamento della porta stessa.
Per ogni porta e per ogni bridge si può
definire il root path cost, ossia il costo
totale di percorso per raggiungere il
root bridge.
35
Spanning Tree
Per realizzare tale algoritmo viene
definito, così come visto in precedenza,
il bridge PDU (BPDU). Esso è così
strutturato:
DSAP
SSAP Length DSAP SSAP Control
Multicast Single
XY
042H 042H XID
CONFIGURATION
MESSAGE
MAC
LLC Header
36
Spanning Tree
Il root bridge ha il compito di inviare
periodicamente ed in multicast a tutti i
bridge della LAN delle configuration BPDU. I
bridge, una volta ricevuto il BPDU, ne
aggiornano alcuni campi e lo ritrasmettono
alle designated port. Tali campi possono
essere:
• il root identifier: è composto da due primi
ottetti che indicano la priorità e da 6 ottetti
che indicano l'indirizzo MAC del root bridge;
• il root path cost: viene aggiornato per ogni
attraversamento di un bridge;
37
Spanning Tree
•
•
•
bridge identifier: come per il root
identifier, ma definito per il bridge che
ha ritrasmesso il messaggio di
configurazione;
port identifier: un ottetto indica la
priorità ed un secondo ottetto indica
l'identificativo della porta;
message age: tempo di vita del BPDU;
38
Spanning Tree
•
•
•
•
hello time: intertempo tra due BPDU;
forward delay: tempo di permanenza
nello stato di listening o nello stato di
learning;
topology change: è un flag che indica
un cambiamento di topologia;
topology change acknowledgement: è
un flag che viene settato in risposta al
topology change notification BPDU.
39
Source-routing bridge
Il source-routing bridge (nato per le reti
802.5) è progettato invece per ottenere
l'instradamento più efficiente possibile,
anche a scapito della trasparenza.
L'idea di base è che il mittente indichi
esplicitamente il cammino (espresso come
sequenza di bridge e reti) che il frame deve
percorrere. L'amministratore di sistema deve
assegnare numeri di identificazione distinti
ad ogni rete e ad ogni bridge, operazione
che deve essere fatta manualmente.
40
Source-routing bridge
Tali informazioni sono incluse in un apposito
campo RI (Routing Information) del frame
802.5, e la loro eventuale presenza è
indicata dal valore 1 del bit più significativo
dell'indirizzo sorgente (che, essendo sempre
relativo a un indirizzo singolo e mai di
gruppo o broadcast, originariamente è
sempre zero). Il bridge esamina solo i frame
che hanno tale bit a uno.
41
Routing Information
Il campo routing information è composto da
due parti: il campo RC (Route Control) ed n
campi SN (Segment Number) con 0  n  8.
RC contiene informazioni quali il valore di n,
la direzione (da source a destination e
viceversa), il broadcast. SN è un campo di
16 bit diviso in n di cui 12 di RN (Ring
Number) e 4 di BN (Bridge Number). RN è
assegnato dal network manager diverso per
ogni ring, BN serve invece per discriminare
tra bridge paralleli.
42
Routing Information
DESTINATION SOURCE
ADDRESS
ADDRESS
ROUTING
INFO
INFO
ROUTE
SEGMENT SEGMENT SEGMENT
CONTROL NUMBER 1 NUMBER 2 NUMBER 3
43
Filtri
I filtri servono a stabilire le LAN che formano il
percorso di un pacchetto. Qualora esistono più
percorsi alternativi, i bridge operano un
ulteriore filtraggio per prevenire la
duplicazione di pacchetti. I filtri possono
essere inclusivi o esclusivi: gli inclusivi
includono classi di pacchetti che non devono
essere filtrati, gli esclusivi impongono classi di
pacchetti che devono essere sempre filtrati
(limitando l'apprendimento del learning
process). I campi usati per il filtraggio sono
l'indirizzo sorgente, l'indirizzo destinatario ed il
protocol type.
44
Prestazioni di un Bridge
Le prestazioni di un bridge vengono determinate in base
ai seguenti parametri:
• tempo medio di latenza, in riferimento al tempo che
impiega un pacchetto ad attraversare un bridge;
• numero massimo di pacchetti al secondo che un
bridge può ricevere e processare (cioè filtrare);
• numero massimo di pacchetti al secondo che un
bridge può inoltrare.
La perdita di pacchetti viene minimizzata mediante
l'impiego di bridge full-speed, ossia di bridge
caratterizzati dall'uguaglianza in valore degli ultimi due
parametri.
45
Bridge Remoti
I bridge remoti vengono utilizzati in luogo dei router,
risultando trasparenti a tutti i protocolli (compresi
quelli che non hanno un livello 3). Rispetto ai router
però non gestiscono topologie di complessità molto
elevata, non confinano i messaggi
multicast/broadcast, non permettono il bilanciamento
ottimale del traffico su rete geografica e non
gestiscono algoritmi sofisticati per uso di più link in
parallelo. I bridge remoti possono essere remotizzati
utilizzando fibra ottica (sino a 40 km), fasci di
microonde (sino a 10 km), raggi laser (sino a 2 km).
Possono inoltre essere utilizzate reti veloci a
commutazione di pacchetto.
46
Domande di riepilogo
•
•
•
•
•
Quali sono le differenze tra Bridge, Router e
Gateway?
Che cos'è lo spanning-tree?
Qual è lo standard IEEE che si occupa dei
bridge?
Quali sono le tre funzioni principali realizzate
dai bridge trasparenti?
Come avviene la costruzione della tabella di
instradamento?
47
Domande di riepilogo
•
•
•
•
•
•
•
In quali passi opera l'algoritmo di spanning
tree?
Come funzionano i bridge source routing?
Che cosa contiene il campo routing
information?
A cosa servono i filtri?
Quali parametri caratterizzano le prestazioni
di un bridge?
Quali sono i mezzi trasmissivi utilizzati dai
bridge remoti?
Quali sono i limiti dei bridge remoti?
48
Scarica

I bridge