BIGLOBEエンジニアブログ

アクセスカウンタ

RSS GREEさん、Cisco Systemsさんとネットワーク共同検証をしました。

<<   作成日時 : 2014/07/31 16:36   >>

トラックバック 0 / コメント 0

はじめまして。ネットワークエンジニアのつちやたいじです。
普段はBIGLOBEのISPネットワークの運用や設計を担当しています。
好きなものはお肉と楽しいこと、嫌いなものはトマトとめんどくさいことです。

今回は、GREEさん、Cisco Systemsさんのエンジニアの方々とBMPという新しいプロトコルを
共同検証しましたので、その内容を紹介します。

GREEさんは言わずと知れた日本最大手のソーシャルサービス事業者さんです。
Cisco Systemsさんは、世界最大級のネットワーク機器メーカさんで、BIGLOBEネットワークでもCisco製のネットワーク機器をたくさん使っています。


インターネットとBGP

みなさんがいつも使っているインターネットは、組織所有のネットワークが無数に繋がり合って構成されています。
この組織所有のネットワーク同士が繋がるためには、お互いのルータ同士でBGP(Border Gateway Protocol)と呼ばれる世界標準のプロトコルを使い、情報をやり取りすることが必要です。

ここでやり取りされる情報の中には、経路情報という、お互いのネットワークが持っているIPアドレスの一覧情報があります。
ルータ同士が経路情報を交換することで、お互いのネットワークに通信できるようになります。
(例えるなら、経路情報とは住んでいる地域の住所一覧が載っているタウンページのようなイメージです。)

画像


そして、世界中の企業ネットワーク同士が、BGPを使って直接/間接的に経路交換することで、
世界中のどこへでも通信ができる仕組みを実現しています。
これがインターネットと呼ばれているものの正体です。


BGPについてご興味がある方は、JPNICさんで紹介されている記事が参考になります。
インターネット10分講座:BGP
https://www.nic.ad.jp/ja/newsletter/No35/0800.html

インターネットそのものについてご興味がある方は、著名なブロガーのあきみちさんが書かれた本が参考になります。
インターネットのカタチ―もろさが織り成す粘り強い世界
http://www.amazon.co.jp/dp/4274068242

BMP

今回共同検証したBMPは、BGP Monitoring Protocolの略で、その名の通りBGPでやり取りされる情報を可視化するためのプロトコルです。

BGPは1990年代から使われているプロトコルですが、BMPはまだ標準化もされていない比較的新しいプロトコルです。
(厳密には、RFCとして標準化される前のInternet Draftという段階で、IETFという団体で標準仕様について現在も議論されています。)

BMPを使うことで、他社ネットワークの経路情報の異常を調べることができたり、本来なら複数のルータにログインして確認しないと把握できないような複雑なトラブルを早期発見することが可能になります。


こういった運用監視やトラブルシューティングの用途で、BMPはネットワークを運用している企業から注目を集めています。

画像


BMP共同検証

検証は、BIGLOBEとCiscoの検証ラボを繋いで、BGP構成を再現して実験しました。

画像


今回の検証では、「若手メンバーで実施してほしい!」というBIGLOBE/GREEのチームリーダーの強い要望(笑)があったため、事前調査や検証の準備などは私も含めた若手メンバー中心でやらせていただきました。
私個人としても、標準化関連の資料を読みながら仕様を確認して新しいプロトコルを実際に検証する、なんてのはこれまでの仕事のなかでも初めてのことだったので大変勉強になりました。

Ciscoさんのオフィスを2週間お借りして、ときには真面目に、ときには差し入れにいただいたアイスを食べて談笑しながら、楽しく検証しました。

他社のネットワークエンジニアの方々と一緒に検証して感じたのは、会社の事業内容が違うことで、検証方法をはじめ、注目するポイントや利用シーンで異なる部分が多いことであり、
自分たちとは異なった物の捉え方があることを身をもって体感しました。
今回の検証を通して、会社内で仕事しているだけではなかなか感じることができない貴重な経験をさせていただきました。
画像

画像

画像


BMP検証結果

実際にプロトコルの挙動を確認してみたところ、BMPは「なかなか使えそうなログ収集ツール!」という印象でした。
BGPが切断されたときの原因などもきっちりログとして出力してくれたり、今までは見れていなかった経路情報なども時系列データとして収集できたりします。
またデバックコマンドのようなルータに与える負荷が大きいコマンドを実施せずとも、上記のようなBGPの詳細情報を1台のサーバで収集することが可能になります。

いままで出来てなかったことや、苦労して取得していたデータが、ひとつのプロトコルで、さらにマルチベンダ環境でも差分なく取得できるという点で運用者にとって使い勝手の良いプロトコルであると感じています。


ただ、BMPにはひとつ大きな問題がありまして。。。


それは、BMP受信を実装しているサーバサイドのソフトウェアが、現状ではまともに動作するものが無い!ということです。
いくつか検証で、web公開されているBMPサーバを試したのですが、いずれも最新版BMP version3では期待した動作はできませんでした。
今回の共同検証もこれらのツールをアテにしていたため、このような現状を知り、いきなり落胆からスタートしましたが、特別にCiscoさんが社内での検証で利用されている内製ソフトウェアを提供してくださり、無事に検証することができました。

この記事を読んでいただいた方の中から、ソフトウェア開発が得意な方で、BMPサーバを実装していただける方が出てくると、とてもうれしいです。
おそらく、ネットワーク業界から歓喜の声が沸き上がるのではないでしょうか。

JANOG34で発表してきました

日本中のネットワーク技術者が一同に集うJANOG Meetingというのイベントがあるのですが、
そこで時間をいただいて、このBMP検証について紹介させていただきました。
具体的な検証内容についてはこちらで紹介していますので、ご興味あればご参照ください。

JANOG34 Meeting ルーティングテーブルを覗きたい┃_・)ジー
http://www.janog.gr.jp/meeting/janog34/program/rtabl.html

ネットワーク業界の猛者のみなさんの前で発表するのは、とてもとても緊張しました。。。
それでも、いざ発表してみると、好印象なコメントをいただけたり、研究者の方やキャリア事業者さんなど、いろんな立場の方からアドバイスをいただけたので、非常に参考になりました。

またJANOG Meetingでは、慰労会と呼ばれる発表者を集めて飲み明かす怪しい(?)イベントがあるのですが、そこでもJANOGスタッフの方や他のプログラムの発表者の方といろんな意見交換をさせていただきました。中には「BMPサーバ作りますよ」なんていう心強いメッセージをいただけたりして、発表してよかったと心から感じました。

画像


最後に

今回はBMPというモニタリングプロトコルそのものの動作検証でしたが、BMPにおける私の考えとしては、「BMP受信サーバをいかに作り込んで実装させるか」、そして「自動化ツールと連携することで、ネットワーク運用をいかに楽にできるか」という点がキモになるのではないかと感じています。
ネットワークエンジニアはプログラミングが苦手な方が多かったりするのですが(もちろん私もその一人です)、BMPのような使い勝手の良いプロトコルをうまく取り入れて自分自身の仕事を楽にし、さらに仕事が楽しくなるようなツールの開発もやっていきたいと思っています。

また他社のエンジニアの方と一緒に仕事をすることは、慣れた作業の中でも新しい知見を得られることがたくさんあり、自身の知識や技術力を見直す良い機会になります。
それと同時に、新技術の利用シーンを複数の視点から議論することで、自分たちだけでは発想できなかったような便利な使い方を発見できるかもしれません。

これからもこういった社外の方と一緒に仕事するような機会を積極的に作ることによって、今までになかったような良いモノや仕組みを作り、日本のインターネットに少しずつ貢献していければと考えています。

テーマ

月別リンク