SDN(Software Defined Network)とは?知っておきたい基礎知識を解説!
複雑化するネットワークに悩みを抱える企業担当者であれば、柔軟かつ動的にネットワーク構成を変更できる「SDN」の詳細が気になっていることでしょう。
そこで本記事では、仕組み / アーキテクチャから、従来型ネットワークとの違い、解決できる課題まで、知っておきたいSDNの基礎知識を解説していきます。
SDN(Software Defined Network)とはなにか?
SDNとは、「ソフトウェア定義ネットワーク(Software Defined Network)」のこと。具体的には、ネットワーク機器をソフトウェアで一括制御し、ネットワーク構成や設定を柔軟かつ「動的」に変更できる技術の総称がSDNです。
たとえば、AWSなどのクラウドサービスで「ネットワークトラフィックを動的に変更できる」ことをイメージすると、SDNを理解しやすいかもしれません。
ただし、ネットワーク機器を仮想化するクラウドと異なり、SDNが仮想化するのはあくまでも「機器の構成 / 接続」のみ。SDNは文字通り「ソフトウェアでネットワーク構成 / 設定を定義する」ための技術です。
※仮想化とは、ソフトウェアを活用して複数のハードウェアを統合し、必要なリソースに分割する技術です。
従来型ネットワークとの違い
従来型ネットワークで「構成変更」する場合、ルーター / スイッチといった物理機器の追加や変更、ケーブル差し替え作業などが必要でした。それぞれのネットワーク機器は独立して動作するため、設定変更やアップデート / メンテナンスも個別に行わなければなりません。
一方、SDNコントローラーでネットワーク機器を制御できるSDNは、機器同士の接続経路や、個別機器の設定 / メンテナンスを一括管理可能です。
画像出典:colt
たとえば、複数の仮想ネットワーク構成を構築しておき、状況に応じて素早く切り替えるなどが可能。ネットワーク機器を一括制御できるSDNなら、データセンターが物理的に離れた位置にあっても、個別機器設定のため現地に赴く必要もありません。
SDNの仕組み / アーキテクチャ
もう少しSDNを具体的にイメージできるよう、仕組み / アーキテクチャも簡単に解説しておきましょう。
コントロールプレーン / データプレーン
ネットワーク機器の構成 / 接続を柔軟かつ動的に変更できることがSDNの特徴。これを実現する仕組みの1つが「コントロールプレーン / データプレーンの分離」です。
データプレーンとは、受信したデータの転送処理を担う機能。コントロールプレーンとは、データの送受信経路を含む、機器制御を担う機能。従来型のネットワーク機器は、コントロールプレーン / データブレーンの双方が搭載されていました。
一方、SDNで利用するネットワーク機器にはコントロールプレーンが搭載されていません。コントロールプレーンは各機器から独立した位置に設置され、SDNコントローラーが一括制御することによって「機器の構成 / 設定」を変更する仕組みです。
画像出典:GeeksforGeeks
SDNのアーキテクチャ
SDNは「アプリケーション」「コントロール」「インフラストラクチャ」という3つのレイヤーで構成されていますが、アーキテクチャ自体は非常にシンプルです。具体的には「アプリケーションにAPI接続されたコントロールから、プロトコルでインフラストラクチャを制御する」アーキテクチャを採用しています。
画像出典:ONF
アプリケーションレイヤー |
SDNコントローラーに指示を出すアプリケーションが位置するレイヤー。 SDNポータルアプリ、ファイアウォール、ロードバランサーなどが該当 |
コントロールレイヤー |
ネットワーク機器をプロトコルで制御するレイヤー。 SDNコントローラーが該当 |
インフラストラクチャレイヤー |
ネットワーク機器のコントロールを受け持つレイヤー。 |
SDNの制御プロトコル
SDNポータルアプリから指示を受け取ったSDNコントローラーが、ネットワーク機器のコントロールプレーンを制御するには、制御方法・手順を定めたプロトコルが必要。このプロトコルを「制御プロトコル」と呼んでおり、SDNで標準的に使われている通信規格が「OpenFlow」です。
具体的には、SDNコントローラー(OpenFloowコントローラー)が、コントロールプレーン(OpenFlowスイッチ)にOpenFlow制御信号を送信。OpenFlowスイッチは制御信号にしたがってネットワーク機器の設定・構成を変更する流れ。OpenFlowコントローラーに変更を指示するアプリケーションが「SDNポータルアプリ」というイメージです。
ただし、SDN標準規格とはいえ、OpenFlowは名称通り「オープンな通信規格」です。制御プロトコルにOpenFlowを採用していても、SDNソリューションメーカー間での互換性はほぼありません。また、OpenFlowを使わない、独自プロトコルのSDNソリューションを提供するメーカーもあります。
SDNでネットワークはどう変わるのか
ここまでの解説で、SDN(Software Defined Network)の大まかな全体像を理解いただけたはずです。それでは、従来型と異なるSDNの採用で、ネットワーク環境はどのように変化するのか?SDN登場の理由を含めて解説していきましょう。
SDNの概念が登場した理由
「ネットワーク構成・設定を柔軟かつ動的に変更するSDN」という概念が登場した理由は、クラウド技術を含むIT技術の進化・普及です。
たとえばクラウドサービス(AWS / Azureなど)は、CPU / ストレージなどが仮想化されており、ニーズに応じた各リソースの「動的」利用を実現しています。「使いたいときに使いたいだけ」リソースを利用できるクラウドのオンデマンド性は、企業にとって大きな魅力。クラウドとオンプレミスのハイブリッド運用が進められている理由です。
一方、クラウドと接続されるオンプレミス環境は、構成を柔軟かつ動的に変動させていくことが困難。クラウドでCPU / ストレージリソースを最適化できても、オンプレミス環境と接続する「ネットワーク」がボトルネックになってしまいます。こうした課題を解決するため、SDNの概念が登場したのです。
SDNのメリット
このことからもわかるように、SDN採用によって起こる変化は「ビジネスの状況に応じてリソースを最適化できる、オンデマンドネットワーク環境実現」です。さらに、SDN採用によって、以下のようなメリットも得られます。
- ネットワーク構成・設定変更のダウンタイムを最小限に抑えられる
- ネットワーク機器を集中制御できるため作業負担を軽減できる
- エンジニアを常駐させる必要がないため運用コストの削減が期待できる
SDNベンダーの選定が重要
ただし、上述した通り、各メーカーのSDNソリューションに互換性はありません。そもそもSDNは、ソフトウェアでネットワーク機器を制御し、仮想的にネットワーク利用するための考え方です。「汎用SDN製品」というものではないことを理解しておきましょう。
つまり、SDN導入で重要なのは「SDNベンダー(ソリューション)」の選定。SDNを応用したソリューションにはいくつかがありますが、それぞれのソリューションを理解し、自社課題解決に役立つか?判断しなければなりません。
SDNが解決できるネットワーク課題
それでは、SDNはどのようなネットワーク課題を解決できるのでしょうか?
1つは、自社データセンター拡張にともなって、ネットワーク構成が複雑化してしまったパターン。この場合、ネットワーク機器を整理し、シンプルでトラブルの少ない環境を実現するためにSDNが役立ちます。
もう1つは、時間帯 / 時期に応じてネットワークの利用状況が大きく変動するパターン。たとえば、クラウドと接続した環境で、ほぼ利用していない時間帯でも重量料金を支払っているなどが考えられます。ダウンタイムを抑えながら、スピーディーにネットワーク構成を変更できるSDNは、こうした課題を解決する最適のソリューションです。
たとえば、ネットワークキャリア「Colt」が提供する「Colt On Demand」は、クラウド利用に最適なSDNサービスです。AWS / Azure / GCPなどの主要クラウドに対応し、ポータル画面から瞬時にネットワーク構成を変更可能。スループットを瞬時に切り替え可能なほか、利用していなければ料金もかかりません。
画像出典:Colt
SDN(Software Defined Network)の概要を紹介しました
柔軟かつ動的にネットワーク構成を変更できる「SDN」の詳細が気になっている。そんな方に向け、仕組み / アーキテクチャから、従来型ネットワークとの違い、解決できる課題まで、知っておきたいSDNの基礎知識を解説してきました。
SDNの概念・技術をWAN(広域ネットワーク)に適用した「SD-WAN」など、さまざまなソリューションを利用できることがSDNの特徴。しかし、ソリューションによって解決できる課題が異なることも事実です。
重要なのは、SDNの導入を目的にするのではなく、自社課題を解決できるソリューションはなにか?見極めることです。本記事を参考に、自社に合った手段を検討してください。