mercoledì 29 agosto 2012

VXLAN E OTV: SONO STATO FREGATO


Quando VXLAN è uscito un anno fa, molti di noi visto il formato del pacchetto e mi chiedevo perché Cisco e VMware ha deciso di utilizzare UDP invece di più comunemente usato GRE . Una spiegazione era evidente: numeri di porta UDP dare più entropia che è possibile utilizzare in 5-tupla bilanciamento del carico basato. L'altra spiegazione sembrava ancora più promettente: VXLAN e OTV utilizzare il formato del pacchetto molto simile , quindi l'hardware già facendo incapsulamento OTV (Nexus 7000) potrebbe essere usato per fare terminazione VXLAN . Ragazzo che ci è stato fregato.
Si scopre che nessuno ha avuto il tempo di analizzare una traccia del pacchetto OTV con il Wireshark, tutti credevano qualunque bozze IETF ci dicevano. Ecco il formato del pacchetto di progetto-hasmit-OTV-03 :
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
| Versione | diritto internazionale umanitario | Type of Service | Lunghezza totale |
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Identification | Flags | Fragment Offset | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Time to Live | Protocol = 17 | Header Checksum | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Source-sito Indirizzo Bordo OTV dispositivo IP | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Destinazione sito OTV periferica Edge (o multicast Indirizzo) | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Source Port = xxxx | Dest Port = 8472 | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Lunghezza UDP | UDP Checksum = 0 | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| R | R | R | R | I | R | R | R | Overlay ID | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| ID istanza | Riservato | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| | 
| Struttura in Ethernet 802.1Q o Formato | 
| | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
Ed ecco il formato del pacchetto di progetto-Mahalingam-Dutt-dcops-vxlan . Oltre a un diverso numero di porta UDP, i due si sposano perfettamente.
Esterno intestazione IP: 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Version | diritto internazionale umanitario | Type of Service | Lunghezza totale | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Identification | Bandiere | Fragment Offset | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Time to Live | Protocol | Header Checksum | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Indirizzo di origine esterna | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Indirizzo di destinazione esterno | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
 Header UDP esterno:
 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Source Port = xxxx | Dest Port = VXLAN Port | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Lunghezza UDP | UDP Checksum | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
 VXLAN Intestazione:
 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| R | R | R | R | I | R | R | R | Riservato | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| VXLAN Network Identifier (VNI) | Riservato | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
 Header interno Ethernet:           
 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Interno Indirizzo di destinazione MAC | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Indirizzo di destinazione MAC interno | interno Fonte Indirizzo MAC | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Indirizzo MAC sorgente interiore | 
+ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + 
| Facoltativo Ethertype = C-Tag | Tag Inner.VLAN Informazioni Ethertype di Payload originale | | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | | Payload originale Ethernet | | | | (nota che FCS Frame Ethernet originale non è incluso) | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +







Tuttavia, si scopre il progetto OTV quattro Cisco tecnici pubblicati nel corso del 2011 non ha nulla a che vedere con l'effettiva attuazione e il formato di incapsulamento utilizzato dal Nexus 7000. Sembra McGahan Brian è stato il primo a fare effettivamente la cattura dei pacchetti OTV e analisi e pubblicò le sue scoperte . Ha scoperto che OTV non è altro che il EoMPLSoGREoIP molto familiare. Nessuna meraviglia che il primo dispositivo gateway VXLAN Cisco ha annunciato di Cisco Live non è il 7000, ma un Nexus 1000V-based Nexus soluzione (almeno questo è il modo in cui ho capito questo white paper ).


Nessun commento:

Posta un commento

Nota. Solo i membri di questo blog possono postare un commento.