More Related Content
Similar to 2016-ShowNetステージ-バックボーンの機能としてのSDN/NFV (20)
More from Interop Tokyo ShowNet NOC Team (20)
2016-ShowNetステージ-バックボーンの機能としてのSDN/NFV
- 1. Copyright © Interop Tokyo 2016 ShowNet NOC Team
ShowNetに見る、
バックボーンの機能としてのSDN/NFV
~ 技術の適材適所でつくるサービスチェイニング ~
- 2. 2Copyright © Interop Tokyo 2016 ShowNet NOC Team
Software Defined Networking
• 様々な機能、定義、特徴がありますが、、
• ソフトウェアによるネットワーク制御?
• コントローラによる集中管理?
• 共通の大目的は、
今までのIPネットワークにはできなかったことの実現!
2
SDN? NFV?
- 3. 3Copyright © Interop Tokyo 2016 ShowNet NOC Team
ShowNetでの取り組み
• 2012年 : OpenFlowの登場
• オンデマンドなパスの切り替え
• 攻撃トラフィックの吸い込み
• トラフィックの分離
3
- 4. 4Copyright © Interop Tokyo 2016 ShowNet NOC Team
ShowNetでの取り組み
• 2013年 : 実ネットワークへの適用
• キャッシュとの連携
• OpenFlowによるモニタリング
• 出展者収容を仮想ルータと
OpenFlowで構築
4
- 5. 5Copyright © Interop Tokyo 2016 ShowNet NOC Team
ShowNetでの取り組み
• 2014年 : 仮想ネットワークの導入
• 出展者ごとの仮想ネットワーク
• VAによるサービスの連結(NFV)
• 外部APIによる構築の自動化
5
- 6. 6Copyright © Interop Tokyo 2016 ShowNet NOC Team
ShowNetでの取り組み
• 2015年 : スケールアウトするNFV
6
• 出展者の収容を仮想ルータで行う
のは2014年まで通り
• OpenFlowとSR-IOVを使った
ハードによるロードバランス
• マルチコアの利用による
高スループットの実現
- 7. 7Copyright © Interop Tokyo 2016 ShowNet NOC Team
2016年のフォーカス: Service Chaining
• バックボーンネットワーク技術との融合
• ネットワーク全体をSDNで構築するのは正直難しい
• どうやってバックボーンとNFV網を適切に接続するか?
• そして、Network Functionの進化
• ソフトウェアパケット転送の高速化と高度化
7
ShowNet
Backbone
SDN/NFV
Network
どうやって繋ぎ、
制御するか?
- 8. 8Copyright © Interop Tokyo 2016 ShowNet NOC Team
• BGP Flowspecで”乗り換え”、OpenFlowで”連結”
• バックボーン上で、BGP Flowspecを用いて
狙ったユーザのトラフィックをNFV網へ乗り換える
• Data Center内に構築されたNFV網
では、OpenFlowでよりきめ
細かなFunctionの連結を行う
NFV網内は
OpenFlowで制御
BGP
Flowspecで
NFV網へ
乗り換え
SDN/NFV@ShowNet 2016
8
- 9. 9Copyright © Interop Tokyo 2016 ShowNet NOC Team
BGP Flow Specification
• BGPでフィルタールールを伝搬する技術
• RFC5575で規定。ActionのうちVRF Redirectを利用
• VRFを使って別面で作成したNFV網ネットワークに、狙った出展者
トラフィックをリダイレクト(乗り換え)
9
NFV Network Data Center (West)
vMX(仮想RR)
ASR9006
VRFによる
仮想スライス
BGP Flowspec:
狙ったIPアドレスをマッ
チして仮想面へ乗り換
えるよう経路広告
仮想面の
VRF(290:510)へ
該当トラフィック
をリダイレクト
- 10. 10Copyright © Interop Tokyo 2016 ShowNet NOC Team
PF5248PF5248
V350
OpenFlowによるサービスチェイン
• DC内はOpenFlowでより細かいチェインを構築
10
• Flowspecでネットワークを乗り換え、
DC内ではOpenFlowで制御
• OpenFlow Switch
• NEC: PF5248, FXC: V350
• Network Function
• A10 Network
Thunder 5435CFW: Firewall
Thunder 6435TPS : DDoS Mitigator
• Cisco Systems
Firepower 9300 : Firewall
Firepower 4120 : DDoS Mitigator
• IP Infusion
VirNOS : ACL base Firewall
and Lagopus
Lagopus
NFV Network
Thunder 5435CFW
Thunder 6435TPS
Firepower 4120
Firepower 9300
VirNOS
VirNOS
NetFPGA-SUME
- 11. 11Copyright © Interop Tokyo 2016 ShowNet NOC Team
PF5248PF5248
V350
OpenFlowによるサービスチェイン
• DC内はOpenFlowでより細かいチェインを構築
11
• Flowspecでネットワークを乗り換え、
DC内ではOpenFlowで制御
• OpenFlow Switch
• NEC: PF5248, FXC: V350
• Network Function
• A10 Network
Thunder 5435CFW: Firewall
Thunder 6435TPS : DDoS Mitigator
• Cisco Systems
Firepower 9300 : Firewall
Firepower 4120 : DDoS Mitigator
• IP Infusion
VirNOS : ACL base Firewall
and Lagopus
Lagopus
NFV Network
Thunder 5435CFW
Thunder 6435TPS
Firepower 4120
Firepower 9300
VirNOS
VirNOS
NetFPGA-SUME
- 12. 12Copyright © Interop Tokyo 2016 ShowNet NOC Team
ユーザごとにチェインを制御
• Flowspecで曲げ、
OpenFlowでつなげる
• Rest APIで経路操作
• 瞬時にチェインを切り替え
12
http://172.16.x.x/install/45.0.y.y/24/tps-fp9
curl, httpie, wget, etc..
- 13. 13Copyright © Interop Tokyo 2016 ShowNet NOC Team
トラフィック制御の適材適所
• BGP Flowspecで”乗り換え”、OpenFlowで”連結”
• BGPというバックボーンにおけるトラフィック制御を取
り入れることで、SDNに特化した製品をいれることなく
狙ったトラフィックを誘導
• DC内でのみOpenFlowを使った
細かいチェインの制御を行う
13
NFV網、
OpenFlow制御
BGP Flowspecで
DCへ乗り換え
- 14. 14Copyright © Interop Tokyo 2016 ShowNet NOC Team
ソフトウェアパケット転送技術の進化
• 高速パケットI/O技術を用いたソフトウェア
• Intel DPDKに代表される、Poll Mode Driver、パケッ
トのバッチ処理、そしてカーネルバイパス
• DPDKを使った高速な仮想スイッチと仮想ルータの登場
• VirNOS: 仮想ルータ
• Lagopus: 仮想OpenFlowスイッチ
14
- 15. 15Copyright © Interop Tokyo 2016 ShowNet NOC Team
Lagopus and VirNOS
• HV上の複数のVirNOSへ、Lagopusで転送
• DPDKなVMと仮想スイッチ間で”vhost-user”を利用
HV側の仮想スイッチと、VM側のドライバが、shared memoryを
介してパケットのやり取りを行う → 現状最速(?)のHV/VM間通信
15
HV
Lagopus
Lagopus
Virtio
Vhost-user
(Kernelバイパス)
HV NIC Shared
Memory
VM vNIC Shared
Memory
- 16. 16Copyright © Interop Tokyo 2016 ShowNet NOC Team
ソフトウェアパケット転送における考慮点
• コンピュータアーキテクチャへの理解が必要
• プロセスやワーカーのCPUへの割り付け方
• NICが接続されたCPUとVMが動作するCPU
• どのCPUでどのプロセスを動かすかによって性能が大きく変化
16
core
core
core
core
core
core
core
core
Virtual
Switch
core
core
core
core
core
core
core
core
Virtual
Router
socket 0 socket 1
core
core
core
core
core
core
core
core
core
core
core
core
core
core
core
core
Memory
socket 0 socket 1
Memory
Memory
Memory
Virtual
Router
Virtual
Switch
- 17. 17Copyright © Interop Tokyo 2016 ShowNet NOC Team
Programmable Hardwareの利用
• さらなる未来: OpenFlowの次は?
• OpenFlowはマッチと書き換え。計算はできない
• 5-tupleをマッチすると、32+32+16+16 = 2の96乗通り
• 新しいプロトコルヘッダにはなかなか対応できない
• →ハードウェアの挙動さえプログラミングしたい!
• NetFPGA-SUMEを使ったデモンストレーション
17
HV
Lagopus
Lagopus
② 埋め込まれた
ハッシュ値をもとに
転送に使うVMへ
OpenFlowで転送 ① Src/Dst IPから
ハッシュ値を計算、
Src MACの下位8bitに
埋め込む
Uplink
Downlink
Src/Dst IPを分散に使いつつ、
OpenFlowでマッチするのは8bit分のみ
- 18. 18Copyright © Interop Tokyo 2016 ShowNet NOC Team
SDN/NFV@ShowNet まとめ
• 適材適所なフロー制御技術の活用
• “ネットワークの全てをSDNで”はハードルが高い
バックボーンはBGP Flowspecで、
データセンター内はOpenFlowで。
• ソフトウェアによるパケット処理の進化
• 10Gbpsは出せる。25, 40, 100Gbpsと高速化にも期待
• 真剣に使うには、プログラミングだけでなく、
コンピュータアーキテクチャに立ち返る必要がある
18