Mais conteúdo relacionado
Semelhante a Lagopus workshop@Internet weekのそば (20)
Lagopus workshop@Internet weekのそば
- 1. 0Copyright©2015 NTT corp. All Rights Reserved.
Lagopus Workshop
@Internet Weekの近く
中島佳宏
Lagopus User Community
http://lagopus.github.io/
This research is partially supported by “Research and Development of Network Virtualization Technology”
program commissioned by the Ministry of Internal Affairs and Communications.
- 2. 1Copyright©2015 NTT corp. All Rights Reserved.
Agenda
Lagopusの状況報告
Lagopusの概要
Lagopus version 0.2 (現在のバージョン)
Lagopusの適用
Lagopusの今後の拡張
Lagopusの設定の仕方
Configuration (沖さん)
Lagopusのmininet対応
Live demo (日比さん)
SDN/OpenFlowお悩み相談
フリーディスカッション
- 4. 3Copyright©2015 NTT corp. All Rights Reserved.
Lagopusプロジェクトの目的
NFVやSDNを実現するソフトウエアコンポーネントを提供
スイッチエージェント (OpenFlow, REST)
高速なソフトウエアデータプレーン
柔軟・拡張可能なスイッチ設定機構
高速I/Oライブラリ (DPDK)
外部システム連携ライブラリ (クラウドミドルウエア・補助ツール)
Network I/O ハードウエア拡張
ソフトウエアパケット処理の適応領域の拡大
キャリア・ネットワークでも活用可能な高いスケーラビリティ性
運用を容易にする高可用性・保守成性の向上
ネットワーク研究のツール・ライブラリとしての活用促進
高速検索、QoSコンポーネント、次世代ネットワーキングの拡張
- 5. 4Copyright©2015 NTT corp. All Rights Reserved.
Lagopusの概要
OpenFlow 1.3に最も適応したソフトウエアスイッチ
複数のプロトコルフレーム処理の対応
• Ethernet, Mac in MAC, MPLS, PBB, IPv4, IPv6…
複数Flow tableやグループテーブルへの対応
QoS機能 (queue, policer, meter table)
DPDKを活用した高性能データプレーン
10Gbpsを超えるパケット処理・転送性能 (20MPPS以上)
100万フローエントリへの対応 (4K flow mod/sec)
外部連携API
CLIやJSONによるスイッチ構成設定
• Flow設定、統計情報・状況把握
- 6. 5Copyright©2015 NTT corp. All Rights Reserved.
Lagopus vSwitchの構成
switch configuration datastore
(config/stats API, SW DSL)
FPGA NIC DPDK NIC
DPDK libs/PMD driver
Lagopus soft dataplane
flow lookup flow cache
OpenFlow pipeline
queue/
policer
Flow table
Flow table
flow table
Flow table
Flow tableGroup
table
Flow table
Flow tablemeter
table
switch HAL
OpenFlow1.3
agent
JSON IF
SNMP
CLI
OVSDB
NET
CONF
L2bridge
L3
(IPv4ICMP)
SDN switch Agent
• Full OpenFlow 1.3.4 support
• Controller-less basic L2 and
L3 support
SDN-aware
management API
• OVSDB, REST
• Ansible support
DPDK-enabled
soft dataplane
• Over-10-Gbps
performance
• Low latency packet
processing
• high performance
multi-layer flow lookup
DPDK-enabled
vNIC for NFV
(virtq-pmd)
Switch configuration
datastore
• Pub/sub mechanism
• Switch config DSL
• JSON IF support
Soft-dataplane
aware FPGA NIC
- 7. 6Copyright©2015 NTT corp. All Rights Reserved.
Lagopus project overview
Software dataplane Hardware dataplane
SDN controller
SDN Switch agent
Dataplane
Hardware
design
Ryu SDN framework
Lagopus OF sw agent (OF1.3, OF-CONFIG, OVSDB)
Lagopus switch configuration datastore
High performance dataplane
DPDK extension (accelerator, virtual NIC)
40GbE
FPGA NIC
Future NIC
Open switch abstraction layer
100G NIC
Opendaylight
- 9. 8Copyright©2015 NTT corp. All Rights Reserved.
OpenFlow 1.3 agent
Stability improved under high load
OpenFlow 1.3 software dataplane
Queue port support (TCTRM-based QoS queue)
Jumbo frame (9KB) support
DPDK 2.0 (1.8 – latest) support
• Linux and FreeBSD
Mix configuration support of raw-socket port & dpdk port
New flow classification algorithm (mbtree)
New flow cache algorithm
• Hashmap_nolock, hashmap, ptree, rte_hash
Performance improvement
• Small latency when low traffic
• Checksum calculation optimization when set-filed to L3, L4 fileds
Bugfix
• Padding in case of short packet size
Lagopus version 0.2 (1/2)
- 10. 9Copyright©2015 NTT corp. All Rights Reserved.
Management
DSL/JSON IF
Newly-designed switch configuration datastore
Merchant switch ASIC control support
Broadcom Switch ASIC integration with OF-DPA
• Broadcom Trident series switch
– Tested platform (InterfaceMaster, Quanta, Advantech)
• MPLS-capable LSP switch
– IP-VPN/MPLS, SPRING with stacked LSP
• Software available when OF-DPA 2.0 is released
Lagopus version 0.2 (2/2)
- 12. 11Copyright©2015 NTT corp. All Rights Reserved.
半透明人間カメラ × Lagopus
講義中,先生の影が邪魔になって板書しにくい
-> 先生を半透明にする
撮影,半透明化,表示の3サーバでシステムを構成
映像はUDP送受信
映像切替をLagopusにオフロード!
先生で板書できない! 先生を半透明に!
- 13. 12Copyright©2015 NTT corp. All Rights Reserved.
半透明人間カメラ × Lagopus
パターンA:通常表示
カメラからのパケットを半透明化サーバとモニタに送信
宛先MAC,IP,portを書き換えマルチキャスト)
半透明化サーバからのパケットはdrop
パターンB:半透明化
カメラからのパケットを半透明化サーバに送信
半透明化サーバからのパケットをモニタに送信
(パケットの宛先は適宜書き換える)
カメラ モニタ
半透明人間化
パターンA
パターンB
- 14. 13Copyright©2015 NTT corp. All Rights Reserved.
SDN Japan 2014の会場ネットワーク
前に座れば仕事がさくさく
アク セスポイ ント
■ A Pの識別(V LA N )
■ V ID 毎にQoS制御
PoEスイッチ
インターネット
アクセスポイント
( AP)
La g op u sの役割
- 15. 14Copyright©2015 NTT corp. All Rights Reserved.
SDN IX
@ Interop Tokyo 2015 ShowNet
Thanks to NECOMA project
(NAIST & University of Tokyo)
- 16. 15Copyright©2015 NTT corp. All Rights Reserved.
SDN IXの背景
IX (Internet eXchange)
インターネットサービス・プロバイダ (ISP) 間の
L2での接続ポイント
• ISP間のパブリックな接続・プライベート接続
やりたいことや困っていること
接続設定の自動化とポータル化、API提供
DDoS トラヒックを削減・止めたい
• リンク帯域を食い尽くすことも
• 入り口でDDoSトラヒックをdrop
• 外部のDPI装置やFlowSpecとの連携
IX
ISP-CISP A ISP-DISP B
SW
SWSW
SW
ISP-EISP F
IX
ISP-CISP A ISP-DISP B
SW
SWSW
SW
ISP-EISP F
- 17. 16Copyright©2015 NTT corp. All Rights Reserved.
SDN IXとは?
Next generation IX with SDN technology
Web portal-based path provisioning between ISPs
• Inter-AS L2 connectivity
– VLAN-based path provisioning
– Private peer provisioning
Protect network from DDoS attack
• On-demand 5-tuple-baesd packet filtering
SDN IX controller and distributed SDN/OpenFlow IX core switch
Developed by NECOMA project
(NAIST and University of Tokyo)
ISP-CISP A ISP-DISP B
ISP-EISP F
ISP-CISP A ISP-DISP B
SW
SWSW
SW
ISP-EISP F
- 18. 17Copyright©2015 NTT corp. All Rights Reserved.
2台のLagopusを設置@大手町と幕張
アキバで買えるIntel Xeonサーバ
• 2 x Xeon E5 (Sandy-bridge) 8core CPU
• 6 x 10GbE NIC
Lagopus @ ShowNet 2015
- 20. 19Copyright©2015 NTT corp. All Rights Reserved.
平均2Gbps throughput
パケットドロップは発生なし
ときたま10Gbpsのトラヒックにも耐えた
Interop Tokyo会期中リブートなし & トラブルなし
Lagopus@幕張を通ったトラヒック
- 21. 20Copyright©2015 NTT corp. All Rights Reserved.
Segment Routing with MPLS
by Lagopus + Routing Stack
Source/location-aware traffic control with scalable
software-defined networking with MPLS and NFV
appliance
- 22. 21Copyright©2015 NTT corp. All Rights Reserved.
SPRING using MPLS
集中制御と分散制御のいいところどりのNWアーキテクチャ
MPLSネットワークの簡易化 + ラベルスタックベースの転送
ラベルスタックに基づいたパケット転送
Segment Routing, Source routing
NFVとの連携が可能
何につかえるの?
ポリシールーティング
• 最短ルートやパス制御との連携
サービスチェイニング
• 特定のソースやロケーション及びフローに対しての適応
- 23. 22Copyright©2015 NTT corp. All Rights Reserved.
エッジルータが転送パスと
ポリシーを表現する
ラベルスタックをプッシュ
ポリシー管理は上位のマネージメント
ツールに基づく制御
Pルータはラベルに基づき
パケット転送
パス計算は各ルータにおけるCSPF
ベースによる最短経路転送
リンクダウンへの対応は各時
SPRINGの動作
- 24. 23Copyright©2015 NTT corp. All Rights Reserved.
SPRING implementation with Ryu & Lagopus
Quagga
OSPF-
SR
Lagopus
DPDK
X86 CPU/NIC
Ryu
OpenFlow
IPC
OSPF-SR
U-plane
Soft Switch
Quagga
OSPF-
SR
Lagopus
DPDK
X86 CPU/NIC
Ryu
OpenFlow
IPC
Soft Switch
Policy management
Virtual Network
Managment
RESTREST
Tap IF Tap IF
- 25. 24Copyright©2015 NTT corp. All Rights Reserved.
SPRINGの PoC
ロケーション指向のパケット転送+サービスチェイニング
複数の仮想NW
Enterpise intra network
• Web service and clients
• Untrusted site blocking by NFV service
Lab network
• Policy management
• Explicit routing for TE
lago0-0
lago0-1 lago1-1
lago1-0
lago2-1
lago2-0
nfv0
win00
Serv01
Serv00
win01
p1
p1
vFW vFW
web
Untrusted server
block service
lago0
-0
lago0
-1
lago1
-1
lago1
-0
lago2
-1
lago2
-0
nfv0
Ixia
p
3
vFW vFW
Ixia
- 27. 26Copyright©2015 NTT corp. All Rights Reserved.
Y2013 Y2014 Y2015 Y2016 -
Control plane
Management plane
Data plane
Lagopus development and plan
OF1.3 agent
High-performance
software dataplane
with DPDK
(static pipeline
configuration)
Switch config/mngmt
Db prototype
OF-CONFIG,
CLI, SNMP
prototypes
Flexible reconfigurable
pipeline in dataplane
Tunnel protocol
(VxLAN, GRE,
MPLS pseudo-
wire)
40Gbps-capable
Soft dataplane
Switch ASIC
Extensible switch resource
Management/configuration
datastore
(CLI, OF-CONFIG, SNMP)
OF1.5 agent
Legacy protocol support
Hybrid SDN
Disaggregation in
networking
High−availability &
Failover support
Security features
(Ipsec, DTLS)
High-scalability
Over-100Gbps
software dataplane
OpenStack
Adaptation
Switch configuration
rewrite?
Switch agent
framework
- 28. 27Copyright©2015 NTT corp. All Rights Reserved.
1. 100-Gbps対応high-performance software dataplane
FlowDirectorの拡張
Intel FM10K, Mellanox
2. トンネルプロトコルへの対応
Encap/decap for VPLS or VPWS
• MPLS, VxLAN, GREサポートにむけたtunnelのof instructionを追加予定(独自)
3. Hybrid SDN向けのOpenFlow switch拡張
Tap IFを用いたOSのnework stackとの連携
Netlinkによるswitch設定
4. OpenStack/Libvirtへの対応
Docker環境への対応
取り組む項目
- 29. 28Copyright©2015 NTT corp. All Rights Reserved.
Lagopus vSwitchの構成
switch configuration datastore
(config/stats API, SW DSL)
FPGA NIC DPDK NIC
DPDK libs/PMD driver
Lagopus soft dataplane
flow lookup flow cache
OpenFlow pipeline
queue/
policer
Flow table
Flow table
flow table
Flow table
Flow tableGroup
table
Flow table
Flow tablemeter
table
switch HAL
OpenFlow1.3
agent
JSON IF
SNMP
CLI
OVSDB
NET
CONF
L2bridge
L3
(IPv4ICMP)
SDN switch Agent
- Tunnel対応
SDN-aware
management API
- REST API
DPDK-enabled
soft dataplane
- 100Gbps
- 40Gbps
- ARM対応
- Hybrid対応
Docker対応
Switch configuration
datastore
- 書き直し?
Soft-dataplane
aware FPGA NIC