Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

24
Reti di Calcolat ori Andrea Frosini 1 Reti di Calcolatori a.a. 2005/06 Lezione 12

Transcript of Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Page 1: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 1

Reti di Calcolatoria.a. 2005/06

Lezione 12

Page 2: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 2

Nel modello di riferimento:

Application

Transport

Network

Data Link

Fisico

Sottolivello MAC

Page 3: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 3

IEEE 802.2 (Logical Link Protocol)

• Definisce la parte superiore del livello Data Link in IEEE 802

• Nasconde le differenze dei vari sotto-livelli MAC definendo un unico formato delframe ed una unica interfaccia verso il livello Network

• Offre tre tipi di servizio:– datagram, cioè connectionless non affidabile (l’unico offerto dai sotto-livelli MAC)– datagram affidabile (con conferma)– connection-oriented affidabile

Attenzione! LLC non è sempre utilizzato. Ad esempio, nel caso frequente di unarete Ethernet il cui traffico sono solo pacchetti IP, LLC non ha alcuna utilità.

Page 4: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 4

IEEE 802.2 Formato del frame

LLCheader

LLCheader

MACheader

MACtrailer

Liv. Network

Liv. LLC

Liv. MAC

Liv. Fisico

Page 5: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 5

I bridge sono dispositivi hardware operanti a livello Data Link che collegano tra lorodiverse LAN

Sono realizzati da:

• apparecchiature specifiche, oppure

• calcolatori con opportuno supporto nel sistema operativo

IEEE 802.2 Bridge

Page 6: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 6

I bridge non sono da confondere con ripetitori, hub, switch, router o gateway!

• i ripetitori operano a livello Fisico e collegano due segmenti tra loro amplificandoe ritrasmettendo il segnale analogico• gli hub operano a livello Fisico e collegano elettricamente diversi segmenti traloro, ma generalmente non amplificano il segnale analogico• un router opera a livello Network• un gateway può operare a livello Network (router multiprotocollo), a livello Transport

oppure Application• uno switch opera a livello Data Link, esaminando l’indirizzo hardware del frame,e collega tra loro stazioni singole di una stessa LAN• un bridge opera a livello Data Link, esaminando l’indirizzo hardware del frame, ecollega tra loro diverse LAN (potenzialmente anche di tipo differente)

La differenza fondamentale tra switch e bridge è essenzialmente tecnologica, ma tale differenza va sempre più attenuandosi

IEEE 802.2 Dispositivi di interconnessione

Page 7: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 7

In genere le schede di rete delle LAN controllano automaticamente l’indirizzo hardware di destinazione e ignorano i frame non destinati al calcolatore

Quasi tutte le schede di rete possono anche funzionare in modo promiscuo: tutti iframe sono sempre passati al calcolatore, qualunque sia la loro destinazione

E’ quindi possibile costruire degli sniffer: applicazioni che monitorizzano tutto il traffico di una LAN (password, e-mail, numeri di carte di credito, ecc.)

Spezzando una LAN tramite i bridge, si aumenta la sicurezza, perché ciascuno sniffer potrà intercettare solo il traffico della piccola LAN in cui è inserito

Inoltre i bridge possono filtrare i frame (ad esempio scartando i frame che arrivanoda schede di rete non riconosciute)

IEEE 802.2 Bridge e sicurezza

Page 8: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 8

IEEE 802.2 Esempio di bridge tra Ethernet e Token Bus

Page 9: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 9

• riceve un frame da una scheda di rete di una LAN A

• il frame è interpretato dall’entità di livello MAC della LAN A

• il frame LLC è passato al livello LLC del bridge

• il livello LLC esamina l’indirizzo hardware di destinazione: se appartiene ad una stazione sulla LAN A, scarta il frame

• altrimenti il livello LLC decide di spedire il frame su un’altra LAN B:

– il frame LLC è passato al livello MAC della LAN B

– il frame è trasmesso sulla LAN B

IEEE 802.2 Funzionamento di un bridge

Page 10: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 10

I bridge per le LAN IEEE 802 devono affrontare difficoltà tecniche rilevanti.

Ad esempio, in ciascuno degli standard IEEE 802.3, 802.4 e 802.5 sono differenti:

• il formato dei frame

• la velocità di trasmissione

• l’efficienza delle LAN (ad esempio, una rete Token Ring da 10 Mbps può rapidamente saturare una rete Ethernet da 10 Mbps)

• la lunghezza massima di un frame (è fuori questione spezzare i frame troppo lunghi, perché per i protocolli IEEE 802 o un frame arriva oppure non arriva)

• la priorità dei frame (mancante in 802.3, diverso significato in 802.4 e 802.5)

• l’acknowledgement del frame (ad esempio, i bit A e C in 802.5)

Le difficoltà sono ancora maggiori per i bridge tra LAN broadcast e reti wireless (ad esempio, tra IEEE 802.3 e 802.11)

IEEE 802.2 Difficoltà tecniche dei bridge

Page 11: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 11

Ciascun bridge deve gestire il routing (instradamento) dei frame considerando l’indirizzo hardware di destinazione di ciascun frame

L’IEEE definisce due standard (incompatibili tra loro), entrambi chiamati collettivamente IEEE 802.1d:

• Transparent bridge: proposto dai comitati che formalizzavano 802.3 e 802.4.

• Source routing bridge: proposto dal comitato che formalizzava 802.5.

IEEE 802.2 Routing nei bridge

Page 12: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 12

Il Transparent bridge è una apparecchiatura completamente invisibile agli host nelle varie LAN e prevede:

• nessun cambiamento hardware negli host

• nessun cambiamento nel software degli host

• nessuna impostazione manuale di tabelle di routing nel bridge o negli host

Per installare un transparent bridge è solo necessario collegare i cavi delle varie LAN all’apparecchio

IEEE 802.2 Transparent bridge

Page 13: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 13

Opera in modo promiscuo, analizzando tutti i frame su tutte le LAN

Quando arriva un frame, legge l’indirizzo hardware della scheda di rete a cui il frame è destinato:

• se la destinazione è nella tabella di routing del bridge:

– se la destinazione è sulla LAN da cui è arrivato il frame, ignora il frame

– se la destinazione è su un’altra LAN, invia il frame solo a quella LAN

• se la destinazione non è nella tabella di routing, invia il frame a tutte le LAN eccetto quella dalla quale il frame è arrivato (flooding)

IEEE 802.2 Funzionamento del transparent bridge

Page 14: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 14

Inizialmente la tabella di routing di un transparent bridge è vuota (nessuna configurazione manuale)

La tabella viene riempita utilizzando un algoritmo chiamato backward learning:

per ogni frame che giunge al bridge:

• legge l’indirizzo hardware del calcolatore M che ha inviato il frame

• se non è già presente, aggiunge alla tabella di routing l’informazione che il calcolatore M è raggiungibile sulla LAN dalla quale è arrivato il frame

IEEE 802.2 Costruzione tabella di routing

La tabella di routing del transparent bridge è dinamica, per gestire calcolatori che si accendono, si spengono o si muovono

• ogni volta che un frame arriva ad un bridge, l’istante temporale in cui è arrivato è scritto in un apposito campo del record corrispondente nella tabella di routing

• ogni pochi minuti il bridge esamina tutti i record della tabella di routing e cancella tutti quelli per i quali da parecchio tempo non è arrivato alcun frame

Page 15: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 15

Per aumentare l’affidabilità si inseriscono più bridge in parallelo tra le stesse LAN, ma questo può provocare la generazione di un numero infinito di frame:

IEEE 802.2 Bridge in parallelo

LAN2

LAN1

Page 16: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 16

La generazione di un numero infinito di frame durante il flooding è dovuto all’esistenza di cicli indotti dai bridge

Soluzione: ciascun bridge ignora alcune LAN, in modo da evitare la creazione di cicli

Se LAN e bridge sono rappresentati da nodi e archi di un grafo, si deve determinare uno spanning tree (albero ricoprente) del grafo. Notare che un albero non ha cicli al suo interno

L’algoritmo per lo spanning tree deve essere:

• dinamico, perché i bridge possono apparire e sparire

• distribuito, perché i bridge devono concordare sullo stesso spanning tree

IEEE 802.2 Spanning tree

Page 17: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 17

IEEE 802.2 Esempio di spanning tree

LAN

Bridge

Spanning tree

Arco dell’alberoArco non dell’albero

LAN

Internetworking di LAN

Page 18: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 18

L’obiettivo del source routing bridge è quello di massimizzare l’efficienza

La responsabilità del routing è affidata soprattutto agli host sulle LAN

Quando un host deve spedire un frame su una LAN differente dalla propria, deve conoscere il percorso (path) da seguire:

• Ciascuna LAN è identificata da un numero a 12 bit

• Ciascun bridge è identificato da un numero a 4 bit (non univoco nella internetwork, ma univoco tra tutte le LAN collegate dal bridge)

• Un percorso è una successione di numeri di bridge e LAN alternati

IEEE 802.2 Source routing bridge

Page 19: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 19

Quando un frame arriva ad un source routing bridge:

• esamina l’indirizzo hardware di destinazione, e ignora il frame se il bit più significativo è 0 (l’indirizzo è locale alla LAN dalla quale il frame è partito)

• analizza il percorso contenuto nel frame e cerca il numero della LAN dalla quale è arrivato il frame

• se questo numero di LAN è seguito dal proprio numero di bridge, invia il frame sulla LAN indicata dal numero di LAN successivo

• altrimenti ignora il frame

IEEE 802.2 Funzionamento del source routing bridge

Page 20: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 20

Il percorso da seguire per un frame inviato attraverso un source routing bridge deve essere memorizzato in un particolare campo del frame: Routing Information (lungo da 8 a 40 byte)

Lo standard IEEE 802.5 (Token Ring) specifica che tale campo nella testata del frame è facoltativo (presente solo nei frame che lo richiedono)

Gli standard IEEE 802.3 (Ethernet) e 802.4 (Token Bus) non prevedono l’esistenza di tale campo, e quindi queste LAN non potrebbero essere connesse con source routing bridge

In pratica, lo standard IEEE definisce un source routing bridge che si comporta come un transparent bridge quando tratta frame senza il campo Routing Information. A volte questo tipo di bridge è detto Translational bridge.

IEEE 802.2 Routing Information

Page 21: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 21

Anche se l’assegnazione degli identificatori di LAN e bridge è manuale, la costruzione della tabella di routing in ciascun host è dinamica

Se un host A non conosce il percorso per arrivare a un certo host B, invia un frame broadcast chiamato discovery frame contenente l’indirizzo di B

Il discovery frame è ritrasmesso da ogni source routing bridge, così alla fine raggiunge tutti gli host nelle varie LAN

Ad ogni ritrasmissione il bridge aggiunge al discovery frame il numero della LAN da cui è giunto il frame ed il proprio numero di bridge

Per ciascun discovery frame che giunge a B, B invia un frame di risposta ad A, utilizzando il percorso memorizzato nel discovery frame

IEEE 802.2 Costruzione della tabella di routing I

Page 22: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 22

L’host A considera il primo frame di risposta che gli arriva ed aggiunge alla propriatabella di routing il percorso corrispondente

Considerare solo il primo frame tende a favorire i percorsi migliori (più veloci, piùcorti, meno carichi, . . . )

Problema: se esistono cicli nel grafo costituito da LAN e bridge, il numero didiscovery frame aumenta esponenzialmente!

Analogamente alle tabelle di routing dei transparent bridge, queste tabelle di routingsono dinamiche: ogni record viene cancellato se in un certo intervallo di tempo essonon viene utilizzato

IEEE 802.2 Costruzione della tabella di routing II

Page 23: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 23

• il transparent bridge è completamente trasparente per gli host nelle varie LAN, il source routing bridge no

• il transparent bridge è (in teoria) compatibile con tutti gli standard IEEE 802, il source routing bridge no

• il source routing bridge potrebbe utilizzare un routing ottimale, e potrebbe utilizzare i cicli per ridurre la congestione nelle singole LAN (ma in pratica . . . )

• con il backward learning non si hanno garanzie se e quando un particolare percorso verrà imparato; con il discovery frame si ha una esplosione esponenziale nel numero di frame di controllo con bridge in parallelo

• guasti di host e bridge vengono gestiti molto più efficacemente dal transparent bridge che dal source routing bridge

• col transparent bridge la sofisticazione è nei bridge (pochi), col source routing bridge è negli host (molti)

Il transparent bridge è più conveniente e il source routing bridge sta scomparendo

IEEE 802.2 Confronto tra bridge

Page 24: Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 12.

Reti di Calcolatori Andrea Frosini 24

Sempre più frequentemente gli amministratori di rete hanno la necessità di suddividere le stazioni in tante LAN separate, per i soliti motivi di efficienza, affidabilità e sicurezza

E’ possibile farlo posizionando geograficamente bridge e stazioni in maniera opportuna, ma questo implica che

• gli utenti di ciascuna LAN devono essere geograficamente localizzati

• cambiare la LAN a cui appartiene una certa stazione è difficile, ed ogni cambiamento implica una riconfigurazione manuale dei vari segmenti che entrano nei bridge

La soluzione consiste nel costruire bridge e switch che consentano la realizzazione di

LAN virtuali (VLAN)

Ciascuna stazione in ogni LAN fisica viene assegnata (via software) ad una LAN virtuale (solitamente indicata dagli amministratori con un colore)

LAN virtuali (VLAN)