Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
お手軽! BGP RIBのリアルタイム経路解析+可視化
Search
Mabuchin
July 31, 2017
Technology
440
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
お手軽! BGP RIBのリアルタイム経路解析+可視化
JANOG40 ShortProgram
Mabuchin
July 31, 2017
More Decks by Mabuchin
See All by Mabuchin
TIPSTARのライブ・プロダクションシステムの裏側
mabuchin
1
1.3k
ホワイトボックス伝送の動向と商用利用について
mabuchin
3
860
WhiteBoxSwitch NOSの変遷
mabuchin
5
2.2k
Cassini + Goldstone DCI use case and challenges
mabuchin
1
310
転びながらもネットワーク処理をソフトウェアで自作していく話
mabuchin
8
4.9k
モダンなネットワーク構成管理DBを最小労力で開発する
mabuchin
3
970
Gitでネットワークオペレーションを進める話
mabuchin
0
160
TapAggregationを使ったデータプレーン性能測定
mabuchin
0
290
Github PullRequestで作業半自動化
mabuchin
0
130
Other Decks in Technology
See All in Technology
【CEDEC2026】次世代デジタルカードゲームのサーバー設計と運用 〜『Shadowverse: Worlds Beyond』の舞台裏~
cygames
PRO
1
1.2k
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
730
SmartHR Engineering Team Deck
smarthr
1
2k
20260804_Q4AzureUpdateBite_FabricDataAgentの精度を高める設計.pdf
matayuuu
1
130
【CEDEC2026】『ウマ娘 プリティーダービー』 英語版のキャラクターの方言や口調をローカライズするための創造的アプローチ
cygames
PRO
1
240
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
強化学習「理論」入門
enakai00
3
3.6k
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.6k
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
290
Digitization部 紹介資料
sansan33
PRO
2
7.7k
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
740
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
580
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
The browser strikes back
jonoalderson
0
1.5k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
760
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
340
Side Projects
sachag
455
43k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
200
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
The Invisible Side of Design
smashingmag
301
52k
Are puppies a ranking factor?
jonoalderson
1
3.8k
Un-Boring Meetings
codingconduct
0
380
Transcript
© BIGLOBE Inc. 2017 お⼿軽! BGP RIBのリアルタイム解析+可視化 BIGLOBE Inc. Toshiya
Mabuchi 1 © BIGLOBE Inc. 2017
© BIGLOBE Inc. 2017 2 ⾃⼰紹介 • 名前 : ⾺淵
俊弥 (Mabuchi Toshiya) • 所属 : ビッグローブ株式会社 • お仕事 : • ISPバックボーンネットワークの全般 • 設計/開発/検証/運⽤/顧客サポート • 最近は⾃動化/可視化回りに注⼒中!
© BIGLOBE Inc. 2017 3 ASの経路監視ってどうしてます?
© BIGLOBE Inc. 2017 4 監視したい理由 • 運⽤⾯ • 障害時の原因究明
• 顧客の経路変動/正常性 • 主要なPeerの経路変動 • Peerしてるのに上流から 流れてないか • 遅延の⼤きいPeerを 選択してないか? • マネジメント⾯ • 上流トランジットへの 経路依存率の把握 • ⼿軽に⾒れるようにして Peering交渉に役⽴てる • すぐに出せるグラフがあると KPIにも役⽴つ • 上流トランジットの選定/ 更改時に使う為のデータ
© BIGLOBE Inc. 2017 5 経路情報を⾒るのは運⽤の時だけじゃない トランジット依存率の指標など コストマネジメントの⽬的でも使いたい
© BIGLOBE Inc. 2017 6 いままで経路記録としてやっていたこと • Quagga + MRT
Dump + libBGPdump • データとしては記録できている • 時間毎にファイル分割して保存している • ⽂字でしか読めないので、 時系列で何が起きているか⾒るのがつらい • いつも⾒るのにはちょっと厳しい • かなりの障害が発⽣した時くらいしか⾒ない
© BIGLOBE Inc. 2017 7 こういう感じ経路情報のログを⾒てた > 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. 2017 8 新しい経路をモニタリングするものがほしい • 要件! • グラフとして表⽰できる
• リアルタイム性がある • 他の情報(トラフィック等)と⼀元的に ⾒る⽅法がある • そんなに難しいことしたくない
© BIGLOBE Inc. 2017 9 BMP • BGP Monitoring Protocol
• BGPのUPDATE情報等をモニタリングできるプロトコル • これを使わない⼿は無い! • ・・・しかし!!! • 商⽤ルーターのバージョンで⼀部⾮対応 → すぐには使えない
© BIGLOBE Inc. 2017 10 回避策 • iBGPで経路を収集する • 経路収集⽤にGoBGPを⽴てる
• GoBGPとルータをiBGPで繋ぐ • GoBGPからBMP Serverに送信 ルータ単位で発⽣する経路変動は収集できる!
© BIGLOBE Inc. 2017 11 iBGPで経路を収集 Core Core gateway gateway
gateway gateway GoBGP BMP Server iBGP iBGP iBGP iBGP BMP pre-policy
© BIGLOBE Inc. 2017 12 BMP Server • SNAS
http://www.snas.io/ • 経路情報モニタリングのフレームワーク • OpenBMP + Kafka + MySQL + WebUI で構成 • 経路⽤モニタリングのWebUIが付いている • APIも豊富でデータを加⼯して使いやすい • Docker containerで構築が簡単 Streaming Network Analytics System
© BIGLOBE Inc. 2017 13 SNAS UI
© BIGLOBE Inc. 2017 14 SNAS UI
© BIGLOBE Inc. 2017 15 SNAS UI
© BIGLOBE Inc. 2017 16 SNAS UI
© BIGLOBE Inc. 2017 17 SNAS 今までに⽐べたらかなり分かりやすい!
© BIGLOBE Inc. 2017 18 (再掲)監視したい理由 • 運⽤⾯ • 障害時の原因究明
• 顧客の経路変動/正常性 • 主要なPeerの経路変動 • Peerしてるのに上流から 流れてないか • 遅延の⼤きいPeerを 選択してないか? • トラフィック + 経路変動 ⼀緒に⾒たい • ⼀緒に⾒れば分かる原因もある •マネジメント⾯ • 上流トランジットへの 経路依存率の把握 • ⼿軽に⾒れるようにして Peering交渉に役⽴てる • すぐに出せるグラフがあると KPI⽴てるのとかにも役⽴つ • 上流トランジットの選定/ 更改時に使う為のデータ • いつでも出せるようにしたい
© BIGLOBE Inc. 2017 18 (再掲)監視したい理由 • 運⽤⾯ • 障害時の原因究明
• 顧客の経路変動/正常性 • 主要なPeerの経路変動 • Peerしてるのに上流から 流れてないか • 遅延の⼤きいPeerを 選択してないか? • トラフィック + 経路変動 ⼀緒に⾒たい • ⼀緒に⾒れば分かる原因もある •マネジメント⾯ • 上流トランジットへの 経路依存率の把握 • ⼿軽に⾒れるようにして Peering交渉に役⽴てる • すぐに出せるグラフがあると KPI⽴てるのとかにも役⽴つ • 上流トランジットの選定/ 更改時に使う為のデータ • いつでも出せるようにしたい ⾃社特有の観点が⼊ると、 標準のWebUIでは⾒にくい場合もある 定常的に⾒るデータだけをAPIで取得 Influxdb + Grafanaで可視化
© BIGLOBE Inc. 2017 19 最終的な構成 Core Core gateway gateway
gateway gateway GoBGP Open BMP iBGP iBGP iBGP iBGP データ整形 Influxdb Grafana
© BIGLOBE Inc. 2017 20 作った経路監視⽤のDashboard
© BIGLOBE Inc. 2017 21 作った経路監視⽤のDashboard 上流トランジット依存率 特定ピアの状態監視 Update/Withdrawn発⽣数 上流トランジット経路監視
顧客経路の状態監視 Update/Withdrawn詳細
© BIGLOBE Inc. 2017 22 複数ピアをしているAS**の合計トラフィック 経路の選択割合の遷移監視 作った経路監視⽤のDashboard
© BIGLOBE Inc. 2017 23 良かった点と改善点 • 良かった点 • 注視すべき経路情報に絞って監視できた
• Traffic/Error等,他情報と合わせて確認できるようになった • 実装したのはDB間のデータ送受信部だけ • ⾮常に少ない⼿間で実装可能 • 改善点 • 各ルータ毎のBestPathしか⾒れない • BGP ADD-PATHを使ってGoBGPと各ルータを繋ぐ • (GoBGP中の⼈)「 BGP ADD-PATH実装したよ!」 • BMPを直接使う
© BIGLOBE Inc. 2017 24 まとめ • 経路状態は運⽤以外にも使える • Peering/KPI
• 経路監視をGoBGP+openBMP+Influxdbへ • 経路収集はiBGP • SNAS (OpenBMP) • ⾃分でUI作らなくても、⼗分なWebUIがある • 注視すべき情報のみREST APIでInfluxdbに投⼊ • Grafanaで他のデータと⼀元的に可視化ができた