
好きな所から読む
SDNは社内ネットワークとクラウドを同じように使うための技術として注目されています。とはいえパッケージソフトを導入すれば、すぐに使えるといった仕組みではありません。SDNを導入するには、ネットワーク機器を使って通信を制御する仕組みを理解し、社内ネットワークとインターネットを組み合わせた仮想的なネットワークを構築する必要があります。
今回はクラウド時代を支える新しいネットワーク技術として注目されているSDNの仕組みとそれを支える技術について解りやすく解説します。
SDNとは
SDNとはSoftware Defined Networkingの略で、ソフトウェアを介してネットワークを構成する機器を一括して制御する技術です。
今の時代、インターネットに繋がれば良い、という訳にはいきません。頻繁に利用するサービスには高速で接続できる回線が求めらます。またサービスによっては社内LANを同じレベルのセキュリティ対策も求められるでしょう。そのような課題を解決する技術がSDNです。まずはSDNの概要について解説します。
インターネットの繋がる仕組み
インターネットに繋がったコンピュータ同士がどのようにして接続しているかご存じでしょうか。どこかにある組織がインターネット全体を管理している訳ではありません。ネットワーク回線を持つ通信会社やプロバイダなどが、お互い接続してデータを送り合っているだけです。
このような仕組みでデータが送れるのは、通信データに宛先が記録されており、バケツリレーのように通信データを送る仕組みがあるからです。しかし、それが最適化されている訳ではありません。例えば通信会社の高速な回線のみ経由できれば高速にアクセスできますが、いつも混雑しているプロバイダの回線を経由してしまうとアクセス速度が遅くなることもあります。
さらに幾つもの通信会社やプロバイダを経由した場合、その分速度が遅れます。そのため近くにサーバーセンターがあるのに、遠くの通信会社を経由して繋がるためアクセスに時間がかかる、といったことも珍しくありません。
ネットワークの設定は面倒
先ほど紹介したようにインターネットは多くのデータ回線が互いに接続している仕組みです。とはいえ、通信回線は日本中に張り巡らされています。サービス毎に最適に接続する経路を調べて、混雑をバイパスする回線を利用できればアクセス速度の改善が可能です。
しかしネットワーク機器を設定するのは簡単ではありません。通常、専門知識を持つネットワークエンジニアが手作業でネットワーク機器1台1台を設定します。しかも他のネットワーク機器の設定と矛盾しないように設定しなければならず、長い期間をかけて準備するのが一般的です。
そのため1度設定したら、ネットワーク構成に変更が無いかぎり、そのまま運用するのが一般的でした。
クラウド時代の課題
以前、多くの企業では社内ネットワークの利用が中心で、インターネットは繋がれば良い、という考えで運用するのが一般的でした。しかし今はビジネスで様々なクラウド上のサービスを利用しています。社内ネットワークと同じようにクラウドのサービスを利用できないと今のビジネスについていけません。そのため、多くの企業でインターネットへのアクセスの遅さが問題となっています。
この課題を解決するには、利用したいサービス毎に最適なネットワーク経路で接続できる環境が必要です。そして変化の早いクラウド上のサービスを利用していくには、ネットワーク経路を集中管理して一括で設定を変更できる仕組みが求められています。今回紹介するSDNは、このような複数のネットワーク機器を集中管理して、自動で設定できる仕組みです。
SDNの仕組み
先ほど紹介したようにSDNはソフトウェアを介してネットワークを構成する機器を一括して制御する技術ですが、機器を制御するには機器側が対応していなければなりません。
ネットワーク機器が対応していれば、SDNのコントローラのコンピュータからソフトウェアを受け取り、その設定を自動的に変更します。そしてコントローラのコンピュータを人が操作してネットワーク機器に送信するソフトウェアを生成します。
なお、このような仕組みを運用するためには、ネットワーク機器について知らなければなりません。次からネットワーク機器とはどのように動作しているかを解説します。
ネットワーク機器の役割
ネットワーク間の接続に使われる機器は、通信ポートを通過する通信データを解析して、どの経路に配信するかを判断し、その通信ポートに送っています。通信データを解析して経路を決定する処理とは「ネットワークを制御する機能」です。また、通信ポートから受け取った通信データを配信先の通信ポートに送る処理とは「データを転送する処理」です。
このようにネットワーク機器には、「ネットワークを制御する機能」と「データを転送する処理」の2つの機能がありますが、重要なのは「ネットワークを制御する機能」です。従来、この機能の設定には専門知識を持つネットワークエンジニアが操作する必要がありました。
制御する機能を集中管理
先ほど紹介したようにネットワーク機器の2つの機能を分離し、「ネットワークを制御する機能」を集中管理すれば、サーバーを操作するだけで複数のネットワーク機器の設定を同時に変更することが可能です。
さらに集中管理が可能なら、社内LANのネットワーク機器とインターネットに接続したネットワーク機器を連携させて、特定のクラウドへの直通経路を設定すれば、他のインターネットの接続から分離できます。そして社内LANで提供しているサービスとクラウドで提供されているサービスを同じように使ってもらうことも可能です。
このようなネットワーク機器を制御する機能を集中管理できる技術がSDNです。そしてSDNを導入すれば、まるで仮想的なネットワークを実現できます。
SDNを実現するには
SNDを実現するにはネットワーク機器がSDNに対応している必要があります。ただしSDNに対応するには、幾つもの条件をクリアしなければなりません。
まず、対象となるネットワーク機器が「ネットワークを制御する機能」と「データを転送する処理」の2つの機能の分離が必要です。また、ネットワークを制御するソフトウェアを、指定したネットワーク機器に届けなければなりません。そして、管理者が操作した内容からネットワークを制御するソフトウェアを作成し、それを配信するサーバーも必要です。
中でもネットワークを制御するソフトウェアをネットワーク機器に配信する仕組みは、メーカーから独立した共通の規格が求められます。そして、SDNを実現のために作られた共通の規格がOpenFlowです。
SDNを支えるOpenFlowとは
先ほど紹介したようにSDNは今の企業にとって必須な技術です。しかしネットワーク機器を扱えるのはインフラエンジニアやネットワークエンジニアだけで、よく解らない難しい技術と思っていないでしょうか。
確かにネットワーク機器の設定は専門知識が必要な難しい仕事ですが、SDNはそのような難しい設定をソフトウェアがやってくれます。そのため情報システム部門の担当者でも扱うことが可能です。
とはいえSDNの仕組みを全く知らずに使うことはできません。次からSDNを支えるOpenFlowという技術について紹介します。
OpenFlowという技術
OpenFlowとは、「フローテーブル」を基に、集中管理サーバーで運用されるコントローラが、OpenFlowプロトコルによってネットワーク機器の制御機能を書き換える技術です。そして「フローテーブル」はネットワーク管理者が各ネットワーク機器の振る舞いを記述したもので、個々のネットワーク機器に設定する内容が記述されています。
また配信で使われるOpenFlowプロトコルはOpen Networking Foundationによって管理されている標準規格です。そのためSDNで利用できるネットワーク機器であれば、このプロトコルに対応しています。
ただし、OpenFlowは「ネットワークを制御する機能」のみ集中管理する仕組みのため、「データを転送する処理」と機能を便利したネットワーク機器でしか利用できないため、全てのネットワーク機器で使えるとは限らない点に注意してください。
OpenFlowはオープンな技術
OpenFlowは、特定のメーカーが独占している技術ではなく、どのメーカーでも無料で利用できます。そのため、ネットワーク機器メーカーが低コストで導入可能です。
そしてSDNを支える技術と注目されているので、複数のメーカーからOpenFlowに対応したネットワーク機器が発売されています。そのため、異なるメーカー製のネットワーク機器で運用しているとしても、それらがOpenFlowに対応していれば、SDNに利用することが可能です。
OpenFlowの効果
OpenFlowを利用すれば、集中管理サーバーで作成した「フローテーブル」を使い、本来ならネットワークエンジニアが1台1台設定しなければならない設定を、ソフトウェアが自動的に設定する仕組みを作れます。
さらに以前なら設定の変更に時間がかかることで変更が難しかったネットワーク経路の設定についても、OpenFlowの集中管理機能を使えば簡単にできるので、ネットワークの最適化が可能です。
そして社内ネットワークの通信回線やクラウド上のサービスと直接接続するWAN回線といった通信経路の見直しなどにより、仮想的なネットワークも構築できます。
SDNの限界
これまで紹介したようにSDNを導入することで、企業のネットワーク環境の大幅な改善が期待できます。しかし、SDNは万能とは言えません。導入しても期待した効果を発揮できないケースもあります。
次から導入する際に注意してほしいSDNの限界について紹介します。
ネットワーク機器の買い替えが必要
大きな組織の企業で運用されるネットワークの根幹で使われる機器は、かなり高価な機種が使われます。そのため、簡単に入れ替えはできません。リースなどにより計画的に更新するのが一般的です。
SDNの導入を検討したくても、社内で使われているネットワーク機器の全てがOpenFlowに対応しているとは限りません。対応していない古いネットワーク機器がそのまま使われているケースもよくあります。SDNの導入に合わせて、そのようなネットワーク機器を一度に更新しようとすると、かなり高額な投資になってしまいます。
SDNで集中管理対象となるネットワーク機器がOpenFlowに対応しているかをチェックして、計画的に入れ替えしてからSDNに対応する、といった計画性が必要です。
適用できるのは自社で管理する機器のみ
もしクラウド上のサービスへのアクセスが遅い場合、途中を経由する回線が遅い場合があります。しかし、別の会社が運用しているネットワーク機器を自社に合わせて改善させることはできません。そのため、SDNを適用できるのは自社で管理する機器のみです。
ただし、そのような遅い回線を使い続ける必要はありません。複数の回線業者やプロバイダを利用し、特定のクラウドサービスを利用する場合のみ、別回線を使って込み合っている回線をバイパスする回線を使うことも可能です。
そして、社内ネットワーク側の機器とインターネットに接続する側の機器とをSDNで連携すれば、まるで社内LANのようにインターネットを利用できます。SDNを導入する場合、インターネットに接続する回線の見直しも実施してください。
オーバーレイ方式もある
SDNを導入するにはOpenFlowに対応したネットワーク機器が必要です。OpenFlowに対応していなければ、SDNで集中管理できません。しかし、社内にあるネットワーク機器がOpenFlowに対応していないこともあります。
この場合、OpenFlowを利用しないオーバーレイ方式を利用することで、OpenFlowに対応していない機器と併用することも可能です。ただしネットワークの抜け道ともなるので、どこにでも適用できるとは限りません。SDN製品によってはオーバーレイ方式もサポートしているので、どうしても対応できない機器がある場合に検討してください。
終わりに
これまで紹介したようにSDNとは、ソフトウェアを利用してネットワーク機器を集中管理し、クラウド時代に求められる通信経路の制御が可能な技術です。そしてSDNを導入することで、クラウド上のサービスをまるで社内LANとして使っているような環境の構築も可能です。
ただしSDNを理解するには、ネットワーク機器がどのように運用されているかを理解しなければなりません。今やネットワークは企業にとって必須のインフラです。ぜひ、ネットワークを理解する一環としてSDNについても学んでください。