VMware NSXがサポートするトンネル方式について

2,815 views

Published on

Introduces the L2 over L3 tunneling (encapsulation) supported by VMware NSX (in Japanese)

Published in: Technology

VMware NSXがサポートするトンネル方式について

  1. 1. VMware NSXがサポートするトンネル方式について ヴイエムウェア(株) ネットワーク&セキュリティー事業部 テクニカルリーダ 進藤 資訓 © 2014 VMware Inc. All rights reserved
  2. 2. 自己紹介 l  進藤 資訓(しんどう もとのり) / @motonori_shindo l  略歴 u  l  東京電力、カーネギーメロン大学、アセンド、コサイン、プロキシム、ファイ ブ・フロント、ニシラ、ヴイエムウェア 目標 u  歌って踊れるエンジニア -2© 2014 VMware Inc. All rights reserved
  3. 3. VMware NSXがサポートするトンネル方式 l  GRE (Generic Routing Encapsulation) l  STT (Stateless TCP Transport) l  VXLAN (Virtual Extensible LAN) -3© 2014 VMware Inc. All rights reserved
  4. 4. STT (Stateless Transport Tunneling) l  Nicira / VMware が提唱する L2 over L3 トンネル (Encapsulation)手法 u  l  draft-davie-stt-03.txt Why yet another L2 over L3 tunneling ? u  性能 u  多くのコンテクスト情報 u  Multi-Path 特性 u  ソフトウェア指向 -4© 2014 VMware Inc. All rights reserved
  5. 5. TSO (TCP Segmentation Offload) l  最近の(ここ4〜5年に出た)NICには様々なハードウェア・アク セラレーション機能が搭載されている u  l  TSOは、通常OS(ソフトウェア)が行わなければいけない Segmentation処理をNICがハードウェアで行ってくれる u  l  RSS、GSO/TSO、Checksum Offload、etc. 最大64K bytesのパケットを送れる à Context Switchを劇的に減らせる NICには “TCP” に見えるようなパケットでEncapsulationして やる事により、TSOのメリットを享受できる! -5© 2014 VMware Inc. All rights reserved
  6. 6. Encapsulation / Segmentation 処理の流れ IP (20) TCP’ (20) STT (18) IP (20) TCP’ (20) STT (18) IP (20) TCP’ (20) IP (20) TCP’ (20) L2 Frame (up to ≒ 64K) Payload 1 Payload 2 (HWによる) Segmentation 処理 Payload n -6© 2014 VMware Inc. All rights reserved
  7. 7. TCP-like ヘッダー 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port | Destination Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number(*) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Acknowledgment Number(*) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Data | |U|A|P|R|S|F| | | Offset| Reserved |R|C|S|S|Y|I| Window | | | |G|K|H|T|N|N| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum | Urgent Pointer | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -7© 2014 VMware Inc. All rights reserved
  8. 8. STT ヘッダー 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Version | Flags | L4 Offset | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Max. Segment Size | PCP |V| VLAN ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + Context ID (64 bits) + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Padding | data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | | -8© 2014 VMware Inc. All rights reserved
  9. 9. スループットとCPU使用率 (Gbps) 10 出典: http://networkheresy.com/2012/06/08/the-overhead-of-software-tunneling/ (%) 100 9 90 8 80 7 70 6 60 5 50 4 40 3 30 2 20 1 10 0 0 Linux Bridge OVS Bridge スループット OVS-GRE CPU (Receive) OVS-STT CPU (Send) -9© 2014 VMware Inc. All rights reserved
  10. 10. Multi-Path 特性 l  背景 u  l  East-Westトラフィックの増大に対応するため、Multi-PathによるFabricネッ トワークが広く用いられるようになってきている。 要件 u  u  l  1つのフローは同じパスを通ること マルチパスを有効に活用するために十分なエントロピーを持つこと STTによる対応方法 u  u  1フローから作られるSTTパケットは、同じsrc/dst IP address / port numberを持つようにする 元のパケットのフロー情報のハッシュを取り、STTのTCPヘッダのsrc port numberとして使う - 10 © 2014 VMware Inc. All rights reserved
  11. 11. Multi-Pathを意識したEncapsulation 元パケット IP (20) TCP’ (20) STT (18) Ether IP TCP Data TCP src port # Hash (src/dst MAC addr, src/dst IP addr, src/dst port number, etc.) - 11 © 2014 VMware Inc. All rights reserved
  12. 12. VXLAN l  Arista / Broadcom / Cisco / VMware / Citrix / RedHat らが中心に提唱 u  draft-mahalingam-dutt-dcops-vxlan-04.txt l  VLAN ID (12bit) を VNI (24bit) に拡張 l  UDP/IPでEncapsulation u  L3オーバーレイ u  マルチパス l  ハードウェアで処理し易いように設計 l  エコシステムの形成 - 12 © 2014 VMware Inc. All rights reserved
  13. 13. トンネルは適材適所 Virtual Network Physical Copper Cable WORLD Third party hardware Controller VXLAN Cable Hypervisor VXLAN Cable Hypervisor STT Cable - 13 © 2014 VMware Inc. All rights reserved
  14. 14. ネットワーク仮想化とトンネリング u  u  トンネリング(Encapsulation) 方式はネットワーク仮想化の重要な一部であ るが、すべてではない。 Control Plane の作り方によって、まったく異なった特性を持つようになる §  Hop by Hop vs Overlay §  Proactive vs Reactive §  Flooding vs non-Flooding §  Multicast-based vs Multicast-less §  Centralized vs Distributed §  Network-oriented vs Server-oriented u  トンネリング(Overlay)をしても、うまく設計・実装すれば性能的に問題にな ることはない。 - 14 © 2014 VMware Inc. All rights reserved

×