Reti di Telecomunicazioni R. Bolla, L. Caviglione, F. Davoli I bridge 802.1 Funzioni e architettura logica Ricezione e filtraggio Instradamento Spanning Tree Bridge remoti 22.2
Il termine internetworking indica in generale l interconnessione di reti in una rete più vasta (internet); le reti costituenti sono indicate come sottoreti, i dispositivi interconnessi come End Systems (ES) e i dispositivi di interconnessione come Intermediate Systems (IS). Nel caso delle LAN, l interconnessione può avvenire tramite bridge o tramite router. 22.3 I bridge operano a livello 2 (DLC), sottolivello MAC, del modello OSI; i router operano al livello 3 (network). L uso dei bridge consente di creare una LAN estesa (Broad LAN, BLAN), superando i limiti sulle distanze massime e sul massimo numero di sistemi collegabili della singola LAN in un dominio di collisione, imposti dal protocollo di accesso multiplo. 22.4
End Station End Station LLC Bridge LLC MAC MAC Relay MAC MAC LAN 1 LAN 2 22.5 I bridge possono operare tra LAN con MAC dello stesso tipo o differenti. Hanno algoritmi di instradamento semplici. Si distinguono due categorie, in base all instradamento: Transparent Bridge (IEEE 802.1D) e Source Routing Bridge. 22.6
I bridge devono Ricevere, filtrare e ritrasmettere i pacchetti Mantenere aggiornate le informazioni per le decisioni di filtraggio (tabelle di instradamento) Compiere operazioni di gestione (management) relative alle precedenti funzioni. 22.7 LLC MAC Relay Entity MAC entities (Medium access (Medium access method method dependent independent functions) functions) Phy LAN 2 Higher Layer Entities (Bridge protocol entities, Bridge Management,...) Phy LAN 1 LLC MAC entities (Medium access method dependent functions) 22.8
La IEEE ha standardizzato i bridge con lo standard 802.1D. Tali bridge sono noti anche con il nome di Transparent spanning-tree bridge Fra le caratteristiche significative di tali tipi di bridge si possono citare non richiedono una vera configurazione del database di filtraggio; sono trasparenti alle stazioni collegate alla LAN. Un altra tipologia di bridge è quella denominata source routing bridge dove i bridge da percorrere devono essere esplicitamente dichiarati. 22.9 Essendo un dispositivo di livello 2, il bridge ha capacità di instradamento ridotte, ed in particolare non è in grado di gestire la presenza di cicli (loop) che si creano quando su di una LAN è connesso più di un bridge. IEEE 802.1d prevede quindi un meccanismo per di selezione delle porte attive che elimina topologicamente gli eventuali loop, realizzando fra i bridge uno Spanning tree. 22.10
Pacc. scartato Fine No Inoltro il pacc. No Pacch. senza errori sulla porta X? Sì La porta X è nello stato di forwarding? Sì L ind. destinazione è nel filtering database? Sì L ind. destinazione è sulla LAN della porta X? Sì Learning No No Learning Inoltro il pacc. su tutte le porte, eccetto X. 22.11 Sì L ind. sorgente è nel filtering database? No Aggiorna la direzione di provenienza ed il timer associato all indirizzo registrato in tabella. Aggiunge l indirizzo sorgente al DB, associando il timer e la direzione. Fine 22.12
LAN Y Stazione B Bridge 1 t 1 t 2 t 0 t 0 Bridge 2 LAN X Stazione A 22.13 LAN 2 Bridge 1 Bridge 3 Bridge 4 LAN 5 LAN 1 Bridge 5 LAN 3 LAN 4 Bridge 2 22.14
Ad ogni bridge è associato un identificatore, costituito dal suo indirizzo di MAC (6 byte) e da un livello di priorità (2 byte). Tutte le porte del bridge hanno lo stesso indirizzo MAC. Infatti, le porte non vengono mai esplicitamente indirizzate. Per questo motivo si parla di indirizzo del bridge piuttosto che di indirizzi relativi alle sue interfacce 22.15 Ad ogni porta del bridge è assegnato un identificatore univoco. L informazione relativa all algoritmo di spanning tree è scambiata attraverso Bridge PDU (BPDU). 22.16
Il bridge con l identificatore di valore più basso è scelto come Root Bridge. Ad ogni porta di ogni bridge è associato un costo (path cost). La porta a minimo costo verso il root bridge è detta root port; il costo del percorso a costo minimo dalla root port di ogni bridge al root bridge è detto root path cost. Su ogni LAN, il bridge con il minimo root path cost è il designated bridge e la porta che lo interconnette alla LAN la designated port. 22.17 Per risolvere il problema dei loop, lo standard 802.1d individua uno spanning tree fra i bridge e le LAN ed attiva le sole porte che appartengono a tale albero. Lo spanning tree è aggiornato dinamicamente nel tempo per adattarlo ad eventuali cambiamenti topologici (guasti o modifiche nella rete). L algoritmo opera prima eleggendo un nodo di root e quindi applicando una particolare versione distribuita dell algoritmo di Bellman-Ford con il n odo di root preso come destinazione. Lo spanning tree risultante è quindi uno shortest path SPST e non un minimum weight MST. 22.18
L algoritmo opera secondo i seguenti passi: Determinazione del root bridge Determinazione della root port sugli altri bridge Determinazione della designated port su ogni LAN 22.19 Bridge ID Bridge 1 Root Path Cost BID 42, RPC 00 ID PID 01 PID 02 Cost PC 10 PC 10 LAN 1 LAN 2 PID 02, PC 10 Bridge 2 BID 97, RPC 10 PID 01 PC 05 LAN 3 PID 03 PC 05 LAN 4 PID 01, PC 05 Bridge 5 BID 83, RPC 05 PID 02, PC 05 PID 01, PC 10 Bridge 3 BID 45, RPC 10 PID 02, PC 10 PID 01, PC 05 Bridge 4 BID 57, RPC 05 PID 02, PC 05 LAN 5 22.20
Disabled (1) (2) (1) (2) (3) Listening (5) (4) Blocking (4) Learning (4) Forwarding (5) (2) 22.21 (1) a abilitata (da Management o inizializzazione (2) a disabilitata (da Management o guasto) (3) a selezionata come designated o root port (4) a selezionata come non-designated o non -root (5) Forward_Delay_Timer scaduto 22.22
Per poter mantenere l albero sempre aggiornato e corretto, il root bridge continua a mandare periodicamente (l intervallo d invio è un parametro, detto hello time, che può essere modificato; in genere vale 2 s) le BPDU. Ogni stazione aggiorna un timer, che viene azzerato ogni qualvolta si riceve una BPDU; se il valore di tale timer supera i 20 s (tipicamente, ma può essere anche diverso), la stazione presuppone che la root non sia più raggiungibile. Ogni qual volta che la root non appare più raggiungibile o il valore dei root path cost cambia, l albero viene ricalcolato e le porte possono passare da blocked a forwarding e viceversa. 22.23 In presenza di cambiamenti viene inviata una notifica di topology change, che fa cambiare la durata della validità delle informazioni nel DB da un valore tipico di 5 min a 15 s. Complessivamente ogni riconfigurazione richiede un tempo di circa 50 s (20 s di BPDU timer, 15 s in listening e 15 in learning). La creazione e l aggiornamento dei bridge richiede, specialmente in presenza di numeri elevati, lo scambio di diversi pacchetti broadcast. Ogni bridge introduce una latenza proporzionale alla lunghezza del pacchetto. 22.24
End Station End Station LLC Bridge Bridge LLC MAC Relay MAC LLC Relay MAC LLC MAC Collegamento LAN 1 punto - punto LAN 2 22.25 I bridge remoti sono particolari bridge che hanno porte adatte ad una interconnessione su scala geografica. Ad esempio, possono essere interconnessi mediante: fibra ottica (sino a 50 km nel caso FDDI) linee dedicate con velocità maggiori o uguali a 64 kbit/s (anche via satellite) fasci a microonde sino a 10 km reti Frame Relay reti a larga banda: ATM Non sono specificati nello standard, che prevede questo tipo di interconnessione solo a livello 3. 22.26
Spesso non è accettabile (specialmente in presenza di connessione in area geografica) che le linee in blocking state non portino traffico (alcuni costruttori propongono algoritmi proprietari per usare le linee in blocking state) Anche con questi algoritmi i bridge sono poco idonei a fare internetworking su scala geografica: E difficile garantire il comportamento FIFO e la non generazione dei duplicati durante le fasi di transizione dello spanning tree possono innescarsi pericolosi loop si propaga comunque il traffico di broadcast e multicast 22.27 Perché i bridge siano realmente efficaci devono: Avere prestazioni tali da non generare rallentamenti sulla rete (pacch./s) Essere posti in modo da confinare il più possibile il traffico locale su un collision domain. Essere configurati in modo che l algoritmo di spanning tree generi configurazioni efficienti. 22.28
Quali sono le funzioni di un bridge? Come avviene la fase di ricezione? Come avviene la fase di learning? Perchè occorre evitare i loop nei transparent bridge? Come opera l algoritmo di spanning tree? 22.29