Siamo giunti alla parte di networking, probabilmente la sezione di più facile fruizione in questa serie di articoli, in quanto non introduce concetti sostanzialmente nuovi rispetto a quanto siamo stati abituati ad utilizzare comunemente. Tutto sarà però scalato alle dimensioni tipiche dei datacenter, che sono giusto un pochino più ampie di una rete casalinga.
Networking
Se la legge di Moore si è applicata senza eccezione ai processori, anche la parte di telecomunicazioni non è stata da meno.
In meno di 20 anni si è passati dal terribile coassiale RG-58 a 10 Mbit (e un milioni di problemi) alle ultime connessioni in test a 100 Gbit/s in fibra ottica, con un aumento di velocità di ben 10000 volte.
Non si tratta poi di un aumento solo di banda passante, ma l’applicazione di tecnologie sempre più raffinate ha permesso di abbassare drasticamente la latenza e, nel contempo, di rendere anche le connessioni sempre più affidabili.
Situazione attuale
In questo momento le tecnologie più utilizzate per la comunicazione all’interno di un datacenter sono certamente quelle incentrate sulla tecnologia a 1 e 10 Gbit/s, con il 40 Gbit/s che sta irrompendo sulla scena.
Per la parte a 1 Gbit il cablaggio più usato è certamente l’UTP (Unshielded Twisted Pair) con connettori di tipo RJ45.
Il cablaggio di tipo UTP è disponibile in diverse categorie che possono servire differenti velocità:
Categoria | Frequenza | Velocità |
5e | 120 Mhz | fino a 1 Gb/s |
6 | 250 Mhz | fino a 10 Gb/s |
6a | 500 Mhz | fino a 10 Gb/s |
La differenza fondamentale tra le categorie 6 e 6a è che quest’ultima porta la distanza massima per il 10 Gbit/s alla pari a quella quella delle altre velocità minori ovvero di 100 metri / 330 piedi.
Parlando ulteriormente della parte relativa ai cablaggi, su velocità di 10 Gbit/s o superiori la fibra ottica spesso la fa da padrone. Nella maggior parte dei casi si usano delle fibre multimodali OM4/OM5 intestate con dei connettori di tipo LC.
I vantaggi della fibra sono ovviamente una lunghezza maggiore dei cavi, oltre a d una latenza inferiore a quella del rame. Per tratte multo lunghe (anche oltre i 40 KM) si utilizzano invece delle fibre monomodali.
Per quanto riguarda gli switch usati nei datacenter si possono trovare sostanzialmente tre tipi di connessione:
- RJ45: Classico connettore a cui tutti noi siamo abituati è lo stesso introdotto con la telefonia ISDN e lavora con 4 coppie di fili di rame. Il connettore viene direttamente intestato sul cavo.
- GBIC/SFP: questo sistema di connessione prevede che nello switch sia presente uno speciale alloggiamento dove debba essere infilato un modulo di interfaccia. Il vantaggio è che cambiando il modulo si può cambiare il tipo di cavo collegato e la velocità della porta. Lo svantaggio è che quindi occorre spendere ulteriore denaro per ogni porta dello switch per l’acquisto dell’adattatore di interfaccia. Sono chiamati GBIC/SFP gli adattatori che arrivano alla massima velocità di 1 Gbit/s. Possono terminare con dei classici RJ-45 in rame, oppure con dei moduli in fibra ottica con connettori ST, SC o LC sia monomodali sia multimodali.
- SFP+: Evoluzione dello standard SFP, arriva a velocità fino a 40 Gbit/s. Anche in questo caso sono disponibili sia connessioni in rame con RJ-45 (per il 1 Gbit/s) sia in ottico. Lo standard prevede anche una serie di cavi, noti come Twinax (ma che nulla hanno a che vedere con il vecchio sistema di cablaggio usato da IBM con OS/36 o AS/400), che sono realizzati in rame e terminano direttamente con un modulo SFP+ da entrambe le estremità.
Per quanto riguarda gli standard si trovano comunemente:
- 100 BaseT, 1000 BaseT, 10G Base-T: utilizzano tutti cavi in rame UTP di categoria crescente (5e per i primi due, 6 o 6a per l’ultimo), e connettori di tipo RJ-45
- 1000 BaseSX: Gigabit Ethernet in fibra ottica multimodale
- 1000 BaseLX: Gigabit Ethernet in fibra ottica monomodale
- 10G BaseSR: 10 Gigabit Ethernet su fibra ottica multimodale di tipo OM4/OM5 (lunghezza massima attorno agli 80 metri)
- 10G BaseLR: 10 Gigabit Ethernet su fibra ottica monomodale laser e distanze che possono arrivare fino a 25 Km
- 10G BaseELR: come la BaseLR ma con distanze fino a 40 Km
- 10G BaseKx: Permette connessioni fino a 1 metro di distanza a 10 Gbit su circuito stampato. Viene prevalentemente usata per l’interconnessione all’interno dei sistemi blade (vedi prossimo articolo)
Situazione prossima futura
Il 40 Gbit/s inizia a diffondersi. Mellanox punta particolarmente su questo standard con una serie di nuovi switch che possono essere utilizzati sia a 40 Gbit/s nativi oppure, tramite un apposito cavo Octopus, suddividendo una singola porta a 40 Gbit/s come 4 porte a 10 Gbit/s.
Per il 100 Gbit/s vi sono esperimenti ma non vi è ancora uno standard ratificato e condiviso.
CISCO vs World
E’ indiscusso che CISCO sia il brand n.1 per il networking e, per un certo periodo, è stato quasi un monopolista. Questo ha portato la società non solo a definire una serie di standard assolutamente proprietari e non interoperabili, ma anche a definire uno slang che si applica sostanzialmente solo al proprio mondo ed è diverso da quello degli altri produttori.
E’ bene quindi tenere a mente la cosa dato che spesso si possono creare delle incomprensioni. Si riporterà quindi una tabellina con i termini dove sia più facile fare confusione parlando con tecnici Cisco e di altri brand.
CISCO | Altri Brand |
Access Port | Untagged Port |
Trunk | Tagged Port |
EtherChannel, PortChannel | Access Group, LACP Trunk, Port Group |
Nonostante comunque Cisco continui a disporre di una pletora di protocolli proprietari è buona norma cercare sempre di utilizzare gli standard fissati dal IEEE così da garantire in ogni momento l’interoperabilità con prodotti di diversi brand.
Managed Switch
Al contrario rispetto a quello a cui molti lettori sono abituati all’interno delle proprie piccole LAN, in un datacenter tutti gli switch sono di tipo managed. Questo vuol dire non solo che gli stessi richiedono di essere configurati opportunamente per funzionare al meglio, ma anche che devono supportare una serie di tecnologie basilari che sono necessarie in questo ambiente.
VLAN
E’ la base per riuscire a creare degli ambienti complessi. Una VLAN è un modo per permettere di suddividere una rete in sottoreti separate, ognuna con il proprio broadcast domain. Al contrario di quando si mettono più reti IP in overlap tra loro sullo stesso cablaggio fisico (cosa orribile ma che si fa spesso su reti di piccole dimensioni), utilizzando le VLAN si avrà:
- Broadcast Domain separati: ogni indirizzo di broadcast di una rete IP viene mappato sul MAC FF:FF:FF:FF:FF:FF. Quindi avendo più reti IP in overlap i broadcast arriveranno comunque a tutti indipendentemente dall’indirizzo. Con le VLAN l’effetto sarà compartimentato alla VLAN di cui fa parte quella specifica macchina
- Sicurezza: Se ben implementato (anche se spessissimo non lo è)questo meccanismo non permette ad alcuna macchina di passare da una VLAN all’altra.
- Flessibilità: una macchina può essere spostata tra diverse VLAN con una semplice riconfigurazione del router. Inoltre questo meccanismo è vitale nel caso si utilizzino sistemi di virtualizzazione dato che il meccanismo di gestione delle reti virtuali utilizza pesantemente questa tecnologia.
Esistono due meccanismi principali per gestire le VLAN: il protocollo proprietario CISCO, noto come ISL e quello standard IEEE che prende il nome di 802.1Q.
802.1Q prevede che vengano aggiunti 4 byte nell’header di livello 2 della trama ethernet. 12 bit sono riservati per l’identificativo della VLAN che quindi permette di avere fino a 4094 VLAN diverse (0,1 sono riservati).
Sono introdotti due concetti piuttosto banali:
Untagged
Se una porta è definita untagged su una VLAN i pacchetti uscenti da quella porta (o entranti da essa) NON disporranno dei campi 802.1Q nell’header. La porta sarà staticamente assegnata a quella VLAN. Lo switch provvederà ad aggiungere in autonomia i campi 802.1Q ai frame quando questi dovranno essere inoltrati tra due differenti macchine. Una porta Untagged può far parte di una sola VLAN.
Si faccia un esempio di due macchine (A e B) collegate alle porte untagged 1 e 2 di uno switch e facenti parte della VLAN 100. Quando A invia un pacchetto a B esso non avrà un campo 802.1Q. Il pacchetto arriva alla porta 1 dello switch che vi aggiungerà il campo 802.1Q comprensivo dell’ID 100. Il pacchetto verrà poi girato alla macchina B seguendo le normali logiche di switching ethernet. Al momento in cui dovrà uscire dalla porta 2 per andare verso la macchina B, verrà verificato che l’ID della VLAN sia lo stesso, e poi il campo 802.1Q sarà rimosso.
Tagged
Una porta tagged prevede che i pacchetti che fruiscono attraverso di essa debbano avere il campo 802.1Q. Una porta di tipo Tagged può far parte di più VLAN contemporaneamente.
Le porte Tagged vengono utilizzate sia per permettere di portare diverse VLAN tra diversi switch, ma anche per collegare, per esempio, dei server con a bordo degli hypervisor e che utilizzino diversi virtual switch per implementare sotto reti virtuali differenti.
Port Group
Al fine di poter sia di massimizzare la banda passante tra vari switch, sia per gestire la necessaria ridondanza, è possibile giuntare logicamente più porte ethernet tra loro in modo che appaiano come una sola porta.
Questo può essere fatto sia con una configurazione statica, sia con un protocollo proprietario CISCO (PAgP), sia con il protocollo dinamico standard IEEE (LACP). Quest’ultimo ha l’immenso vantaggio di essere totalmente dinamico e di permettere la creazione di port Group anche tra switch di produttori diversi.
Spanning Tree
La rete ethernet nasce come rete a bus su cablaggio coassiale. Anche se ora si è evoluta e dispone di una topologia stellare, a livello logico il protocollo CSMA/CD su cui si basa continua a ragionare come se si disponesse di un bus lineare.
Questo comporta il fatto che uno degli errori più gravi e comuni sia quello di creare un loop, cosa che la rete Ethernet aborra.
Si pensi ad una rete composta da tra switch, 1, 2 e 3. Per funzionare gli switch devono essere collegati in modo che 1 sia collegato con 2 e 2 sia collegato con 3. Se si prova a creare un collegamento anche tra lo switch 3 e lo switch 1 si creerà un loop, gli switch inizieranno ad avere comportamenti erratici e, in generale, tutta la rete smetterà di funzionare a dovere.
Purtroppo è spesso necessario, in datacenter, creare dei loop dato che non si vuole avere dei single point of failure e si preferisce avere la possibilità di disporre di diversi percorsi che si possano sfruttare. Per riuscire a coniugare le due esigenze si è creato il protocollo STP (e le sue varianti). Il protocollo è in grado di rilevare i loop e porre in standby i collegamenti che li creano. In questo modo si possono avere più collegamenti all’interno della LAN senza che vi siano problemi.
Unico problema di STP è il cosiddetto “tempo di convergenza” ovvero il tempo di reazione del protocollo ad un cambiamento della topologia della rete, sia in caso di aggiunta di un collegamento sia in caso di rimozione di uno di questi. Ogni produttore ha quindi sviluppato la propria variante proprietaria che spaccia per la più efficiente possibile, ovviamente a patto che tutti gli apparati siano dello stesso brand. Per fortuna esiste anche RSTP che oramai è condiviso da tutti i produttori e che quindi è da considerarsi la scelta obbligata sia rispetto al protocollo standard sia alle varianti proprietarie.
Esiste un protocollo fichissimo presentato da IEEE che prende il nome di TRILL e che dovrebbe superare, insieme alle prossime estensioni Ethernet tutte le attuali limitazioni permettendo il multipath nativo su Ethernet. Se ne parla da un po’, speriamo diventi comune in fretta.
Tipi di switch
Ovviamente non tutti gli switch sono uguali. Ci sono ventordicimila parametri che differenziano modelli anche molto simili tra loro. Alcune caratteristiche sono fondamentali, altre interessanti, altre servono solo a fare cumulo all’interno della brochure elaborata dal marketing.
Vediamo quindi di capire cosa c’è in giro, senza fossilizzarsi su nessun vendor, e che tipi di apparati possiamo incontrare.
Partiamo in primis dalle tipologie.
Switch Managed 1Gbit
Si tratta di prodotti di fascia relativamente bassa. Dispongono di un certo numero di porte in grado di funzionare a 10/100/1000 Mbit, delle funzioni base degli switch managed. All’interno di questa categoria troviamo un ampio ventaglio di prodotti. Le caratteristiche più importanti da controllare sono:
- Velocità del backplane: più è rapido maggiore sarà la banda passante disponibile a tutte le porte.
- Numero di pacchetti processati al secondo: più il valore è elevato e meno latenza introdurrà lo switch nel processare le trame ethernet in passaggio
- Alimentatori: L’alimentatore esterno è da evitarsi come la peste, un solo alimentatore va bene, doppio alimentatore ridondato è un must nelle situazioni in cui sia necessario minimizzare il downtime.
- Porte GBIC o dual personality: Alcuni switch dispongono di due o quattro porte in dual personality. Vuol dire che è possibile utilizzare o la porta con la presa per RJ-45 oppure un modulo GBIC/SFP per la connessione di cavi in fibra ottica. I prodotti migliori offrono anche 2/4 porte con velocità fino a 10 Gbit/s
Tendenzialmente in questa fascia di switch si trovano prodotti da distribuzione o di tipo top-rack (si vedrà poi)
Switch Stackable
Sono switch con le stesse caratteristiche dei precedenti ma con in più la possibilità di collegare due o più switch tramite un cavo di backplane o più link in fibra ottica a 10 Gbit/s (come Cisco Nexus o gli switch di Juniper). Una volta collegati e posti in modalità stack, tutti gli switch facenti parte dello stack (o cluster) si comporteranno come un’unica identità logica. Condivideranno quindi un’unica configurazione, si potranno distribuire i portchannel su più apparati in modo da gestire la ridondanza. In questa configurazione uno switch funzionerà in modalità master mentre gli altri in modalità slave. In caso di rottura del master uno degli slave prenderà il suo posto.
Switch modulari
Sono switch di fascia molto elevata. Dispongono di uno chassis con due o più alimentatori ridondati e di una o più porte per la parte di management.
A questi switch vengono poi aggiunti uno più moduli. Questi moduli condividono il backplane dello switch e dispongono fisicamente delle porte necessarie per il collegamento degli altri apparati. Quindi se servono porte SFP+ a 10 Gbit si prenderà il modulo opportuno, se si vorranno un elevato numero di porte RJ-45 si prenderà un modulo ad alta densità e via così. Il risultato sarà un unico switch che potrà essere configurato via via secondo i desideri del cliente.
Tutti gli switch di fascia medio/alta sono disponibili anche con funzioni di Layer 3 (tipicamente quindi IP). Gli switch possono quindi fare da gateway tra le varie VLAN e incorporano anche sofisticate funzioni di routing, come il supporto a protocolli RIP e OSPF. Tendenzialmente in una rete solo alcuni switch dispongono delle funzioni di Layer 3 in modo da non rendere troppo complesso il routing.
Topologia
Tipicamente un datacenter, almeno dal punto di vista fisico, utilizza una topologia a 2 o 3 layer.
In testa troviamo i core switch. Si tratta di apparati di alto livello, tipicamente modulari, con un backplane ad alta velocità, porte a 10 Gbit/s in fibra per la distribuzione delle trame agli altri apparati.
Solitamente ai core switch sono collegati solo altri switch o i router per le connessioni WAN ma non server o computer.
Il secondo layer (opzionale) è formato dagli switch di aggregazione. Essi fanno da ponte tra i core switch e gli switch di distribuzione. E’ un livello usato o in reti che si estendono su più edifici (tipicamente un campus) o più sale.
L’ultimo livello è composto dagli switch di distribuzione ovvero quelli che poi connettono direttamente i computer, client o server che siano. In un datacenter questi switch sono i cosiddetti top rack, ovvero gli switch che sono installati in testa ad ogni armadio per collegare gli apparati in essi contenuti.
Tra un layer e l’altro si utilizzeranno Port Group di fibre ottiche ad alta velocità così da creare dei backbone che non diventino dei colli di bottiglia. Tali Port Group saranno anche tipicamente configurati in Tagged mode così da distribuire le VLAN fra tutti gli switch facenti parte della rete.
Nel caso il datacenter ospiti anche dei sistemi di virtualizzazione si aggiungerà un ulteriore layer dove saranno collegati gli switch virtuali, come i bridge device di Linux, i virtual switch di VMWare, gli Open Virtual Switch o equivalenti.
In questo caso agli switch di distribuzione saranno collegati i server con l’Hypervisor tramite dei Port Group Tagged che porteranno le VLAN fino alle loro controparti virtuali.
iSCSI
Nel caso si utilizzi uno storage iSCSI si potranno usare o degli switch dedicati, o in casi di apparati sufficientemente potenti, delle VLAN dedicate per il trasporto della SAN.
Molti switch di fascia alta implementano una serie di estensioni alla rete Ethernet note come DCB (in particolare PFC). Nate specialmente per il protocollo FCoE e per implementare una lossless Ethernet hanno dimostrato più volte di essere efficaci anche per le connessioni iSCSI.
Conviene quindi attivarle se possibile e, nel contempo, aumentare al massimo la grandezza della trama Ethernet utilizzando i jumbo frame.
Usando iSCSI non conviene utilizzare meccanismi di Port Group nel collegamento sia con i server sia con gli storage (non ci sono problemi nell’abilitare i Port Group per il backbone tra gli switch) in quanto il protocollo iSCSI gestisce nativamente il multipath e riesce quindi a bilanciare in maniera egregia le connessioni attraverso tutti i path possibili.
Datacenter for Dummies – Questo articolo è parte di una serie:
- Datacenter for Dummies: Le SAN
- Datacenter for Dummies: Gli Storage
- Datacenter for Dummies: Networking
Tutte le foto: ©Google / via
Google Data Center, Lynhaven Drive, Lenoir, NC