Link Aggregation

Qualche giorno fa, parlando di SAN e NAS, abbiamo sfiorato l’argomento ether-channel e mi ero ripromesso di scrivere due righe in merito. In questa sede affrontiamo il concetto di aggregazione di link senza considerare un protocollo in particolare, ciò che si vuole ottenere è fornire una spiegazione semplice a questa tecnologia.

Partiamo dalle basi certe: quando interconnetto un server con una NIC gigabit ethernet ad una porta switch gigabit ethernet ottengo una connessione gigabit dedicata, ovvero la banda massima ideale a disposizione del server è 1 Gbit/s. Fino a qui credo non servano spiegazioni ulteriori.

Supponiamo ora di avere la necessità di maggiore banda per erogare i servizi presenti sul server. Sono certo che una buona fetta di personale ICT si limiterebbe ad aggiungere una NIC gigabit ethernet con un nuovo IP su cui esporre i servizi attivi sul server in modo da effettuare una sorta di bilanciamento di carico tre le NIC smistando di fatto il traffico su due canali gigabit. Inutile dire che questo metodo funziona fino ad un certo punto, inoltre non è certo una soluzione scalabile.

Quello che è -IMHO – opportuno fare è aggiungere una NIC gigabit ethernet al server e configurarla in teaming con la NIC già presente (funzione disponibile ormai in quasi tutti i sistemi entry-level). Similmente, lato switch, si utilizzeranno due porte gigabit ethernet configurate in ether-channel con uno dei protocolli che l’apparato supporto, solitamente si utilizza il protocollo LACP.

Quello che si ottiene non è un canale 2 Gbit/s, bensì un canale “unico” composto da due link a 1 Gbit/s. Cosa significa? Significa che da punto di vista del client il server risponderà a un solo indirizzo IP assegnato ad una NIC “virtuale” (quella che rappresenta la configurazione di teaming) e che tramite il bilanciamento dato dal protocollo utilizzato i traffico verrà automaticamente smistato e bilanciato tra i due link gigabit. Inoltre la ridondanza di link è garantita, se uno dei due link subisce un fault l’altro continua a funzionare.

Similmente a quanto avviene per i server è possibile costruire link aggregati anche tra apparati di rete in modo da inspessire il canale di comunicazione tra due switch, ad esempio.

Una buona infarinatura in merito all’argomento è disponibile su Wikipedia (en): http://en.wikipedia.org/wiki/Link_aggregation.


This entry was posted in: ict. Bookmark the ➜ permalink.

4 thoughts on “Link Aggregation

  1. post molto interessante!!
    2 domande:
    l’aggregazione fatta in vmware/esxi agganciando più schede di rete allo switch “virtuale” equivale a quanto descritto nell’articolo? cioè in modo visuale si crea l’aggregazione?
    qualche dritta su come realizzare l’aggregazione in linux?

    saluti, Vanni Zatta

  2. Ciao Vanni, ti ringrazio per l’apprezzamento.

    In ambiente VMware, quando dai ad un vSwitch più di un uplink fisico, stai di fatto creando già un teaming, sta a te decidere come utilizzarlo. Di base VMware bilancia il traffico sul teaming “smistando” le VMs tra le NIC del tuo vSwitch restituendoti una sorta di bilanciamento e failover (se una NIC muore tutte le VMs vanno su quella rimasta attiva).

    Per quanto riguarda Linux trovi fior di howto su come configurare due NIC fisiche in Bonding. Te ne linko uno secondo me ben fatto: http://www.slacky.eu/wikislack/index.php?title=Linux_Bonding_Mini-Howto.

  3. Ciao, dal tuo articolo ho capito perfettamente come funziona il link aggregation :-)!!! Su wikipedia c’è una pagina lunga lunga ma non si capisce molto alla fine del reale funzionamento… Quando fai l’esempio dell’unione di due NIC da 1 Gb dici che in realtà non si può parlare di 2 Gb (a volte ho trovato questa notazione però), quindi immagino si possa usare la notazione 1+1. Ti volevo fare una domanda. Nel caso di un server con due NIC, ognuna collegata ad uno switch separato (1 NIC ad uno switch, l’altra al secondo switch), è possibile fare link aggregation??? Perché penso alla struttura di un blade, le cui lame hanno di default 2 NIC che puntano a 2 switch differenti. Grazie!!

    Matteo

    • Ciao Matteo, innanzi tutto faccio una precisazione: esistono molti protocolli per gestire l’EtherChanneling, il mio articolo si limita a presentarne uno (LACP) che, pur funzionando benissimo, riporta dei limiti che in parte altri protocolli “superano”.

      Veniamo alla tua domanda: la risposta è “no”, non puoi configura LACP tra due porte di switch separati salvo disporre di tecnologie di stacking degli switch. Ad ogni modo anche in un contesto Blade valgono i principi del teaming.

      Inoltre oggi esistono serie di switch (non faccio nomi per non fare torti a nessuno) che supportano lo stacking tramite “semplici” uplink in fibra TenGigabit aumentando le possibilità di implementare infrastrutture di rete ridondate.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>