CN115604056A - Efficient storage implementation of downstream VXLAN identifiers - Google Patents
Efficient storage implementation of downstream VXLAN identifiers Download PDFInfo
- Publication number
- CN115604056A CN115604056A CN202210614851.XA CN202210614851A CN115604056A CN 115604056 A CN115604056 A CN 115604056A CN 202210614851 A CN202210614851 A CN 202210614851A CN 115604056 A CN115604056 A CN 115604056A
- Authority
- CN
- China
- Prior art keywords
- vtep
- local
- vni
- packet
- remote
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/58—Association of routers
- H04L45/586—Association of routers of virtual routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开涉及下游VXLAN标识符的高效存储实现。一种用作本地VXLAN隧道端点(VTEP)的网络设备包括通信接口、第一处理器和分组处理器。通信接口在本地VTEP和远程VTEP之间进行通信,每个VTEP都有相应的VXLAN标识符(VNI)。第一处理器导入下游‑VNI(D‑VNI),用于将分组从本地VTEP转发到远程VTEP,创建可转换为导入的D‑VNI的唯一的出口路由接口(RIF),并将唯一的出口RIF与本地VTEP中的一个或更多个路由条目相关联。分组处理器接收发往远程VTEP的分组,在本地VTEP中的路由条目中查找分组以检索唯一的出口RIF,将唯一的出口RIF转换为导入的D‑VNI,用导入的D‑VNI封装分组,并根据唯一的出口RIF转发封装的分组。
The present disclosure relates to efficient storage implementation of downstream VXLAN identifiers. A network device for use as a local VXLAN tunnel endpoint (VTEP) includes a communication interface, a first processor, and a packet processor. The communication interface communicates between the local VTEP and the remote VTEP, and each VTEP has a corresponding VXLAN identifier (VNI). The first processor imports a downstream-VNI (D-VNI) for forwarding packets from the local VTEP to the remote VTEP, creates a unique egress routing interface (RIF) that can be A RIF is associated with one or more routing entries in the local VTEP. The Packet Processor receives a packet destined for the remote VTEP, looks up the packet in the routing entry in the local VTEP to retrieve the unique egress RIF, converts the unique egress RIF into an imported D‑VNI, encapsulates the packet with the imported D‑VNI, And forward the encapsulated packet according to the unique egress RIF.
Description
技术领域technical field
本文描述的实施例总体涉及数据通信,尤其是涉及用于下游VXLAN 标识符(D-VNI)的高效存储实现的方法和系统。Embodiments described herein relate generally to data communications, and more particularly to methods and systems for efficient storage implementation of downstream VXLAN identifiers (D-VNI).
背景技术Background technique
虚拟可扩展局域网(VXLAN)是一种网络虚拟化技术,适用于诸如云计算和数据中心等大规模部署。VXLAN使用类似VLAN的封装技术。例如,在征求意见(RFC)7348中描述了VXLAN。Virtual Extensible LAN (VXLAN) is a network virtualization technology suitable for large-scale deployments such as cloud computing and data centers. VXLAN uses an encapsulation technology similar to VLAN. For example, VXLAN is described in Request for Comments (RFC) 7348 .
以太网虚拟专用网(EVPN)是VXLAN的控制平面,允许构建和部署大规模基于VXLAN的网络。例如,在RFC 8365中规定了EVPN。Ethernet Virtual Private Network (EVPN) is the control plane of VXLAN, allowing the construction and deployment of large-scale VXLAN-based networks. For example, EVPN is specified in RFC 8365.
VRF是一种其中多个独立的转发表位于同一网络设备(例如路由器或交换机)中的技术。每个VRF实例中的转发表用于为每个数据分组指定下一跳,以及控制如何转发分组的一组规则和路由协议。由于VRF路由实例是独立的,因此相同或重叠的IP地址可以在不同的实例中使用,而不会相互冲突,并且可以分割网络路径,而不需要多个路由器。此外,由于流量是自动隔离的,VRF还提高了网络安全性,并可以减少对加密和身份验证的需要。VRF is a technique in which multiple independent forwarding tables are located in the same network device (such as a router or switch). The forwarding table in each VRF instance is used to specify the next hop for each data packet, as well as a set of rules and routing protocols that control how packets are forwarded. Since VRF routing instances are independent, the same or overlapping IP addresses can be used in different instances without conflicting with each other, and network paths can be segmented without the need for multiple routers. Additionally, since traffic is automatically segregated, VRF also increases network security and can reduce the need for encryption and authentication.
发明内容Contents of the invention
本文描述的实施例提供了一种用作本地虚拟可扩展局域网(VXLAN) 隧道端点(VTEP)的网络设备,该网络设备包括通信接口、第一处理器和分组处理器。通信接口在本地虚拟路由和转发域(VRF)与远程VRF之间进行通信,本地VRF中的每一个和远程VRF中的每一个都有唯一的 VXLAN标识符(VNI)。第一处理器运行控制程序,该控制程序为本地 VTEP中配置的本地VRF创建本地VRF实例,导入下游-VNI(D-VNI),以用于将分组从本地VRF转发到远程VTEP中而不是本地VTEP中配置的远程VRF,创建可转换为导入的D-VNI的唯一的出口路由接口(RIF),并将唯一的出口RIF与本地VRF实例中的一个或更多个路由条目相关联。分组处理器接收发往远程VRF的分组,在本地VRF实例中的一个或更多个路由条目中查找分组,以检索唯一的出口RIF,将唯一的出口RIF转换为导入的D-VNI,用导入的D-VNI封装分组,并根据唯一的出口RIF转发封装的分组。Embodiments described herein provide a network device for use as a local virtual extensible local area network (VXLAN) tunnel endpoint (VTEP), the network device including a communication interface, a first processor and a packet processor. The communication interface communicates between a local virtual routing and forwarding domain (VRF) and remote VRFs, each of which has a unique VXLAN identifier (VNI). The first processor runs a control program that creates a local VRF instance for the local VRF configured in the local VTEP, importing a downstream-VNI (D-VNI) for forwarding packets from the local VRF into the remote VTEP instead of the local The remote VRF configured in the VTEP, creates a unique egress routing interface (RIF) that can be converted to the imported D-VNI, and associates the unique egress RIF with one or more routing entries in the local VRF instance. A packet processor receives a packet destined for a remote VRF, looks up the packet in one or more routing entries in the local VRF instance to retrieve a unique egress RIF, converts the unique egress RIF to an imported D-VNI, and uses the imported The D-VNI encapsulates the packet and forwards the encapsulated packet according to the unique egress RIF.
在一些实施例中,本地VTEP中的控制程序将本地VRF的本地VNI 导出到远程VTEP,以用于由远程VTEP将分组从远程VRF转发到本地 VRF。控制程序进一步为本地VNI创建第二出口RIF,并将第二出口RIF 与本地VRF实例中的一个或更多个第二路由条目相关联。分组处理器通过通信接口从远程VRF接收发往本地VRF的第二分组,第二分组由远程 VTEP用导出的本地VNI封装,对第二分组进行解封装,在本地VRF实例中的一个或更多个第二路由条目中查找解封装的分组,以检索第二出口 RIF,以及根据第二出口RIF转发第二分组。在其他实施例中,本地VTEP 和远程VTEP被包括在以太网虚拟专用网(EVPN)中,其中不同VRF之间通信的分组基于VXLAN封装进行封装。在其他实施例中,控制程序使用与本地VRF相关联的边界网关协议(BGP)的实例导入D-VNI。In some embodiments, the control program in the local VTEP exports the local VNI of the local VRF to the remote VTEP for use by the remote VTEP in forwarding packets from the remote VRF to the local VRF. The control program further creates a second egress RIF for the local VNI and associates the second egress RIF with one or more second routing entries in the local VRF instance. The packet processor receives a second packet destined for the local VRF from the remote VRF through the communication interface, the second packet is encapsulated by the remote VTEP with the exported local VNI, and the second packet is decapsulated, and one or more of the local VRF instances Look up the decapsulated packet in a second routing entry to retrieve the second egress RIF, and forward the second packet according to the second egress RIF. In other embodiments, the local VTEP and the remote VTEP are included in an Ethernet Virtual Private Network (EVPN), where packets communicated between different VRFs are encapsulated based on VXLAN encapsulation. In other embodiments, the control program imports the D-VNI using an instance of Border Gateway Protocol (BGP) associated with the local VRF.
在一个实施例中,控制程序将唯一的出口RIF与多个路由条目相关联,这些路由条目分别属于为本地VTEP中提供的多个本地VRF分别创建的多个VRF实例。在另一个实施例中,控制程序在访问控制列表(ACL)中的转发规则中配置一个或更多个路由条目,并且分组处理器通过将分组与 ACL中的转发规则之一相匹配来查找分组。在又一实施例中,本地VTEP 和远程VTEP中的每一个都包括通信网络中的叶网络设备或服务网络设备,叶网络设备中的每一个被分配一个或更多个本地VRF,并且服务网络设备中的每一个被分配不同于本地VRF的一个或更多个远程VRF。In one embodiment, the control program associates a unique egress RIF with multiple routing entries belonging to multiple VRF instances respectively created for multiple local VRFs provided in the local VTEP. In another embodiment, the control program configures one or more routing entries in the forwarding rules in the access control list (ACL), and the packet processor finds the packet by matching it with one of the forwarding rules in the ACL . In yet another embodiment, each of the local VTEP and the remote VTEP includes a leaf network device or a serving network device in the communication network, each of the leaf network devices is assigned one or more local VRFs, and the serving network Each of the devices is assigned one or more remote VRFs different from the local VRF.
在一些实施例中,服务主机(serving host)被耦合到配置了对应共享服务VRF的给定服务网络设备,服务主机通过通信网络向本地VRF中的一个或更多个被服务主机(served host)提供服务。在其他实施例中,具有集线器-轮辐拓扑的通信网络,其中一个或更多个集线器网络设备配置有支持在属于本地VRF中不同VRF的被服务主机之间的路由的集线器VRF。在其他实施例中,通信网络支持等价多径(ECMP)路由协议,并且分组处理器使用不同的ECMP路径用不同的相应D-VNI封装转发到多个远程VTEP的分组。In some embodiments, a serving host (serving host) is coupled to a given serving network device configured with a corresponding shared service VRF, and the serving host sends messages to one or more served hosts (served hosts) in the local VRF through a communication network. Provide services. In other embodiments, a communication network having a hub-and-spoke topology, wherein one or more hub network devices are configured with a hub VRF that supports routing between served hosts belonging to different VRFs in the local VRF. In other embodiments, the communication network supports the Equal Cost Multi-Path (ECMP) routing protocol, and the packet processor encapsulates packets forwarded to multiple remote VTEPs using different ECMP paths with different corresponding D-VNIs.
在一个实施例中,分组处理器从第一VRF中的主机或网元接收分组,或从第三VRF接收分组。在另一实施例中,控制程序从远程VTEP导入 D-VNI,或者通过在由用户手动发送的一个或更多个命令中接收D-VNI,或者通过运行包含一个或更多个命令的脚本自动地导入D-VNI。In one embodiment, the packet processor receives packets from a host or network element in a first VRF, or receives a packet from a third VRF. In another embodiment, the control program imports the D-VNI from a remote VTEP, either by receiving the D-VNI in one or more commands sent manually by the user, or automatically by running a script containing one or more commands Import D-VNI correctly.
根据本文描述的实施例,还提供了一种用于数据通信的方法,包括在用作本地虚拟可扩展局域网(VXLAN)隧道端点(VTEP)的网络设备中,在本地虚拟路由和转发域(VRF)以及远程VRF之间进行通信,本地VRF 中的每一个和远程VRF中的每一个都有唯一的VXLAN标识符(VNI)。本地VRF实例由本地VTEP中配置的本地VRF控制程序创建。导入下游 -VNI(D-VNI),以用于将分组从本地VRF转发到远程VTEP(而不是本地VTEP)中配置的远程VRF。创建可转换为导入的D-VNI的唯一的出口路由接口(RIF),并且该唯一的出口RIF与本地VRF实例中的一个或更多个路由条目相关联。由本地VTEP的分组处理器接收发往远程VRF的分组。在本地VRF实例中的一个或更多个路由条目中查找分组,以检索唯一的出口RIF。将唯一的出口RIF转换为导入的D-VNI,并使用导入的D-VNI 封装分组。根据唯一的出口RIF转发封装的分组。According to embodiments described herein, there is also provided a method for data communication comprising, in a network device serving as a local virtual extensible local area network (VXLAN) tunnel endpoint (VTEP), in a local virtual routing and forwarding domain (VRF ) and remote VRFs, each of the local VRFs and each of the remote VRFs has a unique VXLAN identifier (VNI). The local VRF instance is created by the local VRF control program configured in the local VTEP. Import a downstream-VNI (D-VNI) for forwarding packets from the local VRF to the remote VTEP instead of the remote VRF configured in the local VTEP. A unique egress routing interface (RIF) convertible to the imported D-VNI is created and associated with one or more routing entries in the local VRF instance. Packets destined for remote VRFs are received by the packet processor of the local VTEP. The packet is looked up in one or more routing entries in the local VRF instance to retrieve a unique egress RIF. Convert the only egress RIF to an imported D-VNI and use the imported D-VNI to encapsulate the grouping. The encapsulated packets are forwarded according to the unique egress RIF.
根据本文描述的实施例,另外提供了一种用作本地虚拟可扩展局域网 (VXLAN)隧道端点(VTEP)的网络设备,该网络设备包括通信接口、第一处理器和分组处理器。通信接口与一个或更多个远程VTEP进行通信,本地VTEP和一个或更多个远程VTEP被分配相应的VXLAN标识符(VNI)。运行控制程序的第一处理器,该控制程序导入下游-VNI(D-VNI),以用于将分组从本地VTEP转发到远程VTEP,创建可转换为导入的D-VNI的唯一的出口路由接口(RIF),并将唯一的出口RIF与本地VTEP中的一个或更多个路由条目相关联。分组处理器接收发往远程VTEP的分组,在本地VTEP中的一个或更多个路由条目中查找分组,以检索唯一的出口RIF,将唯一的出口RIF转换为导入的D-VNI,用导入的D-VNI封装分组,并根据唯一的出口RIF转发封装的分组。According to embodiments described herein, there is additionally provided a network device for use as a local virtual extensible local area network (VXLAN) tunnel endpoint (VTEP), the network device comprising a communication interface, a first processor and a packet processor. The communication interface communicates with one or more remote VTEPs, the local VTEP and the one or more remote VTEPs are assigned corresponding VXLAN identifiers (VNIs). a first processor running a control program that imports a downstream-VNI (D-VNI) for use in forwarding packets from the local VTEP to the remote VTEP, creating a unique egress routing interface convertible to the imported D-VNI (RIF), and associate a unique egress RIF with one or more routing entries in the local VTEP. A packet processor receives a packet destined for a remote VTEP, looks up the packet in one or more routing entries in the local VTEP to retrieve a unique egress RIF, converts the unique egress RIF to an imported D-VNI, and uses the imported The D-VNI encapsulates the packet and forwards the encapsulated packet according to the unique egress RIF.
在一些实施例中,控制程序将本地VTEP的本地VNI导出到远程 VTEP,以用于由远程VTEP在将分组从远程VTEP转发到本地VTEP。控制程序进一步为本地VNI创建第二出口RIF,并将第二出口RIF与本地 VTEP中的一个或更多个第二路由条目相关联。分组处理器通过通信接口从远程VTEP接收发往本地VTEP的第二分组,第二分组由远程VTEP用导出的本地VNI封装,对第二分组进行解封装,在一个或更多个第二路由条目中查找解封装的分组,以检索第二出口RIF,以及根据第二出口RIF 转发第二分组。在其他实施例中,本地VTEP和一个或更多个远程VTEP 属于多站点拓扑中的不同的相应站点。在又一其他实施例中,本地VTEP 用作边界网关(BGW)VTEP,并且一个或更多个远程VTEP用作耦合到主机的叶VTEP,BGWVTEP和主机被分配公共虚拟路由和转发域(VRF)。In some embodiments, the control program exports the local VNI of the local VTEP to the remote VTEP for use by the remote VTEP in forwarding packets from the remote VTEP to the local VTEP. The control program further creates a second egress RIF for the local VNI and associates the second egress RIF with one or more second routing entries in the local VTEP. The packet processor receives a second packet destined for the local VTEP from the remote VTEP through the communication interface, the second packet is encapsulated by the remote VTEP with the derived local VNI, the second packet is decapsulated, and the one or more second routing entries The decapsulated packet is looked up in to retrieve the second egress RIF, and the second packet is forwarded according to the second egress RIF. In other embodiments, the local VTEP and the one or more remote VTEPs belong to different respective sites in the multi-site topology. In yet other embodiments, the local VTEP acts as a border gateway (BGW) VTEP and one or more remote VTEPs act as leaf VTEPs coupled to the host, the BGWVTEP and the host are assigned a common virtual routing and forwarding domain (VRF) .
在一个实施例中,本地VTEP和远程VTEP被分配不同的相应VNI。在另一实施例中,网络设备包括在包括多个互连网络设备的通信网络中,并且网络设备用作通信网络中的叶VTEP或BGW VTEP。In one embodiment, the local VTEP and the remote VTEP are assigned different corresponding VNIs. In another embodiment, the network device is included in a communication network comprising a plurality of interconnected network devices, and the network device acts as a leaf VTEP or a BGW VTEP in the communication network.
根据本文描述的实施例,还提供了一种用于数据通信的方法,包括:在用作本地虚拟可扩展局域网(VXLAN)隧道端点(VTEP)的网络设备中,与一个或更多个远程VTEP进行通信,本地VTEP和一个或更多个远程VTEP被分配相应的VXLAN标识符(VNI)。由本地VTEP上运行的控制程序导入下游-VNI(D-VNI),以用于将分组从本地VTEP转发到远程VTEP。创建可转换为导入的D-VNI的唯一的出口路由接口(RIF),并且该唯一的出口RIF与本地VTEP中的一个或更多个路由条目相关联。由本地VTEP的分组处理器接收发往远程VTEP的分组。在本地VTEP中的一个或更多个路由条目中查找分组,以检索唯一的出口RIF。将唯一的出口RIF转换为导入的D-VNI,并使用导入的D-VNI封装分组。根据唯一的出口RIF转发封装的分组。According to the embodiments described herein, there is also provided a method for data communication, comprising: communicating with one or more remote VTEPs in a network device serving as a local Virtual Extensible Local Area Network (VXLAN) tunnel endpoint (VTEP) To communicate, the local VTEP and one or more remote VTEPs are assigned corresponding VXLAN identifiers (VNIs). A downstream-VNI (D-VNI) is imported by a control program running on the local VTEP for forwarding packets from the local VTEP to the remote VTEP. A unique egress routing interface (RIF) convertible to the imported D-VNI is created and associated with one or more routing entries in the local VTEP. Packets destined for the remote VTEP are received by the packet processor of the local VTEP. The packet is looked up in one or more routing entries in the local VTEP to retrieve a unique egress RIF. Convert the only egress RIF to an imported D-VNI and use the imported D-VNI to encapsulate the grouping. The encapsulated packets are forwarded according to the unique egress RIF.
根据本文描述的实施例,还提供了一种用于虚拟路由和转发域(VRF) 之间通信的方法,该方法包括:在本地VXLAN隧道端点(VTEP)中配置的本地VRF和在远程VTEP中但不在本地VTEP中配置的远程VRF之间通信。由本地VTEP导入与远程VRF相关联的下游VXLAN标识符(D-VNI),用于将分组从本地VRF转发到远程VRF,并创建可转换为导入的D-VNI 的唯一的出口路由接口(RIF)。当本地VTEP一接收到发往远程VRF的分组时,基于该分组检索的唯一的出口RIF被转换为导入的D-VNI,并且该分组用导入的D-VNI封装。根据唯一的出口RIF转发封装的分组。According to embodiments described herein, there is also provided a method for communication between virtual routing and forwarding domains (VRFs), the method comprising: a local VRF configured in a local VXLAN tunnel endpoint (VTEP) and a remote VTEP But not between remote VRFs configured in the local VTEP. The local VTEP imports the downstream VXLAN identifier (D-VNI) associated with the remote VRF for forwarding packets from the local VRF to the remote VRF and creates a unique egress routing interface (RIF ). When a packet destined for a remote VRF is received by the local VTEP, the unique egress RIF retrieved based on the packet is converted to an imported D-VNI, and the packet is encapsulated with the imported D-VNI. The encapsulated packets are forwarded according to the unique egress RIF.
根据本文描述的实施例,还提供了一种用于在不同路由域的站点之间进行通信的方法,该方法包括:在本地VXLAN隧道端点(VTEP)和属于不同的相应路由域的远程VTEP之间进行通信。由本地VTEP导入下游VNI (D-VNI),用于将分组从本地VTEP转发到远程VTEP,并创建可转换为导入的D-VNI的唯一的出口路由接口(RIF)。当本地VTEP一接收到发往远程VTEP的分组时,基于该分组检索的唯一的出口RIF被转换为导入的D-VNI,并且该分组用导入的D-VNI封装。根据唯一的出口RIF转发封装的分组。According to embodiments described herein, there is also provided a method for communicating between sites of different routing domains, the method comprising: communicating between a local VXLAN tunnel endpoint (VTEP) and a remote VTEP belonging to a different corresponding routing domain communicate between. Import a downstream VNI (D-VNI) from the local VTEP to forward packets from the local VTEP to the remote VTEP and create a unique egress routing interface (RIF) that can be converted to the imported D-VNI. When the local VTEP receives a packet destined for the remote VTEP, the unique egress RIF retrieved based on the packet is converted to an imported D-VNI, and the packet is encapsulated with the imported D-VNI. The encapsulated packets are forwarded according to the unique egress RIF.
附图说明Description of drawings
下面将对实施例以及附图进行详细描述,以更充分地理解这些和其他实施例,其中:For a more complete understanding of these and other embodiments, the embodiments are described in detail below along with the accompanying drawings, in which:
图1是根据本文描述的实施例示意性地示出提供共享服务的计算机系统的框图;FIG. 1 is a block diagram schematically illustrating a computer system for providing sharing services according to an embodiment described herein;
图2是根据本文描述的实施例示意性地示出用作虚拟隧道端点(VTEP) 的网络设备的框图;Figure 2 is a block diagram schematically illustrating a network device serving as a virtual tunnel endpoint (VTEP) according to embodiments described herein;
图3A和3B是根据本文描述的实施例示意性地示出应用于非封装和封装分组的VTEP处理和转发的图;3A and 3B are diagrams schematically illustrating VTEP processing and forwarding applied to non-encapsulated and encapsulated packets, according to embodiments described herein;
图4是根据本文描述的实施例示意性地示出用于配置VTEP以与远程 VTEP通信的方法的流程图;Figure 4 is a flowchart schematically illustrating a method for configuring a VTEP to communicate with a remote VTEP, according to embodiments described herein;
图5是根据本文描述的实施例示意性地示出具有集线器-轮辐拓扑的计算机系统的框图;以及5 is a block diagram schematically illustrating a computer system with a hub-and-spoke topology, according to embodiments described herein; and
图6是根据本文描述的实施例示意性地示出多站点计算机系统的图。Figure 6 is a diagram schematically illustrating a multi-site computer system, according to embodiments described herein.
具体实施方式detailed description
概述overview
本文描述的实施例提供了用于虚拟可扩展局域网(VXLAN)隧道的改进方法和系统,该隧道具有跨不同路由域的下游VXLAN标识符(D-VNIs) 封装。Embodiments described herein provide improved methods and systems for virtual extensible local area network (VXLAN) tunnels with encapsulation of downstream VXLAN identifiers (D-VNIs) across different routing domains.
各种通信网络被划分为多个路由域,这些路由域通常彼此隔离,例如出于安全原因。对于隔离的路由域,允许流量在每个路由域内流动,但不允许在不同的路由域之间流动。例如,路由域可能与多站点计算机系统中的站点或虚拟路由和转发域(VRF)相关联。Various communication networks are divided into routing domains, which are usually isolated from each other, eg for security reasons. For isolated routing domains, traffic is allowed to flow within each routing domain, but not between different routing domains. For example, a routing domain might be associated with a site or a virtual routing and forwarding domain (VRF) in a multi-site computer system.
支持VXLAN的网络设备称为虚拟隧道端点(VTEP)。VTEP封装 VXLAN流量,并在流量离开VXLAN隧道时解封装该流量。A network device that supports VXLAN is called a virtual tunnel endpoint (VTEP). VTEP encapsulates VXLAN traffic and decapsulates the traffic as it leaves the VXLAN tunnel.
在VXLAN中,每个VXLAN隧道通常被分配唯一的开放系统互连 (OSI)第三层(L3)VXLAN标识符(VNI)。在下面的描述中,为了简洁起见,术语“L3VNI”也被简单地称为“VNI”。可以以各种方式在通信网络中分配VNI。例如,在多VRF配置中,不同VRF通常被分配不同的相应VNI,并且在多站点配置中,属于公共站点的网络设备可以被分配相同或不同的VNI。不同的站点通常属于不同的管理域。In VXLAN, each VXLAN tunnel is typically assigned a unique Open Systems Interconnection (OSI) Layer 3 (L3) VXLAN Identifier (VNI). In the following description, the term "L3VNI" is also simply referred to as "VNI" for the sake of brevity. VNIs can be allocated in a communication network in various ways. For example, in a multi-VRF configuration, different VRFs are typically assigned different corresponding VNIs, and in a multi-site configuration, network devices belonging to a common site may be assigned the same or different VNIs. Different sites usually belong to different administrative domains.
在一些应用中,例如,通信网络需要支持与各个站点或VRF相关联的不同路由域之间的通信。例如,可以通过在不同路由域之间导入和导出某些VNI来实现域间通信。从另一个路由域导入用于建立VXLAN隧道的 VNI称为“下游-VNI”(D-VNI)。In some applications, for example, a communication network needs to support communication between different routing domains associated with various sites or VRFs. For example, inter-domain communication can be achieved by importing and exporting certain VNIs between different routing domains. A VNI imported from another routing domain for establishing a VXLAN tunnel is called a "downstream-VNI" (D-VNI).
在一些实施例中,网络设备中的分组转发基于预先排序的路由条目,其中每个路由条目与相应的出口路由器接口(RIF)相关联。原则上,与域间VXLAN隧道相关的路由条目可以为导入的D-VNI存储显式的D-VNI 信息。然而,这种方法通常成本高昂,甚至不可行,因为在大量路由条目上存储显式D-VNI信息可能会占用大量存储空间。例如,假设每个路由条目有10个字节的D-VNI信息,超过10000个路由条目的存储空间总计为 100KB。例如,在硬件实现中的另一个要求是,需要硬件来支持在路由条目中存储显式D-VNI信息。In some embodiments, packet forwarding in a network device is based on pre-ordered routing entries, where each routing entry is associated with a corresponding egress router interface (RIF). In principle, routing entries related to inter-domain VXLAN tunnels can store explicit D-VNI information for imported D-VNIs. However, this approach is usually cost-prohibitive or even infeasible, since storing explicit D-VNI information on a large number of routing entries may consume a large amount of storage space. For example, assuming each routing entry has 10 bytes of D-VNI information, the total storage space for more than 10,000 routing entries is 100KB. For example, another requirement in hardware implementation is that hardware is needed to support storing explicit D-VNI information in routing entries.
在一些实施例中,提供了一种用D-VNI支持VXLAN封装的有效方案。在高效方案中,为相应导入的D-VNI创建唯一的出口RIF,并与相关路由条目相关联。In some embodiments, an efficient solution for supporting VXLAN encapsulation with D-VNI is provided. In an efficient scenario, a unique egress RIF is created for the corresponding imported D-VNI and associated with the relevant routing entry.
考虑例如在多站点计算机系统中用作本地虚拟可扩展局域网 (VXLAN)隧道端点(VTEP)的网络设备的实施例。该网络设备包括通信接口、第一处理器和分组处理器。通信接口与一个或更多个远程VTEP 进行通信,其中本地VTEP和一个或更多个远程VTEP被分配相应的 VXLAN标识符(VNI)。第一个处理器运行控制程序,该程序导入(例如,从远程VTEP或从用户导入)下游-VNI(D-VNI)以用于将分组从本地VTEP 转发到远程VTEP,创建可转换为导入的D-VNI的唯一的出口路由接口 (RIF),并将唯一的出口RIF与本地VTEP中的一个或更多个路由条目相关联。分组处理器接收发往远程VTEP的分组,在本地VTEP中的一个或更多个路由条目中查找分组以检索唯一的出口RIF,将唯一的出口RIF 转换为导入的D-VNI,用导入的D-VNI封装分组,并根据唯一的出口RIF 转发封装的分组。Consider an embodiment of a network device acting as a local virtual extensible local area network (VXLAN) tunnel endpoint (VTEP), for example, in a multi-site computer system. The network device includes a communication interface, a first processor and a packet processor. The communication interface communicates with one or more remote VTEPs, where the local VTEP and the one or more remote VTEPs are assigned respective VXLAN identifiers (VNIs). The first processor runs a control program that imports (for example, from a remote VTEP or from a user) a downstream-VNI (D-VNI) for forwarding packets from the local VTEP to the remote VTEP, creating D-VNI's unique egress routing interface (RIF), and associate the unique egress RIF with one or more routing entries in the local VTEP. A packet processor receives a packet destined for a remote VTEP, looks up the packet in one or more routing entries in the local VTEP to retrieve a unique egress RIF, converts the unique egress RIF to an imported D-VNI, and uses the imported D-VNI - The VNI encapsulates the packet and forwards the encapsulated packet according to the unique egress RIF.
在一些实施例中,控制程序将本地VTEP的本地VNI导出到远程 VTEP,以用于由远程VTEP在将分组从远程VTEP转发到本地VTEP时,为本地VNI创建出口RIF,并将该出口RIF与本地VTEP中的一个或更多个第二路由条目相关联。响应于经由通信接口从远程VTEP接收,由远程 VTEP用导出的本地VNI封装并且发往本地VTEP的第二分组,分组处理器解封装第二分组,在一个或更多个第二路由条目中查找解封装的分组以检索第二出口RIF,以及根据第二出口RIF转发第二分组。In some embodiments, the control program exports the local VNI of the local VTEP to the remote VTEP for use by the remote VTEP in forwarding packets from the remote VTEP to the local VTEP, creates an egress RIF for the local VNI, and links the egress RIF to the One or more second routing entries in the local VTEP are associated. In response to receiving a second packet from the remote VTEP via the communication interface, encapsulated by the remote VTEP with the derived local VNI and destined for the local VTEP, the packet processor decapsulates the second packet, looks in the one or more second routing entries The decapsulated packet is retrieved to retrieve a second egress RIF, and the second packet is forwarded according to the second egress RIF.
在一些实施例中,本地VTEP和一个或更多个远程VTEP属于多站点拓扑中的不同的相应站点,例如,多站点数据中心。在一些实施例中,本地VTEP用作边界网关(BGW)VTEP,而一个或更多个远程VTEP用作被耦合到主机的叶VTEP,其中BGW VTEP和主机被分配了公共VRF。In some embodiments, the local VTEP and the one or more remote VTEPs belong to different respective sites in a multi-site topology, eg, a multi-site data center. In some embodiments, a local VTEP acts as a border gateway (BGW) VTEP, while one or more remote VTEPs act as leaf VTEPs coupled to the host, where the BGW VTEP and the host are assigned a common VRF.
在本公开的技术中,提供了一种用D-VNI支持VXLAN隧道的低存储方案。为此,将为相应导入的D-VNI创建唯一的RIF,并将其与相关的路由条目相关联。唯一的出口RIF中的每一个可与多个路由条目相关联,但通常仅存储在网络设备中一次,而与在该网络设备中配置的VRF的数量无关。由于导入的D-VNI的数量通常相对较少,因此唯一的出口RIF消耗的存储空间非常小。In the disclosed technology, a low-storage solution of using D-VNI to support VXLAN tunnel is provided. For this, a unique RIF will be created for the corresponding imported D-VNI and associated with the relevant routing entry. Each of the unique egress RIFs may be associated with multiple routing entries, but is typically only stored once in a network device, regardless of the number of VRFs configured in that network device. Since the number of imported D-VNIs is usually relatively small, the only export RIF consumes very little storage space.
本公开的低存储方案可用于各种应用,包括(但不限于)提供共享服务的多VRF通信系统、具有集线器-轮辐拓扑的多VRF通信系统和多站点通信系统。The low memory scheme of the present disclosure can be used in various applications including, but not limited to, multi-VRF communication systems providing shared services, multi-VRF communication systems with hub-and-spoke topologies, and multi-site communication systems.
系统说明instructions
图1是根据本文描述的实施例示意性地示出提供共享服务的计算机系统20的框图。FIG. 1 is a block diagram schematically illustrating a computer system 20 for providing sharing services according to an embodiment described herein.
计算机系统20包括通过通信网络30为主机28A、28B和28C提供服务的服务主机24A和24B。通信网络30可以包括例如以太网。Computer system 20 includes service hosts 24A and 24B that provide services to
服务主机24A和24B属于由域名系统(DNS)VRF和存储VRF指定的路由域,它们被分配了相应VNI值20001和20002。主机28A、28B和 28C属于由表示为粉色、蓝色和紫色的相应VRF指定的不同路由域,这些 VRF被分配了相应的VNI值10001、10002和10003。Service hosts 24A and 24B belong to routing domains specified by Domain Name System (DNS) VRF and Storage VRF, which are assigned corresponding VNI values 20001 and 20002.
在本示例中,主机28A、28B和28C中的每一个从表示为DN1和DN2 的DNS主机24A接收DNS服务,并从表示为ST1和ST2的存储主机24B 接收存储服务。在其他实施例中,还可以使用其他类型的服务和/或其他数量的服务类型。In this example, each of
通信网络30包括多个互连网络设备,例如表示为L11…L32的叶交换机34、表示为S1和S2的主干交换机36以及表示为SL1和SL2的服务叶交换机38。为了简洁起见,服务叶交换机34在本文中也被称为“服务交换机”。The communication network 30 includes a plurality of interconnected network devices such as leaf switches 34 denoted L11...L32, spine switches 36 denoted S1 and S2, and serving
在下面的描述中,叶交换机包括直接或间接耦合到一个或更多个主机的交换机。主机可以包括例如物理服务器和/或虚拟化数据中心环境中的虚拟机或服务器。In the following description, a leaf switch includes a switch that is directly or indirectly coupled to one or more hosts. Hosts may include, for example, physical servers and/or virtual machines or servers in a virtualized data center environment.
叶交换机34在一侧耦合到主机28A、28B和28C,在另一侧耦合到主干交换机36。例如,叶交换机L11耦合到粉色VRF中表示H11和H12的主机28A,以及蓝色VRF中表示H13和H14的主机28B。服务交换机SL1 和SL2在一侧耦合到DNS主机DN1和DN2以及存储主机ST1和ST2,在另一侧耦合到主干交换机36。
在计算机系统20中,叶、主干和服务交换机被分配相应的自主系统编号(ASN)。具体而言,叶交换机L11…L32被分配为ASN 65001…65006,主干交换机S1和S2分别被分配为ASN 65100和65101,服务交换机SL1 和SL2分别被分配为ASN 65201和65202。例如,可以使用ASN来指定路由目标(RTs),如下所述。In computer system 20, leaf, spine and service switches are assigned respective Autonomous System Numbers (ASNs). Specifically, leaf switches L11...L32 are assigned
在一些实施例中,通信网络30包括以太网虚拟专用网(EVPN),其中网络设备中的至少一些用作VXLAN虚拟隧道端点(VTEP)。在后面的描述中,术语“网络设备”、“交换机”、“路由器”、“网关”和“VTEP”可以互换使用。In some embodiments, communication network 30 includes an Ethernet Virtual Private Network (EVPN), where at least some of the network devices function as VXLAN virtual tunnel endpoints (VTEPs). In the description that follows, the terms "network device", "switch", "router", "gateway" and "VTEP" are used interchangeably.
在一些实施例中,用作VTEP的网络设备通常为在该VTEP中提供的各个VRF创建VRF实例。在本示例中,根据耦合到叶交换机的主机的VRF,叶VTEP L11…L32中的每一个都配置有粉色、蓝色和紫色VRF中的两个 VRF。类似地,在本示例中,服务VTEPS SL1和SL2中的每一个都为其配置的VRF(例如,DNS和存储VRF)创建相应的VRF实例。In some embodiments, a network device acting as a VTEP typically creates VRF instances for each VRF provisioned in that VTEP. In this example, each of the leaf VTEPs L11...L32 is configured with two of the pink, blue, and purple VRFs, depending on the VRFs of the hosts coupled to the leaf switches. Similarly, in this example, each of service VTEPS SL1 and SL2 creates a corresponding VRF instance for its configured VRFs (eg, DNS and storage VRFs).
在一些实施例中,需要通信网络30来支持在不同VTEP中提供的不同VRF之间的VXLAN隧道。为此,VTEP可通过相互交换与不同VRF 相关联的VNI来建立VRF间VXLAN隧道。In some embodiments, the communication network 30 is required to support VXLAN tunneling between different VRFs provided in different VTEPs. To this end, the VTEP can establish an inter-VRF VXLAN tunnel by exchanging VNIs associated with different VRFs.
在服务到主机的方向上,服务VTEP SL1和SL2中的每一个都从每个叶VTEP导入叶VTEP中配置的每个VRF的D-VNI。然后,服务VTEP 使用从给定VRF的叶VTEP导入的D-VNI将发往给定VRF的分组封装在叶VTEP中。在主机到服务的方向上,L11…L32中的每个叶VTEP从每个服务VTEP SL1和SL2导入D-VNI。在本示例中,叶VTEP从服务VTEP 导入与DNS和存储VRF相对应的两个D-VNI。然后,叶VTEP使用针对给定VRF从服务VTEP导入的D-VNI将发往给定VRF的分组封装在服务 VTEP中。In the service-to-host direction, each of the service VTEPs SL1 and SL2 imports from each leaf-VTEP the D-VNI of each VRF configured in the leaf-VTEP. The serving VTEP then encapsulates packets destined for the given VRF in the leaf-VTEP using the D-VNI imported from the given VRF's leaf-VTEP. In the host-to-service direction, each leaf VTEP in L11...L32 imports the D-VNI from each service VTEP SL1 and SL2. In this example, the leaf VTEP imports two D-VNIs corresponding to DNS and storage VRFs from the service VTEP. The leaf VTEP then encapsulates packets destined for the given VRF in the serving VTEP using the D-VNI imported from the serving VTEP for the given VRF.
如上所述,在VTEP中配置的VRF具有包括路由条目的相应转发表。每个路由条目与(例如指向)相应的出口RIF相关联,VTEP使用该出口 RIF进行分组转发。在一些实施例中,VTEP为每个导入的D-VNI创建唯一的出口RIF,并将唯一的出口RIF与VTEP中配置的VRF中的相关路由条目相关联。As mentioned above, a VRF configured in a VTEP has a corresponding forwarding table that includes routing entries. Each routing entry is associated with (eg points to) a corresponding egress RIF, which is used by the VTEP for packet forwarding. In some embodiments, the VTEP creates a unique egress RIF for each imported D-VNI and associates the unique egress RIF with the relevant routing entry in the VRF configured in the VTEP.
在一些实施例中,通信网络30支持使用带有D-VNI的VXLAN封装在不同叶VTEP中的不同VRF之间进行通信。例如,L11可以从L21、L22、 L31和/或L32为其粉色VRF导入与紫色VRF相关联的D-VNI。L11为导入的D-VNI创建唯一的RIF,并将该唯一的出口RIF与经由本地粉色VRF 实例中的L21…L32之一发送到紫色VRF的路由条目相关联。然后,L11 使用导入的D-VNI来封装H11发送到H22的分组,例如经由L11、S1和 L22。In some embodiments, the communication network 30 supports communication between different VRFs in different leaf VTEPs using VXLAN encapsulation with D-VNI. For example, L11 can import a D-VNI associated with a purple VRF for its pink VRF from L21, L22, L31 and/or L32. L11 creates a unique RIF for the imported D-VNI and associates this unique egress RIF with the route entry sent to the purple VRF via one of the L21...L32 in the local pink VRF instance. L11 then uses the imported D-VNI to encapsulate the packets that H11 sends to H22, eg via L11, S1 and L22.
在一些实施例中,网络设备中的控制程序使用路由目标(RT)导入和导出路由。RT是BGP协议中用于指定和控制路由导入/导出方向和内容的构造。在一些实施例中,RT用于控制VTEP之间路由/VNI的导入和导出。In some embodiments, a control program in a network device imports and exports routes using route targets (RTs). RT is a structure used in the BGP protocol to specify and control the direction and content of route import/export. In some embodiments, the RT is used to control the import and export of routes/VNIs between VTEPs.
在一些实施例中,VTEP中的VRF实例包括导入RT列表和导出RT 列表。导出列表中的RT附加到VTEP向其他VTEP发布的每条路由。当远程VTEP一接收带有附加RT的发布的路由时,远程VTEP将RT与其相应VRF实例中定义的导入列表进行比较。如果附加的RT中的任何RT与 VRF实例的导入列表相匹配,则远程VTEP会将发布的的路由导入该VRF 实例。当附加到发布的路由的所有RT都与VRF实例的导入列表不匹配时,远程VTEP会忽略将发布的路由导入该VRF实例。In some embodiments, a VRF instance in a VTEP includes an import RT list and an export RT list. The RTs in the export list are appended to every route that a VTEP advertises to other VTEPs. When a remote VTEP receives an advertised route with an attached RT, the remote VTEP compares the RT to the import list defined in its corresponding VRF instance. If any of the attached RTs match the VRF instance's import list, the remote VTEP will import the advertised routes into that VRF instance. When all RTs attached to an advertised route do not match the VRF instance's import list, the remote VTEP ignores importing the advertised route into that VRF instance.
在一些实施例中,使用带有D-VNI的VXLAN隧道访问计算机系统 20中的共享服务涉及以下阶段:In some embodiments, accessing shared services in computer system 20 using a VXLAN tunnel with D-VNI involves the following stages:
·叶VTEP L11…L32中的每一个为其配置的VRF中的每一个(例如,在粉色、蓝色和紫色VRF中)导入RT,其中服务VTEP SL1和SL2导出与其共享服务VRF对应的路由。例如,如果服务VTEP导出自动派生的RT,则叶VTEP导入RT*:20001和*:20002。这些RT中的通配符“*”表示分别分配给SL1和SL2的自主系统号(ASN)65201和65202。可替代地,可以使用显式ASN指定RT,而不是使用通配符表示法。• Each of the leaf VTEPs L11...L32 imports RTs to each of its configured VRFs (eg, in pink, blue and purple VRFs), where serving VTEPs SL1 and SL2 export routes corresponding to their shared serving VRFs. For example, if the service VTEP exports an auto-derived RT, the leaf VTEP imports RT *:20001 and *:20002. The wildcard "*" in these RTs indicates the Autonomous System Number (ASN) 65201 and 65202 assigned to SL1 and SL2 respectively. Alternatively, an RT can be specified using an explicit ASN instead of wildcard notation.
·SL1和SL2中的每一个都为其配置的VRF(DNS和存储VRF)导入由叶VTEP为粉色、蓝色和紫色VRF宣布的RT。在本示例中,SL1和 SL2中的每一个都导入RT*:10001、*:10002和*:10003。可替代地,可以在RT中使用叶VTEP的显式ASN,而不是通配符表示法。• Each of SL1 and SL2 imports the RTs announced by the leaf VTEPs for the pink, blue and purple VRFs for its configured VRFs (DNS and Storage VRFs). In this example, SL1 and SL2 each import RT *:10001, *:10002, and *:10003. Alternatively, explicit ASNs of leaf VTEPs can be used in RT instead of wildcard notation.
·基于导入的路由,叶VTEP为相应的D-VNIs 20001和20002创建唯一的出口RIF。在叶VTEP中提供的VRF的路由表中,叶VTEP进一步将这些唯一的出口RIF与发往DNS和存储主机的路由条目相关联。• Based on the imported routes, the leaf VTEP creates unique egress RIFs for the corresponding D-
·基于从叶VTEP导入的路由,SL1和SL2中的每一个都为相应的D-VNI 10001、10002和10003创建唯一的出口RIF。服务VTEP在DNS和存储VRF的相应路由表中,进一步将这些唯一的出口RIF与发往主机 H11…H34的路由条目相关联。• Each of SL1 and SL2 creates a unique egress RIF for the corresponding D-
·考虑从源主机(例如H11(IP 192.168.51.11))发送到DNS主机(例如DN1(IP200.11.3.1))的分组。叶VTEP(L11或L12)从H11接收分组,用D-VNI 20001封装分组,并将封装的分组隧道传输到SL1 (IP 10.150.3.1)或SL2(IP 10.150.3.2)。SL1或SL2解封装分组,并基于所接收的分组中的D-VNI(20001)将解封装的分组路由到目标DNS VRF中的DN1。SL1或SL2通过基于接收分组中的D-VNI选择DNS VRF的路由表来执行最后一次路由。相反,SL1或SL2从主机DN1接收分组,并用H11所属的粉色VRF的D-VNI 10001封装该分组。SL1 或SL2将封装的分组通过隧道传输到L11或L12,L11或L12使用粉色 VRF的路由表来解封装分组,并路由解封装的分组。• Consider a packet sent from a source host (eg H11 (IP 192.168.51.11)) to a DNS host (eg DN1 (IP 200.11.3.1)). The leaf VTEP (L11 or L12) receives the packet from H11, encapsulates the packet with D-
在一些实施例中,叶VTEP 34或服务VTEP 38使用多机箱链路聚合 (MLAG)配置连接到本地主机。在这样的实施例中,对等VTEP对主机绑定来说似乎是单个逻辑网络设备。例如,叶VTEP L11和L12可以配置为主机H11、H12、H13和H14中的每一个的MLAG对等方。类似地,服务VTEPS SL1和SL2可以被配置为服务主机DN1、DN2、ST1和ST2中的每一个的MLAG对等方。In some embodiments,
在一些实施例中,通信网络30支持等价多径(ECMP)路由协议。通常,ECMP可用于快速故障切换恢复。例如,ECMP适用于EVPN多主(MH) 配置,例如具有CLOS网络拓扑的数据中心。在ECMP中,源VTEP通过多个相应的ECMP路径将分组转发到多个目的地VTEP,其中源VTEP使用不同的相应D-VNI封装通过不同的ECMP路径转发的分组。In some embodiments, communication network 30 supports the Equal Cost Multi-Path (ECMP) routing protocol. Typically, ECMP can be used for fast failover recovery. For example, ECMP is suitable for EVPN multi-home (MH) configurations, such as data centers with CLOS network topologies. In ECMP, a source VTEP forwards packets to multiple destination VTEPs over multiple corresponding ECMP paths, where the source VTEP encapsulates the packets forwarded over different ECMP paths using different corresponding D-VNIs.
用作VTEP的网络设备Network device used as VTEP
图2是根据本文描述的实施例示意性地示出用作虚拟隧道端点(VTEP) 的网络设备50的框图。例如,可以使用网络设备50来实现图1的计算机系统20中的叶VTEP L11…L32和服务VTEP SL1和SL2,以及下面图5 的计算机系统300中的叶VTEP L11…L22和集线器VTEP SL1和SL2。Fig. 2 is a block diagram schematically illustrating a
网络设备50包括耦合到网络接口56的分组处理器54,该网络接口 56使用端口58连接到通信网络(例如,图1的通信网络30)。每个端口 58可以用作传入分组的输入端口、传出分组的输出端口或传入和传出分组的组合端口。分组处理器54通常处理实时分组处理和转发。
网络设备50还包括通用处理器60,例如中央处理单元(CPU)和可由CPU 60和分组处理器54访问的存储器62。CPU 60运行控制平面程序 64,该程序处理网络设备的脱机控制和供应任务。在一些实施例中,控制平面程序64(或其一部分)包括网络操作系统(NOS)65,例如 Cumulus Linux NOS。为简洁起见,控制平面程序64在本文中也简称为“控制程序”。
在一些实施例中,控制程序64在存储器62中创建一个或更多个VRF 实例66,每个VRF实例对应于网络设备50中提供的VRF。在一个实施例中,VRF实例存储各种类型的信息,例如:分配给网络设备的自身的VNI 70、一个或更多个导入的D-VNI 72和一个或更多个本地VNI 74(网络设备导出)。在域间VXLAN隧道中,VTEP 50使用从远程VTEP导入的D-VNI 来封装发往远程VTEP的分组。远程VTEP使用从VTEP 50接收的导出的本地VNI 74作为D-VNI来封装发往VTEP 50的分组。导出的本地VNI 74 可以包括例如与自己的VNI 70相同的值。In some embodiments,
VRF实例66还包括转发信息库(FIB)76,其包括多个路由条目78。在一些实施例中,FIB在硬件中实现,但由控制平面程序64控制。在一些实施例中,分组处理器54在FIB的路由条目中查找分组,以找到指定分组应如何转发的路由条目。在一个实施例中,FIB 76中的分组查找通常基于分组报头中的信息,例如IP地址和前缀。
在本示例中,路由条目至少包括出口路由接口(RIF)和下一跳信息。路线条目还可以存储供应商特定的信息。出口RIF包括表示可路由接口的逻辑接口,该可路由接口可包括物理端口、子接口、交换机虚拟接口(SVI)、 L3VNI或任何其他合适类型的接口。在一些实施例中,VNI或D-VNI可从出口RIF派生并用于VXLAN封装。In this example, the routing entry includes at least the egress routing interface (RIF) and next hop information. Route entries can also store vendor-specific information. An egress RIF includes a logical interface representing a routable interface, which may include a physical port, sub-interface, switch virtual interface (SVI), L3VNI, or any other suitable type of interface. In some embodiments, a VNI or D-VNI may be derived from the egress RIF and used for VXLAN encapsulation.
在一个实施例中,VTEP 50将出口RIF存储在存储器62中的RIF表 80中。在本实施例中,FIB 76中的路由条目78指向RIF表中的各个出口 RIF,其中多个不同的路由条目可以指向公共出口RIF。In one embodiment,
在一些实施例中,VTEP 50为每个导入的D-VNI创建唯一的出口RIF,并将该唯一的出口RIF存储在RIF表80中。在一些实施例中,VTEP 50 还为每个本地VNI 74创建唯一的出口RIF,并将该唯一的出口RIF存储在 RIF表80中。导出的本地VNI与为本地VNI创建的相同出口RIF相关联。In some embodiments,
路由条目78中的下一跳信息通常指定要沿到目的地的路径遍历的下一网络设备的IP地址。The next hop information in
在一些实施例中,控制程序64为每个导入的D-VNI和每个本地VNI (除了唯一的出口RIF之外)创建唯一转发标识符(FID),其中FID映射到该唯一的出口RIF的导入的D-VNI中。在这些实施例中,FIB 76提供指向出口RIF的路由入口,该出口RIF又指向映射到出口RIF的导入D-VNI 的FID。在一个实施例中,分组处理器使用操作链为分组导出导入的D-VNI: FIB查找->出口RIF->FID->导入的D-VNI。由于每个导入的D-VNI仅被分配一个FID,因此FID占用的存储区域很少。In some embodiments,
在一些实施例中,VTEP 50包括网关协议84的一个或更多个实例,例如边界网关协议(BGP)。例如,VTEP 50可以为在VTEP中配置的每个VRF分配专用BGP实例。在一些实施例中,VTEP 50使用BGP 84与其他VTEP交换诸如VNI和RTs之类的路由信息。In some embodiments,
在一些实施例中,控制程序64在访问控制列表(ACL)中的转发规则中规定一个或更多个路由条目。在这些实施例中,分组处理器54通过将分组与ACL中转发规则之一相匹配来查找分组。In some embodiments,
用作VTEP的网络设备中的分组处理Packet processing in a network device used as a VTEP
图3A和3B是根据本文描述的实施例示意性地示出应用于非封装和封装分组的VTEP处理和转发的图。3A and 3B are diagrams schematically illustrating VTEP processing and forwarding applied to non-encapsulated and encapsulated packets, according to embodiments described herein.
图3A描绘分组处理器100中的处理。例如,可以由VTEP 50的分组处理器54执行相同或类似的处理。FIG. 3A depicts processing in
分组处理器100接收没有封装的输入分组104。在计算系统20中,输入分组104例如可以来自主机28A、28B或28C、诸如DNS主机24A(DN1 或DN2)或存储主机24B(ST1或ST2)之类的服务主机。在本示例中,输入分组104发往未在分组处理器100的VETP中配置的VRF,因此需要用合适的导入的D-VNI封装。
在查找级106,分组处理器100识别输入分组来自的VRF,并在所识别的VRF的FIB(76)中查找输入分组。例如,假设输入分组源自粉色 VEF的主机H11,则分组处理器100在主机H11所属的粉色VRF的FIB 中查找输入分组。成功的查找操作导致指定出口RIF的路由条目78。在此示例中,出口RIF包括分配给导入的D-VNI的唯一的出口RIF。At
在邻接级110中,分组处理器100从级106的路由入口或出口RIF生成下一跳信息。在映射级112中,分组处理器100导出与级106的出口RIF 相关联的导入的D-VNI,并且在重写级114中,从输入分组104生成用级 112的导入的D-VNI封装的VXLAN输出分组120。分组处理器100根据级106的出口RIF转发输出分组。In the
图3B描绘了分组处理器150中的处理。例如,可以由VTEP 50的分组处理器54执行相同或类似的处理。FIG. 3B depicts processing in
分组处理器150接收用先前导出到远程VTEP的VNI封装的输入分组 154。导出的VNI被远程VTEP用作D-VNI,用于封装发往包括分组处理器150的VTEP的分组。The
分组处理器150解除对输入分组154的封装(级156),基于用其封装输入分组的VNI选择目标VRF,并在所选VRF的FIB 76中查找解除封装的分组(级158)。
在一些实施例中,分组处理器150终止输入分组154通过其到达的 VXLAN隧道。在这种情况下,级158的查找操作导致与D-VNI无关的常规出口RIF。在邻接级160中,分组处理器生成下一跳信息。在重写级162 中,分组处理器154生成未封装的输出分组164A,并根据级158的出口 RIF路由输出分组。In some embodiments,
在一些实施例中,包括分组处理器154的VTEP用作调解器VTEP,其调解不同路由域之间的通信。下面将参考图5描述包括调解器器VTEP 的集线器-轮辐拓扑。In some embodiments, a VTEP including
当作为调解器VTEP操作时,分组处理器154将本地VNI(74)导出到源VTEP,并从目的地VTEP导入D-VNI(72)。分组处理器154从源 VTEP接收输入分组154,并在级156和158中处理该分组,导致如上所述的出口RIF。When operating as a mediator VTEP,
在图3B中,以虚线描绘与调解器VTEP相关的处理。响应于识别出口RIF与D-VNI(从目的地VTEP导入的D-VNI)唯一关联,分组处理器 154将唯一的出口RIF映射到导入的D-VNI(级170)。在重写级162中,分组处理器154使用从目的地VTEP导入的D-VNI重新封装分组,产生输出分组164B。分组处理器154然后根据级158的出口RIF路由输出分组 164B。In Fig. 3B, the processing related to the moderator VTEP is depicted in dotted lines. In response to identifying that the egress RIF is uniquely associated with the D-VNI (the D-VNI imported from the destination VTEP),
注意,尽管图3A和3B描绘了不同的分组处理流,但在一个实施例中, VTEP(例如VTEP 50)通常实现分组处理器100和150的分组处理流两者。Note that although FIGS. 3A and 3B depict different packet processing flows, in one embodiment, a VTEP (eg, VTEP 50 ) generally implements both packet processing flows of
控制平面处理Control Plane Processing
图4是根据本文描述的实施例示意性地示出用于配置用于与远程 VTEP通信的VTEP的方法的流程图。Figure 4 is a flowchart schematically illustrating a method for configuring a VTEP for communication with a remote VTEP, according to embodiments described herein.
图4的方法将被描述为由在VTEP 50的CPU 60上运行的控制程序64 执行,在此表示为本地VTEP。The method of FIG. 4 will be described as being performed by a
该方法从VRF实例创建步骤200开始,控制程序64为本地VTEP中配置的相应一个或更多个本地VRF创建一个或更多个VRF实例。The method begins with a VRF
在导入步骤204,控制程序从远程VTEP导入一个或更多个D-VNI(72)。在本示例中,导入的D-VNI中的每一个与在远程VTEP中而不是在本地 VTEP中配置的相应远程VRF相关联。In
在导出步骤208,控制程序向远程VTEP导出一个或更多个本地VNI (74),这些本地VNI分别与本地VTEP中配置的本地VRF相关联,并且将由远程VTEP作为D-VNI用于封装发往本地VTEP的分组。In the
在出站RIF创建步骤212,控制程序为导入的D-VNI创建相应的唯一出站RIF,以便可以从其唯一出站RIF推理每个D-VNI。在入站RIF创建步骤214,控制程序为本地VNI创建相应唯一的入站出口RIF(这些出站 RIF还用于入站方向上相应导出的本地VNI),以便每个导出的本地VNI 都可以从其唯一的入站出站RIF中推理出来。In the outbound
在RIF关联步骤216,控制程序将步骤212的出站出口RIF和步骤214 的入站出口RIF与相应本地VRF的VRF实例中的相关路由条目相关联。在一些实施例中,控制程序将唯一的出口RIF与多个路由条目相关联,这些路由条目分别属于分别为本地VTEP中提供的多个本地VRF创建的多个 VRF实例。在步骤216之后,本地VTEP准备好处理本地VTEP中的本地VRF和远程VTEP中的远程VRF之间的通信。In a
具有集线器-轮辐网络拓扑的计算机系统Computer system with hub-and-spoke network topology
图5是根据本文描述的实施例示意性地示出了具有集线器-轮辐 (hub-spoke)拓扑的计算机系统300的框图。FIG. 5 is a block diagram schematically illustrating a
在集线器-轮辐网络拓扑中,集线器路由域充当多个其他路由域(轮辐) 的连接中心点。In a hub-and-spoke network topology, a hub routing domain acts as a central point of connection for multiple other routing domains (spokes).
计算机系统300支持表示为粉色、蓝色和HUB01的多个路由域(VRF),这些路由域相应被分配了L3VNI值10001、10002和20001。
计算机系统300包括通信网络302,其中多个网络设备互连,包括表示为SL1和SL2的集线器交换机(也称为集线器VTEP)304、表示为L11… L22的叶交换机(也称为叶VTEP)308以及表示为S1和S2的主干交换机 316。在计算机系统300中,集线器VTEP 304用作调解器VTEP,调解叶 VTEP 308中配置的不同VRF之间的通信。
在通信网络302中,叶交换机L11…L22在一侧被耦合到主机312A 和312B,在另一侧被耦合到主干交换机316(S1和S2)。此外,主干交换机S1和S2中的每一个都被耦合到一侧的集线器交换机SL1和SL2以及另一侧的叶交换机。In
在本示例中,HUB01VRF在集线器VTEP SL1和SL2中的每一个中被配置,而粉色和蓝色VRF都在叶VTEP L11…L22中的每一个中被配置。一般来说,每个叶VTEP 308都配置有被耦合到该叶VTEP的主机312A和 312B的VRF。In this example, the HUB01 VRF is configured in each of the hub VTEPs SL1 and SL2, while the pink and blue VRFs are configured in each of the leaf VTEPs L11...L22. In general, each leaf-
在一些实施例中,计算机系统300支持使用D-VNI技术在不同VRF 之间进行通信。为此,配置不同VRF的VTEP可以通过相互交换VNI来建立基于VXLAN的通信。In some embodiments,
在图5的示例中,集线器VTEP SL1和SL2中的每一个从叶VTEP L11…L22中的每一个导入用于粉色VRF的D-VNI,以及用于蓝色VRF的另一个D-VNI。此外,叶VTEP L11…L22中的每一个都从SL1和SL2为 HUB01VRF导入D-VNI。In the example of Figure 5, each of the hub VTEPs SL1 and SL2 imports a D-VNI for the pink VRF, and another D-VNI for the blue VRF, from each of the leaf VTEPs L11...L22. In addition, each of leaf VTEP L11...L22 imports D-VNI from SL1 and SL2 for HUB01VRF.
考虑源叶VTEP通过集线器VTEP向目标叶VTEP发送分组。源VTEP 使用从集线器VTEP导入的D-VNI封装分组,并通过隧道将封装的分组传输到集线器VTEP。基于接收到的分组中的D-VNI,集线器VTEP使用集线器VTEP从目标VTEP导入的D-VNI重新封装分组。Consider a source leaf VTEP sending a packet to a target leaf VTEP through a hub VTEP. The source VTEP encapsulates the packet using the D-VNI imported from the hub VTEP and tunnels the encapsulated packet to the hub VTEP. Based on the D-VNI in the received packet, the hub VTEP re-encapsulates the packet using the D-VNI imported by the hub VTEP from the target VTEP.
在一些实施例中,计算机系统300支持具有低存储占用空间的D-VNI 的VXLAN隧道,如上所述,例如参考上面的图1。在这样的实施例中,计算机系统300中的叶和集线器VTEP为导入的D-VNI创建唯一的出口 RIF,并在VTEP中仅存储一次唯一的出口RIF。In some embodiments,
在计算机系统300中,耦合到公共叶交换机但属于不同VRF的主机 312A和312B也可以经由集线器交换机SL1和SL2使用D-VNI进行通信。例如,尽管粉色VRF的H11和蓝色VRF的H13都耦合到叶交换机L11,但如上所述,主机H11和H13经由调解器VTEP SL1和SL2彼此通信。In
在一些实施例中,使用VXLAN隧道和D-VNI在集线器-轮辐拓扑中的通信涉及以下阶段:In some embodiments, communication in a hub-and-spoke topology using VXLAN tunnels and D-VNI involves the following phases:
·每个集线器VTEP SL1和SL2从叶VTEP路由(例如,如上所述使用 RT)导入粉色和蓝色VRF。例如,SL1或SL2的HUB01VRF的集线器VRF实例从叶VTEP导入RT*:10001和*:10002。例如,SL1和 SL2中的每一个都从包括主机H11…H14的IP地址的L11和L12路由导入,并从包括H21…H24的IP地址的L21和L22路由导入。• Each hub VTEP SL1 and SL2 imports pink and blue VRFs from leaf VTEP routes (eg using RT as above). For example, the hub VRF instance of HUB01VRF of SL1 or SL2 imports RT *:10001 and *:10002 from the leaf VTEP. For example, each of SL1 and SL2 imports from L11 and L12 routes including IP addresses of hosts H11...H14, and imports from L21 and L22 routes including IP addresses of H21...H24.
·SL1和SL2中的每一个都将导入的路由聚合为聚合路由,并发起具有导出RT65201:10002(或65202:10002)为粉色VRF路由的聚合路由。类似地,SL1和SL2发起导出RT65201:10001(或65201:10001)为蓝色 VRF路由的聚合路由。在一些实施例中,SL1或SL2通过对由主机312A 和312B的IP地址表示的导入路由应用最长前缀匹配(LPM)方法来生成聚合路由。例如,SL1和SL2为L11中的粉色VRF生成聚合路由 192.168.62.0/24,用于经由L21或L22到达蓝色VRF的H23和H24。Each of SL1 and SL2 aggregates the imported routes into an aggregated route and initiates an aggregated route with exported RT65201:10002 (or 65202:10002) as a pink VRF route. Similarly, SL1 and SL2 initiate an aggregated route that exports RT65201:10001 (or 65201:10001) as the blue VRF route. In some embodiments, SL1 or SL2 generates aggregated routes by applying a longest prefix match (LPM) method to the imported routes represented by the IP addresses of
·叶VTEP L11…L22使用其自动导出的RT进行路由导出和导入。这意味着叶VTEP从SL1和SL2导入聚合路由,用于通过集线器VTEP进行VRF间路由,例如H11(粉色VRF)和H24(蓝色VRF)之间的路由。· Leaf VTEP L11…L22 uses its auto-exported RT for routing export and import. This means that the leaf VTEP imports aggregated routes from SL1 and SL2 for inter-VRF routing via the hub VTEP, for example routing between H11 (pink VRF) and H24 (blue VRF).
·考虑粉色VRF中的主机向蓝色VRF的主机发送分组。例如,H11(IP192.168.51.11)向H24(IP 192.168.62.24)发送分组。分组由L11或L12 接收,L11或L12使用先前源自SL1和/或SL2的聚合路由 192.168.62.0/24转发分组。L11或L22使用HUB01VRF的D-VNI 20001 封装分组,并将封装的分组通过隧道传输到集线器VTEP SL1或SL2。 SL1或SL2基于从L21和/或L22导入的完整主机路由(例如,主机H24 的192.168.62.24/32),在HUB01VRF中解封装分组并路由解封装分组。 SL1或SL2使用VNI 10002(从L21和/或L22导入)重新封装分组,并通过VXLAN将重新封装的分组隧道传输到L21或L22。L21或L22 然后在蓝色VRF中路由分组(例如,在本例中路由到H24)。类似的转发方案适用于不同VRF的热点之间的通信,其中主机被耦合到公共叶VTEP(例如H11和H13)。• Consider a host in the pink VRF sending a packet to a host in the blue VRF. For example, H11 (IP 192.168.51.11) sends a packet to H24 (IP 192.168.62.24). The packet is received by L11 or L12, which forwards the packet using the aggregated route 192.168.62.0/24 previously sourced from SL1 and/or SL2. L11 or L22 uses D-
多站点计算机系统multi-site computer system
图6是根据本文描述的实施例示意性地示出了多站点计算机系统400 的图。例如,图6中的计算机系统可用于实现多站点数据中心,其站点可部署在不同的地理位置和/或具有不同的管理域。FIG. 6 is a diagram schematically illustrating a
在本示例中,计算机系统400包括表示为DC-1、DC-2和DC-3的数据中心(DC)站点404,其可由不同的网络管理器单独管理。在替代实施例中,多站点计算机系统可以包括其他适当数量的站点。在一些实施例中, DC站点404与不同的相应路由域相关联。In this example,
DC站点404中的每一个都包括边界网关(BGW)路由器(也称为 BGW VTEP)412,其本地连接到DC站点的一个或更多个叶交换机(也称为叶VTEP)416。DC站点DC-1、DC-2和DC-3中的BGW VTEP分别表示为BGW1、BGW2和BGW3。在一些实施例中,BGW VTEP 412用作调解器VTEP,调解具有不同路由域的DC站点之间的通信。Each of the
在一些实施例中,使用图2的VTEP 50实现BGW VTEP 412和叶 VTEP 416,并如以上图3A和3B所述处理分组。In some embodiments,
DC站点DC-1、DC-2和DC-3中的叶VTEP 416分别表示为DCL-1、 DCL-2和DCL-3。为清楚起见,图6描绘了每个DC位点中仅一个叶VTEP。每个DC站点404通常包括可经由DC站点的叶VTEP访问的主机420。在一些实施例中,BGW VTEP 412和主机420共享表示为“A”的公共VRF。
在本示例中,BGW1、BGW2和BGW3分别被分配了VNI 50002、50003 和50099,而叶VTEP DCL-1、DCL-2和DCL-3分别被分配了VNI 50001、 50004和50099。DC-1和DC-2站点中的VNI分配是不对称的(因为BGW VTEP分配的VNI与DC站点中的叶交换机不同),而DC-3站点中的VNI 分配是对称的(因为BGW VTEP和叶VTEP在此DC站点中共享共同的 VNI值50099)。In this example, BGW1, BGW2, and BGW3 are assigned
在图6的示例中,站点DC-1中的叶VTEP DCL-1需要向站点DC-2 中的叶VTEP DCL-2发送分组。这种域间通信可以使用带有D-VNI的 VXLAN隧道来实现。In the example of FIG. 6, leaf VTEP DCL-1 in site DC-1 needs to send packets to leaf VTEP DCL-2 in site DC-2. This inter-domain communication can be achieved using VXLAN tunnels with D-VNI.
在一个示例场景中,叶VTEP DCL-1后面的主机向叶VTEP DCL-2 后面的另一个主机发送分组。为了支持此场景,DCL-1从BGW1导入D-VNI 50002,BGW1从BGW2导入D-VNI50003,BGW2从DCL-2导入VNI 50004。从DCL-1发送到DCL-2的分组将用D-VNI 50002封装并通过隧道传输到 BGW1。BGW1解封分组,用D-VNI 50003重新封装分组,并将分组通过隧道传输到BGW2。BGW2将分组解封装,用D-VNI 50004重新封装,并将分组通过隧道传输到叶DCL-2。作为最终的终止叶VTEP,DCL-2将分组解封装,并将解封装后的分组转发给DCL-2后面的目标主机。In one example scenario, a host behind leaf VTEP DCL-1 sends a packet to another host behind leaf VTEP DCL-2. To support this scenario, DCL-1 imports D-VNI 50002 from BGW1, BGW1 imports D-
在另一个示例场景中,叶VTEP DCL-1后面的主机向叶VTEP DCL-3 后面的主机发送分组。为了支持此场景,DCL-1从BGW1导入VNI 50002, BGW1从BGW3导入VNI 50099。从DCL-1后面的主机发送到DCL-3后面的另一个主机的分组将按照BGW1之前的场景进行处理。在当前场景中, BGW1使用D-VNI 50099重新封装分组,并通过隧道将分组传输到BGW3。BGW3基于VNI 50099,通过DCL-3将分组转发到DCL-3后面的目标主机。In another example scenario, a host behind leaf VTEP DCL-1 sends a packet to a host behind leaf VTEP DCL-3. To support this scenario, DCL-1 imports VNI 50002 from BGW1, and
如上所述,站点DC-3中的VNI分配是对称的,这意味着站点DC-3 内的通信不需要D-VNI。然而,为了将分组从站点DC-3发送到DC-1或 DC-2,BGW3需要分别从BGW1导入D-VNI50002或从BGW2导入D-VNI 50003。As mentioned above, the allocation of VNIs in site DC-3 is symmetric, which means that communication within site DC-3 does not require a D-VNI. However, in order to send packets from site DC-3 to DC-1 or DC-2, BGW3 needs to import D-VNI 50002 from BGW1 or D-
在一些实施例中,计算机系统400支持具有低存储占用空间的D-VNI 的VXLAN隧道,如上所述,例如参考图1。在这些实施例中,计算机系统400中的VTEP为导入的D-VNI创建唯一的出口RIF,并在VTEP中仅存储一次唯一的出口RIF。In some embodiments,
图1的计算机系统20、图5的计算机系统300和图6的计算机系统 400的配置以及图2的网络设备(VTEP)50的配置是示例配置,这些配置纯粹是为了概念清楚而选择的。在替代实施例中,还可以使用任何其他合适的计算机系统和网络设备配置。为了清楚起见,图中省略了对于理解本发明原理所不需要的元件,例如各种接口、寻址电路、定时和排序电路以及调试电路。The configurations of computer system 20 of FIG. 1,
网络设备(VTEP)50的一些元件,例如分组处理器54,可以在硬件中实现,例如在一个或更多个专用集成电路(ASIC)或FPGA中实现。另外或可选地,分组处理器54可以使用软件或使用硬件和软件元件的组合来实现。存储器62可以包括使用任何适当存储技术的任何适当类型的存储器,例如随机存取存储器(RAM)、动态RAM(DRAM)、非易失性存储器 (例如闪存)或多种存储器类型的组合。Some elements of network equipment (VTEP) 50, such as
在一些实施例中,CPU 60和/或分组处理器54的一些功能可由通用处理器执行,通用处理器在软件中编程以执行本文所述的功能。软件可以例如通过网络以电子形式下载到处理器,或者可以替代地或附加地提供和/ 或存储在非暂时性有形介质上,例如磁、光或电子存储器。In some embodiments, some of the functions of
以上描述的实施例通过示例给出,并且还可以使用其他合适的实施例。The embodiments described above are given by way of example, and other suitable embodiments may also be used.
在上述实施例中,路由/VNI主要使用BGP协议导入和导出。然而,在替代实施例中,路由/VNI可以由通信网络的用户在网络设备中配置。在示例实施例中,网络设备通过在源自用户的一个或更多个命令中接收 D-VNI来导入D-VNI,其中用户手动或通过运行包含一个或更多个命令的脚本自动发送一个或更多个命令。In the above embodiments, the route/VNI mainly uses the BGP protocol to import and export. However, in alternative embodiments, the routing/VNI may be configured in the network device by a user of the communication network. In an example embodiment, the network device imports the D-VNI by receiving the D-VNI in one or more commands originating from the user, wherein the user sends one or more commands.
上述实施例主要指OSI模型中指定的层。然而,这不是强制性的,并且在替代实施例中,也可以使用根据任何其他合适的分层模型的层。假设这种替代分层模型包括传输层和IP层,类似于OSI模型中指定的传输层和IP层。The above embodiments mainly refer to the layers specified in the OSI model. However, this is not mandatory and in alternative embodiments layers according to any other suitable layering model may also be used. It is assumed that this alternative layered model includes a transport layer and an IP layer, similar to the transport and IP layers specified in the OSI model.
尽管本文描述的实施例主要解决诸如交换机和路由器之类的网络设备中的D-VNI的高效存储实现,但本文描述的方法和系统也可用于其他应用中,例如在诸如NIC或智能NIC之类的网络适配器中使用小存储空间来实现D-VNI。Although the embodiments described herein primarily address efficient storage implementations of D-VNI in network devices such as switches and routers, the methods and systems described herein may also be used in other applications, such as D-VNI is implemented using a small memory space in the network adapter.
应当理解,以上描述的实施例是作为示例引用的,并且以下权利要求不限于上文特别示出和描述的内容。相反,范围包括上文所述的各种特征的组合和子组合,以及本领域技术人员在阅读前述描述时会想到的、在现有技术中未公开的变化和修改。通过引用合并到本专利申请中的文件应视为本申请的组成部分,除非这些合并文件中的任何术语的定义与本规范中明示或暗示的定义相冲突,否则仅应考虑本规范中的定义。It should be understood that the embodiments described above are cited as examples and that the following claims are not limited to what has been particularly shown and described above. Rather, the scope includes combinations and sub-combinations of the various features described above, as well as variations and modifications not disclosed in the prior art that would occur to those skilled in the art upon reading the foregoing description. Documents incorporated by reference into this patent application shall be deemed to be an integral part of this application, and unless the definition of any term in such incorporated documents conflicts with an express or implied definition in this specification, only the definition in this specification shall be considered. .
Claims (38)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN202141028962 | 2021-06-28 | ||
IN202141028962 | 2021-06-28 | ||
US17/591,623 | 2022-02-03 | ||
US17/591,623 US11855804B2 (en) | 2021-06-28 | 2022-02-03 | Storage-efficient implementation of downstream VXLAN identifiers |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115604056A true CN115604056A (en) | 2023-01-13 |
CN115604056B CN115604056B (en) | 2024-10-01 |
Family
ID=84388789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210614851.XA Active CN115604056B (en) | 2021-06-28 | 2022-05-31 | Efficient storage implementation of downstream VXLAN identifiers |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115604056B (en) |
DE (1) | DE102022206442A1 (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060182037A1 (en) * | 2003-12-15 | 2006-08-17 | Sbc Knowledge Ventures, L.P. | System and method to provision MPLS/VPN network |
US20160134520A1 (en) * | 2014-11-12 | 2016-05-12 | Cisco Technology, Inc. | Optimized inter-vrf (virtual routing and forwarding) route leaking in network overlay based environments |
US20170317919A1 (en) * | 2016-04-29 | 2017-11-02 | Cisco Technology, Inc. | Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks |
US20180069792A1 (en) * | 2015-04-30 | 2018-03-08 | Huawei Technologies Co., Ltd. | Packet Processing Method, and Device and System |
US20180302410A1 (en) * | 2017-04-14 | 2018-10-18 | Nxp Usa, Inc. | Method and Apparatus for Speeding Up ACL Rule Lookups That Include TCP/UDP Port Ranges in the Rules |
US10243834B1 (en) * | 2015-01-22 | 2019-03-26 | Juniper Networks, Inc. | Interconnecting virtual networks using an ethernet virtual private network (EVPN) and virtual extensible local area network (VXLAN) based overlay network |
US20200403922A1 (en) * | 2019-06-24 | 2020-12-24 | Vmware, Inc. | Load balancing of l2vpn traffic over multiple ipsec vpn tunnels |
US20210119827A1 (en) * | 2019-10-18 | 2021-04-22 | Juniper Networks, Inc. | Port mirroring over evpn vxlan |
-
2022
- 2022-05-31 CN CN202210614851.XA patent/CN115604056B/en active Active
- 2022-06-27 DE DE102022206442.9A patent/DE102022206442A1/en active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060182037A1 (en) * | 2003-12-15 | 2006-08-17 | Sbc Knowledge Ventures, L.P. | System and method to provision MPLS/VPN network |
US20160134520A1 (en) * | 2014-11-12 | 2016-05-12 | Cisco Technology, Inc. | Optimized inter-vrf (virtual routing and forwarding) route leaking in network overlay based environments |
CN107210961A (en) * | 2014-11-12 | 2017-09-26 | 思科技术公司 | The VRF of optimization in environment based on the network coverage(Virtual flow-line and forwarding)Between route leaking |
US10243834B1 (en) * | 2015-01-22 | 2019-03-26 | Juniper Networks, Inc. | Interconnecting virtual networks using an ethernet virtual private network (EVPN) and virtual extensible local area network (VXLAN) based overlay network |
US20180069792A1 (en) * | 2015-04-30 | 2018-03-08 | Huawei Technologies Co., Ltd. | Packet Processing Method, and Device and System |
US20170317919A1 (en) * | 2016-04-29 | 2017-11-02 | Cisco Technology, Inc. | Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks |
US20180302410A1 (en) * | 2017-04-14 | 2018-10-18 | Nxp Usa, Inc. | Method and Apparatus for Speeding Up ACL Rule Lookups That Include TCP/UDP Port Ranges in the Rules |
US20200403922A1 (en) * | 2019-06-24 | 2020-12-24 | Vmware, Inc. | Load balancing of l2vpn traffic over multiple ipsec vpn tunnels |
US20210119827A1 (en) * | 2019-10-18 | 2021-04-22 | Juniper Networks, Inc. | Port mirroring over evpn vxlan |
Non-Patent Citations (3)
Title |
---|
HUAWEI: "VXLAN功能增强", pages 4 - 5, Retrieved from the Internet <URL:https://support.huawei. com/enterprise/zh/doc/EDOC1000173014/ac080f8> * |
J. E. VACA P. AND G. D. SALAZAR-CHACÓN.: "VXLAN-IPSec Dual-Overlay as a Security Technique in Virtualized Datacenter Environments", 2020 IEEE ANDESCON, 1 December 2020 (2020-12-01) * |
孙兵: "基于VxLAN的网络分组策略研究与分析", 计算机技术与发展, vol. 31, no. 1, 31 January 2021 (2021-01-31) * |
Also Published As
Publication number | Publication date |
---|---|
DE102022206442A1 (en) | 2022-12-29 |
CN115604056B (en) | 2024-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10116559B2 (en) | Operations, administration and management (OAM) in overlay data center environments | |
US8830834B2 (en) | Overlay-based packet steering | |
EP3240250B1 (en) | Virtual router terminating an overlay tunnel in a storage area network | |
US9912614B2 (en) | Interconnection of switches based on hierarchical overlay tunneling | |
Lasserre et al. | Framework for data center (DC) network virtualization | |
US8661525B2 (en) | Implementation method and system of virtual private network | |
US11799762B2 (en) | Layer-2 network extension over layer-3 network using layer-2 metadata | |
JP5410614B2 (en) | Enterprise layer 2 seamless site expansion in cloud computing | |
EP3219057B1 (en) | Optimized inter-vrf (virtual routing and forwarding ) route leaking in network overlay based environments | |
US9100213B1 (en) | Synchronizing VPLS gateway MAC addresses | |
US12081367B2 (en) | Generating route target values for virtual private network routes | |
CN107770062A (en) | A kind of data packet sending method, device and the network architecture | |
CN107040463A (en) | A system for avoiding traffic flooding due to asymmetric MAC learning | |
EP3809641A1 (en) | Improved port mirroring over evpn vxlan | |
WO2011032472A1 (en) | Virtual private network implemaentation method and system | |
WO2018171529A1 (en) | Method, device and computer storage medium for implementing double control plane | |
US11855804B2 (en) | Storage-efficient implementation of downstream VXLAN identifiers | |
EP3979709A1 (en) | Dynamic multi-destination traffic management in a distributed tunnel endpoint | |
CN115604056B (en) | Efficient storage implementation of downstream VXLAN identifiers | |
EP3487130B1 (en) | Method, router and medium for avoiding traffic flooding due to asymmetric mac learning and achieving predictable convergence for pbb-evpn active-active redundancy | |
CN115348238A (en) | DHCP relay method, VTEP gateway, electronic device and medium | |
SE541314C2 (en) | Methods and apparatuses for routing data packets in a network topology | |
Jain | LAN Extension and Network Virtualization in Cloud Data Centers | |
US20240364618A1 (en) | Efficient multicast forwarding by shared gateway switch in multi-fabric network | |
US10812446B1 (en) | Dynamic host configuration across multiple sites in software defined access networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |