ソフトウェア定義ネットワーク (SDN) とは、ネットワークコントロールの簡素化および改善を目指して、ネットワークコントロールプレーンとフォワーディングプレーンを分離するアーキテクチャーを指します。ITチームは、変化するビジネス要件とアプリケーションニーズに迅速に適応できるようになります。
SDNは、増大するネットワーク要件に適応して、オートメーションとアジリティを 実現できる、非常に柔軟性と俊敏性の高い方法です。SDNは、ネットワークコントロールとフォワーディングプレーンを分離することで、ネットワークコントロールをプログラム可能なエンティティにして、その根底にあるインフラストラクチャーを抽象化します。
ネットワークエンジニアにとっては、ネットワークサービスの提供、ロケーションとアプリケーションの接続、またはリソースおよびキャパシティ使用率の管理を行うにあたって、個別のネットワークデバイスに向き合う必要がなくなるため、SDNは大きなメリットをもたらします。SDNは、このようなタスクを引き受け、組織が必要な時にサービスを提供できるよう、個別の「スイッチ」に指示を出します。
ソフトウェア定義ネットワーク (SDN) の機能
ソフトウェア定義ネットワークには4つの固有の定義可能な特徴があります。
- 俊敏性。ビジネスおよびアプリケーションのニーズの変化に応じて、管理者は必要に応じてネットワーク構成を調整できます。
- 集中管理。SDNは、ネットワークインテリジェンスを統合することで、ネットワーク構成およびアクティビティの総合的なビューを提供します。
- プログラム可能。自動化されたSDNサービスを通じて、ネットワーク機能を直接プログラムし、ネットワークリソースを迅速かつ容易に構成する機能。
- オープンな接続性。SDNはオープン規格に基づいて実装されます。そのため、SDNはネットワーク設計を合理化し、ベンダーに依存しないアーキテクチャーで一貫性あるネットワークを提供します。
ソフトウェア定義ネットワークのアーキテクチャー
要約すると、ソフトウェア定義ネットワークは、APIに依存して集中管理プレーンを作成することで、管理者とマネージャーがネットワークの動作を決定してプログラムできるようにします。SDNは、一般的に複雑なネットワークインフラストラクチャーの上に抽象化または仮想オーバーレイを作成することで、ITチームが基盤となるテクノロジーに関して最低限の知識を持っているか、これと直接的な相互作用を果たす場合でも、ネットワーク、アプリケーション、およびデバイスを一貫性ある形で管理できるようになります。
ソフトウェア定義ネットワークはさまざまなタスクを実行するほか、数多くのテクノロジーを網羅しています。しかし、その当初の最も決定的な目的は、ネットワークデータとネットワークコントロールプレーンを分離するプログラム可能な抽象化を作成することでした。コントロールプレーンは運用の「頭脳」をつかさどり、ネットワークサービスを管理して、ネットワーク全体でパケットを移動させる方法およびその場所を決定します。データプレーンは輸送システムであり、エンドポイントを結んで、コントロールプレーンの指示に従いパケットを移動させます。
従来のネットワーク環境では、システム内で実行中のアプリケーション要件をネットワークが認識することはほとんどありません。オペレーターは、パケットのサイズ、ボリューム、レイテンシ、エラーなどのアプリケーションの特徴を観察できるものの、主にアプリケーションの種類、また健全性や必要なパフォーマンスに関する情報は必ずしも判別できません。これに対し、ソフトウェア定義ネットワークでは、アプリケーションがネットワークに関する情報を抱え、ネットワーク構成はアプリケーションに合わせてカスタマイズ可能なため、双方向の情報のやり取りが可能になります。
ソフトウェア定義ネットワークは、3つの主要なコンポーネントによって構成されています。まず1つ目が、SDNアプリケーションです。こうしたアプリケーションは、APIを利用して、SDNコントローラーを通じてアクションを伝え、リソースを要求します。SDNアプリケーションは、ネットワーク管理、アナリティクスの提供、セキュリティまたは共通ネットワーク機能の追加など、さまざまな形態を取り、多数の機能を果たすこともできます。 例として、IPアドレス管理 (IPAM)、サービス品質 (QoS) 管理、ロードバランシング、あるいはDoS (サービス拒否) 攻撃の検知または低減などを挙げることができます。
2つ目はSDNコントローラーですが、これはおそらく最も重要です。SDNアプリケーションから指示を受けたSDNコントローラーがネットワークコンポーネントに情報を伝えます。SDNコントローラーは、ハードウェアからのネットワーク情報の収集も担当しており、この情報と関連の統計データをアプリケーションに送り返します。
3つ目のコンポーネントは、SDNネットワークデバイスのシステムです。こうしたデバイスは、ネットワーク内のデータ転送およびデータ処理タスクを担当しており、いずれもデータパスに関して実施することができます。SDNコントローラーは、3つのレイヤーの統合を担当します。こうしたAPI統合は、一般にノースバウンドまたはサウスバウンドインターフェースと呼ばれます。ノースバウンドはコントローラーとアプリケーション間の統合を、またサウスバウンドはコントローラーと物理ネットワークデバイス間の統合を指します。
ソフトウェア定義ストレージ(SDN)のメリット
SDNに投資した組織は、データ使用量の多いアプリケーションに対するそのサポート能力にただちに魅了されることでしょう。しかし、こうした用途以外にも、SDNを活用するべきメリットは無数に存在します。以下に、その主な利点のいくつかを紹介します。
ソフトウェア定義ネットワークとセキュリティ
ソフトウェア定義ネットワークが提供するセキュリティ保護性能には、いくつかの異なるレベルが存在します。その中で最も顕著なのが一元化されたインテリジェンスではないでしょうか。これは、IT管理者によるセキュリティポリシーの迅速かつ容易な設定と維持を可能にします。こうしたポリシーは、ネットワーク全体に普遍的に適用して、集中型コントロールによって保守および適用することができます。
さらに、SDNは、ソフトウェアとハードウェアの間に抽象化レイヤーを作成することで、ITチームが専用デバイスを迂回し、ネットワーク全体で実装するセキュリティツール開発を速やかに開始できるようにします。その結果、セキュリティ侵害が発生した場合でも、洞察の収集と潜在的脅威の検知を可能にする優れた透明性を発揮します。
SDNの場合、究極的にはセキュリティも拡張することができます。ITチームは、高額な専用ハードウェアとセキュリティコントロールを必要とすることなく、ソフトウェアの増大、新しいクラウドとアプリケーションのプロビジョニング、またはビジネスニーズの変更の規模に最適なセキュリティポリシーの作成、管理、デプロイが可能です。当然のことながら、セグメントがシャットダウンするかセキュリティギャップを引き起こした場合、管理者はSDNの透明性を活かしてマルウェアを迅速かつ容易に検知できるようになります。
ソフトウェア定義ネットワークの使い方
SDNがメリットをもたらすユースケースは複数存在します。まず、SDNはDevOpsイニシアティブをサポートします。アプリケーションアップデート、展開、さらにはITインフラストラクチャーコンポーネントさえも、SDNを通じてすべて自動化でき、これはDevOpsアプリケーションとプラットフォームが作成および展開されていく過程で行われます。
2つ目に、組織はSDNコントローラーを活用することで、進行中のWi-Fiおよびイーサネットのニーズを抱えて複雑になりがちなキャンパスネットワークの機能性を高めることができます。集中制御型SDNコントローラー「スイッチ」はオートメーションと集中管理を実現することで、セキュリティを高め、組織が自社のネットワーク内でより高品質なサービスを提供できるようにします。
3つ目に、サービスプロバイダーネットワークはSDNを活用することで、ネットワークプロビジョニングプロセスを自動化し、サービス管理の向上とコントロールの増大を実現できます。
最後に、組織はSDNが提供する保護性能の向上と簡素化されたファイアウォール管理の恩恵を手に入れることができます。企業は、SDNの仮想化性能を通じて分散ファイアウォールシステムを作成し、セキュリティの追加レイヤを提供することで、セキュリティ侵害が1つのVMから別のVMへと飛び火するのを防止できます。当然、管理者とマネージャーはネットワーク活動を集中的に追跡・変更することで、セキュリティ侵害が発生する前にこれを検知・排除できます。