Fibre Channel over Ethernet e Categoria:Personalità del settore dei trasporti: differenze tra le pagine

(Differenze fra le pagine)
Contenuto cancellato Contenuto aggiunto
Abisys (discussione | contributi)
frame FIP
 
TXiKiBoT (discussione | contributi)
 
Riga 1:
Categoria che raggruppa le persone la cui attività principale è collegata al mondo dei [[trasporti]]
'''Fibre Channel over Ethernet''' ('''FCoE''') è uno standard in via di definizione per mappare i [[Data frame|frame]] [[Fibre Channel]] su una rete [[IEEE 802.3]] [[full-duplex]]. In questo modo è possibile utilizzare le connessioni [[10 gigabit Ethernet]] per il trasporto dei pacchetti Fibre Channel senza modificare il protocollo e le funzionalità Fibre Channel. La specifica è supportata dai principali produttori di [[hardware]] di rete e di [[storage]] ed è destinato a diventare il protocollo su cui si baseranno le future architetture ad alta densità per i [[server]].
 
[[Categoria:Trasporto]]
== Premesse storiche ==
[[Categoria:Persone per tema|Trasporti]]
[[Immagine:Server without IO consolidation.png|thumb|right|250px|Server senza l'I/O consolidation]]
[[Ethernet]] è di gran lunga il [[protocollo (informatica)|protocollo]] più diffuso per le connessioni dati fra [[host]].
In un [[centro elaborazione dati]] alle connessioni ethernet si aggiungono molto spesso anche le connessioni [[Fibre Channel]] oltre ad alcune connessioni proprietarie in ambito [[High Performance Computing|HPC]]. In un server tradizionale le connessioni ethernet sono utilizzate per la trasmissione di dati da e verso altri server e/o client, mentre le connessioni Fibre Channel sono utilizzate per lo scambio di dati con la [[Storage Area Network]]. Un server può quindi presentare sia interfacce di rete ethernet per il trasporto del traffico [[Internet Protocol|IP]] che interfacce Fibre Channel per il trasporto del traffico dati verso la SAN. Le connessioni ethernet sono gestite da uno [[switch]] ethernet con connessioni solitamente a 1 [[Gigabit|Gb]]/s, mentre quelle Fibre Channel a un [[Fibre Channel switch]] con connessioni a 2 o 4 Gb/s (sono disponibili anche connessioni a 8Gb/s su alcuni nuovi apparati ma sono pochi i server dotati di porte a 8Gb/s e probabilmente l'introduzione di FCoE contrasterà il decollo di questa tecnologia anche se la [[Fibre Channel Industry Association]] (FCIA) nelle sue presentazioni propone entrambe le tecnologie<ref>{{en}}[http://www.fibrechannel.org/NEWS/fcia090406.html FCIA Showcases Fibre Channel Leadership at Storage Networking World with 8GFC and Fibre Channel over Ethernet (FCoE) Demonstrations]</ref>).
 
[[en:Category:People in transport]]
=== Tipologie di traffico dati ===
[[fa:رده:افراد در ترابری]]
All'interno di un [[Centro Elaborazione Dati|CED]] si possono trovare essenzialmente tre tipologie di traffico dati:
[[fr:Catégorie:Personnalité des transports]]
* [[LAN]]
* [[Inter-process communication|IPC]]
* Fibre Channel
Vi è, però, una sentita necessità di consolidamento in un'unica infrastruttura sia per semplificare il cablaggio sia per ottimizzare i costi dell'hardware e i costi di gestione pur garantendo le specificità e peculiarità delle attuali tecnologie<ref name=FCIA>{{en}}{{pdf}}[http://www.fibrechannel.org/OVERVIEW/FCIA_SNW_FCoE_WP_Final.pdf Fibre Channel Industry Association (FCIA) paper on FCoE]</ref><ref name=Gai1>{{en}}{{cita libro | cognome=Gai | nome=Silvano | titolo=Data Center Networks and Fibre Channel over Ethernet (FCoE)| editore=[[Lulu.com]] | città=California (USA) | anno=aprile 2008| url=http://www.lulu.com/content/2123054 | id=ISBN 978-1-4357-1424-3 | capitolo=I/O Consolidation in the Data Center}}</ref><ref name=California3>{{en}}{{cita libro | cognome=Gai | nome=Silvano | titolo=Project California: a Data Center Virtualization Server - UCS (Unified Computing System)| editore=[[Lulu.com]] | città=California (USA) | anno=aprile 2009| url=http://www.lulu.com/content/6579826 | id=ISBN 978-0-557-05739-9 | capitolo=California Enabling Technologies}}</ref>.
 
==== LAN ====
Il classico traffico [[Local Area Network|LAN]], che opera su [[IPv4]] e [[IPv6]], deve continuare ad utilizzare la rete ethernet in modo nativo in quanto gli investimenti fatti in questi ultimi tre decenni sono troppo ingenti per pensare di passare ad una tecnologia alternativa. Questo traffico dati generalmente non è sensibile alla [[latenza]] ed è in grado di recuperare in modo efficiente la perdita di uno o più [[Commutazione di pacchetto|pacchetti]]<ref name=Gai1/>.
 
==== IPC ====
Il traffico per la [[comunicazione tra processi]] (IPC) in un [[computer cluster]] è caratterizzato da piccoli pacchetti di segnalazione e sincronizzazione solitamente molto sensibili alla [[latenza]] e pacchetti di grandi dimensioni per la sincronizzazione o il trasferimento di grandi quantità di dati fra un sistema e l'altro. Il [[Clustered file system]], il cluster di [[Relational database management system|database]] (es.: [[Oracle]] RAC) e sistemi di gestione di [[Macchina virtuale|macchine virtuali]] (es.: [[Vmware Virtual Infrastructure Manager]] e [[Hyper-V]]) sono esempi di computer cluster. Tutti questi sistemi di cluster hanno alla base anche uno storage condiviso che molto spesso opera attraverso connessioni Fibre Channel<ref name=Gai1/>.
 
==== Fibre Channel ====
Fibre Channel è diventato il protocollo più utilizzato per la connettività dedicata ai sistemi [[storage]] nei CED e una sua sostituzione con un altro protocollo che non gestisce lo [[zoning]], come ad esempio [[iSCSI]], creerebbe notevoli problematiche e pregiudicherebbe grandi investimenti effettuati<ref name=Gai1/>.
{{-}}
 
=== 10 gigabit Ethernet ===
[[Immagine:Server with IO consolidation.png|thumb|right|250px|Server con l'I/O consolidation]]
L'avvento delle tecnologie di trasmissione a [[10 gigabit Ethernet]] permettono di disporre di una banda sufficiente per trasportare contemporaneamente su un'unica connessione ridondata sia il traffico IP che quello Fibre Channel. Sfortunatamente, però, ethernet ed IP sono protocolli ''lossy'' ossia tollerano una perdita di un pacchetto e prevedono dei meccanismi rapidi di ritrasmissione mentre il protocollo [[Small Computer System Interface|SCSI]] trasportato dai pacchetti Fibre Channel non permette il recupero di un singolo pacchetto e richiede una completa rinegoziazione della connessione operazione che, oltre ad essere molto onerosa in termini di tempo, può comportare anche degli errori a livello applicativo. SCSI, infatti, è stato pensato come un protocollo adatto ad operare su brevissime distanze (pochi metri) e su connessioni sicure<ref name=Gai2>{{en}}{{cita libro | cognome=Gai | nome=Silvano | titolo=Data Center Networks and Fibre Channel over Ethernet (FCoE)| editore=[[Lulu.com]] | città=California (USA) | anno=aprile 2008| url=http://www.lulu.com/content/2123054 | id=ISBN 978-1-4357-1424-3 | capitolo=Enabling technologies}}</ref>.
 
==== Lossless ethernet ====
Per garantire una connessione lossless, Frame Relay, utilizza un sistema a credit Bufer-to-Buffer (B2B) in cui in fase di inizializzazione le due estremità di un collegamento si scambiano le informazioni relative alla configurazione dei [[buffer (informatica)|buffer]]. Uno scambio di dati avviene solo se è disponibile almeno un buffer libero. In questo modo si può garantire un livello di sicurezza di trasmissione adatto a trasmettere pacchetti SCSI<ref name=Gai2/>.
 
Ethernet non è stato pensato come protocollo lossless e prevede lo scarto di un pacchetto in questi casi:
* Frame error: ossia ''errore di trasmissione''. Facilmente eliminabile riducendolo a tassi insignificanti all'interno di un CED grazie alle moderne tecnologie di cablaggio.
* Collision: Ethernet è un protocollo che ammette la ''collisione''. Con i moderni switch e le connessioni [[full-duplex]] non esiste la possibilità di collisione fra due trasmissioni.
* Congestion: La ''congestione'' avviene quando si verifica un buffer overflow, ossia quando non è possibile inviare su una linea tutti i pacchetti che si hanno in ingresso in quanto la velocità di trasmissione risulta inferiore alla velocità con cui i pacchetti sono ricevuti. Ethernet non supporta un meccanismo a credit come si ha per Fibre Channel ma ha uno strumento di controllo di flusso che permette di evitare le congestioni: il pacchetto PAUSE.
{{-}}
 
===== PAUSE =====
[[Immagine:Ethernet Pause.png|300px|right]]
Il [[data frame|frame]] PAUSE è utilizzato per richiedere la sospensione della trasmissione di pacchetti permettendo, così, l'implementazione di un controllo di flusso che può evitare la congestione. Il frame PAUSE è un frame standard ethernet senza tag ossia non appartenente ad alcuna [[VLAN|Vlan]]. Il frame opera, quindi, sul collegamento sospendendo il traffico di tutte le VLan<ref name=Gai2/>.
 
Il frame (come si può vedere nell'illustrazione qui a fianco) è così composto
* Byte 1-6: [[Indirizzo MAC]] di destinazione <tt>01:80:C2:00:00:01</tt>
* Byte 7-12: Indirizzo MAC di della sorgente
* Byte 13-14: Ethertype=<tt>0x8808</tt> tipo di pacchetto ethernet
* Byte 15-16: OpCode=<tt>0x0001</tt>
* Byte 17-18: Pause Time. Durata della pausa richiesta in ''Pause Quanta''. Un Pause Quanta è il tempo necessario a trasmettere 512 bit, quindi, dipende dalla velocità di trasmissione.
* Byte 19-60: Padding (riempimento) di 42 byte.
* Byte 61-64: CRC codice di controllo del frame
{{-}}
 
===== Priority Flow Control =====
[[Immagine:Ethernet PFC.png|300px|right]]
Per rendere più efficiente il controllo di flusso, invece del frame PAUSE, [[Cisco Systems|Cisco]] ha proposto l'utilizzo del frame Priority Flow Control (PFC) che definisce un Pause Quanta per ciascuna delle 8 code definite dal protocollo [[IEEE 802.1Q]] tramite il campo ''user priority'' definito dal protocollo [[IEEE 802.1p]]<ref name=Gai2/>.
 
Il frame (come si può vedere nell'illustrazione qui a fianco) è così composto<ref>{{en}}{{pdf}}[http://www.ieee802.org/1/files/public/docs2007/new-cm-barrass-pause-proposal.pdf Definition for new PAUSE function]</ref>:
* Byte 1-6: [[Indirizzo MAC]] di destinazione <tt>01:80:C2:00:00:01</tt>
* Byte 7-12: Indirizzo MAC di della sorgente
* Byte 13-14: Ethertype=<tt>0x8808</tt> tipo di pacchetto ethernet
* Byte 15-16: OpCode=<tt>0x0101</tt> (unico tipo ammesso)
* Byte 17-18: Class enable vector, un vettore che indica se il valore Time di ciascuna classe è valido o meno. Il byte più significativo è posto a 0 mentre i bit di quello meno significativo sono posti a 1 se il relativo Time <tt>n</tt> è valido, altrimenti sono posti a 0.
* Byte 19-20: Time class 0. Equivalente del Pause Time ma con riferimento alla priority 0.
* Byte 21-22: Time class 1. Equivalente del Pause Time ma con riferimento alla priority 1.
* Byte 23-24: Time class 2. Equivalente del Pause Time ma con riferimento alla priority 2.
* Byte 25-26: Time class 3. Equivalente del Pause Time ma con riferimento alla priority 3.
* Byte 27-28: Time class 4. Equivalente del Pause Time ma con riferimento alla priority 4.
* Byte 29-30: Time class 5. Equivalente del Pause Time ma con riferimento alla priority 5.
* Byte 31-32: Time class 6. Equivalente del Pause Time ma con riferimento alla priority 6.
* Byte 33-34: Time class 7. Equivalente del Pause Time ma con riferimento alla priority 7.
* Byte 35-60: Padding (riempimento) di 26 byte.
* Byte 61-64: CRC codice di controllo del frame
{{-}}
 
===== Vantaggi e svantaggi del lossless ethernet =====
Non è molto diffusa l'implementazione del frame PAUSE, ne tanto meno la sua evoluzione (PFC) proposta da Cisco, poiché gli standard IEEE definiscono il meccanismo di base ma non in modo particolareggiato l'intero meccanismo e lasciano la strada aperta a diverse implementazioni con la conseguente difficoltà di standardizzazione fra diversi produttori<ref name=Gai1/><ref name=Gai2/>.
 
L'adozione su una rete ampia che vada oltre quella specifica e dedicata del CED creerebbe, inoltre, delle grandi problematiche di gestione e causerebbero un notevole aumento di delay di trasmissione che creerebbero notevoli problemi a molti protocolli. Si potrebbe arrivare anche a situazioni limite di blocco di una rete dovuto ad una richiesta circolare di buffer [[deadlock]].
 
Per poter trasportare in modo nativo il traffico di storage, ossia il protocollo SCSI, come si è detto è indispensabile evitare la perdita di pacchetti dovuto a problemi di congestione, inoltre, protocolli come NFS potrebbero trarne vantaggio mentre più in generale il protocollo [[TCP]] ha un meccanismo di recupero dei pacchetti persi molto efficiente e a sua volta utilizza lo scarto (drop) dei pacchetti per controllare a livello più alto la congestione.
 
===== Congestion Notification =====
Per armonizzare queste differenze fra diversi produttori e gestire in modo efficiente la congestione è stato proposto il protocollo 802.1Qau<ref>{{en}}[http://www.ieee802.org/1/pages/802.1au.html 802.1Qau - Congestion Notification]]</ref>. Il protocollo CN permetterà funzionalità aggiuntive su una infrastruttura che implementa il controllo di flusso basato sulle classi IEEE 802.1p Class Based Flow Control (CBFC).
 
=== Trasporto di IP su Fibre Channel ===
In passato ci si è concentrati molto sul trasporto di [[Internet Protocol|IP]] sull'infrastruttura Fibre Channel ma la diffusione della rete ethernet e le considerazioni sopra riportate hanno decretato l'abbandono, almeno commerciale, di queste tecnologie. Queste sono le principali [[Request for comments|RFC]] proposte per il trasporto del traffico IP su Fibre Channel:
* {{en}}RFC 2625 - IP and ARP over Fibre Channel - Giugno 1999 - Rimpiazzata da RFC 4338
* {{en}}RFC 3831 - Transmission of IPv6 Packets over Fibre Channel - Luglio 2004 - Rimpiazzata da RFC 4338
* {{en}}RFC 4338 - Transmission of IPv6, IPv4, and Address Resolution Protocol (ARP) Packets over Fibre Channel - Gennaio 2006 - Modificata in parte da RFC 5994
* {{en}}RFC 5994 - IANA Allocation Guidelines for the Address Resolution Protocol (ARP) - Aprile 2009
 
== FCoE ==
[[Immagine:IO consolidation with FCoE.png|right|400px]]
FCoE è un nuovo standard che è stato proposto nell'aprile [[2007]] dal gruppo di lavoro FC-BB-5 dell'[[INCITS]] T11<ref>{{en}}{{pdf}}[http://www.t10.org/ftp/t11/document.07/07-196v1.pdf Project Proposal For A New INCITS Standard Fibre Channel – Backbone - 5 (FC-BB-5) T11/07-196v1]</ref>.
 
L'idea alla base di questa proposta è molto semplice: realizzare una convergenze delle connessioni dati trasportando ciascun pacchetto Fibre Channel all'interno di un pacchetto ethernet.
 
=== FCoE o FCoCEE ===
Entrambi i termini sono corretti. '''FCoCEE''' è l'acronimo di '''Fibre Channel over Convergence Enhanced Ethernet''' ossia Fibre Channel sulla rete ethernet evoluta con le tecnologie abilitanti necessarie per il protocollo FCoE<ref name=redbook>{{en}}{{pdf}}[http://www.redbooks.ibm.com/redpieces/pdfs/redp4493.pdf An Introduction to Fibre Channel over Ethernet, and Fibre Channel over Convergence Enhanced Ethernet]</ref>.
 
=== Principi di funzionamento ===
Per ethernet FCoE è semplicemente un altro protocollo di livello superiore da trasportare alla stessa stregua di [[IPv4]], [[IPv6]] e [[Internetwork Packet Exchange|IPX]].
 
Per Fibre channel è una modalità di collegamento tramite un nuovo tipo di cavo: ''la rete ethernet''<ref name=Gai3>{{en}}{{cita libro | cognome=Gai | nome=Silvano | titolo=Data Center Networks and Fibre Channel over Ethernet (FCoE)| editore=[[Lulu.com]] | città=California (USA) | anno=aprile 2008| url=http://www.lulu.com/content/2123054 | id=ISBN 978-1-4357-1424-3 | capitolo=FCoE: Fibre Channel over Ethernet}}</ref>.
 
Nell'immagine qui a fianco si può notare come i server siano collegati, per ridondanza, a due [[switch]] in grado di gestire il protocollo FCoE su una singola connessione lossless ehternet. Gli switch sono a loro volta collegati alla rete LAN e all'infrastruttura SAN. Ciascuno switch FCoE è connesso solo ad una SAN tramite collegamentei Fibre Channel, questo per garantire la separazione del traffico fra le due SAN garantendo così la massima continuità di servizio anche in caso di collasso di uno del due sistemi.
 
Il protocollo SCSI continua ad essere incapsulato all'interno dei pacchetti Fibre Channel mentre questi sono incapsulati a loro volta frame per frame in pacchetti ethernet consentendo così al FCoE layer di essere assolutamente privo di stato e di non richiedere frammentazione o riassemblaggio dei pacchetti.
{{-}}
 
=== Strutture di FCoE ===
[[Immagine:Ethernet ULP with FCoE.png|250px|right]]
Nell'immagine qui a fianco si può vedere come il protocollo FCoE si pone nei confronti dei ethernet, a basso livello, e di Fibre Channel ad alto livello. FCoE si posiziona allo stesso livello di IP ma è assai più semplice essendo senza stato.
 
Un server che utilizza una connessione FCoE è semplicemente uno SCSI initiator come un server connesso tramite Fibre Channel in modo nativo mentre uno storage connesso tramite FCoE è uno SCSI target.
 
Per gestire la SAN possono, quindi, essere utilizzati i tool sviluppati per Fibre Channel in modo del tutto trasparente in quanto a livello applicativo non è possibile sapere se la connessione e FCoE o Fibre Channel nativa.
 
In realtà per poter operare su una nuvola ethernet FCoE si avvale di due protcolli<ref name=California3/>:
* '''FCoE''' è il protocollo di base per il trasporto dei dati. È utilizzato per il trasporto della maggior parte dei frame Fibre Channel e di tutto il traffico SCSI.
* '''FIP''' (FCoE Initialization Protocol) è il protocollo di controllo. È utilizzato per scoprire entità Fibre Channel connesse alla lossless ethernet. Effettua, inoltre, il [[login]] e [[logout]] ai dispositivi Fibre Channel.
I due protocolli hanno due diversi ethertype.
{{-}}
 
==== Frame FCoE ====
[[Immagine:FCoE encapsulation.png|right|500px]]
Nel diagramma a lato è illustrato l'incapsulamento dei frame FCoE<ref name=Gai3/>:
* '''Ethetnet Header''': normale frame ethernet con ethertype=FCoE - 12 byte [[MAC address]] + 4 byte [[IEEE 802.1Q]]
** '''FCoE Header''': informazioni di controllo (Ver, SOF) - 16 byte
*** '''Fibre Channel Header''': frame standard Fibre Channel - 24 byte
**** '''Fibre Channel payload''': dati trasportati dal protocollo Fibre Channel (pacchetto SCSI) - da 28 a 2112 byte
*** '''CRC''' - 4byte
** '''EOF''' - 1 byte (EOF) + 3 byte di riempimento
* '''FCS''' - 4 byte
Come si è già detto ciascun frame Fibre Channel viene incluso in un frame ethernet la cui dimensione può variare da 64 byte a 2180 byte. Il [[Maximum Transmission Unit]] su ethernet normalmente è di 1518 quindi non è sufficiente per FCoE. È indispensabile l'adozione di un'infrastruttura che supporti [[jumbo frame]] di 2,5 KB. I frame di questa lunghezza generalmente sono chiamati ''baby jumbo frame'' per differenziarli da quelli di più grosse dimensioni che normalmente sono di 9 KB.
[[Immagine:Frame FCoE.png|right|300px]]
Un frame FCoE ha il seguente formato<ref name=Gai3/>:
* '''Destination [[MAC address]]''': 48 bit - come per [[Fibre Channel over IP]] (FCIP) descritto in RFC 3643
* '''Source MAC address''': 48 bit - come per FCIP descritto in RFC 3643
* '''[[IEEE 802.1Q]]''': 32 bit - come per FCIP descritto in RFC 3643, permette la suddivisione del traffico dati in più VLan e include il ''priority field''
* '''Ethertype''': 16 bit - FCoE ha uno specifico ethertype 0x8906
* '''Version''': 4 bit - Versione del protocollo FCoE
* Reserved: 100 bit - questi bit permettono di garantire la lunghezza minima del pacchetto ethernet che è di 64 byte anche in presenza di pacchetti Fibre Channel da trasportare di 28 byte. In questo modo non è mai necessario inserire un riempimento (pad) in un pacchetto FCoE.
* '''SOF''': 8 bit - Start Of Frame, come per FCIP descritto in RFC 3643
* '''Fibre Channel Frame''': Frame da trasportare incluso il suo CRC. Il frame trasportato è esattamente quello che sarebbe inviato su una connessione Fibre Channel nativa.
* '''EOF''': 8 bit - Start Of Frame, come per FCIP descritto in RFC 3643
* Reserved: 24 bit di riempimento
* '''Ethernet FCS''': 32 bit - come per FCIP descritto in RFC 3643
 
==== Frame FIP ====
[[Immagine:Frame FIP.png|right|300px]]
Il '''FCoE Initialization Protocol''' ('''FIP''') è un protocollo di controllo che permette di individuare dispositivi che in grado di operare tramite FCoE in una rete ethernet, permette di negoziare le modalità di comunicazione e il MAC address da utilizzare.
 
Il funzionamento tipico prevede una ''Discovery Phase'' in cui all'invio di un messaggio multicast di richiesta sia le CNA che gli Switch FCoE rispondono identificandosi.
 
Sucessivamente il FIP gestisce il login all'infrastruttura Fibre Channel tramite i comandi Fibre Channel FLOGI/FDISC. L'accettazione di questi comandi da parte dello switch FCoE permette lo scambio di dati tramite frame FCoE.
 
Un frame FIP ha il seguente formato<ref name=Gai3/>:
* '''Destination [[MAC address]]''': 48 bit
* '''Source MAC address''': 48 bit
* '''[[IEEE 802.1Q]]''': 32 bit
* '''Ethertype''': 16 bit - FIP ha uno specifico ethertype 0x8914
* '''Version''': 4 bit - Versione del protocollo FCoE
* Reserved: 24 bit -
* '''Encapsulated FIP Operation''': esistono 7 tipi di operazioni possibili e ciascuno ha una lunghezza predefinita quindi il tipo di comando definisce anche la lunghezza di questo campo
* Pad: riempimento per garantire la lunghezza minima del frame
* '''Ethernet FCS''': 32 bit
{{-}}
 
==== Tipi di porte FCoE ====
FcoE è strutturato in modo molto simile a [[Fibre Channel over IP|FCIP]] come descritto nella FC-BB-4 in quanto FCoE è incluso nella FC-BB-5 che è la sua evoluzione. Tre sono i tipi di porte presenti<ref name=redbook/>:
* '''VN_Port''': una porta ethernet di una [[#Converged Network Adapter|CNA]]. Il MAC address di una VN_Port sarà utilizzato come indirizzo sorgente o destinazione di un frame FCoE.
* '''VF_Port''': una porta di uno switch FCoE a cui è collegata una VN_Port.
* '''VE_Port''': una porta di uno switch FCoE utilizzata per connettere un altro switch.
Un '''ENode''' (FCoE Node), invece, è un adattatore Fibre Channel implementato all'interno di una CNA. Le CNA possono avere più di una porta ethernet, in questo caso, ciascuna di queste sarà una VN_Port dell'ENode.
{{-}}
 
=== Converged Network Adapter ===
[[Immagine:Converged Network Adapter.png|right|400px]]
Le '''Converged Network Adapter''' ('''CNA''') sono delle [[Scheda di rete|schede di rete]] in grado di garantire una connessione, normalmente a 10 Gb/s, su lossless ethernet supportando il protocollo FCoE.
 
Le CNA in realtà sono composte da due sistemi differenti<ref name=California3/>:
* Scheda di rete ethernet
* Controller Fibre Channel
Anche a livello di [[sistema operativo]] vengono viste come due componenti separate. Se, ad esempio, una scheda CNA fosse installata in un ambiente windows, troveremo una scheda Fibre Channel nella sezione ''Controller SCSI e RAID'' e una scheda ethernet nella sezione ''Schede di rete''<ref name=Gai3/>:.
 
Di conseguenza queste schede richiedono due driver, uno per la sezione Fibre Channel e uno per quella di LAN. Una delle principali caratteristiche che rendono così promettente questa tecnologia è proprio la presenza di queste due unità. Se si considera, infatti, lo schema qui a fianco, si può notare che, rispetto ad un sistema tradizionale con connessioni separate per LAN e Storage, cambia solamente la parte evidenziata in giallo, tutte le altre rimangono invariate. FCoE non richiede, per essere implementato, nessuna modifica agli attuali sistemi operativi ne tanto meno all'infrastruttura di LAN o SAN. Gli unici due attori coinvolti sono la CNA e lo switch con supporto FCoE a cui sono attestate le varie CNA<ref>{{en}}{{YouTube|EZWaOda8mVY|Introduzione a FCoE di EMC}}</ref>.
 
In una CNA sono presenti uno o più controller Fibre Channel con le stesse funzionalità dei normali controller su schede Fibre Channel, l'unica differenza e che questi controller incapsulano i pacchetti in un frame ethernet e li passano quindi al controller ethernet per la trasmissione, il controller ethernet li riceve e semplicemente li inoltra sulla connessione lossless ethernet. In ricezione il controller ethernet passa i pacchetti FCoE direttamente al controller Fibre Channel. La componente del sistema operativo che gestisce le comunicazioni SCSI, quindi, non sarà in grado di capire se i pacchetti SCSI provengano da una connessione Fibre Channel dedicata o da FCoE<ref name=Gai3/>.
 
==== Dispositivi presenti sul mercato ====
La componente Fibre Channel è sicuramente molto più complessa della componente ethernet in una CNA, quindi i primi esempi di CNA sono giunti da [[QLogic]]<ref>{{en}}[http://www.qlogic.com/Products/Datnetworking_products_landingpage.aspx QLogic Converged Network Adapters]</ref> e da [[Emulex]]<ref>{{en}}[http://www.emulex.com/products/converged-network-adapters.html Emulex Converged Network Adapter]</ref>.
 
Molte implementazioni oggi sono basate sulla virtualizzazione dei sistemi operativi, quindi i sistemi ospiti hanno la necessità di accedere alle risorse esterne condivise del sistema operativo ospitante. Per velocizzare queste operazioni [[Cisco Systems|Cisco]] ha introdotto una CNA con la peculiarità di poter rendere disponibili 128 interfacce virtuali<ref>{{en}}[http://www.cisco.com/en/US/prod/collateral/ps10265/ps10280/data_sheet_c78-525049.html Cisco UCS M81KR Virtual Interface Card]</ref>. In questo modo queste interfacce virtuali possono essere liberamente configurate come schede ethernet o Fibre Channel e rese disponibili ai vari sistemi operativi presenti nel sistema scaricando così i compiti di virtualizzazione delle comunicazioni ethernet e Fibre Channel dal processore principale e trasferendo il lavoro di instradamento allo switch esterno<ref name=California3/> anche per le comunicazione fra un'interfaccia virtuale e l'altra.
 
===== Storage con CNA =====
[[Immagine:Storage FCoE.png|300px|right]]
Anche i dispositivi di storage possono essere dotati di CNA, nell'esempio qui a fianco si vede che i due sistemi di storage fanno uso di connessioni lossless ethernet per connettersi agli switch. In questo caso la semplificazione del cablaggio non è così importante perché gli storage sono sempre in numero molto inferiore rispetto ai server. Si aprono però degli scenari decisamente interessanti.
 
In primo luogo la completa eliminazione di connessioni Fibre Channel permette di rendere il sistema più omogeneo e la concentrazione di tutte le configurazioni sia ethernet sia Fibre Channel in un unico dispositivo, lo switch ehternet con funzionalità FCoE.
 
L'aspetto più interessante è però la flessibilità che la struttura ethernet porta in dote a questa configurazione. Sarà, infatti, assai più semplice la dislocazione dello storage in ambienti separati superando anche distanze importanti e senza la necessità della realizzazione di un'infrastruttura ad hoc. Tutto questo permette una decisiva semplificazione dei sistemi di [[ridondanza]] e [[disaster recovery]] unita ad un migliore utilizzo delle connessioni in fibra fra edifici diversi che vedrebbero automaticamente i link ottimizzati in quanto sullo stesso collegamento transiterebbero tutti i vari protocolli. Un potenziamento della connessione con l'aggiunta, ad esempio di un link parallelo, permetterebbe automaticamente di aggiungere banda a tutti i protocolli<ref>{{en}}[http://www.ietf.org/html.charters/trill-charter.html Transparent Interconnection of Lots of Links (trill)]</ref>.
 
Sullo stesso collegamento si potranno gestire più servizi:
* Management della SAN
* FCoE
* [[FCIP]]
* [[Internet Small Computer Systems Interface|iSCSI]]
* [[Network Attached Storage|NAS]]
Alcuni produttori di storage fra cui [[NetApp]]<ref>{{en}}[http://www.netapp.com/us/products/protocols/fcoe/ NetApp FCoE SAN Solutions]</ref> hanno annunciato sistemi di storage con supporto nativo per FCoE mentre altri fra cui [[EMC Corporation|EMC²]]<ref>{{en}}{{pdf}}[http://www.emc.com/collateral/hardware/technical-documentation/h6290-fibre-channel-over-ethernet-techbook.pdf EMC² TechBooks - Fibre Channel over Ethernet (FCoE)]</ref> hanno preferito concentrare gli sforzi sullo sviluppo di switch FCoE.
{{-}}
 
==== Implementazioni software di FCoE ====
In sistemi di piccole dimensioni che non hanno la necessità di avere delle altre prestazioni di I/O, si può anche utilizzare una soluzione interamente software<ref name=Gai3/>. Una soluzione completa di [[pubblico dominio]] basata su [[linux]] è il progetto [[open source]] Open-FCoE<ref>{{en}}[http://www.open-fcoe.org/ Development page of Fibre Channel over Ethernet implementation for the Linux operating system]</ref>. Questo sviluppo è stato incluso in diverse [[Distribuzione Linux|distribuzioni linux]] fra cui [[SUSE|SuSE]]<ref>{{en}}[http://www.novell.com/products/server/adv_network.html SUSE Linux Enterprise Server - Advanced Networking]</ref> e [[Red Hat Linux|Red Hat]]. [[Microsoft]], invece, non intende supportare per il momento [[FCoE]] come implementazione software<ref>{{en}}Microsoft - [http://www.microsoft.com/whdc/whql/resources/news/WHQLNews_061708.html#ECABAAAA Important Notice Regarding Fibre Channel over Ethernet (FCOE) Submissions]</ref>.
 
===== Analizzatore di protocollo =====
Il software per analisi di protocollo [[Wireshark]] (precedentemente chiamato Ethereal) ha il supporto per la cattura e decodifica dei pacchetti FCoE<ref>{{en}}[http://wiki.wireshark.org/FCoE WireShark - Fibre Channel Over Ethernet (FCoE)]</ref>.
 
=== Switch FCoE ===
[[Immagine:FCoE switch.png|right|300px]]
Uno switch FCoE contiene all'interno sia uno switch ethernet (ethernet bridge) sia uno switch Fibre Channel con il supporto dello zoning o un Fibre Channel Forwarder (FCF).
 
Uno switch FCoE potrebbe anche non avere porte Fibre Channel native e quindi non avere un FCF ma deve essere comunque in grado di supportare tutte le estensioni ethernet sopra evidenziate e possedere le funzionalità di switch Fibre Channel operando solo su frame FCoE in una situazione come quella descritta in [[#Storage con CNA|storage con CNA]].
 
Qui a lato è evidenziato lo schema a blocchi di uno switch FCoE con FCF. Il sottosistema FCoE incluso nel modulo FCF si fa carico di incapsulare i frame Fibre Channel all'interno di frame FCoE e vice versa<ref name=Gai3/>. In questo modo dei dispositivi con porte Fibre Channel possono essere connessi alle porte FC mentre le CNA possono essere connesse alla porte ethernet e tramite lo switch FCoE operare come in una normale SAN Fibre Channel.
 
Questa architettura è coerente con quella di un [[router]] multiprotocollo, quindi la funzionalità FCF può essere aggiunta ad un router multiprotocollo come quello esistente all'interno di molti switch layer 3.
{{-}}
 
== Note ==
<references/>
 
== Voci correlate ==
* [[Small Computer System Interface]]
* [[Fibre Channel]]
* [[Internet Small Computer Systems Interface|iSCSI]]
 
== Collegamenti esterni ==
* {{en}}[http://www.t11.org/fcoe La home page del progetto FCoE].
* {{en}}[http://www.open-fcoe.org/ Development page of Fibre Channel over Ethernet implementation for the Linux operating system].
* {{en}}{{pdf}}[http://www.fibrechannel.org/OVERVIEW/FCIA_SNW_FCoE_WP_Final.pdf Fibre Channel Industry Association (FCIA) paper on FCoE].
* {{en}}{{pdf}}[http://www.redbooks.ibm.com/redpieces/pdfs/redp4493.pdf An Introduction to Fibre Channel over Ethernet, and Fibre Channel over Convergence Enhanced Ethernet] - IBM Redpaper
* {{en}}[http://www.fcoe.com Sito dedicato allo sviluppo del FCoe].
* {{en}}{{pdf}}EMC² White Paper - [http://www.emc.com/collateral/hardware/white-papers/h5916-intro-to-fcoe-wp.pdf Introdution to Fibre Channel over Ethernet (FCoE)]
* {{en}}{{YouTube|EZWaOda8mVY|Introduzione a FCoE di EMC}}.
* {{en}}{{pdf}}[http://www.nuovasystems.com/EthernetEnhancements-Final.pdf Ethernet Enhancements Supporting I/O Consolidation]
 
{{Portale|Telematica}}
 
[[Categoria:Protocolli livello rete]]
 
[[en:Fibre Channel over Ethernet]]