VXLANとNVGREの違いの全解説

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

<h2 class="tit_one community_blog_detail_tit_one">NVGREとVXLANの概要</h2>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">NVGREとは</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">NVGREは、カプセル化とトンネリングを使用してサブネットに多数の仮想LAN（VLAN）を提供するネットワーク仮想化方式です。VLANは、分散されたデータセンターだけでなく、レイヤ2（データリンクレイヤ）およびレイヤ3（ネットワークレイヤ）にも拡張できるため、サブネットにVLANを提供すると、マルチテナントの負荷分散ネットワークをオンプレミス環境とクラウド環境で共有できるようになります。NVGREは、複雑な仮想化環境で機能せず、分散したデータセンターに必要な長距離にわたってネットワークセグメントを拡張する限られた数のVLANによって引き起こされる問題を解決することを目的としています。NVGRE標準は、Microsoft、Intel、HP、およびDellによって提案されています。これは、別のカプセル化方式VXLANと競合します。</p>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">VXLANとは</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">その名前が示すように、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の詳細情報を確認してください：「<a href="https://community.fs.com/jp/article/how-to-understanding-vlan-vxlan-qinq.html" target="_blank" rel="noopener">QinQ vs VLAN vs VXLAN</a>」</p>
<div class="new_community_blog_detail_underline"> </div>
<h2 class="tit_one community_blog_detail_tit_one">NVGRE vs VXLAN：違いは何ですか？</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">NVGREとVXLANは、実用上ほぼ同じです。それらの主な違いは、バッカー、トランスポートプロトコル、パケット形式などにあります。</p>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">バッカーとトランスポートプロトコル</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">NVGREは主にMicrosoftによってサポートされ、VXLANは主にCiscoによって駆動されます。標準のトランスポートプロトコル（TCP/UDP）を使用するVXLANとは異なり、NVGREプロトコルはGRE（汎用ルーティングカプセル化）です。</p>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">パケットフォーマット</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">パケット形式は、NVGREとVXLANの最も顕著な違いです。VXLANパケットヘッダーには、1600万個の一意の仮想セグメントを表す24ビットのIDセグメントが含まれています。このIDは通常、UDPポートの疑似ランダムアルゴリズムによって生成されます。これにより、パケット内のMACグループを一意のUDPポートグループにマッピングすることにより、5タプルに基づくロードバランシングを維持し、VM間のパケットの順序を維持できます。VXLANカプセル化により、パケットサイズが50バイトに拡張されます。これを以下に示します。</p>
<img title="_1579074689_0O2BuihUDc.png" src="https://media.fs.com/images/community/upload/wangEditor/202001/15/_1579074689_0O2BuihUDc.png" alt="Figure 1 Packet Format of VXLAN.png" /></div>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">NVGREは、GREヘッダーの下位24ビットをTNI（テナントネットワーク識別子）として使用します。これは、VXLANと同様に、1600万の仮想ネットワークをサポートできます。帯域幅使用率を表すフローレベルの細分性を提供するために、伝送ネットワークはGREヘッダーを使用する必要があります。しかし、これによりNVGREは従来のロードバランシングと互換性がなくなります。これはNVGREの主な欠点であり、NVGREとの最大の違いです。</p>
<p><img title="_1579074741_e5GnyeD3gR.png" src="https://media.fs.com/images/community/upload/wangEditor/202001/15/_1579074741_e5GnyeD3gR.png" alt="Figure 2 Packet Format of NVGRE.png" /></p>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">送信方法</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">VXLANは、トランスポートネットワークでマルチキャストを利用して、レイヤ2セグメントでのブロードキャスト、不明なユニキャスト、およびマルチキャストのフラッディング動作をシミュレートします。これは、VXLAN作業プロセス全体でのMACアドレス学習やARPやネイバー探索などのプロトコルにとって重要です。NVGREについては、負荷分散機能を強化するために、各NVGREホストで複数のIPアドレスを使用して、より多くのトラフィックを負荷分散できるようにすることをお勧めします。NVGREは、フラッディングとIPマルチキャストに依存する代わりに、より柔軟な方法でブロードキャストします。</p>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">シャーディング</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">NVGREは、パケット最大伝送ユニットのシャーディングをサポートして、内部仮想ネットワークのパケットスケールをさらに削減します。大きなフレームをサポートするために伝送ネットワークを必要としません。ただし、VXLANでは、パケットスケールの拡大に耐えるために、大きなフレームをサポートする伝送ネットワークが必要です。つまり、VXLANはシャーディングをサポートしていません。</p>
<div class="new_community_blog_detail_underline"> </div>
<h2 class="tit_one community_blog_detail_tit_one">企業向けネットワークにおけるVXLANの応用シーン</h2>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">VXLANの主な利点</h3>
<ul class="new_community_blog_detail_ul">
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>スケーラビリティ：VXLANは、24ビットのVNI（VXLAN Network Identifier）識別子によって最大1,600万のレイヤ2セグメントをサポートすることができます。</p>
</li>
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>柔軟性：VXLANは、IPネットワークインフラとレイヤ2ネットワークにまたがることができるため、柔軟性とアーキテクチャの最適化が向上します。</p>
</li>
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>管理の簡素化：VXLANはデータセンターでのネットワーク管理と設定を簡素化し、導入と設定にかかる時間を数週間から数時間に短縮します。</p>
</li>
</ul>
<h3 class="new_community_detaile_section_h3 new_community_detaile_section_h3_1">VXLANの適用アプリケーション</h3>
<ul class="new_community_blog_detail_ul">
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>データセンターネットワークの仮想化：VXLANはデータセンターネットワーク、特に多数の仮想マシンとテナントの分離を必要とする環境で広く使用されています。VXLANは、トラフィックをカプセル化し、レイヤ3ゲートウェイに拡張することで、仮想メモリシステム（VM）のポータビリティの制限に対処し、外部IPサブネット上のサーバーへのアクセスを可能にします。</p>
</li>
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>マルチテナント対応：VXLANは、最大1,600万の相互に分離されたレイヤ2ネットワークをサポートし、従来のレイヤ2ネットワークにおけるVLANリソース不足の問題を解決します。</p>
</li>
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>クラウドビジネスへの適応性：VXLANはクラウドビジネスに適しており、1000万レベルのテナント分離をサポートしているため、大規模なクラウドコンピューティング環境のニーズに対応できます。</p>
</li>
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>EVPN-VXLANアーキテクチャ：EVPN（イーサネットVPN）テクノロジーと組み合わせることで、VXLANは効率的なレイヤ2およびレイヤ3ネットワーク接続を可能にし、キャンパスやデータセンターのネットワーク管理に共通のフレームワークを提供します。</p>
</li>
<li><span class="new_community_blog_detail_ul_circle"></span>
<p>Spine-Leafアーキテクチャ：新世代のデータセンターネットワークは、VXLANとEVPN技術を組み合わせたSpine-Leafネットワークアーキテクチャを採用し、UDPメッセージのMACによってデータプレーンのカプセル化を実現します。</p>
</li>
</ul>
<div class="new_community_blog_detail_underline"> </div>
<h2 class="tit_one community_blog_detail_tit_one">NVGREとVXLAN、どちらを選ぶ</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">NVGRE（Network Virtualization using Generic Routing Encapsulation）とVXLAN（Virtual Extensible LAN）の間で適切なプロトコルを選択するかどうかは、特定のニーズと環境によって異なります。以下に、いくつかの検討事項を示します。</p>
<ul class="new_community_blog_detail_ul">
<li>
<p>1. サポートと互換性：ネットワーク機器と仮想化プラットフォームが選択したプロトコルをサポートしていることを確認する必要があります。NVGREは主にMicrosoft Hyper-V環境に関連しているが、VXLANはより広くサポートされており、複数の仮想化プラットフォームとネットワーク機器に対応しています。</p>
</li>
<li>
<p>2. 高い拡張性：ネットワークが大規模な仮想化環境や多数の仮想マシンをサポートする必要がある場合は、VXLANを選択した方が良いでしょう。VXLANは24ビットのVXLAN識別子（VNI）を使用し、より多くの仮想マシンとテナントに対応できるよう、より大きな仮想ネットワーク容量を提供します。</p>
</li>
<li>
<p>3. マルチテナントの分離：仮想化環境でマルチテナントの分離を実装し、データのセキュリティとプライバシーを確保する必要がある場合、VXLANは多くの場合、より優れたソリューションを提供します。VXLANはVNIベースの分離をサポートしており、異なるテナントのデータを論理的に分離します。</p>
</li>
<li>
<p>4. ネットワークパフォーマンス：NVGREとVXLANでは、ネットワークパフォーマンスに若干の違いがあります。NVGREはGREカプセル化を使用しており、ネットワーク・オーバーヘッドとヘッダー・サイズが追加されるため、パフォーマンスに若干の影響を与える可能性があります。VXLANはUDPカプセル化を使用しており、比較的軽量で、パフォーマンスを向上させるためにハードウェアでオフロードして最適化することができます。</p>
</li>
<li>
<p>5. 環境要件：特定のベンダーとの統合や特定のネットワーク展開シナリオなど、特定のニーズがある場合は、ベンダーのドキュメントやベストプラクティスを確認し、推奨プロトコルを選択することをお勧めします。</p>
</li>
</ul>
<div class="new_community_blog_detail_underline"> </div>
<h2 class="tit_one community_blog_detail_tit_one">結論</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">VXLANおよびNVGREは、VLANと比較して高度なネットワーク仮想化実装トンネリングテクノロジーです。仮想ネットワークのサイズを4,096から1,600万に拡張し、レイヤ2パケットがレイヤ3ネットワークを介して送信できるようにします。そのため、ネットワークデバイスにNVGREとNVGREが追加され、ネットワークのスケーラビリティが拡張されます。したがって、<a href="https://www.fs.com/jp/products/69378.html" target="_blank" rel="noopener">VXLANとNVGREをサポートするスイッチ</a>は、大規模なクラウドコンピューティングでのVLANの制限を克服し、俊敏なVMネットワーク環境を実現するためによく使用されます。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">要約すると、NVGREとVXLANのどちらを選択するかは、特定のニーズと環境によって異なります。より広範な互換性、高い拡張性、マルチテナント分離機能が必要であれば、通常はVXLANの方が良い選択です。しかし、お使いの環境がMicrosoft Hyper-Vと深く関連している場合は、NVGREを選択肢として検討することをお勧めします。</p>
<div class="new_community_blog_detail_underline"> </div>
<h2 class="tit_one"><a><span style="font-size: 18px;">事例紹介</span></a></h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">MLAG、VXLAN、IPv4/IPv6、SFLOW、SNMPなどの高度な機能をサポートする<a href="https://www.fs.com/jp/products/29123.html" target="_blank" rel="noopener">S5850-48S6Q</a>（48x10Gb SFP+、6x40Gb QSFP+ アップリンク付き）は、次世代のメトロおよびエンタープライズネットワークの要件を満たし、従来のデータセンターまたは完全仮想化されたデータセンターにも最適。</p>
<p><a href="https://www.fs.com/jp/products/29123.html" target="_blank" rel="noopener"><img title="" src="https://media.fs.com/images/community/upload/kindEditor/202105/07/1-1620360667-Qy4hcZtTRi.png" alt="" width="800" height="457" align="" /></a></p>