仮想インスタンス間ネットワークのつくりかた	  	  -­‐-­‐	  Service	  Chaining編	  6	  November	  2014	  Miya	  Kohno	  (mkohno@cisco.com)	  Agenda	  本日のテーマ：仮想インスタンス間ネットワークに関する諸問題	  •シンプル性と複雑性の隠蔽	  ••サービスチェイニングの抽象化	  その他	  •性能面の問題	  •ETSI	  MANOにおける”Network	  Control”	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

2

Openstack	  Neutronによるネットワーク制御	  Simple	  !	  
Simple	  is	  the	  best.	  (Occam’s	  laser)	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

neutron:	  net-­‐create	  (Openstack	  Icehouse)	  Cisco Confidential

3

Openstack	  Neutron	  複雑性の隠蔽	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

4
Cisco Confidential
hOp://networkstaQc.net/installing-­‐openstack-­‐ml2-­‐neutron-­‐plugin-­‐devstack-­‐fedora/	  ネットワークに対する見方の違い	  Server	  Engineers	  GW	  内部ネットワーク

Network	  Engineers	  外部ネットワーク
Security	  • IP	  addr/subnet	  • vlan	  • port	  • 自分のネットワーク属性を表明• あとはよろしく！	  

node	  link	  • ネットワークはノードとリンクから構成される• トポロジー重要• 帯域重要，Cost,	  Delay,	  JiOer..	  

Image	  source	  :	  Cisco Confidential	  hOp://www.dreamsQme.com/royalty-­‐free-­‐stock-­‐images-­‐3d-­‐white-­‐people-­‐system-­‐administrator-­‐image28585969,	  	  hOp://www.sudarshansoXech.com/chnt3.htm	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

5

シンプル性と複雑化可能性	  シンプルだからこそ、サーバーやアプリケーションは、柔軟に、Agileに、ネットワークをプログラミングできる。しかし…	  ：	  •複雑化可能性の要因	  • マルチテナントのための複雑なネットワーク分離	  • Data	  Centerの分散配置	  -­‐ Data	  Center間ネットワークのトポロジー、QoS/SLA、Traﬃc	  Engineering..	  
-­‐ リソース最適化	  -­‐ Content	  Cache、CDN	  • Service	  FuncQon	  Chaining	  Today’s	  Topic	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential6SFC	  Architecture	  SFC-­‐
aware	  SF	  SFC	  Encap	  à	  Classiﬁer	  	  	  	  	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

draX-­‐iec-­‐sfc-­‐architecture-­‐02	  SFC-­‐
aware	  SF	  SFC-­‐
unaware	  SF	  SFC	  Proxy	  Service	  FuncQon	  Forwarder	  (SFF)	  Network	  Transport	  • 実際のネットワークトポロジーに依存しない	  • サービスヘッダによるメタデータ共有	  • 様々なネットワーク制御(Network	  Control)方式	  Cisco Confidential

7Service	  Chaining	  –	  複雑性の隠蔽	  抽象化：	  SimpliﬁcaQon,	  AbstracQon.. 	  
• サーバーやアプリケーションに、柔軟に、Agileに、ネットワークをプログラミングして貰う為に、抽象化が必要	  • Service	  Chainingをどう抽象化するか	  	  -­‐	  Case	  Studies	  • N1Kv	  • N9K/ACI	  • Open	  Daylight	  •その他にも 	  -­‐	  vPE-­‐f/VTS	  (aka	  Mozart)	  -­‐	  Mobility	  Gi-­‐LAN	  Service	  Chaining	  	  -­‐	  抽象データモデル定義へ	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

8

N1kv	  -­‐	  vPath	  Service	  Chaining	  	  • vPath	  オーヴァレイにより、ネットワークトポロジーを隠蔽	  • プログラマビリティ	  • マルチテナント	  	  Virtual	  Service	  A	  Client	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.	  	  Virtual	  Service	  B	  Virtual	  	  Service	  C	  	  	  Cisco	  Nexus	  1000V	  Web	  VM	  Tenant	  #2	  (Policy	  2)	  Web	  VM	  Tenant	  #1	  (Policy	  1)	  Cisco Confidential

9

N1Kv	  -­‐	  Service	  Chaining	  conﬁguraQon	  Chain	  WAF,	  VSG	  and	  NetScaler	  1000V	  for	  a	  tenant	  vservice	  node	  VSG	  type	  vsg	  	  	  ip	  address	  192.168.1.97	  	  	  adjacency	  l3	  vservice	  node	  NS1000	  type	  adc	  	  	  ip	  address	  192.168.1.98	  	  	  adjacency	  l3	  vservice	  node	  WAAS	  type	  waas	  	  	  ip	  address	  192.168.1.99	  	  	  adjacency	  l3	  	  vservice	  path	  chain-­‐TenantA	  node	  WAAS	  order	  5	  	  node	  NS1000	  order	  10	  node	  VSG	  proﬁle	  secure_tenantA	  order	  15	  	  port-­‐proﬁle	  type	  vethernet	  TenantA	  org	  root/TenantA	  vservice	  path	  chain-­‐TenantA	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

For	  Your	  Reference	  N1Kv上のサービスノードを定義	  vPATHにおける	  サービスノードの	  チェイニング	  ポートプロファイルにて、Service	  Chainの有効化	  	  	  Cisco Confidential

10N9K/ACI	  -­‐	  Conﬁguring	  a	  Service	  Graph	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

11N9K/ACI	  -­‐	  AOaching	  Graph	  To	  EPg	  and	  Contract	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

12N9K/ACI	  -­‐	  Service	  Graph	  Rendering	  Service	  Graph:	  “web-­‐applicaKon”	  EPG:	  External	  FuncQon	  Firewall	  FuncQon	  SSL	  oﬄoad	  FuncQon	  Load	  Balancer	  EPG:	  Web	  	  vlan設定	  Firewall	  FuncQon	  	  SSL	  oﬄoad	  FuncQon	  Load	  Balancer	  APIC	  (ApplicaQon	  Policy	  Infrastructure	  Controller,	  ACIのコントローラ）が、	  それぞれのサービス機能に対して	  •vlan割当て、必要なネットワークの設定を行う	  •EPG(End	  Point	  Group）やポリシーの設定を行う	  •サービスデバイスに対しても、必要な設定（vlan,	  vnid)を行う	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

13N9K/ACI	  -­‐	  Service	  InserQon	  	  ApplicaQon	  proﬁle	  	  EXTERNAL	  Policy	  WEB	  Policy	  APP	  Policy	  DB	  Terminal:	  Input1	  Terminal:	  Output1	  Service	  Graph:	  “WebGraph”	  Func:	  Firewall	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Func:	  	  Load	  Balancer	  Service	  Graph:	  “appGraph”	  Func:	  	  Load	  Balancer	  Cisco Confidential

14

ODL	  Service	  Chaining	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

hOps://wiki.opendaylight.org/view/Project_Proposals:Service_funcQon_chaining	  hOp://events.linuxfoundaQon.org/sites/events/ﬁles/slides/ods2014_buerger.pdf	  	  Cisco Confidential

15

ODL	  Service	  Chaining	  • MD-­‐SALを使用して	  Service	  Chaining機能を実装	  	  	  MD-­‐SAL	  :	  Model-­‐driven	  Service	  AbstracQon	  Layer	  	  <-­‐>	  cf.	  AD-­‐SAL	  (API-­‐driven	  SAL)	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

16

YANGによるモデル定義	  YANG(RFC6020)とは 	  • NETCONFのためのデータモデルを規定するモデリング言語	  • Yet	  Another	  Next	  GeneraQon	  or	  Yin	  and	  Yang	  • 構造、syntax、semanQcsを規定	  • 可読性、整合性検証	  NETCONF	  Content	  OperaQons	  YANGにより定義	  ConﬁguraQon	  Data	  Base	  RPC/NoQﬁcaQon	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Transport	  Cisco Confidential

17I-­‐D:	  Yang	  Data	  Model	  for	  Service	  FuncQon	  Chaining	  1.

Introduction . . . . . . . . . . . . . . . . . . . . . . . .
2
Definitions and Acronyms . . . . . . . . . . . . . . . . . .
3Service Function (SF) . . . . . . . . . . . . . . . . . . . .
33.1. Module Structure . . . . . . . . . . . . . . . . . . . .
33.2. Service Function . . . . . . . . . . . . . . . . . . . .
44. Service Function Type (SFT) . . . . . . . . . . . . . . . . .
94.1. Module Structure . . . . . . . . . . . . . . . . . . . .
94.2. Service Function Type Configuration Model . . . . . . . .
95. Service Function Chain (SFC) . . . . . . . . . . . . . . . . 115.1. Module Structure . . . . . . . . . . . . . . . . . . . . 125.2. Service Function Chain Configuration Model . . . . . . . 126. Service Node (SN) . . . . . . . . . . . . . . . . . . . . . . 166.1. Module Structure . . . . . . . . . . . . . . . . . . . . 16
6.2. Service Node Configuration Model . . . . . . . . . . . . 16
7. Service Function Path (SFP) . . . . . . . . . . . . . . . . . 18
7.1. Module Structure . . . . . . . . . . . . . . . . . . . . 19
7.2. Service Function Path Configuration Model . . . . . . . . 198. Service Function Forwarder (SFF) . . . . . . . . . . . . . . 228.1. Module Struture . . . . . . . . . . . . . . . . . . . . . 22
8.2. Service Function Forwarder Model . . . . . . . . . . . . 23
9. Service Function Forwarder Open vSwitch (SFF-OVS) . . . . . . 27
9.1. Module Structure . . . . . . . . . . . . . . . . . . . . 27
9.2. Service Function Forwarder OVS Model . . . . . . . . . . 28
10. Service Locator (SL) . . . . . . . . . . . . . . . . . . . . 30
10.1. Module Structure . . . . . . . . . . . . . . . . . . . . 30
10.2. Service Locator Module . . . . . . . . . . . . . . . . . 30
2.
3.

© 2013-2014 Cisco and/or its affiliates. All rights reserved.

draX-­‐penno-­‐sfc-­‐yang-­‐09	  Cisco Confidential

18

サービスモデルの定義、サービスオーケストレーション	  Mode-­‐driven	  Service	  OrchestraQon	  Yang	  Service	  Models	  Mapping	  Code	  (Java/Templates)	  Yang	  Device	  Models	  サービスモデル → デバイスモデル
Netconf	  I2RS	  Openﬂow	  PCEP,	  Virtual	  Overlay	  CLI,	  etc.	  

サービス上のトポロジー	  ConﬁguraQons	  サービス	  要請	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Conﬁg	  Rules	  Physical	  x86	  Virtual	  Cisco Confidential

19サービス定義	  サービス設計者	  Service	  OrchestraQon	  サービス構成の	  モデル化	  Fast/ReacQve	  Mapping	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

トポロジー	  コンフィグレーション	  サービスの記述	  YANG	  model	  サービスモデルからデバイスモデルへの変換ロジック	  Java	  設定の記述	  YANG	  model	  Cisco Confidential

20

Agenda	  本日のテーマ：仮想インスタンス間ネットワークに関する諸問題	  •シンプル性と複雑性の隠蔽	  ••サービスチェイニングの抽象化	  その他	  •性能面の問題	  •ETSI	  MANOにおける”Network	  Control”	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

21

VM間通信の性能	  PCI	  Pass	  through	  (SR-­‐IOV)	  (DPDK)	  	  	  VM	  	  	  VM	  	  	  	  	  	  	  	  	  	  Hypervisor	  AgnosQc!	  

Physical	  NIC	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

OVS	  

Hardware	  	  	  •	  •Hypervisor/Kernel	  •リソース集積と共有、柔軟性、迅速性など、仮想化アーキ
テクチャの利点を活かすために、なるべく垂直統合を防ぎたい。（できるだけ特定のハードウェアやハイパーヴァイザに依存させない。）	  North-­‐South	  Traﬃcについては、標準的なHypervisor	  Bypass技術が使用できる。	  
West-­‐East	  Traﬃcについてどうするか。(Open	  vSwitchがネックになる可能性。）	  Cisco Confidential

22

VM間通信の性能	  VM	  VM	  VF	  driver	  VF	  driver	  Hypervisor	  (VMM)	  PF	  driver	  	  	   HW	  (VT-­‐d)	  DMA	  remapping	  PF	  VF	  	  VF	  Physical	  	  device	  	  TOR	  	  	  DC	  Fabric	  	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

• East-­‐West	  Traﬃcの高速化	  VM(Guest	  OS)	  Hipervisor	  HW(NIC)	  Inter-­‐VM	  Perf	  virQo	  OVS	  NA	  Yes	  NG	  PCI	  Passthru	  NA	  VT-­‐d	  NO	  Good	  SR-­‐IOV	  NA	  VT-­‐d	  Yes	  Good	  EVB	  (Edge	  Virtual	  Bridging)	  UCS	  VIC	  Method	  SW-­‐VEB	  HW-­‐VEB	  VEPA	  Where	  to	  fold	  back	  Hypervisor	  NIC	  TOR	  technology	  NA	  SR-­‐IOV	  NA	  VEB(Virtual	  Embedded	  Bridge) 802.1Qbg	  hOp://www.cisco.com/web/JP/product/hs/switches/
23
Cisco Confidential
nexus5000/prodlit/whitepaper_c11-­‐620065.html	  VPP/VPE-­‐f	  vPE	  Control	  Agent	  VPP	  Forwarding	  DP	  Proxy	  ARP	  DHCP	  Relay	  • US	  Patent	  –	  #7961631	  B1	  • 高性能	  Vector	  Packet	  Processing	  • マルチスレッド、10G	  in	  single	  core	  • ユーザスペースでの実装	  • ISSU,	  Fault	  Isolated,	  Highly	  Portable	  • N1kv	  NFV	  ediQon	  • PCI	  pass	  throughおよびIntel	  DPDKをドライヴァとして使用	  
VM3,IP3,	  MAC3	  VM3,IP3,	  MAC3	  VM2,IP2,	  MAC2	  Tenant2	  Context	  Tenant1	  Context	  VM2,IP2,	  MAC2	  TENANT-­‐1	  VMs	  TENANT-­‐2	  VMs	  DPDK	  Drivers	  MPLS-­‐over-­‐GRE/VXLAN/
L2TPv3	  Traﬃc	  Host	  	  -­‐	  Linux	  or	  EXSi	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Thin	  driver	  for	  ESXi	  and	  KVM	  Cisco Confidential24I-­‐D:	  Yang	  Data	  Model	  for	  Packet	  Switching	  Element	  	  4. Yang modules . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1 YANG Module "pse" . . . . . . . . . . . . . . . . . . . . . 11
4.2 YANG Module "pse-common-types" . . . . . . . . . . . . . . . 16
4.3 Global sub-modules of "pse" . . . . . . . . . . . . . . . . 17
4.3.1 YANG sub module "pse-oam" . . . . . . . . . . . . . . . 17
4.3.2 YANG submodule "physical-interfaces" . . . . . . . . . . 19
4.3.3 YANG submodule "context-selector-table" . . . . . . . . 20
4.3.4 YANG submodule "label-table" . . . . . . . . . . . . . . 22
4.3.5 YANG submodule "l2tp-table" . . . . . . . . . . . . . . 26
4.4 PER Tenant submodules . . . . . . . . . . . . . . . . . . . 27
4.4.1 YANG submodule "ip-unicast-table" . . . . . . . . . . . 27
4.4.2 YANG submodule "flow-table" . . . . . . . . . . . . . . 29
4.4.3 YANG module "ip-next-hop" . . . . . . . . . . . . . . . 29
4.4.4 YANG submodule "l2-table" . . . . . . . . . . . . . . . 32
4.4.5 YANG submodule "l2-next-hop" . . . . . . . . . . . . . . 33
4.4.6 YANG submodule "interface-table" . . . . . . . . . . . . 35
4.4.7 YANG submodule "arp-table" . . . . . . . . . . . . . . . 39
4.4.8 Yang submodule "arp-proxy-table" . . . . . . . . . . . . 40

© 2013-2014 Cisco and/or its affiliates. All rights reserved.

draX-­‐rfernando-­‐ipse-­‐01	  Cisco Confidential

25

“Network	  Control”の位置に関して	  • ETSI	  NFV	  MANO	  documentにおいてNetwork	  Controllerは、VIMの配下に位置づけられている。	  

© 2013-2014 Cisco and/or its affiliates. All rights reserved.

!

Figure	  5.2	  Network	  Controller	  Example,	  GS	  NFV-­‐MAN	  001	  V0.7.0	  	  	  Cisco Confidential

26

“Network	  Control”の位置に関して	  OSS/BSS	  Network	  Control	  VNF	  Network	  Control実装の可能性	  Network	  Control	  Network	  Control	  Network	  Control	  NW	  infrastructure	  • OS	  Neutron	  ML2	  plug-­‐ins	  	  Nexus	  plugin	  	  VNFM	  NFVI	  (Physical+Virtual)

NFVO	  

	  	  	  	  	  	  	  	  APIC	  plugin..	  	  • “SDN	  controller”のNBIを使用	  VIM	  	  • API	  • NETCONF/RESTCONF	  +	  data	  model	  VIM配下に限る必要は無いのでは	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

27

まとめ	  本日のテーマ：仮想インスタンス間ネットワークに関する諸問題	  ••シンプル性と複雑性の隠蔽	  •サービスチェイニングの抽象化	  	  →	  複雑化を防ぎ、適切に抽象化するためのデータモデルが重要	  その他	  •

性能面の問題	  •ETSI	  MANOにおける”Network	  Control”	  →	  アーキテクチャ課題はまだ存在する	  © 2013-2014 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential28Thank you.