danika3160’s blog

ここで通信分野と関連する記事を紹介していきます! よろしくお願いいたします。

VXLANとNVGREの違いの全解説

NVGRE(汎用ルーティングカプセル化を使用したネットワーク仮想化)とVXLAN(仮想拡張可能LAN)はどちらもネットワーク仮想化テクノロジであり、VLANを拡張して大規模なクラウドコンピューティング展開における乏しい仮想ネットワークの問題を解決することを目的としています。仮想ネットワークの一部として、NVGREと VXLANは実質的な機能を提供しません。異なるVM(仮想マシン)間でパケットをカプセル化して転送する方法を定義するだけです。では、NVGREとVXLANの違いは何ですか?この記事でご回答いたします。

NVGREとVXLANの概要

NVGREとは

NVGREは、カプセル化とトンネリングを使用してサブネットに多数の仮想LAN(VLAN)を提供するネットワーク仮想化方式です。VLANは、分散されたデータセンターだけでなく、レイヤ2(データリンクレイヤ)およびレイヤ3(ネットワークレイヤ)にも拡張できるため、サブネットにVLANを提供すると、マルチテナントの負荷分散ネットワークをオンプレミス環境とクラウド環境で共有できるようになります。NVGREは、複雑な仮想化環境で機能せず、分散したデータセンターに必要な長距離にわたってネットワークセグメントを拡張する限られた数のVLANによって引き起こされる問題を解決することを目的としています。NVGRE標準は、Microsoft、Intel、HP、およびDellによって提案されています。これは、別のカプセル化方式VXLANと競合します。

VXLANとは

その名前が示すように、VXLANはVLANを拡張するネットワーク仮想テクノロジーです。現在、大規模なクラウドコンピューティングデータセンターの仮想ネットワークが不十分であるという問題を解決するように設計されています。実際、ネットワークエンジニアはVLANを活用して、クラウドコンピューティング環境でクラウドアプリケーションとテナントを分離していました。ただし、VLANでは特定の時間に最大4096のネットワークIDのみを割り当てることができます。これは、大規模なクラウドコンピューティング環境には十分ではありません。そのため、VXLANは、24ビットのセグメントIDを追加してVLANアドレス空間を拡張し、クラウドアプリケーションとテナントを論理的に隔離しながら、使用可能なIDの数を1,600万に増やすように設計されています。また、各フレームのVXLANセグメントIDは、個々の論理ネットワークとテナントのネットワークIDを区別できます。したがって、何百万もの独立したレイヤ2 VXLANネットワークが共通のレイヤ3インフラストラクチャ上で共存できます。VXLAN仕様は、もともとCisco、VMware、およびArista Networksによって作成されました。ここでVXLANの詳細情報を確認してください:「QinQ vs VLAN vs VXLAN」

 

NVGRE vs VXLAN:違いは何ですか?

NVGREとVXLANは、実用上ほぼ同じです。それらの主な違いは、バッカー、トランスポートプロトコル、パケット形式などにあります。

バッカーとトランスポートプロトコル

NVGREは主にMicrosoftによってサポートされ、VXLANは主にCiscoによって駆動されます。標準のトランスポートプロトコル(TCP/UDP)を使用するVXLANとは異なり、NVGREプロトコルはGRE(汎用ルーティングカプセル化)です。

パケットフォーマット

パケット形式は、NVGREとVXLANの最も顕著な違いです。VXLANパケットヘッダーには、1600万個の一意の仮想セグメントを表す24ビットのIDセグメントが含まれています。このIDは通常、UDPポートの疑似ランダムアルゴリズムによって生成されます。これにより、パケット内のMACグループを一意のUDPポートグループにマッピングすることにより、5タプルに基づくロードバランシングを維持し、VM間のパケットの順序を維持できます。VXLANカプセル化により、パケットサイズが50バイトに拡張されます。これを以下に示します。

Figure 1 Packet Format of VXLAN.png

NVGREは、GREヘッダーの下位24ビットをTNI(テナントネットワーク識別子)として使用します。これは、VXLANと同様に、1600万の仮想ネットワークをサポートできます。帯域幅使用率を表すフローレベルの細分性を提供するために、伝送ネットワークはGREヘッダーを使用する必要があります。しかし、これによりNVGREは従来のロードバランシングと互換性がなくなります。これはNVGREの主な欠点であり、NVGREとの最大の違いです。

Figure 2 Packet Format of NVGRE.png

送信方法

VXLANは、トランスポートネットワークでマルチキャストを利用して、レイヤ2セグメントでのブロードキャスト、不明なユニキャスト、およびマルチキャストのフラッディング動作をシミュレートします。これは、VXLAN作業プロセス全体でのMACアドレス学習やARPやネイバー探索などのプロトコルにとって重要です。NVGREについては、負荷分散機能を強化するために、各NVGREホストで複数のIPアドレスを使用して、より多くのトラフィックを負荷分散できるようにすることをお勧めします。NVGREは、フラッディングとIPマルチキャストに依存する代わりに、より柔軟な方法でブロードキャストします。

シャーディング

NVGREは、パケット最大伝送ユニットのシャーディングをサポートして、内部仮想ネットワークのパケットスケールをさらに削減します。大きなフレームをサポートするために伝送ネットワークを必要としません。ただし、VXLANでは、パケットスケールの拡大に耐えるために、大きなフレームをサポートする伝送ネットワークが必要です。つまり、VXLANはシャーディングをサポートしていません。

 

企業向けネットワークにおけるVXLANの応用シーン

VXLANの主な利点

  • スケーラビリティ:VXLANは、24ビットのVNI(VXLAN Network Identifier)識別子によって最大1,600万のレイヤ2セグメントをサポートすることができます。

  • 柔軟性:VXLANは、IPネットワークインフラとレイヤ2ネットワークにまたがることができるため、柔軟性とアーキテクチャの最適化が向上します。

  • 管理の簡素化:VXLANはデータセンターでのネットワーク管理と設定を簡素化し、導入と設定にかかる時間を数週間から数時間に短縮します。

VXLANの適用アプリケーション

  • データセンターネットワークの仮想化:VXLANはデータセンターネットワーク、特に多数の仮想マシンとテナントの分離を必要とする環境で広く使用されています。VXLANは、トラフィックをカプセル化し、レイヤ3ゲートウェイに拡張することで、仮想メモリシステム(VM)のポータビリティの制限に対処し、外部IPサブネット上のサーバーへのアクセスを可能にします。

  • マルチテナント対応:VXLANは、最大1,600万の相互に分離されたレイヤ2ネットワークをサポートし、従来のレイヤ2ネットワークにおけるVLANリソース不足の問題を解決します。

  • クラウドビジネスへの適応性:VXLANはクラウドビジネスに適しており、1000万レベルのテナント分離をサポートしているため、大規模なクラウドコンピューティング環境のニーズに対応できます。

  • EVPN-VXLANアーキテクチャ:EVPN(イーサネットVPN)テクノロジーと組み合わせることで、VXLANは効率的なレイヤ2およびレイヤ3ネットワーク接続を可能にし、キャンパスやデータセンターのネットワーク管理に共通のフレームワークを提供します。

  • Spine-Leafアーキテクチャ:新世代のデータセンターネットワークは、VXLANとEVPN技術を組み合わせたSpine-Leafネットワークアーキテクチャを採用し、UDPメッセージのMACによってデータプレーンのカプセル化を実現します。

 

NVGREとVXLAN、どちらを選ぶ

NVGRE(Network Virtualization using Generic Routing Encapsulation)とVXLAN(Virtual Extensible LAN)の間で適切なプロトコルを選択するかどうかは、特定のニーズと環境によって異なります。以下に、いくつかの検討事項を示します。

  • 1. サポートと互換性:ネットワーク機器と仮想化プラットフォームが選択したプロトコルをサポートしていることを確認する必要があります。NVGREは主にMicrosoft Hyper-V環境に関連しているが、VXLANはより広くサポートされており、複数の仮想化プラットフォームとネットワーク機器に対応しています。

  • 2. 高い拡張性:ネットワークが大規模な仮想化環境や多数の仮想マシンをサポートする必要がある場合は、VXLANを選択した方が良いでしょう。VXLANは24ビットのVXLAN識別子(VNI)を使用し、より多くの仮想マシンとテナントに対応できるよう、より大きな仮想ネットワーク容量を提供します。

  • 3. マルチテナントの分離:仮想化環境でマルチテナントの分離を実装し、データのセキュリティとプライバシーを確保する必要がある場合、VXLANは多くの場合、より優れたソリューションを提供します。VXLANはVNIベースの分離をサポートしており、異なるテナントのデータを論理的に分離します。

  • 4. ネットワークパフォーマンス:NVGREとVXLANでは、ネットワークパフォーマンスに若干の違いがあります。NVGREはGREカプセル化を使用しており、ネットワーク・オーバーヘッドとヘッダー・サイズが追加されるため、パフォーマンスに若干の影響を与える可能性があります。VXLANはUDPカプセル化を使用しており、比較的軽量で、パフォーマンスを向上させるためにハードウェアでオフロードして最適化することができます。

  • 5. 環境要件:特定のベンダーとの統合や特定のネットワーク展開シナリオなど、特定のニーズがある場合は、ベンダーのドキュメントやベストプラクティスを確認し、推奨プロトコルを選択することをお勧めします。

 

結論

VXLANおよびNVGREは、VLANと比較して高度なネットワーク仮想化実装トンネリングテクノロジーです。仮想ネットワークのサイズを4,096から1,600万に拡張し、レイヤ2パケットがレイヤ3ネットワークを介して送信できるようにします。そのため、ネットワークデバイスにNVGREとNVGREが追加され、ネットワークのスケーラビリティが拡張されます。したがって、VXLANとNVGREをサポートするスイッチは、大規模なクラウドコンピューティングでのVLANの制限を克服し、俊敏なVMネットワーク環境を実現するためによく使用されます。

要約すると、NVGREとVXLANのどちらを選択するかは、特定のニーズと環境によって異なります。より広範な互換性、高い拡張性、マルチテナント分離機能が必要であれば、通常はVXLANの方が良い選択です。しかし、お使いの環境がMicrosoft Hyper-Vと深く関連している場合は、NVGREを選択肢として検討することをお勧めします。

 

事例紹介

MLAG、VXLAN、IPv4/IPv6、SFLOW、SNMPなどの高度な機能をサポートするS5850-48S6Q(48x10Gb SFP+、6x40Gb QSFP+ アップリンク付き)は、次世代のメトロおよびエンタープライズネットワークの要件を満たし、従来のデータセンターまたは完全仮想化されたデータセンターにも最適。