ソフトウェアデファインドネットワークとは

URL をコピー

ソフトウェアデファインドネットワーク (SDN) は、ネットワークリソースを仮想化システムに抽象化するという IT インフラストラクチャの手法です。これはネットワーク仮想化と呼ばれます。SDN は、一元的な管理およびプログラミングが可能なネットワークの構築を目的として、ネットワーク管理機能からネットワーク転送機能を切り離します。これはデータプレーンからコントロールプレーンを分離すると表現することもできます。SDN を使用すると、IT 運用チームは、各ネットワークデバイスを手動で処理する代わりに、一元化されたパネルを通じて複雑なネットワークトポロジーのネットワークトラフィックを制御できます。

組織は、従来のインフラストラクチャが抱える制約に対処するために、ソフトウェアデファインドネットワークを導入し、一元化および自動化された、ポリシー駆動型のシステム制御を実現しています。ソフトウェアデファインドネットワークのメリットには、次のようなものがあります。

  • コントロールプレーンとデータプレーンの分離:データパケットの転送方法を決定する役割を担うコントロールプレーンが一元化され、ソフトウェアベースのコントローラーに実装されます。データパケットを実際にネットワーク経由で転送する役割を担うデータプレーンは、ハードウェアベースのネットワークデバイス内に留まりますが、単純化されてパケット転送のみに特化するようになります。従来のネットワーキングでは、コントロールプレーンとデータプレーンは通常、スイッチ、ルーター、アクセスポイントなどのネットワークデバイス内で統合されているため、一元管理されていません。
  • 一元管理:ソフトウェアデファインドネットワークは一元管理が可能で、ネットワークポリシーや設定は中央コントローラーから管理および適用されます。これに対して、従来のネットワーキングでは、ネットワークポリシーや設定は複数のネットワークデバイスに分散しています。
  • コストの低減:ソフトウェアデファインドネットワークのインフラストラクチャは、高価な単一用途のアプライアンスではなく市販のサーバーで実行されるため、通常は同等のハードウェアに比べて低コストです。また、単一のサーバーで複数の機能を実行できるため、フットプリントが小さくなります。つまり、必要とされる物理ハードウェアが少なくなり、それによってリソースの統合が可能になるため、必要な物理スペースと電力量、および全体的なコストを削減できます。
  • スケーラビリティと柔軟性の向上:ネットワーク・インフラストラクチャを仮想化すると、新しいプロプライエタリー・ハードウェアを追加する代わりに、環境に合わせて必要なときにネットワークリソースを拡張または縮小できます。ソフトウェアデファインドネットワークを使用すると、柔軟性が大幅に向上し、ネットワークリソースのセルフサービス・プロビジョニングが可能になります。
  • プログラム可能で自動化しやすい:ソフトウェアデファインドネットワークでは、管理者はソフトウェア・デファインド・ロジックおよび API を使用してネットワークポリシーや設定を定義します。このため、ネットワークリソースの動的なプロビジョニングとポリシーベースの管理が可能になり、迅速なデプロイや変化するビジネスニーズへの適応が促進されます。多くの場合、従来のネットワーキングでは、コマンドラインインタフェース (CLI) またはデバイス固有の設定ツールを使い、ネットワークデバイスを手動で設定および管理する手間が伴います。
  • 管理の単純化:ソフトウェア・デファインド・ネットワークは、高度な専門知識を持つネットワークのエキスパートが管理を担う必要がないため、全体的に操作しやすいインフラストラクチャになります。 

ソフトウェアデファインドネットワークに、ソフトウェア・デファインド・ストレージやその他のテクノロジーを組み合わせると、すべてをソフトウェアで定義する IT インフラストラクチャの手法を構築できます。この手法はハイパーコンバージェンスと呼ばれています。

Red Hat のリソース

ネットワーク機能仮想化 (NFV) は、ハードウェアからネットワーク機能を抽象化するとともに、SDN を実行できる柔軟なインフラストラクチャを提供することでソフトウェアデファインドネットワークをサポートします。 

通信事業者の場合、NFV を使用すると、複数のサーバーで機能を実行したり、需要が変化したときに必要に応じて機能を移行したりする柔軟性を得られます。この柔軟性により、通信サービスプロバイダーはサービスとアプリケーションをより迅速に提供できます。たとえば、顧客が新しいネットワーク機能を要求した場合、新しい仮想マシン (VM) をスピンアップしてその要求に対応できます。この機能が不要になった場合は、VM の使用を停止できます。これにより、新しいサービス候補の価値を低リスクで検証できます。

NFV と SDN は、目的に応じて一緒に使用することができ、両方ともコモディティハードウェアを使用します。NFV と SDN を使用すると、より柔軟でプログラム可能なネットワーク・アーキテクチャを作成し、リソースを効率的に使用できます。

ネットワーク機能仮想化についてさらに詳しく

ソフトウェア・デファインド・ネットワーク・アーキテクチャは、ネットワーク管理機能をデータ転送機能から切り離し、ネットワーク・インテリジェンスと管理をソフトウェアベースのコントローラーに一元化し、ネットワークリソースに対して、標準化された API およびインタフェースを通じてプログラム可能で柔軟性の高いスケーラブルな管理を可能にします。このアーキテクチャには、従来のネットワークと比べて管理と役割がどのように変化したかが直接反映されています。

コントロールプレーンには、データパケットをネットワーク経由で転送する方法について、高度な意思決定を行う役割があります。ソフトウェア・デファインド・ネットワークでは、コントロールプレーンは一元化されてソフトウェアに実装され、通常は中央コントローラーまたはネットワーク・オペレーティングシステム上で実行されます。コントローラーは、OpenFlow、NETCONF、または gRPC といった標準化されたプロトコルを使用してネットワークデバイスと通信し、ネットワークトポロジーと状態を常に俯瞰的に見ることができます。

データプレーンはフォワーディング・プレーンまたはフォワーディング・エレメントとも呼ばれ、コントロールプレーンから受け取った命令に従ってデータパケットをネットワーク経由で転送する役割を担います。ソフトウェア・デファインド・ネットワークでは、データプレーンはスイッチ、ルーター、アクセスポイントなど、フォワーディング・エレメントと呼ばれるネットワークデバイスに実装されます。パケットの転送方法に関して、これらのデバイスはコントロールプレーンからの命令に従うため、簡素化したり、パケット転送のみに特化させたりすることができます。

ソフトウェア・デファインド・ネットワークのコンポーネント

SDN のアーキテクチャ内では複数のコンポーネントがそのプロセスの取り扱いを定義しています。

次に示す 2 種類の API (アプリケーション・プログラミング・インタフェース) により、プレーン間および大規模ネットワークとの通信が可能になります。

  • サウスバウンド API:サウスバウンド API は、ソフトウェアデファインドネットワーク・アーキテクチャのコントロールプレーンとデータプレーン間の通信に使用されます。これらの API により、コントローラーは、ネットワークデバイスをプログラムおよび設定し、ネットワークトポロジーと状態に関する情報を取得し、リンク障害や輻輳などのネットワークイベントに関する通知を受信することができます。一般的なサウスバウンド API の 1 つが OpenFlow で、コントローラーとネットワークスイッチ間の通信に広く使用されています。
  • ノースバウンド API:ノースバウンド API は、ソフトウェアデファインドネットワーク・コントローラーの機能を、より高度なネットワーク管理アプリケーションおよびサービスに導入するために使用されます。これらの API を使用すると、外部アプリケーションはソフトウェア・デファインド・ネットワーク・コントローラーと対話したり、ネットワークサービスを要求したり、ネットワークトポロジー、トラフィックフロー、パフォーマンス・メトリクスに関する情報を取得したりできます。ノースバウンド API は、ネットワーク管理タスクのプログラマビリティと自動化を実現し、オーケストレーション・システム、クラウド・プラットフォーム、およびその他の管理ツールとの統合を促進します。

さらに、SDN コントローラーは、ソフトウェアデファインドネットワーク・アーキテクチャの中核コンポーネントであり、ネットワーク制御機能を実装し、コントロールプレーンとデータプレーン間の通信を調整する役割を担います。コントローラーはネットワークの一元的なビューを提供し、ネットワーク状態に関する情報を維持管理し、ネットワークポリシーと要件に基づいてネットワークデバイスの設定および管理方法を決定します。ソフトウェアデファインドネットワーク・コントローラーの例として、OpenDaylight、ONOS、Ryu などがあります。

スイッチ、ルーター、アクセスポイントなどのネットワークデバイスは、ソフトウェアデファインドネットワーク・アーキテクチャのデータプレーンを構成します。これらのデバイスはコントローラーから受信した命令に従ってデータパケットを転送し、フローベース転送、Quality of Service (QoS)、およびトラフィック・エンジニアリングなどの機能をサポートする場合もあります。ソフトウェアデファインドネットワークでは、ネットワークデバイスはプログラマビリティとコントローラーとの相互運用性をサポートするため、単純化および標準化される場合が多くあります。

管理およびオーケストレーション (MANO):ソフトウェア・デファインド・ネットワーク・アーキテクチャには、ネットワークリソースのプロビジョニング、設定、およびモニタリングの役割を担う、管理およびオーケストレーション・システムが含まれる場合があります。MANO システムは、ノースバウンド API 経由で SDN コントローラーと通信し、ネットワーク管理タスクを自動化したり、リソース活用を最適化したり、サービス可用性とパフォーマンスを確保したりします。

ソフトウェアデファインドネットワークにはセキュリティ上のメリットが複数あります。

  • ソフトウェアデファインドネットワークは一元化されたコントロールプレーンを使用するため、従来のネットワーキングモデルと比べてセキュリティポリシーの適用が単純化されます。SDN により、ネットワーク全体でセキュリティポリシーの一貫性のある単純化された実施が可能になり、設定ミスのリスクが減少します。
  • 一元化されたコントローラーでネットワークトラフィック全体を包括的に把握できるため、より効果的な監視が可能になり、潜在的な脅威も迅速に特定できます。
  • これによりリアルタイムの脅威検出と被害の軽減が実現します。SDN はネットワーク設定を動的に調整したり、影響を受けるセグメントを切り離したり、侵害されたノードを避けるためにトラフィックを再ルーティングしたりすることができます。
  • 一元化されたコントロールプレーンでは、セキュリティポリシーと設定をネットワーク全体で自動的に更新することもできるため、すべてのデバイスが常に最新のセキュリティ標準に従って設定され、速やかにパッチを適用できます。
  • ソフトウェアデファインドネットワークはマイクロセグメンテーションを実施できるため、異なるネットワークセグメントをきめ細かく切り離し、特定のセグメントに対する潜在的な脅威を封じ込めることで攻撃対象領域を削減することができます。
  • ネットワークトラフィックの一元化されたログ記録と分析により、ネットワークの挙動に関してより深い知見を得ることができ、異常なアクティビティや潜在的なセキュリティ違反を特定することにも役立ちます。
  • SDN は、侵入検知システム (IDS)、侵入防止システム (IPS)、ファイアウォール、セキュリティ情報およびイベント管理 (SIEM) システムなど、さまざまなセキュリティツールと容易に統合できます。

もちろんソフトウェアデファインドネットワーク自体にもセキュリティの課題はあり、その大部分は一元的な権限に関するものです。そうした課題には次のようなものがあります。

  1. SDN コントローラーは重要なコンポーネントであり、それ故に単一障害点となり得ます。コントローラーが侵害されると、ネットワーク全体が制御不能になるおそれがあります。
  2. SDN コントローラーは攻撃者にとって高価値のターゲットです。ネットワーク全体のセキュリティを維持するために、そのセキュリティを確保することが極めて重要です。
  3. 加えて、コントローラーとネットワークデバイス間の安全な通信のために、強力な暗号化と認証を使用して、制御メッセージの傍受、改ざん、スプーフィングを防ぐ必要があります。
  4. 同様に、コントローラーとアプリケーション間の通信 (ノースバウンド) およびコントローラーとネットワークデバイス間の通信 (サウスバウンド) に使用される API も、不正アクセスや悪用から保護する必要があります。

ポリシーを容易に実装できることから、ネットワークは成熟するにつれて必然的に複雑化します。動的な潜在的大規模 SDN 環境全体で一貫性のあるセキュリティポリシーを維持する作業は複雑で、ミスが発生しやすくなります。セキュリティポリシーが互いに矛盾せず、一貫して適用されるようにすることは、もう 1 つの課題です。

どのネットワーク・アーキテクチャでも、重大なレイテンシーやパフォーマンス上のボトルネックを誘発させることなく、増大し続けるトラフィックとデバイスを処理するには、セキュリティ・ソリューションをネットワークとともに拡張させる必要があります。一元化されたコントロールプレーンが一貫性をもたらし、セキュリティのロールアウトが容易になることから、多くの場合、ソフトウェアデファインドネットワークのメリットのほうが課題を上回ります。

ソフトウェアデファインドネットワーク (SDN) は、異なる業界およびアプリケーションにまたがる多様なユースケースに適用することができる、柔軟性の高い、プログラム可能で一元化されたアプローチをネットワーク管理にもたらします。

  • データセンター最適化では、SDN のネットワーク仮想化および自動ネットワーク管理によって柔軟性が高まり、ミスが発生しにくくなります。
  • ネットワーク機能仮想化 (NFV) では、SDN により従来のネットワーク・アプライアンス (ファイアウォールやロードバランサーなど) をコモディティハードウェアで実行されるソフトウェアに置き換えることができ、コストの削減と柔軟性の向上につながります。また、一連の VNF 経由でデータが送られるサービスチェーンを作成することができ、データパケットにカスタマイズ可能なパスを提供します。
  • キャンパスおよびエンタープライズ・ネットワークでは、SDN の一元化されたポリシー管理により、ネットワーク全体で一貫したセキュリティポリシーを実現できます。SDN は、ユーザー ID、デバイス、コンテキストに基づいてアクセス制御を動的に調整できるため、セキュリティとユーザーエクスペリエンスが向上します。
  • SDN テクノロジーを使用してワイドエリアネットワーク (WAN) 接続の最適化と管理を行うと、長距離ネットワーク接続のパフォーマンスと信頼性が向上します。複数の支店などを構える企業にとっては特に有益です。
  • クラウドコンピューティングおよびマルチクラウド統合では、SDN がマルチクラウド環境のシームレスな統合と管理を実現し、組織が複数のクラウドプロバイダーのリソースを有効活用できるようにしながら、クラウド・アプリケーションのニーズに合わせて拡張できるスケーラブルなネットワーク・ソリューションを提供します。
  • IoT (モノのインターネット) ネットワークでは、SDN が膨大なスケーラビリティ要件に対処し、新しいデバイスが追加されるたびに動的なネットワーク設定を可能にします。加えて、一元管理によってすべての IoT デバイス全体で一貫性のあるセキュリティポリシーが実現し、保護されていないエンドポイントに伴うリスクを緩和します。
  • 5G ネットワークでは、SDN により仮想ネットワークスライスの作成が可能になり、それぞれを異なるタイプのサービスに最適化することができます (自動運転車では低レイテンシー、ビデオストリーミングでは高スループットなど)。
  • 障害復旧とビジネス継続性については、SDN でフェイルオーバープロセスを自動化できるため、障害発生時にネットワークサービスを迅速に復旧するだけでなく、より柔軟で効果的なネットワーク・バックアップ・ソリューションを実現して、災害時もデータの整合性と可用性を維持できます。

Red Hat では、ハイブリッドクラウドを包括的にサポートする取り組みにオープンプラクティスを組み込んだ、オープン・ハイブリッドクラウドを推進しています。Red Hat のオープンハイブリッドクラウド戦略は、Red Hat Enterprise LinuxRed Hat OpenShiftRed Hat Ansible Automation Platform という技術的な基盤に支えられています。Red Hat のプラットフォームは基盤のインフラストラクチャの力を発揮させて、自動化された IT インフラストラクチャを提供する機能により、あらゆる環境で一貫したクラウドエクスペリエンスを作り出します。Red Hat はハイブリッドクラウドの世界をリードし、数千もの企業のモダナイゼーション・ジャーニーを支援しています。 

Red Hat 公式ブログ

Red Hat のお客様、パートナー、およびコミュニティのエコシステムに関する最新の情報を入手しましょう。

すべての Red Hat 製品のトライアル

Red Hat の無料トライアルは、Red Hat 製品をハンズオンでお試しいただける無料体験版です。認定の取得に向けた準備をしたり、製品が組織に適しているかどうかを評価したりするのに役立ちます。

関連情報

マイクロセグメンテーションとは

マイクロセグメンテーションは、ネットワークを小さな独立したセクションに分割して個々のワークロードを保護する、ソフトウェア・デファインドのセキュリティ技術です。

仮想化とは

仮想化とは、複数のシミュレートされた仮想化環境を、単一の物理マシンから作成することを可能にするテクノロジーです。

仮想マシン (VM) とは

仮想マシン (VM) とは、分離されたコンピューティング環境であり、プールされたハードウェアリソースを使用して作成されます。

仮想化リソース