Progetto di reti locali/Link aggregation – IEEE 802.3ad
Il link aggregation, standardizzato come IEEE 802.3ad, è normalmente utilizzato tra i bridge nel backbone o tra un bridge e un server per aggregare più link fisici (solitamente 2-4) in un singolo canale logico al fine di:
- incrementare la capacità di banda del link: il traffico viene distribuito tra i link nell'aggregato;
- migliorare la resilienza, ovvero la tolleranza ai guasti: in caso di guasto di uno dei link nell'aggregato:
- la riduzione della larghezza di banda del canale logico è lieve;
- non è necessario attendere i tempi di convergenza dello STP, che vede il canale logico come un singolo link di capacità maggiore → cambia solo il costo del link.
Tutti i link fisici aggregati nello stesso gruppo devono:
- essere punto-punto tra gli stessi due nodi;
- essere full duplex;
- avere la stessa velocità.
LACP
modificaIl Link Aggregation Control Protocol (LACP) serve per la configurazione automatica degli aggregati:
- prima di tutto le porte da aggregare devono essere impostate manualmente sui bridge dall'amministratore di rete;
- prima di attivare le porte aggregate, il LACP è in grado automaticamente di riconoscere il numero di link disponibili nel canale, e di verificare se la connessione con l'altra parte è corretta (in particolare se tutti i link stanno tra gli stessi bridge);
- vengono scambiati periodicamente dei messaggi chiamati LACPDU per rilevare eventuali guasti dei link → la convergenza è rapida (solitamente meno di 1 s) in caso di guasto.
Ogni aggregato è identificato da un Link Aggregation Group Identifier (LAG ID).
Distribuzione delle trame sulle porte aggregate
modificaQuando arriva una trama, su quale dei link all'interno di un aggregato va inviata? Lo standard, pur suggerendo dei possibili criteri di distribuzione delle trame sulle porte, non definisce un algoritmo per distribuire le trame → bridge di fornitori diversi possono utilizzare algoritmi diversi di distribuzione delle trame.
Round robin
modificaLa soluzione più semplice consiste nell'inoltrare la trama in arrivo sulla porta libera successiva a quella su cui è stata inoltrata la trama precedente.
Possono nascere dei problemi di riordinamento: una trama più piccola che arriva al bridge subito dopo una trama più grande può terminare di essere ricevuta dall'altro bridge prima della trama più grande → l'ordine delle trame in uscita dall'altro bridge non è corretto perché la trama più piccola ha "superato" quella più grande:
In base alle conversazioni
modificaIl problema del riordinamento delle trame si può risolvere inviando sullo stesso link le trame appartenenti alla stessa conversazione. La soluzione più comune per individuare le trame appartenenti alla stessa conversazione si basa sulle coppie indirizzo MAC sorgente e indirizzo MAC di destinazione.
L'individuazione delle conversazioni in base agli indirizzi MAC però in alcuni casi non è efficace in termini di bilanciamento del carico dei link:
- due soli host comunicano attraverso l'aggregato → la conversazione è unica e può sfruttare la capacità di un solo link fisico;
- l'aggregato collega due router → le conversazioni non sono più riconoscibili perché i router cambiano gli indirizzi MAC delle trame.
Configurazioni particolari
modificaSe due nodi sono collegati da più aggregati, solo un aggregato sarà attivo a causa dello STP: lo STP disabiliterà l'altro aggregato perché vede ogni aggregato come un singolo link di costo pari alla somma dei costi dei link nell'aggregato.
Tramite un'appropriata impostazione delle priorità dei link, è possibile una configurazione con N link aggregati di cui solo M < N attivi → gli altri N − M link sono stand-by link: in caso di guasto di un link attivo, uno stand-by link si attiva evitando di ridurre la larghezza di banda disponibile nel canale logico.
La funzione Virtual Switching System proprietaria di Cisco permette di superare il vincolo di avere due soli nodi alle estremità degli aggregati: un bridge può essere collegato a due bridge che lo STP vede come un singolo bridge logico, così il traffico può essere distribuito su entrambi i link aggregati.