More Related Content Similar to 2015-ShowNetステージ-SDN/NFV
Similar to 2015-ShowNetステージ-SDN/NFV (20) More from Interop Tokyo ShowNet NOC Team
More from Interop Tokyo ShowNet NOC Team (20) 2015-ShowNetステージ-SDN/NFV1. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 1
ShowNetにおけるNFVの
スケールアウトテクニック
ShowNet Stage
2. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 2
Software Defined Networking
• 様々な定義、機能、項目がありますが、、
• ソフトウェアによるネットワーク制御?
• コントローラによる一括制御?
SDN Switch ?
今までのIP Networkにはできなかったことを!
3. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 3
ShowNetでの取り組み
• 2012年 : OpenFlowの登場
• オンデマンドなパスの切り替え
• 攻撃トラフィックの吸い込み
• トラフィックの分離
4. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 4
ShowNetでの取り組み
• 2013年 : 実ネットワークへの適用
• キャッシュとの連携
• OpenFlowによるモニタリング
• 出展者収容を仮想ルータと
OpenFlowで構築
5. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 5
ShowNetでの取り組み
• 2014年 : 仮想ネットワークの導入
• 出展者ごとの仮想ネットワーク
• VAによるサービスの連結(NFV)
• 外部APIによる構築の自動化
6. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 6
SDN/NFVの課題
• 性能面の課題
• ソフトウェアパケット転送のボトルネック
• どうやってサーバの追加で帯域や性能を増強していくか?
• 構築と運用の難しさ
• ネットワークに加えてサーバやプログラミングのスキルが必要
• 多種多様な構成技術によるデバックの難しさ
FirewallRouter
Switch
?
?
?
OpenFlowController/Or
chestrator
?
?
?
7. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 7
今年のSDN/NFVの取り組み
• スケールアウトするNFV
• バックボーンにおいて、
• サーバを追加すればするほど、
ネットワーク全体の転送量の
上がるNFV
• 容易なリソースの追加投入
• できるだけVMの構成を一元化
• コピーするだけでVM/サーバを
追加投入
8. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 8
SDN/NFV@ShowNet 2015
• スケールアウトできるNFV
1. 同一機能を複数のVAで構成
2. OpenFlowを用いた
複数VA間のロードバランス
3. 様々な高速化手法の利用に
よる性能の向上
9. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 9
Traffic analysis
Firewall
DDoSミチゲータ
vCPE (NAT/ToS)
SDN/NFV概要
• ユーザごとにサービスチェインを選択
• vCPEでパケットにマーキング
• 各サービスをToSの各bitに埋め込む
1. OpenFlowでサービスを適用するか判断
• ToSの特定bitをチェック
• 1ならVNFへ、0なら迂回
2. 1つのサービスを構成する複数VAへ分散
• 送信元アドレスをハッシュしてパケットを
転送するVAを決定
• OpenFlowで決定したVAへOutput
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
10. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 10
Traffic analysis
Firewall
DDoSミチゲータ
vCPE (NAT/ToS)
SDN/NFV概要
• ユーザごとにサービスチェインを選択
• vCPEでパケットにマーキング
• 各サービスをToSの各bitに埋め込む
1. OpenFlowでサービスを適用するか判断
• ToSの特定bitをチェック
• 1ならVNFへ、0なら迂回
2. 1つのサービスを構成する複数VAへ分散
• 送信元アドレスをハッシュしてパケットを
転送するVAを決定
• OpenFlowで決定したVAへOutput
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
11. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 11
Traffic analysis
Firewall
DDoSミチゲータ
vCPE (NAT/ToS)
SDN/NFV概要
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch• vCPEによる出展者収容
• NAT, サービス識別子の付与
• Juniper Networks, vSRX
• 3つのVNFの層
• DPI/トラフィック分析
• Paloalto Network, PA-VM
• Firewall
• Cisco Systems, CSR1000V
• DDoS Mitigation
• A10 Networks, Thunder 6435tps
• OpenFlow Switch
• NEC PF5248, PF5459
12. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 12
サービスの選択
• Webポータル画面から、
ユーザごとにチェインし
たいサービスを選択
• クリックすると、
コントローラがvCPEへ
ToSへのマークを指示
13. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 13
サービスの識別
• ToSを用いたユーザ単位のサービス識別
• Type of Serviceフィールドの各bitを、
VNFで実現される各サービスにマッピング
• vCPEでユーザごとに付与するサービスのbitを立てる
• そのほかのフィールドでも可能
PayloadIP
ToS : 0 0 0 0 1 1 0 0 = 4 bit目 トラフィック分析ON,
3 bit目 ACL ON
14. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 14
HV
ユーザトラフィック
OpenFlowによるパスの切り替え
• 転送時にパケットをVNFへ入れるかどうかを判断
• OpeFlowを用いて、ToSと送信元アドレスをマッチ
• ユーザ(アドレス)とそのサービス(ToS)をフローとして、フ
ローごとにVNFを通すか制御
Openflow Switch
ToSの
Xbit目が1
ToSの
Xbit目が0
Controller
15. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 15
サーバとVAの段階的追加による性能拡張
• OpenFlowスイッチでトラフィックを複数のVAに分散
• 同一設定のVAをコピー、またはサーバを追加投入していく
ことで、トラフィックをバランスしてスケールアウトでき
る
• どうしても変更が必要な部分には様々な自動化技術で対応
・・・VNF n
スケールアウト
ユーザトラフィック
Controller
OpenFlow Switch
16. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 16
パケットI/O高速化技術の利用
• できるだけ、
”ソフトウェアによるパケット処理は減らす”
• 現状では、ハードによる処理の方が当然早い
• なるべく仮想スイッチなどを使わずにがんばる
• PCI Pass-through
• SR-IOV
• Intel DPDK
17. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 17
PCI Pass-through
• HVのPCIデバイスを
VMに直接アタッチ
• HVのソフトウェア
ネットワークスタック
を経由しない
• ソフトウェアパケット
処理はVM内のみ
VM1
HV kernel
eth0
eth0
kernel
プロトコル
スタック
HVのパケット
処理をバイパス
18. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 18
PCI Pass-throughのShowNetでの利用
• HVのPCIデバイスを
VMに直接アタッチ
• OpenFlowスイッチに
接続するNICを直接
VMにパススルー
• Paloalto Networks,
VM-300にて利用
HV
OpenFlow Switch
OpenFlow Switch
eth0
eth1
eth1
eth0
19. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 19
Singe Root I/O Virtualization
• NICの仮想化
• 1つのNICを複数の
NICに分割
• 仮想NIC (Virtual
Function)を各VMへ
アタッチ
• VFをVMへアタッチ
VM1
HV kernel
eth0
HVのパケット
処理をバイパス
VM1
eth0
eth0
20. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 20
SR-IOVのShowNetでの利用
• 各VFを各VMにアタッチ
• OpenFlowでトラフィッ
クをVMへ分散
• VMを各CPUに割り当て
ることで、マルチコアを
有効に使ってパケットを
転送することが可能
• Cisco Systems,
CSR1000Vにて利用
HV
OpenFlow Switch
eth1
eth0
eth1
eth0
eth1
eth0
eth1
eth0
eth0
eth1
OpenFlow Switch
21. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 21
Intel Data Plane Development Kit
• Intel DPDK
• 高速パケットI/O技術
• DPDK自体はLinux上で動作
する専用のドライバとライブ
ラリ (SDK)
• Linux kernelのスケジューラ
とは切り離されたDPDKプロ
セスがコアを占有し、NICを
ポーリング、パケットの処理
を行う
Intel Architecture マシン
Linux
kernel
eth0 eth1
CPU1
DPDK
Process
CPU2
DPDK
Process
CPU3
DPDK
Process
CPU4
DPDK
Process
CPU5
22. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 22
vSRX
Linux
kernel
Intel DPDKのShowNetでの利用
• Intel DPDK対応の
Virtual Appliance
• Juniper Networks,
vSRX
• vCPEとして出展者
ネットワークを収容
• ToSフィールドの
書き換え
eth1
eth1
eth1
eth1
出展者収容アップリンク
Junos Control Plane
Data Plane with DPDK
23. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 23
まとめ
• スケールアウトするNFV
• 通るべきサービスの識別子をパケットに埋め込み、
• パケットI/O高速化技術を用いつつ、
• なるべく多くの同じVMを並べて性能を
スケールアウトする
Openflow
Switch
Openflow
Switch
Openflow
Switch
Openflow
Switch
24. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 24
他にも
• 本構成でOpenFlowのPacket-inを減らす手法
• VM以外のアプライアンスとの連携
• A10 Networks, Thunder 5435-tps
- DDoS mitigator
• NTT Communications, SAMURAI連携
• テスターによる性能計測
• などなど...
25. Copyright © INTEROP TOKYO 2015 ShowNet NOC Team 25
課題
• 性能
• 全くパケットロスをしない、というのは正直難しい
• 今回のように、スケールアウトなど構成に工夫が必要
• 安定性
• 汎用サーバと言っても実際には千差万別
• ハードの差異など、様々な部分によって問題が発生しうる
• リソース割り当ての最適化
• VAの種類によって、最適なコア数やメモリ量は異なる
• 利用するVAにあわせて、どの程度のスペックのHVにどの程度
の数のVAを同居させるか、詳細なチューニングが必須