狠狠撸

狠狠撸Share a Scribd company logo
? BIGLOBE Inc. 2017
お?軽!
BGP RIBのリアルタイム解析+可視化
BIGLOBE Inc.
Toshiya Mabuchi
1
? BIGLOBE Inc. 2017
? BIGLOBE Inc. 20172
??紹介
● 名前 : ?淵 俊弥 (Mabuchi Toshiya)
● 所属 : ビッグローブ株式会社
● お仕事 :
● ISPバックボーンネットワークの全般
● 設計/開発/検証/運?/顧客サポート
● 最近は?動化/可視化回りに注?中!
? BIGLOBE Inc. 20173
ASの経路監視ってどうしてます?
? BIGLOBE Inc. 20174
監視したい理由
● 運??
● 障害時の原因究明
● 顧客の経路変動/正常性
● 主要なPeerの経路変動
● Peerしてるのに上流から?
流れてないか
● 遅延の?きいPeerを?
選択してないか?
● マネジメント?
● 上流トランジットへの?
経路依存率の把握
● ?軽に?れるようにして?
Peering交渉に役?てる
● すぐに出せるグラフがあると?
KPIにも役?つ
● 上流トランジットの選定/?
更改時に使う為のデータ
? BIGLOBE Inc. 20175
経路情報を?るのは運?の時だけじゃない
トランジット依存率の指標など?
コストマネジメントの?的でも使いたい
? BIGLOBE Inc. 20176
いままで経路記録としてやっていたこと
● Quagga + MRT Dump + libBGPdump
● データとしては記録できている
● 時間毎にファイル分割して保存している
● ?字でしか読めないので、?
時系列で何が起きているか?るのがつらい
● いつも?るのにはちょっと厳しい
● かなりの障害が発?した時くらいしか?ない
? BIGLOBE Inc. 20177
こういう感じ経路情報のログを?てた
>	bgpdump	dump2015.11.27.1000	
TIME:	11/27/15	01:00:00	
TYPE:	TABLE_DUMP_V2/IPV4_UNICAST	
PREFIX:	1.0.0.0/24	
SEQUENCE:	0	
FROM:	133.205.1.155	AS2518	
ORIGINATED:	07/13/70	11:03:57	
ORIGIN:	IGP	
ASPATH:	2518	15169	
NEXT_HOP:	133.205.1.155	
MULTI_EXIT_DISC:	100	
TIME:	11/27/15	01:00:00	
TYPE:	TABLE_DUMP_V2/IPV4_UNICAST	
PREFIX:	1.0.0.0/24	
SEQUENCE:	0	
FROM:	133.205.1.142	AS2518	
ORIGINATED:	07/13/70	11:03:37
? BIGLOBE Inc. 20178
新しい経路をモニタリングするものがほしい
● 要件!
● グラフとして表?できる
● リアルタイム性がある
● 他の情報(トラフィック等)と?元的に?
?る?法がある
● そんなに難しいことしたくない
? BIGLOBE Inc. 20179
BMP
● BGP Monitoring Protocol
● BGPのUPDATE情報等をモニタリングできるプロトコル
● これを使わない?は無い!?
● ???しかし!!!
● 商?ルーターのバージョンで?部?対応?
→ すぐには使えない
? BIGLOBE Inc. 201710
回避策
● iBGPで経路を収集する
● 経路収集?にGoBGPを?てる
● GoBGPとルータをiBGPで繋ぐ
● GoBGPからBMP Serverに送信
ルータ単位で発?する経路変動は収集できる!
? BIGLOBE Inc. 201711
iBGPで経路を収集
Core Core
gateway gateway
gateway gateway
GoBGP
BMP
Server
iBGP
iBGP
iBGP
iBGP
BMP
pre-policy
? BIGLOBE Inc. 201712
BMP Server
● SNAS ?
http://www.snas.io/
● 経路情報モニタリングのフレームワーク
● OpenBMP + Kafka + MySQL + WebUI で構成
● 経路?モニタリングのWebUIが付いている
● APIも豊富でデータを加?して使いやすい
● Docker containerで構築が簡単
Streaming Network Analytics System
? BIGLOBE Inc. 201713
SNAS UI
? BIGLOBE Inc. 201714
SNAS UI
? BIGLOBE Inc. 201715
SNAS UI
? BIGLOBE Inc. 201716
SNAS UI
? BIGLOBE Inc. 201717
SNAS
今までに?べたらかなり分かりやすい!
? BIGLOBE Inc. 201718
(再掲)監視したい理由
● 運??
● 障害時の原因究明
● 顧客の経路変動/正常性
● 主要なPeerの経路変動
● Peerしてるのに上流から?
流れてないか
● 遅延の?きいPeerを?
選択してないか?
● トラフィック + 経路変動?
?緒に?たい
● ?緒に?れば分かる原因もある
●マネジメント?
● 上流トランジットへの?
経路依存率の把握
● ?軽に?れるようにして?
Peering交渉に役?てる
● すぐに出せるグラフがあると?
KPI?てるのとかにも役?つ
● 上流トランジットの選定/?
更改時に使う為のデータ
● いつでも出せるようにしたい
? BIGLOBE Inc. 201718
(再掲)監視したい理由
● 運??
● 障害時の原因究明
● 顧客の経路変動/正常性
● 主要なPeerの経路変動
● Peerしてるのに上流から?
流れてないか
● 遅延の?きいPeerを?
選択してないか?
● トラフィック + 経路変動?
?緒に?たい
● ?緒に?れば分かる原因もある
●マネジメント?
● 上流トランジットへの?
経路依存率の把握
● ?軽に?れるようにして?
Peering交渉に役?てる
● すぐに出せるグラフがあると?
KPI?てるのとかにも役?つ
● 上流トランジットの選定/?
更改時に使う為のデータ
● いつでも出せるようにしたい
?社特有の観点が?ると、?
標準のWebUIでは?にくい場合もある
定常的に?るデータだけをAPIで取得?
Influxdb + Grafanaで可視化
? BIGLOBE Inc. 201719
最終的な構成
Core Core
gateway gateway
gateway gateway
GoBGP
Open
BMP
iBGP
iBGP
iBGP
iBGP
データ整形
Influxdb
Grafana
? BIGLOBE Inc. 201720
作った経路監視?のDashboard
? BIGLOBE Inc. 201721
作った経路監視?のDashboard
上流トランジット依存率
特定ピアの状態監視
Update/Withdrawn発?数 上流トランジット経路監視
顧客経路の状態監視
Update/Withdrawn詳細
? BIGLOBE Inc. 201722
複数ピアをしているAS**の合計トラフィック
経路の選択割合の遷移監視
作った経路監視?のDashboard
? BIGLOBE Inc. 201723
良かった点と改善点
● 良かった点
● 注視すべき経路情報に絞って監視できた
● Traffic/Error等,他情報と合わせて確認できるようになった
● 実装したのはDB間のデータ送受信部だけ
● ?常に少ない?間で実装可能
● 改善点
● 各ルータ毎のBestPathしか?れない
● BGP ADD-PATHを使ってGoBGPと各ルータを繋ぐ
● (GoBGP中の?)「 BGP ADD-PATH実装したよ!」
● BMPを直接使う
? BIGLOBE Inc. 201724
まとめ
● 経路状態は運?以外にも使える
● Peering/KPI
● 経路監視をGoBGP+openBMP+Influxdbへ
● 経路収集はiBGP
● SNAS (OpenBMP)
● ?分でUI作らなくても、?分なWebUIがある
● 注視すべき情報のみREST APIでInfluxdbに投?
● Grafanaで他のデータと?元的に可視化ができた

More Related Content

お手軽!BGP RIBのリアルタイム解析+可視化

  • 1. ? BIGLOBE Inc. 2017 お?軽! BGP RIBのリアルタイム解析+可視化 BIGLOBE Inc. Toshiya Mabuchi 1 ? BIGLOBE Inc. 2017
  • 2. ? BIGLOBE Inc. 20172 ??紹介 ● 名前 : ?淵 俊弥 (Mabuchi Toshiya) ● 所属 : ビッグローブ株式会社 ● お仕事 : ● ISPバックボーンネットワークの全般 ● 設計/開発/検証/運?/顧客サポート ● 最近は?動化/可視化回りに注?中!
  • 3. ? BIGLOBE Inc. 20173 ASの経路監視ってどうしてます?
  • 4. ? BIGLOBE Inc. 20174 監視したい理由 ● 運?? ● 障害時の原因究明 ● 顧客の経路変動/正常性 ● 主要なPeerの経路変動 ● Peerしてるのに上流から? 流れてないか ● 遅延の?きいPeerを? 選択してないか? ● マネジメント? ● 上流トランジットへの? 経路依存率の把握 ● ?軽に?れるようにして? Peering交渉に役?てる ● すぐに出せるグラフがあると? KPIにも役?つ ● 上流トランジットの選定/? 更改時に使う為のデータ
  • 5. ? BIGLOBE Inc. 20175 経路情報を?るのは運?の時だけじゃない トランジット依存率の指標など? コストマネジメントの?的でも使いたい
  • 6. ? BIGLOBE Inc. 20176 いままで経路記録としてやっていたこと ● Quagga + MRT Dump + libBGPdump ● データとしては記録できている ● 時間毎にファイル分割して保存している ● ?字でしか読めないので、? 時系列で何が起きているか?るのがつらい ● いつも?るのにはちょっと厳しい ● かなりの障害が発?した時くらいしか?ない
  • 7. ? BIGLOBE Inc. 20177 こういう感じ経路情報のログを?てた > bgpdump dump2015.11.27.1000 TIME: 11/27/15 01:00:00 TYPE: TABLE_DUMP_V2/IPV4_UNICAST PREFIX: 1.0.0.0/24 SEQUENCE: 0 FROM: 133.205.1.155 AS2518 ORIGINATED: 07/13/70 11:03:57 ORIGIN: IGP ASPATH: 2518 15169 NEXT_HOP: 133.205.1.155 MULTI_EXIT_DISC: 100 TIME: 11/27/15 01:00:00 TYPE: TABLE_DUMP_V2/IPV4_UNICAST PREFIX: 1.0.0.0/24 SEQUENCE: 0 FROM: 133.205.1.142 AS2518 ORIGINATED: 07/13/70 11:03:37
  • 8. ? BIGLOBE Inc. 20178 新しい経路をモニタリングするものがほしい ● 要件! ● グラフとして表?できる ● リアルタイム性がある ● 他の情報(トラフィック等)と?元的に? ?る?法がある ● そんなに難しいことしたくない
  • 9. ? BIGLOBE Inc. 20179 BMP ● BGP Monitoring Protocol ● BGPのUPDATE情報等をモニタリングできるプロトコル ● これを使わない?は無い!? ● ???しかし!!! ● 商?ルーターのバージョンで?部?対応? → すぐには使えない
  • 10. ? BIGLOBE Inc. 201710 回避策 ● iBGPで経路を収集する ● 経路収集?にGoBGPを?てる ● GoBGPとルータをiBGPで繋ぐ ● GoBGPからBMP Serverに送信 ルータ単位で発?する経路変動は収集できる!
  • 11. ? BIGLOBE Inc. 201711 iBGPで経路を収集 Core Core gateway gateway gateway gateway GoBGP BMP Server iBGP iBGP iBGP iBGP BMP pre-policy
  • 12. ? BIGLOBE Inc. 201712 BMP Server ● SNAS ? http://www.snas.io/ ● 経路情報モニタリングのフレームワーク ● OpenBMP + Kafka + MySQL + WebUI で構成 ● 経路?モニタリングのWebUIが付いている ● APIも豊富でデータを加?して使いやすい ● Docker containerで構築が簡単 Streaming Network Analytics System
  • 13. ? BIGLOBE Inc. 201713 SNAS UI
  • 14. ? BIGLOBE Inc. 201714 SNAS UI
  • 15. ? BIGLOBE Inc. 201715 SNAS UI
  • 16. ? BIGLOBE Inc. 201716 SNAS UI
  • 17. ? BIGLOBE Inc. 201717 SNAS 今までに?べたらかなり分かりやすい!
  • 18. ? BIGLOBE Inc. 201718 (再掲)監視したい理由 ● 運?? ● 障害時の原因究明 ● 顧客の経路変動/正常性 ● 主要なPeerの経路変動 ● Peerしてるのに上流から? 流れてないか ● 遅延の?きいPeerを? 選択してないか? ● トラフィック + 経路変動? ?緒に?たい ● ?緒に?れば分かる原因もある ●マネジメント? ● 上流トランジットへの? 経路依存率の把握 ● ?軽に?れるようにして? Peering交渉に役?てる ● すぐに出せるグラフがあると? KPI?てるのとかにも役?つ ● 上流トランジットの選定/? 更改時に使う為のデータ ● いつでも出せるようにしたい
  • 19. ? BIGLOBE Inc. 201718 (再掲)監視したい理由 ● 運?? ● 障害時の原因究明 ● 顧客の経路変動/正常性 ● 主要なPeerの経路変動 ● Peerしてるのに上流から? 流れてないか ● 遅延の?きいPeerを? 選択してないか? ● トラフィック + 経路変動? ?緒に?たい ● ?緒に?れば分かる原因もある ●マネジメント? ● 上流トランジットへの? 経路依存率の把握 ● ?軽に?れるようにして? Peering交渉に役?てる ● すぐに出せるグラフがあると? KPI?てるのとかにも役?つ ● 上流トランジットの選定/? 更改時に使う為のデータ ● いつでも出せるようにしたい ?社特有の観点が?ると、? 標準のWebUIでは?にくい場合もある 定常的に?るデータだけをAPIで取得? Influxdb + Grafanaで可視化
  • 20. ? BIGLOBE Inc. 201719 最終的な構成 Core Core gateway gateway gateway gateway GoBGP Open BMP iBGP iBGP iBGP iBGP データ整形 Influxdb Grafana
  • 21. ? BIGLOBE Inc. 201720 作った経路監視?のDashboard
  • 22. ? BIGLOBE Inc. 201721 作った経路監視?のDashboard 上流トランジット依存率 特定ピアの状態監視 Update/Withdrawn発?数 上流トランジット経路監視 顧客経路の状態監視 Update/Withdrawn詳細
  • 23. ? BIGLOBE Inc. 201722 複数ピアをしているAS**の合計トラフィック 経路の選択割合の遷移監視 作った経路監視?のDashboard
  • 24. ? BIGLOBE Inc. 201723 良かった点と改善点 ● 良かった点 ● 注視すべき経路情報に絞って監視できた ● Traffic/Error等,他情報と合わせて確認できるようになった ● 実装したのはDB間のデータ送受信部だけ ● ?常に少ない?間で実装可能 ● 改善点 ● 各ルータ毎のBestPathしか?れない ● BGP ADD-PATHを使ってGoBGPと各ルータを繋ぐ ● (GoBGP中の?)「 BGP ADD-PATH実装したよ!」 ● BMPを直接使う
  • 25. ? BIGLOBE Inc. 201724 まとめ ● 経路状態は運?以外にも使える ● Peering/KPI ● 経路監視をGoBGP+openBMP+Influxdbへ ● 経路収集はiBGP ● SNAS (OpenBMP) ● ?分でUI作らなくても、?分なWebUIがある ● 注視すべき情報のみREST APIでInfluxdbに投? ● Grafanaで他のデータと?元的に可視化ができた