Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo

1

Copyright©2018 NTT corp. All Rights Reserved.
Lagopus Router
v19.07.1
Lagopus Users Community
hibitomo

2

• Lagopusスイッチ(=OpenFlowスイッチ)
– OpenFlowスイッチのソフトウェア実装
– OpenFlow 1.3 + tunnelingをサポート
– I/OにDPDKを採用。高速パケット処理が可
– 汎用サーバを活用
– 2014.7からOSS
• Lagopusルータ(=ソフトウェアルータ)
– 疎結合型のモジュール構成のソフトルータ
– 新しいデータストアを採用(Openconfig)
– L2/L3, L2/L3 Tunnel, IPsec をサポート
– I/OにDPDKを採用。高速パケット処理が可
– 汎用サーバを活用
– 2017.7からOSS (2019.11にv19.07.1 をリリース。)
2
Lagopus とは?

3

• OpenFlowスイッチのソフトウェア実装
– 汎用x86サーバで動作可能
– OSSとして公開
• 高速なパケット処理と幅広いプロトコルに対応
– > 10Gbps
– OpenFlow1.3+tunneling
3
Lagopus Switch
OpenFlow コントローラ
コントロールプレーン
OpenFlow
プロトコル
OpenFlow スイッチ
データプレーン
Flow Table
フローパターン アクション
フローパターン アクション カウンター
カウンター
Flow
Table
#2
Flow
Table
#3
Flow
Table
#4

4

• 単純なポートフォワードを実施した場合のスループット
4
性能評価(Lagopus Switch)
CPU
E5-2697v2
2.70GHz
NIC Intel X520
メモリ 64GB OS Ubuntu 14.04LTS
CPU
E5-2667v3
3.20GHz
NIC Intel XL710
メモリ 64GB OS Ubuntu 14.04LTS
6.66
8.65
9.28 9.49 9.63 9.77 9.83 9.85 9.86
0
1
2
3
4
5
6
7
8
9
10
0 200 400 600 800 1000 1200 1400
Throughput(Gbps)
Packet size (byte)
Lagopus
Wire-rate
7.7
15.5
26.5
34.2
39.2 39.5
0
5
10
15
20
25
30
35
40
0 200 400 600 800 1000 1200 1400
Throughput(Gbps) Packet size (byte)
Lagopus
Wire-rate
10GbE 40GbE

5

5Copyright©2015 NTT corp. All Rights Reserved.
 Lagopus Switch から Lagopus Routerに
 OpenFlow Switchで開発した柔軟なフロー検索と処理に加え,様々なネット
ワーク制御系アプリやオーケストレーションと連携可能とする
• ルータの備える標準的なプロトコル制御機能
• オーバーレイネットワークを実現するVxLANやGRE
• 暗号化(IPsec)の終端機能
新Lagopus

6

6Copyright©2015 NTT corp. All Rights Reserved.
Lagopus routerの特徴
 既存インフラへの導入を容易とするSDN対応ソフトウェアルータ
 ルータとしての基本機能(経路交換、VRF、冗長化、管理/監視イン
タフェースなど)を備え、APIを利用して機能拡張も容易
SDNコントローラ
経路
交換
冗長化
管理
監視
提供したい
サービス
SDNスイッチ
SDNコントローラ
提供したいサービス
Lagopus
経路
交換
既存インフラへの接続のため様々な
アプリケーションの実装が必要
•提供したいサービスアプリのみ実装
•スイッチへの柔軟な機能拡張

7

性能
L3スループットIPsecスループット

8

Copyright©2018 NTT corp. All Rights Reserved.
 マイクロサービスを意識
したモジュール構成
 Openconfig による
データストア
– Pub/Sub によるコンフィグ
 外部エージェントの活用
– API の微修正により
DataPlane と連携が可能
 パケット処理の生産性向上
– FastPath → C言語
– SlowPath → Go言語
Lagopus router: アーキテクチャ
Lagopus Router
Routing
agent
VRRP
agent
IKE
agent
MAT
agent
Dataplane
Dataplane framework
Network
Interface
L2
(Bridging)
L3
(Routing)
IPsec
(crypto)
Config datastore
SDN controller/Orchestrator CLI
gRPC
gRPC or
NETLINK

9

Copyright©2018 NTT corp. All Rights Reserved.
• Openconfigd
– https://github.com/coreswitch/
openconfigd
– Commit & Rollback support
configuration system in
Zebra2.0
– Configuration is defined by
YANG model
– Automatically generates APIs
• gRPC
• CLI with completion/show/config
Config Datastore
Routing agentRouting agent
Router agent
gRPC
OpenConfigd
Yang
Auto
generateDBAPIs
CLIOrchestrator
Subscrive config subtree
with two-phase commit
Commits
/Results

10

10Copyright©2015 NTT corp. All Rights Reserved.
 Yang以上の制限を与えるモ
ジュール
 OpenStackにおけるCongress
 PolicyをDatalogで記述
 適切なトリガーを設定することで状
態を検証することができる
Lagolog: Restriction/Check of Config
Openconfig
d
Lagopus
D/C-plane
CLI
lagolog
1. ConfigのCommit
2. Config
Check
3. Commit
monitor
FACT

11

Copyright©2018 NTT corp. All Rights Reserved.
 Dataplane を構成する要素はクラスとして設計されている
 コンフィグに応じて、各要素のインスタンスが生成され接続する
Lagopus router: Dataplane設計
Dataplane class
L2 VSI
Bridge
L3 VRF
Router
TunnelETHDEV VIF
interfaces {
interface if0 {
config {
device
"0000:05:00.0";
...
}
subinterfaces {
subinterface 0 {
...
YANG ファイル
if0
if0-0
vrf1
if1-0
if0
Dataplane
tif0-0
NIC NIC

12

Copyright©2018 NTT corp. All Rights Reserved.
 Dataplane のインスタンスの
射影を Linux 上へ tap デバイス
として表示
 Linux アプリケーションは tap
経由で Lagopus router と
パケットの送受信が可能
– その tap の自宛パケットのみ
 tap に対して操作することで、
netlink を介し Lagopus router
が設定を反映
– VRFのルーティングテーブルと同期す
ることで、BGPやOSPF等のプロトコル
に対応
– ルックアップ処理自体は Lagopus
router が実行
Lagopus router: Modularity
if0
if0-0
vrf1
if1-0
if0
Lagopus router Dataplane
tif0-0
if0-0 vrf1 if1-0 tif0-0
netlink
zebra2
Linux
strong
Swan
your-own
application ・・・

13

Copyright©2018 NTT corp. All Rights Reserved.
対応機能&スペック
大項目 小項目 詳細 備考
L2
スイッチング
学習スイッチ,FDBエントリ数65536,
インターフェース数32(スイッチ毎)
複数スイッチ スイッチ数256
VLAN VLAN数4096
L3(IPv4)
ルーティング
経路数10万(VRF毎),インターフェー
ス数32(VRF毎)
BGP EBGP,IBGP zebra2利用
OSPF zebra2利用
VRF VRF数256
NAPT
PBR 5tupleベースルーティング
L3(IPv6) ルーティング
トンネル
IPsec セッション数2048
IKEv1/v2,
strongSwan利用
IP in IP セッション数2048
L2 GRE セッション数2048
L3 GRE セッション数2048
VxLAN
セッション数2048,多地点接続対応
(MAC学習対応,非マルチキャスト)
冗長化 VRRP VRRPv2
ログ ログ syslog/file/console出力、レベル指定
※薄字は開発中
機能要望・要件・
ユースケース募集中

14

Copyright©2018 NTT corp. All Rights Reserved.
https://lagopus.org からアクセスできます
旧バージョンなので個別に連絡ください;;;;
Lagopus ルータ book

15

• ・howNet設備の全てのNW機器のログを終端し、モニタリング機能群及び、パブ
リッククラウド(MS Azure)上へIPsecトンネル経由で配送するパケットブローカー
として機能
• ・会期中、ローカルNW/パブリッククラウドの両環境での安定動作を確認
17
ShowNet with Lagopus Switch/Router
ShowNet設備に組み込まれたLagopus
ShowNetにおけるLagopusの役割

16

Copyright©2018 NTT corp. All Rights Reserved.
今後の方向
Lagopus Switch
 機能追加予定なし
 OpenFlow1.3がマッチするユースケースがあれば提案
Lagopus Router
 ちょっと速いIPsecゲートウェイ
 SD-WAN対応Data-planeのOSS
 どんな機能が欲しいですか?
– XDPやP4みたいな機能があれば使うか?
– やはりコンテナとつながないと難しい?

17

Copyright©2018 NTT corp. All Rights Reserved.
ご清聴ありがとうございました
19
########
## ;;;; ##
## #### ##
#### ##
## ## ####
##### ######## ##
############## ## ##
### ######## ## ##
#### ## ## ## #### ##
#### ## ## ## ## ##
###### #### ####
#### #### ##########
####################
mmmm ##
##########

More Related Content

Lagopus Router v19.07.1

  • 1. Copyright©2018 NTT corp. All Rights Reserved. Lagopus Router v19.07.1 Lagopus Users Community hibitomo
  • 2. • Lagopusスイッチ(=OpenFlowスイッチ) – OpenFlowスイッチのソフトウェア実装 – OpenFlow 1.3 + tunnelingをサポート – I/OにDPDKを採用。高速パケット処理が可 – 汎用サーバを活用 – 2014.7からOSS • Lagopusルータ(=ソフトウェアルータ) – 疎結合型のモジュール構成のソフトルータ – 新しいデータストアを採用(Openconfig) – L2/L3, L2/L3 Tunnel, IPsec をサポート – I/OにDPDKを採用。高速パケット処理が可 – 汎用サーバを活用 – 2017.7からOSS (2019.11にv19.07.1 をリリース。) 2 Lagopus とは?
  • 3. • OpenFlowスイッチのソフトウェア実装 – 汎用x86サーバで動作可能 – OSSとして公開 • 高速なパケット処理と幅広いプロトコルに対応 – > 10Gbps – OpenFlow1.3+tunneling 3 Lagopus Switch OpenFlow コントローラ コントロールプレーン OpenFlow プロトコル OpenFlow スイッチ データプレーン Flow Table フローパターン アクション フローパターン アクション カウンター カウンター Flow Table #2 Flow Table #3 Flow Table #4
  • 4. • 単純なポートフォワードを実施した場合のスループット 4 性能評価(Lagopus Switch) CPU E5-2697v2 2.70GHz NIC Intel X520 メモリ 64GB OS Ubuntu 14.04LTS CPU E5-2667v3 3.20GHz NIC Intel XL710 メモリ 64GB OS Ubuntu 14.04LTS 6.66 8.65 9.28 9.49 9.63 9.77 9.83 9.85 9.86 0 1 2 3 4 5 6 7 8 9 10 0 200 400 600 800 1000 1200 1400 Throughput(Gbps) Packet size (byte) Lagopus Wire-rate 7.7 15.5 26.5 34.2 39.2 39.5 0 5 10 15 20 25 30 35 40 0 200 400 600 800 1000 1200 1400 Throughput(Gbps) Packet size (byte) Lagopus Wire-rate 10GbE 40GbE
  • 5. 5Copyright©2015 NTT corp. All Rights Reserved.  Lagopus Switch から Lagopus Routerに  OpenFlow Switchで開発した柔軟なフロー検索と処理に加え,様々なネット ワーク制御系アプリやオーケストレーションと連携可能とする • ルータの備える標準的なプロトコル制御機能 • オーバーレイネットワークを実現するVxLANやGRE • 暗号化(IPsec)の終端機能 新Lagopus
  • 6. 6Copyright©2015 NTT corp. All Rights Reserved. Lagopus routerの特徴  既存インフラへの導入を容易とするSDN対応ソフトウェアルータ  ルータとしての基本機能(経路交換、VRF、冗長化、管理/監視イン タフェースなど)を備え、APIを利用して機能拡張も容易 SDNコントローラ 経路 交換 冗長化 管理 監視 提供したい サービス SDNスイッチ SDNコントローラ 提供したいサービス Lagopus 経路 交換 既存インフラへの接続のため様々な アプリケーションの実装が必要 •提供したいサービスアプリのみ実装 •スイッチへの柔軟な機能拡張
  • 8. Copyright©2018 NTT corp. All Rights Reserved.  マイクロサービスを意識 したモジュール構成  Openconfig による データストア – Pub/Sub によるコンフィグ  外部エージェントの活用 – API の微修正により DataPlane と連携が可能  パケット処理の生産性向上 – FastPath → C言語 – SlowPath → Go言語 Lagopus router: アーキテクチャ Lagopus Router Routing agent VRRP agent IKE agent MAT agent Dataplane Dataplane framework Network Interface L2 (Bridging) L3 (Routing) IPsec (crypto) Config datastore SDN controller/Orchestrator CLI gRPC gRPC or NETLINK
  • 9. Copyright©2018 NTT corp. All Rights Reserved. • Openconfigd – https://github.com/coreswitch/ openconfigd – Commit & Rollback support configuration system in Zebra2.0 – Configuration is defined by YANG model – Automatically generates APIs • gRPC • CLI with completion/show/config Config Datastore Routing agentRouting agent Router agent gRPC OpenConfigd Yang Auto generateDBAPIs CLIOrchestrator Subscrive config subtree with two-phase commit Commits /Results
  • 10. 10Copyright©2015 NTT corp. All Rights Reserved.  Yang以上の制限を与えるモ ジュール  OpenStackにおけるCongress  PolicyをDatalogで記述  適切なトリガーを設定することで状 態を検証することができる Lagolog: Restriction/Check of Config Openconfig d Lagopus D/C-plane CLI lagolog 1. ConfigのCommit 2. Config Check 3. Commit monitor FACT
  • 11. Copyright©2018 NTT corp. All Rights Reserved.  Dataplane を構成する要素はクラスとして設計されている  コンフィグに応じて、各要素のインスタンスが生成され接続する Lagopus router: Dataplane設計 Dataplane class L2 VSI Bridge L3 VRF Router TunnelETHDEV VIF interfaces { interface if0 { config { device "0000:05:00.0"; ... } subinterfaces { subinterface 0 { ... YANG ファイル if0 if0-0 vrf1 if1-0 if0 Dataplane tif0-0 NIC NIC
  • 12. Copyright©2018 NTT corp. All Rights Reserved.  Dataplane のインスタンスの 射影を Linux 上へ tap デバイス として表示  Linux アプリケーションは tap 経由で Lagopus router と パケットの送受信が可能 – その tap の自宛パケットのみ  tap に対して操作することで、 netlink を介し Lagopus router が設定を反映 – VRFのルーティングテーブルと同期す ることで、BGPやOSPF等のプロトコル に対応 – ルックアップ処理自体は Lagopus router が実行 Lagopus router: Modularity if0 if0-0 vrf1 if1-0 if0 Lagopus router Dataplane tif0-0 if0-0 vrf1 if1-0 tif0-0 netlink zebra2 Linux strong Swan your-own application ・・・
  • 13. Copyright©2018 NTT corp. All Rights Reserved. 対応機能&スペック 大項目 小項目 詳細 備考 L2 スイッチング 学習スイッチ,FDBエントリ数65536, インターフェース数32(スイッチ毎) 複数スイッチ スイッチ数256 VLAN VLAN数4096 L3(IPv4) ルーティング 経路数10万(VRF毎),インターフェー ス数32(VRF毎) BGP EBGP,IBGP zebra2利用 OSPF zebra2利用 VRF VRF数256 NAPT PBR 5tupleベースルーティング L3(IPv6) ルーティング トンネル IPsec セッション数2048 IKEv1/v2, strongSwan利用 IP in IP セッション数2048 L2 GRE セッション数2048 L3 GRE セッション数2048 VxLAN セッション数2048,多地点接続対応 (MAC学習対応,非マルチキャスト) 冗長化 VRRP VRRPv2 ログ ログ syslog/file/console出力、レベル指定 ※薄字は開発中 機能要望・要件・ ユースケース募集中
  • 14. Copyright©2018 NTT corp. All Rights Reserved. https://lagopus.org からアクセスできます 旧バージョンなので個別に連絡ください;;;; Lagopus ルータ book
  • 15. • ・howNet設備の全てのNW機器のログを終端し、モニタリング機能群及び、パブ リッククラウド(MS Azure)上へIPsecトンネル経由で配送するパケットブローカー として機能 • ・会期中、ローカルNW/パブリッククラウドの両環境での安定動作を確認 17 ShowNet with Lagopus Switch/Router ShowNet設備に組み込まれたLagopus ShowNetにおけるLagopusの役割
  • 16. Copyright©2018 NTT corp. All Rights Reserved. 今後の方向 Lagopus Switch  機能追加予定なし  OpenFlow1.3がマッチするユースケースがあれば提案 Lagopus Router  ちょっと速いIPsecゲートウェイ  SD-WAN対応Data-planeのOSS  どんな機能が欲しいですか? – XDPやP4みたいな機能があれば使うか? – やはりコンテナとつながないと難しい?
  • 17. Copyright©2018 NTT corp. All Rights Reserved. ご清聴ありがとうございました 19 ######## ## ;;;; ## ## #### ## #### ## ## ## #### ##### ######## ## ############## ## ## ### ######## ## ## #### ## ## ## #### ## #### ## ## ## ## ## ###### #### #### #### #### ########## #################### mmmm ## ##########