NVGRE vs VXLAN: в чем разница? | FS Сообщество
Отмена
https://media.fs.com/images/community/uploads/post/202001/15/25-nvgre-vs-vxlan-10.jpg

NVGRE vs VXLAN: в чем разница?

Moris

Переводчик Антон
15 январь 2020 г.

NVGRE (network virtualization using generic routing encapsulation) и VXLAN (virtual extensible LAN) являются технологиями виртуализации сети, которые направлены на расширение VLAN для решения проблем ограниченных виртуальных сетей в крупных облачных средах. Как часть виртуальной сети, NVGRE и VXLAN не предоставляют существенных функций. Они просто определяют, как инкапсулировать и пересылать пакеты данных между различными VMs (virtual machines). NVGRE и VXLAN: какая разница? Вы можете найти ответ ниже.

Что такое NVGRE?

NVGRE - это метод виртуализации сети, использующий инкапсуляцию и туннелирование для предоставления большого количества LAN (VLAN) для подсетей. Учитывая, что сети VLAN могут распространяться на рассредоточенные ЦОД, а также на уровень 2 (сетевой уровень) и уровень 3 (сетевой уровень), поэтому предоставление подсетей с VLAN может обеспечить возможность совместного использования многопользовательских сетей и сетей с балансировкой нагрузки между помещения и облачные среды. NVGRE направлена на решение проблем, вызванных ограниченным количестве не могут работать в сложных виртуализированных средах и не могут расширять сегменты сети на большие расстояния, необходимые для распределенных ЦОД. Стандарт NVGRE был предложен Microsoft, Intel, HP и Dell. Он конкурирует с другим методом инкапсуляции VXLAN.

Что такое VXLAN?

Как следует из названия, VXLAN - это технология виртуализации сети, которая расширяет VLAN. Он направлен на решение проблемы недостаточных виртуальных сетей в крупных ЦОД облачных вычислений. Фактически сетевые инженеры использовали VLAN для разделения облачных приложений и арендаторов в средах облачных вычислений. Однако VLAN позволяют выделять только 4096 ID сети в определенное время, что недостаточно для больших сред облачных вычислений. Поэтому VXLAN стремится расширить адресное пространство VLAN путем добавления 24-битных ID сегментов, чтобы увеличить количество доступных ID до 16 миллионов, в то же время логически изолируя облачные приложения и арендаторов. ID сегмента VXLAN в каждом кадре может отличать ID сети каждой логической сети и клиента. Следовательно, миллионы независимых сетей VXLAN уровня 2 могут сосуществовать в общей инфраструктуре уровня 3. Спецификация VXLAN была первоначально создана Cisco, VMware и Arista Networks. Узнайте больше о VXLAN здесь: QinQ vs VLAN vs VXLAN

NVGRE vs VXLAN: в чем разница?

С точки зрения фактического использования NVGRE и VXLAN практически одинаковы. Основными отличиями между ними являются сторонники, протоколы передачи и формат пакета.

Сторонники и протоколы передачи

NVGRE в основном поддерживается Microsoft, а VXLAN - Cisco. В отличие от VXLAN, который использует стандартные протоколы передачи (TCP/UDP), протокол NVGRE - это GRE (Generic Routing Encapsulation).

Формат пакета

Формат пакета является наиболее очевидной разницей между NVGRE и VXLAN. Заголовок пакета VXLAN включает 24-битный сегмент ID, представляющий 16 миллионов уникальных виртуальных сегментов. ID обычно генерируется псевдослучайным алгоритмом на порте UDP. Это помогает поддерживать балансировку нагрузки на основе 5-кортежа и сохранять порядок пакетов между VMs, сопоставляя группу MAC внутри пакетов с уникальной группой портов UDP. Инкапсуляция VXLAN увеличивает размер пакета до 50 байтов, как показано ниже.

Формат-пакета-VXLAN.png

NVGRE использует младшие 24 бита заголовка GRE в качестве TNI (tenant network identifier), который, как и VXLAN, может поддерживать 16 миллионов виртуальных сетей. Чтобы обеспечить гранулярность уровня потока, описывающую использование полосы пропускания, сети передачи необходимо использовать заголовок GRE. Но это приводит к несовместимости NVGRE с традиционной балансировкой нагрузки, которая является основным недостатком NVGRE и самым большим отличием от NVGRE.

Формат-пакета-NVGRE.png


Способ передачи

VXLAN использует многоадресную передачу в транспортной сети для имитации поведения затопления для широковещательной, неизвестной одноадресной передачи и многоадресной передачи в сегментах уровня 2, что важно для изучения MAC-адресов, а также протоколов, таких как ARP и Neighbor Discovery, во всем рабочем процессе VXLAN. Для NVGRE, чтобы улучшить функцию балансировки нагрузки, рекомендуется использовать несколько IP-адресов на каждом хосте NVGRE, чтобы обеспечить балансировку большего трафика. NVGRE больше не использует флуд и многоадресную IP-рассылку, а вещает более гибко.

Фрагментация

NVGRE поддерживает максимальную единицу передачи пакета для фрагментации, чтобы дополнительно уменьшить размер пакета внутренней виртуальной сети. Не требуется передача сети для поддержки больших кадров. Однако VXLAN должен поддерживать большие сети передачи кадров, чтобы выдерживать расширение размера пакета данных. Другими словами, VXLAN не поддерживает фрагментацию.

Заключение

По сравнению с VLAN, VXLAN и NVGRE являются передовыми технологиями туннелирования реализации виртуализации сети. Они увеличили размер виртуальной сети с 4096 до 16 миллионов и позволили передавать пакеты уровня 2 в сети уровня 3. Поэтому NVGRE и VXLAN обычно добавляются к сетевым устройствам для расширения масштабируемости сети. Поэтому коммутаторы, поддерживающие VXLAN и NVGRE, часто используются для преодоления ограничений VLAN в больших облачных вычислениях и обеспечения гибких сетевых сред VM.


1.3k

Вас также может заинтересовать