NVGRE工作原理和特点

2023年 10月 8日 44.3k 0

NVGRE(Network Virtualization using Generic Routing Encapsulation)是一种网络虚拟化方法,它旨在解决传统的虚拟局域网(VLAN)在复杂虚拟化环境中的限制。

图片[1]-NVGRE工作原理和特点-不念博客

NVGRE工作原理

NVGRE工作原理涉及数据包的封装,将虚拟网络标识符(TNI)添加到数据包中,通过现有IP网络传输数据包,然后在目标主机上进行解封装和交付。

这使得大规模虚拟网络在物理基础设施上更加灵活和可扩展。

NVGRE是一种用于解决虚拟网络扩展性问题的有效技术。

  • 虚拟网络标识符(TNI):
    • NVGRE引入了一个24位的虚拟网络标识符(Tenant Network Identifier,TNI),用于标识不同的虚拟网络或租户。每个TNI对应一个独立的虚拟网络,允许多个虚拟网络在同一物理基础设施上运行,而不会相互干扰。
  • 数据包封装:
    • 源MAC地址:表示发送VM的MAC地址。
    • 目标MAC地址:表示接收VM的MAC地址。
    • TNI:24位的虚拟网络标识符。
    • 原始以太网帧:包括源MAC地址、目标MAC地址、以太网协议类型(通常是IPv4或IPv6)等。
    • 当虚拟机(VM)之间进行通信时,其数据包将被封装成NVGRE数据包。
    • NVGRE数据包的格式包括:
  • 图片[2]-NVGRE工作原理和特点-不念博客

  • 传输网络:
    • NVGRE数据包通过现有的IP网络进行传输,包括物理网络或虚拟化网络。
    • 在传输过程中,NVGRE数据包的IP头部信息用于路由和传递,而TNI用于识别目标虚拟网络。
  • 解封装:
    • 当NVGRE数据包到达目标虚拟网络的VM所在的主机时,主机将进行解封装。
    • 它将从NVGRE数据包中提取原始以太网帧,将其交给目标VM进行处理。
  • 学习和维护MAC地址表:
    • NVGRE主机会维护一个MAC地址表,用于将虚拟机的MAC地址映射到TNI。
    • 当主机接收到NVGRE数据包时,它会查找MAC地址表以确定数据包应该传递给哪个VM。
  • 广播和组播支持:
    • NVGRE通常使用广播和组播来支持虚拟网络内的通信。这允许虚拟机进行广播和组播操作,以便满足一些网络协议(如ARP和邻居发现)的需求。
  • NVGRE特点

    图片[3]-NVGRE工作原理和特点-不念博客

  • 网络虚拟化目标:NVGRE的主要目标之一是为多租户和负载均衡网络提供更大的虚拟局域网(VLAN)数量。传统的VLAN数量有限,这在大型数据中心或分布式云环境中可能会受到限制。NVGRE旨在克服这一限制,使得更多的虚拟网络可以在同一物理基础设施上运行。
  • 封装和隧道:NVGRE使用封装技术来实现虚拟网络的隔离。它在虚拟机之间的通信中封装数据包,并通过隧道技术将它们传输到目标虚拟机。这允许虚拟机之间的通信似乎是直接的,而无需考虑底层物理网络。
  • 跨数据中心扩展性:NVGRE的设计考虑到了跨分散的数据中心的需求。它可以用于扩展虚拟网络跨越不同的物理位置,从而支持分布式数据中心架构。
  • 相关文章

    如何在 Linux 中使用 logname 命令?
    为什么有 HTTPS?HTTPS 如何实现安全通信?
    HTTPS的TSL握手流程是什么
    华为无线网络射频调优及WLAN跨VLAN的三层漫游示例
    502错误是什么、应该怎么排查?
    HTTP3为什么抛弃了经典的TCP,而选择QUIC

    发布评论