Upgrade to Pro — share decks privately, control downloads, hide ads and more …

機器設定ファイルからのトポロジモデル抽出による机上検査を含めた設計支援システム

tjmtrhs
July 08, 2022

 機器設定ファイルからのトポロジモデル抽出による机上検査を含めた設計支援システム

ネットワーク (NW) を意図通りに運用するためには各レイヤ間の設計で整合性を取るだけでなく, 障害時などトポロジが変化した際の動作を繰り返し予測し品質を高める必要がある.
それには高度な知識や経験が必要であり, NW の拡大・複雑化によりさらに難しくなった.
そのため設計から運用までを自動化する仕組みが求められる.
本稿ではまず設計段階に着目し NW をトポロジモデルとして扱うことで, 障害時を含めたふるまいを机上で検証した.
具体的には, 既存 NW 装置から設定ファイルを収集し, 各レイヤをトポロジモデルとして抽象化した. さらに各レイヤで設計ポリシをテストする設計支援システムを実装した.
これにより設計ポリシが NW に反映されているかの机上検証ができること, また規模が拡大しても使用できるシステムであることの評価結果を報告する.

Support System of Designing and Verifying Network by Abstracting Topology Model from Configuration Files

In network operation, designing relations between each network layer and estimating behavior at changing its topology by some failure are essentials to keeping its intent.
Since such network design and operation skills demand deep knowledge and well experienced, the larger scale of networks, the more difficult to get these skills and an automation system is required.
We focused on the designing phase, we tried to abstract networks as topology models and simulated that behavior at the failure test.
We implemented the system to check the design policies at each layer with topology models by collecting equipment configuration files, and to simulate the behavior in failures.
We evaluated the system has the feasibility of applying the design policies to a network, and it has scalability for large-scale networks.

tjmtrhs

July 08, 2022
Tweet

More Decks by tjmtrhs

Other Decks in Technology

Transcript

  1. 機器設定ファイルからの トポロジモデル抽出による机上検査を含めた ネットワーク設計支援システム 田島 照久 NTTコミュニケーションズ株式会社 川口 永一郎 ビッグローブ株式会社 滝口

    敏行 ビッグローブ株式会社 萩原 学 TIS株式会社 新里 康晃 一般社団法人 沖縄オープンラボラトリ 1 2022/07/08 情報通信マネジメント研究会 @とかちプラザ
  2. ネットワークの検証作業の複雑さ ◼NWを構築運用する際の流れ ◼ 設計 → 検証 → 設計修正 → 再検証

    → … → 本番構築 ◼実機検証と前段の机上検証 ◼ 実機検証には時間がかかるが、実機のみ発現するものがある ◼ 実機の挙動に集中するため、それ以外を事前に机上検証する 2 いかに効率的に行うか End-to-Endでは 理論上通信できない ? 機器単体の設定は 動作可能という意味で正しい 特定のバージョンで 挙動が変 すべて同時に 両立しうる
  3. 事前の机上検証とは ◼実機検証は実施に時間が必要で貴重(数日~数週) ◼ 事前に不確実性を減らし、環境構築回数を下げるべき ◼机上で可能な検証は机上で実施(数時間~数日) ◼ 設計 → 机上検証 →

    設計修正 → … → 実機検証 → … 3 End-to-Endでは 理論上通信できない ? 機器単体の設定は 動作可能という意味で正しい 特定のバージョンで 挙動が変 この部分を高度化・高速化 =不確実性が減る
  4. 検証・デプロイの実用例:トポロジデータ ◼AWS Perspective[7] ◼ 通信ログなどから 構築済みシステムの アーキテクチャ図を作成 ◼IXPのデプロイ自動化[8] ◼ トポロジ編集による

    構成変更を実装 → トポロジデータの表現は机上検証・デプロイに使用可 5 [7] AWS でのワークロード検出, https://aws.amazon.com/jp/solutions/implementations/aws-perspective/ [8] IXP管理のフルスタック自動化, https://eng-blog.iij.ad.jp/archives/8668
  5. トポロジモデルの使用 ◼人間と機械が役割分担できるよう、共通の言語が必要 → トポロジモデルという共通表現の導入 7 人間のレビュー 可能範囲 機械化 可能 実機での検証

    ◼人間によるレビューの特徴 ◼ 全体を見て大域的判断、経験 による判断が可能 ◼ 時間コストや網羅性が不得意 ◼機械によるレビューの特徴 ◼ 実装されたルールを網羅的に 素早く評価可能 ◼ 知らないことは判断できない 不確実性をできるだけ 事前に取り除く
  6. 設計のステップと支援箇所 1. 候補configの作成 ◼ (人間による設計) 2. トポロジ構築と静的検査 ◼ システムによる支援 3.

    NWのふるまいを確認 ◼ システムによる支援 4. 検査OKであれば検証環境に デプロイ ◼ (本システムの対象外) 9 2. 3.
  7. システム詳細 10 運用対象NW device config & state layer1 topology topology

    data L1-L3 トポロジ 生成 各種 テスト 検査 テスト・検査結果に応じて コンフィグの修正 必要なら環境へのフィードバック (ここは従来のやり方で) config, stateは 定期的に取得 operator L1 リンク情報 抽出 WebUI (可視化) API Wrapper Parser, Simulator NetBox Batfish Ansible 2.トポロジ構築と静的検査 3. NWのふるまいを確認
  8. 設計のステップと支援箇所 1. 候補configの作成 ◼ (人間による設計) 2. トポロジ構築と静的検査 ◼ システムによる支援 3.

    NWのふるまいを確認 ◼ システムによる支援 4. 検査OKであれば検証環境に デプロイ ◼ (本システムの対象外) 16 2. 3.
  9. 性能評価 ◼モデル作成と検査にかかる時間と必要なメモリを計測 ◼240台720リンクの大規模でも2.3時間で完了 → 机上検証サイクルは実機と比べ十分高速に実施可能 20 NWのサイズ (ノード数, リンク数) 実行時間

    [sec] 最大使用メモリ [GiB] (12, 36) 78 2.5 (30, 90) 212 4.5 (60, 180) 648 6.0 (120, 360) 2001 12.8 (240, 720) 8182 31.3 実行時間 最大使用メモリ 使用機器 CPU: Intel Xeon Silver 4216 (16C/32T HT enabled) MEM: 64GiB OS: Ubuntu 20.04
  10. まとめ ◼設計支援システムを実装 ◼ 実機検証に入る前に十分に机上検証することが目的 ◼ 設定ファイルから各レイヤのトポロジを抽出 ◼ 人手で考えるような静的解析による設定誤りの検出を実装 ◼ トポロジの障害模擬を実装しSPoFの検出が可能

    ◼ 全パターン検査は機器240台リンク720本の規模でも 2.3時間で実行完了 ◼今後の展望 ◼ 各種プロトコル対応 ◼ トポロジデータの自動デプロイ 22 コードは公開されています https://github.com/ool-mddo/playground 本研究は著者らの所属会社が、沖縄オープンラボラトリにて協同研究を行った成果です