ページの先頭です


ページ内移動用のリンクです

  1. ホーム
  2. IIJの技術
  3. IIJ Technical Seminar
  4. 技術情報(2011年~2015年)
  5. 高機能ルータ「SEILシリーズ」

高機能ルータ「SEILシリーズ」

2010年12月15日

インターネットは社会インフラとして広く認知・利用されています。社会インフラと呼ばれる設備や、そこで利用される技術は多数ありますが、共通するのは「誰でも安全に利用できること」です。そういった観点からインターネットを眺めた場合、十分に成熟しているとは必ずしも言えない部分があります。十分なセキュリティを確保しつつインターネットの恩恵を受けるのは、本質的に容易ではありません。インターネットを誰でも利用できるインフラと言い切るためには、技術的に難しい部分は提供事業者が解決し、ユーザは利便性のみを簡単に享受できる方向に技術開発をおこなう必要があります。このような技術開発のポイントの一つとしてユーザの環境とインターネット接続サービスを結びつける「サービスアダプタ」があります。ここではIIJ独自のサービスアダプタとして開発を続けている「SEIL」の技術について紹介します。

サービスアダプタ

サービスアダプタという用語はまだ一般的とは言えないかもしれません。本稿では、インターネットをベースにして提供される各種サービスをユーザ宅で利用可能な状態にする機器をサービスアダプタと位置づけます。現状ではルータ製品が最もシンプルでイメージしやすいサービスアダプタと言えるでしょう。セットトップボックスの類もサービスアダプタの一種と言えます。ルータはインターネットへ接続しIPパケットを転送するという最もプリミティブなサービスを提供するためのサービスアダプタであり、セットトップボックスはIP放送などのインターネット上で提供されるより高度なサービスを提供するためのサービスアダプタです。

IIJはインターネットというインフラを提供する上で、サービスとサービスアダプタの組み合わせをセットで考えて技術開発をすることが必要だと考えています。この考えに基づいて開発しているサービスアダプタが「SEIL」です。

SEILの技術開発

SEILに課せられた使命は、IPパケットの転送という基本機能を十分に満足しつつ、より高いレイヤでのサービスを提供するサービスアダプタのあり方を示すことです。これを実現する要素技術として、ハードウェア開発、ソフトウェア開発、統合管理システムの設計(SMF)などが挙げられます。SMFについては別項で紹介していますので、本稿ではSEILのハードウェアとソフトウェアの開発について紹介します。

ハードウェア開発は専門的におこなうには課題が多く、SEILシリーズではパートナー企業と連携することで開発コストを下げつつ高い品質を実現しています。CPUやバス、周辺デバイスなど、コンピュータとしての基本的なデザインについて、双方から案を提示して検討します。場合によっては、一般的なIntel x86/x64アーキテクチャのPCも選択肢となります(SEIL/x86)。PCは汎用的に設計されているため、無駄な部品も多く、専用設計の組み込みハードウェアと比較すると価格性能比で不利になりがちです。しかし、生産数が少ないのであれば設計費用の低さが大きくコストに貢献するため、最適な選択肢であることが多々あります。

ネットワーク機器をデザインする上では、ハードウェアとソフトウェアのバランスを考えることが重要です。大まかに言うと、シンプルなハードウェアを高機能なソフトウェアでつなぎ合わせるアプローチか、高機能なハードウェアをシンプルなソフトウェアで制御するアプローチかの選択です。SEILはサービスアダプタであり、機能面での柔軟性が重要ですので、ソフトウェアでの制御の余地が多いアーキテクチャを選択します。現実には難しいですが、常に必要になる定型処理はハードウェアで高速に実行しつつ、必要に応じて処理の途中にソフトウェアが介入でき、ソフトウェアが介入しても性能低下がなるべく少ないアーキテクチャが目指すところです

ハードウェアを選定したら、それにあわせてソフトウェアを開発します。ソフトウェア開発は基板となるOSの移植作業から品質管理まで全てIIJ社内でおこなっています。開発作業はソフトウェアのどこに拡張をいれるか検討することから始まります。SEILで動作するソフトウェアはOS(kernel)と呼ばれる厳密に保護された基幹部分と、OS上で動作するアプリケーション部分からなります。基幹部分の開発には高度な技術が必要ですが性能面で有利です。アプリケーション部分ではその反対となります。基幹部分の拡張をおこなうと、ちょっとした不具合がシステム全体のクラッシュを引き起こしたり、システム全体の動作速度が大幅に低下したりするリスクがあります。特にネットワーク機器の場合は、入力パケットに単純に反応するだけの処理では、ときとして処理が間に合わなくなり、ネットワーク全体がスムーズに動作しないことがあり、常に工夫が必要となります。多くの困難がある分野ですが、このようなノウハウを積み上げることでコンピュータシステムとネットワークに関する極めて深い理解が得られ、それがSEILの強みとなります。

今後の展望

SEILの開発現場には、SEILとSMFを組み合わせたときに何が起こるのかを極端に表すジョークとして、「電子レンジが冷蔵庫になる」というフレーズがあります。電子レンジがインターネットと接続し、サービスと結びつくことで予想もしなかった新しい利用方法が出現しうる、という意味です。このジョークはさすがに言い過ぎですが、SaaSやHaaSなどの進化を見るにつけ、全くの夢物語ではないのだと感じます。サービスアダプタ「SEIL」と「SMF」がインターネット上のサービスと一体となり動作することで、全く新しいインターネットの利用方法を提案できるようになる日が確実に近づいていると確信しています。

末永 洋樹

執筆者プロフィール

末永 洋樹(すえなが ひろき)

IIJ SEIL事業部 製品開発部 製品技術課
2004年IIJ入社。入社後すぐにSEILシリーズのIPsec VPN機能の保守・開発に携わる。その後、SMFv2 で利用するARMS プロトコルの仕様策定や、SMFv2 システム、SEIL X1/X2の開発業務を経て、現在では、SMFv2の対応サービスアダプタで動作するアプリケーションの管理機構の設計(Add-On Framework)とSEIL シリーズのIPv6 サポートの強化に従事している。

関連リンク

  • IIJ Technical WEEK 2012 講演資料 「軽量Rubyで実現する柔軟なルータ -SEILへの軽量Rubyの組み込み-」 [PDF:1.30MB]PDF
    IIJでは「SEIL(ザイル)」と呼ばれるルータを自社開発し、お客様の様々なご要望に応えるべく改良を続けてきました。本セッションでは、ルータに大きな柔軟性をもたらす方法として、次期SEILファームウェアで対応予定のスクリプト機能についてご紹介します。SEILが対応するスクリプト言語には、開発効率の高さで人気のあるRubyの組み込み版にあたる軽量Ruby(mruby)を採用しました。本セッションでは、IIJの軽量Rubyへの取り組みについてもご紹介します。 (2012年11月14日)
  • IIJ Technical WEEK 2012 講演資料 「SMFによる運用の効率化と今後の展望」 [PDF:3.40MB]PDF
    IIJが開発する集中管理フレームワーク「SMF」は、2003年の提供開始以来、様々な機能拡張を重ねてきました。最新のSMFサービス「SACM」では、テンプレートによるコンフィグ一括生成やスマートデバイス対応、RESTfulAPIなどを利用した外部サービスとの連携などを盛り込んでおり、これらの機能で実現されるネットワーク運用の新しい姿をご紹介します。更に、今後の展望として、現在実装中の新機能についてもご紹介します。 (2012年11月15日)
  • 最新の技術動向 「軽量Rubyへの取り組み」
    「軽量Ruby」と呼ばれる組み込み向けプログラミング言語の開発プロジェクトが進行する中、IIJはその取り組みとして、IIJ独自開発のサービスアダプタ「SEIL」にmruby(軽量Rubyの実装)を載せた動作検証を行いました。ここでは、軽量Rubyの概要と、SEILに軽量Rubyを組み込むことで解決されるような計画についてご紹介します。 (2012年5月8日)
  • 最新の技術動向 「サービスアダプタ統合管理システム『SMF (SEIL Management Framework』」
    ネットワークマネジメントのあり方を飛躍的に進化させたIIJ SMFの開発思想について、紹介します。 (2010年12月15日)

関連サービス・ソリューション


ページの終わりです

ページの先頭へ戻る