CN111756658B - 转发微芯片上的网络功能虚拟化(nfv)背板 - Google Patents
转发微芯片上的网络功能虚拟化(nfv)背板 Download PDFInfo
- Publication number
- CN111756658B CN111756658B CN201910936065.XA CN201910936065A CN111756658B CN 111756658 B CN111756658 B CN 111756658B CN 201910936065 A CN201910936065 A CN 201910936065A CN 111756658 B CN111756658 B CN 111756658B
- Authority
- CN
- China
- Prior art keywords
- forwarding
- microchip
- packet
- virtual
- nic
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/254—Centralised controller, i.e. arbitration or scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- 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]
- H04L12/4675—Dynamic sharing of VLAN information amongst network nodes
- H04L12/4679—Arrangements for the registration or de-registration of VLAN attribute values, e.g. VLAN identifiers, port VLAN membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及转发微芯片上的网络功能虚拟化(NFV)背板,公开了使用转发微芯片在网络装置内实现网络功能虚拟化(NFV)背板的技术。在一个实例中,转发微芯片的处理电路在转发微芯片的多个虚拟端口中的每一个与针对在网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接。所述处理电路经由转发微芯片的一个或多个物理端口接收分组,并且使用转发微芯片的多个虚拟端口中的每一个和为相应软件实现的VNF配置的多个虚拟端口中的每一个之间的逻辑连接,将分组转发到网络接口控制器(NIC),以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
Description
技术领域
本公开总体上涉及计算机网络,更具体地,涉及分布式应用。
背景技术
虚拟化数据中心正在成为现代信息技术(IT)基础设施的核心基础。特别地,现代数据中心已经广泛利用虚拟化环境,其中,虚拟主机(例如,虚拟机或容器(containner))在物理计算装置的底层计算平台上部署并执行。
具有大规模数据中心的虚拟化可以提供几个优势。一个优势是虚拟化可以显著提高效率。随着每个物理CPU具有大量内核的多核微处理器架构的出现,底层物理计算装置(即服务器)变得越来越强大,虚拟化变得更加容易和高效。第二个优势是虚拟化提供了对基础设施的有效控制。随着物理计算资源成为可替代资源,例如,在基于云的计算环境中,计算基础设施的供应和管理变得更加容易。因此,除了虚拟化提供的效率和更高的投资回报(return on investment,ROI)之外,企业IT人员由于具有管理优势而通常更喜欢数据中心的虚拟化计算集群。
网络架构是基于集成软件定义网络(SDN)和网络功能虚拟化(network functionsvirtualization,NFV)概念而开发的。SDN包括在类似于网络装置(例如,路由器和交换机)的网络节点中分离控制平面和数据平面,并将控制平面抽象成更模块化和分层的架构。NFV使用虚拟化来消除对专用硬件的依赖,并将许多不同类型的网络设备整合到行业标准的大容量服务器(industry standard high volume servers)、交换机和存储装置上,这些设备可能位于数据中心、网络节点和最终用户驻地。特别地,NFV是一种用于将软件网络功能与物理硬件或硅分离的网络技术。NFV平台的使用允许使用虚拟网络功能(VNF),因此NFV平台的网络功能独立于硬件。最近,NFV正在通过允许执行网络功能(例如,交换、路由、负载平衡等)来改革网络行业,作为商用硬件上的虚拟机(VM)。
发明内容
通常,本公开描述了使用转发微芯片来实现网络功能虚拟化(NFV)背板的技术,用于通过在网络装置内执行的虚拟网络功能(VNF)的服务链控制分组流的通信。NFV平台可以包括NFV背板,该NFV背板通过在VNF之间以及VNF和NFV平台外部的一个或多个装置之间执行分组的路由和交换来支持VNF。
根据本公开的技术,NFV平台的转发微芯片的功能被配置和扩展为用作NFV背板,用于在网络装置上执行的服务链VNF,从而减少或消除需要额外虚拟化组件来实现NFV背板,例如,可在转发芯片和NFV背板之间操作的虚拟交换机或虚拟化I/O接口,以促进分组流过服务链。
如本文所述,转发微芯片被配置为利用多个“虚拟端口”,其可以采取可配置的“环回(loop-back)”端口的形式。虚拟端口是内部逻辑端口,这些端口可以与芯片的物理端口相关联,并且可以通过编程方式用于实现GRE、VxLAN等隧道。如本文所述,转发微芯片上的相应虚拟端口分配给由相应软件实现的VNF呈现的多个虚拟端口中的每一个,并与之配对。转发微芯片可以使用第2层交换、第3层路由、策略或接入控制列表(ACL)在虚拟端口和VNF的相应虚拟端口之间传输分组。此外,对于包括转发微芯片的虚拟端口和VNF的虚拟端口的一对端口,可以为该对端口分配唯一的VLAN-ID。这样,可以在转发芯片和VM之间建立连接,并且以有助于通过转发芯片的虚拟端口序列转发分组流的方式建立连接,从而根据定义的服务链引导分组通过VM。以这种方式,NFV背板可以直接在转发微芯片上实现,而不需要虚拟化交换机或虚拟化I/O接口,从而简化了NFV背板的实现、配置和操作。
本公开的技术为计算机网络和网络流量路由领域提供了特定的技术优势。例如,在本文描述的NFV背板具有丰富的特征,因为NFV背板继承了转发微芯片的所有特征,并且这些特征能够以同质(homogenous manner)的方式配置。此外,本文描述的NFV背板对用户和管理员是透明的,简化了用户的维护。此外,因为NFV背板是在初始化时自动配置的,所以本公开的技术大幅降低了错误配置的可能性和频率。此外,本公开的技术消除了分组环路的出现,因为只有一个层2转发交换机。本公开的技术还允许使用转发微芯片的虚拟路由器转发(VRF)和虚拟交换机能力来实现多租户服务链,并且简化QoS的实现。本公开的技术还通过允许任何服务在服务链中的任何点发生任何次数来允许使用灵活的服务链。
在一个实例中,本公开描述了一种在网络装置内使用网络功能虚拟化(NFV)背板处理分组的方法,所述方法包括以下步骤:通过由网络装置的转发微芯片的处理电路在转发微芯片的多个虚拟端口中的每一个与针对在网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接,来在网络装置内配置NFV背板;由处理电路经由转发微芯片的一个或多个物理端口接收分组;并且由处理电路使用转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间的逻辑连接,将分组转发到网络接口控制器(NIC),以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
在另一实例中,本公开描述了一种转发微芯片,包括:处理电路;一个或多个物理端口;以及多个虚拟端口,其中,所述处理电路被配置为:通过由处理电路在转发微芯片的多个虚拟端口中的每一个与针对在网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接,在网络装置内配置网络功能虚拟化(NFV)背板;经由转发微芯片的一个或多个物理端口接收分组;并且使用转发微芯片的多个虚拟端口中的每一个和针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间的逻辑连接,将分组转发到网络接口控制器(NIC),以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
在另一实例中,本公开描述了一种网络装置,被配置为使用网络装置内的网络功能虚拟化(NFV)背板来处理分组,所述网络装置包括:网络接口控制器(NIC);以及转发微芯片,包括:处理电路;一个或多个物理端口;以及多个虚拟端口,其中,所述处理电路被配置为:通过由处理电路在转发微芯片的多个虚拟端口中的每一个与针对在网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接,来在网络装置内配置NFV背板;经由转发微芯片的一个或多个物理端口接收分组;并且使用转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间的逻辑连接,将分组转发到NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
在附图和以下描述中阐述本公开的技术的一个或多个实例的细节。
附图说明
图1是示出根据本文描述的技术的实例网络系统的框图,该实例网络系统包括基于软件定义网络(SDN)的网络和基于网络功能虚拟化(NFV)的网络架构。
图2是进一步详细示出图1的NFV平台的实例的框图。
图3是示出图2的NFV平台的概念模型的框图。
图4是示出使用虚拟化交换机实现NFV背板的NFV平台的实例实现的框图。
图5是示出使用虚拟化I/O接口来实现NFV背板的NFV平台的实例实现的框图。
图6是示出根据本公开的技术使用转发微芯片来实现NFV背板的NFV平台的实例实现的框图。
图7是示出根据本公开的技术使用转发微芯片来实现NFV背板的实例操作的流程图。
图8是示出根据本公开的技术使用转发微芯片来实现NFV背板的实例操作的流程图。
图9是示出根据本公开的技术使用转发微芯片来实现NFV背板的实例操作的流程图。
在所有附图和描述中,相同的附图标记表示相同的元件。
具体实施方式
图1是示出根据本文描述的技术的包括基于SDN和NFV的网络架构的实例网络系统的框图。图1的实例网络系统1包括服务提供商网络2,服务提供商网络2作为专用网络操作,以向用户装置16提供基于分组的网络服务。即,服务提供商网络2为用户装置16提供认证和建立网络接入,使得用户装置可以开始与公共网络12交换数据分组,公共网络12可以是内部或外部基于分组的网络,例如,互联网。
如图1所示,服务提供商网络2包括SDN和NFV架构。SDN控制器装置14可以提供高级控制器,用于配置和管理服务提供商网络2(例如,路由器18、路由器8、服务提供商核心网络7和数据中心9)的路由和交换基础设施。NFV编排器装置(orchestrator device)13可以提供用于配置和管理NFV平台100的高级编排器,该平台将网络服务虚拟化到数据中心9的服务节点10A-10N(统称为“服务节点10”)。
在一些情况下,SDN控制器14管理数据中心9的操作环境内虚拟机(VM)的部署。例如,SDN控制器14可以与路由器8交互,以指定服务链信息,这将在下面更详细地描述。例如,由SDN控制器14提供的服务链信息可以指定由服务节点10提供的服务的任何组合和排序、用于沿服务路径隧道传输或以其他方式传输分组流的流量工程信息、速率限制、服务类型(TOS)标记或分组分类器,所述分类器指定用于将分组流匹配到特定服务链的标准。在2013年6月5日提交的PCT国际专利申请PCT/US13/44378中描述了SDN控制器的进一步的实例细节。
在图1的实例中,服务提供商网络2包括接入网络6,接入网络6经由服务提供商核心网络7(以下称为“核心网络7”)和路由器8提供到公共网络12的连接。核心网络7和公共网络12提供基于分组的服务,用户装置16可以请求和使用这些服务。作为实例,核心网络7和/或公共网络12可以提供批量数据传送、基于互联网协议的语音(VoIP)、互联网协议电视(IPTV)、短消息服务(SMS)、无线应用协议(WAP)服务或客户特定的应用服务。公共网络12可以包括例如局域网(LAN)、广域网(WAN)、互联网、虚拟LAN(VLAN)、企业LAN、层3虚拟专用网(VPN)、由操作接入网络6的服务提供商操作的互联网协议(IP)内部网、企业IP网或其某种组合。在各种实施方式中,公共网络12连接到公共WAN、互联网或其他网络。公共网络12执行一个或多个分组数据协议(PDP),例如,IP(IPv4和/或IPv6)、x25或点对点协议(PPP),以实现公共网络12服务的基于分组的传输。
用户装置16可以经由接入网络6连接到路由器8,以接收到服务节点10托管的应用程序的用户服务的连接。用户可以表示例如企业、住宅用户或移动用户。用户装置16可以是例如个人计算机、膝上型计算机或与用户相关联的其他类型的计算装置。此外,用户装置16可以包括经由无线接入网络(RAN)(未示出)接入服务提供商网络2的数据服务的移动装置。实例移动用户装置包括移动电话、具有例如3G无线卡的膝上型或台式计算机、支持无线的上网本、视频游戏装置、寻呼机、智能电话、个人数据助理(PDA)等。
每个用户装置16可以运行各种软件应用程序,例如,文字处理和其他办公室支持软件、网络浏览软件、支持语音呼叫的软件、视频游戏、视频会议和电子邮件等。用户装置16经由包括有线和/或无线通信链路的接入链路5连接到接入网络6。本文使用的术语“通信链路”包括任何形式的有线或无线传输介质,并且可以包括中间节点,例如,网络装置。每个接入链路5可以包括例如不对称数字用户线路(DSL)网络、微波接入全球互通(WiMAX)网络、T-1线路、综合业务数字网(ISDN)、有线以太网或蜂窝无线链路的方面。
网络服务提供商操作或者在某些情况下租用接入网络6的元件,以在用户装置16和路由器8之间提供分组传输。接入网络6表示聚集来自一个或多个用户装置16的数据流量的网络,以向/从服务提供商的核心网络7传输。接入网络6包括网络节点,这些网络节点执行通信协议,以传输控制和用户数据,以便于用户装置16和路由器8之间的通信。接入网络6可以包括宽带接入网络、无线LAN、公共交换电话网(PSTN)、用户驻地装置(CPE)网络或其他类型的接入网络,并且可以包括蜂窝接入网络,例如,无线接入网络(RAN)(未示出),或者以其他方式为蜂窝接入网络提供连接。实例包括符合通用移动电信系统(UMTS)架构的网络、称为长期演进(LTE)的UMTS演进、由互联网工程任务组(IETF)标准化的移动IP以及由第三代合作伙伴项目(3GPP)、第三代合作伙伴项目2(3GGP/2)和WiMAX论坛提出的其他标准。
路由器18可以是客户边缘(CE)路由器、提供商边缘(PE)路由器或接入网络6和核心网络7之间的其他网络装置。核心网络7向连接到接入网络6的用户装置16提供基于分组的连接,用于接入公共网络12(例如,互联网)。核心网络7可以表示由服务提供商拥有和运营的公共网络,以互连多个网络,这些网络可以包括接入网络6。核心网络7可以实现多协议标签交换(MPLS)转发,并且在这种情况下,可以称为MPLS网络或MPLS骨干网。在一些情况下,核心网络7表示多个互连的自治系统(autonomous system),例如,互联网,其提供来自一个或多个服务提供商的服务。公共网络12可以表示互联网。公共网络12可以表示例如通过客户边缘装置(例如,客户边缘交换机或路由器)耦合到核心网络7的边缘网络。公共网络12可以包括数据中心。路由器8可以经由虚拟网络20与服务节点10交换分组,并且路由器8可以经由传输网络22将分组转发到公共网络12。
在包括有线/宽带接入网络的网络2的实例中,路由器8可以表示宽带网络网关(BNG)、宽带远程接入服务器(BRAS)、MPLS PE路由器、核心路由器或网关、或者电缆调制解调器终端系统(CMTS)。在包括蜂窝接入网络作为接入网络6的网络2的实例中,路由器8可以表示移动网关,例如,服务节点(GGSN)的网关通用分组无线服务(GPRS)、接入网关(aGW)或分组数据网络(PDN)网关(PGW)。在其他实例中,关于路由器8描述的功能可以在交换机、服务卡或其他网络元件或组件中实现。在一些实例中,路由器8本身可以是服务节点。
管理至少一部分网络2的网络服务提供商通常向与接入服务提供商网络2的装置(例如,用户装置16)相关联的用户提供服务。所提供的服务可能包括例如传统互联网接入、VoIP、视频和多媒体服务以及安全服务。如上面关于接入网络6所述,核心网络7可以支持连接到服务提供商网络接入网关的多种类型的接入网络基础设施,以提供对所提供服务的接入。在一些情况下,网络系统1可以包括连接到具有不同架构的多个不同接入网络6的用户装置16。
通常,用户装置16中的任何一个或多个可以通过向网关装置(例如,路由器18或路由器8)发送会话请求来请求授权和数据服务。反过来,路由器18可以接入中央服务器(未示出),例如,认证、授权和计费(AAA)服务器,以认证请求网络接入的一个用户装置16。一旦认证,任何用户装置16可以向核心网络7发送用户数据流量,以便接入和接收公共网络12提供的服务,并且这种分组可以作为至少一个分组流的一部分穿过路由器8。在一些实例中,路由器18可以将所有认证的用户流量转发到公共网络12,并且如果用户流量需要服务节点10上的服务,路由器8可以将特定的用户流量引导到数据中心9。要应用于用户流量的应用程序(例如,服务应用程序)可以托管在服务节点10上。
如本文所述,服务提供商网络2包括具有服务节点集群10的数据中心9,服务节点集群10为大部分虚拟化的网络服务提供执行环境。在一些实例中,每个服务节点10表示一个服务实例。每个服务节点10可以应用一个或多个服务。作为实例,服务节点10可以应用状态防火墙(SFW)和安全服务、深度分组检查(DPI)、运营商级网络地址转换(CGNAT)、流量目的地功能(TDF)服务、媒体(语音/视频)优化、互联网协议安全(IPSec)/虚拟专用网络(VPN)服务、超文本传输协议(HTTP)过滤、分组流的计数、计费、收费和/或负载平衡、或者应用于网络流量的其他类型的服务。
尽管被图示为数据中心9的一部分,服务节点10可以是由核心网络7的一个或多个交换机或虚拟交换机耦合的网络装置。在一个实例中,每个服务节点10可以作为VM在虚拟计算环境中运行。此外,计算环境可以包括通用计算装置的可扩展集群,例如,基于x86处理器的服务器。作为另一实例,服务节点10可以包括通用计算装置和专用装置的组合。随着虚拟化,由服务节点10提供的单独网络服务可以通过虚拟化存储器的分配、处理器利用率、存储和网络策略以及通过添加额外的负载平衡VM来横向扩展,就像在现代数据中心一样。在其他实例中,服务节点10可以是网关装置或其他路由器。在进一步的实例中,关于每个服务节点10描述的功能可以在交换机、服务卡或其他网络元件或组件中实现。
路由器8可以引导单独的用户分组流通过由服务节点10提供的定义的服务集。即,在一些实例中,每个用户分组流可以通过由服务节点10提供的服务的特定有序组合来转发,每个有序集合在本文称为“服务链”。在图1的实例中,可以沿着包括任何服务节点10的服务链引导用户分组流。特定服务节点10可以支持多个服务链。一旦在服务链的终端节点处处理,即,将服务应用于沿着特定服务路径流动的分组的最后一个服务节点10,终端节点可以将流量引导回路由器8,用于进一步处理和/或转发到公共网络12。例如,流量工程服务路径可以从路由器8开始和结束。
尽管“服务链”定义了以特定顺序应用的一个或多个服务,以提供复合服务,以应用于绑定到服务链的分组流,但是“服务隧道”或“服务路径”是指由服务链处理的分组流采用的逻辑和/或物理路径以及根据服务链排序转发分组流的转发状态。每个服务链可以与相应的服务隧道相关联,并且与每个用户装置16相关联的分组流根据与相应用户相关联的服务简档(service profile)沿着服务隧道流动。例如,给定的用户可以与特定的服务简档相关联,该服务简档又被映射到与特定服务链相关联的服务隧道。类似地,另一用户可以与不同的服务简档相关联,该服务简档又被映射到与不同服务链相关联的服务隧道。在一些实例中,在路由器18已经认证并建立了用户的接入会话之后,路由器18或路由器8可以沿着适当的服务隧道引导用户的分组流,从而使得数据中心9为给定用户应用必要的有序服务。在一些实例中,SDN控制器14还可以向路由器18或路由器8提供转发规则集,用于管理转发路径。在一些实例中,SDN控制器14从路由器8开始管理通过数据中心9中所有元件的转发路径。
在一些实例中,服务节点10可以使用内部配置的转发状态来实现服务链,该转发状态引导分组流的分组沿着服务链流动,以便根据所识别的服务节点10的集合进行处理。这种转发状态可以使用网络隧道来指定服务节点10之间的隧道接口,例如,IP或通用路由封装(GRE)隧道、使用GRE的网络虚拟化(NVGRE)、或者通过使用VLAN、虚拟可扩展LAN(VXLAN)、MPLS技术等。在一些情况下,互连服务节点10的真实或虚拟交换机、路由器或其他网络元件可以被配置为根据服务链将分组流引导到服务节点10。
如上所述,服务可以包括第4层到第7层服务,例如,SFW、DPI、CGNAT和TDF。此外,这些服务可以指应用程序,例如,域名服务(DNS)应用程序、超文本传输协议(HTTP)应用程序和文件传输协议(FTP)应用程序。在一些实例中,所公开的TWAMP扩展可以用于测量DPI的服务等待时间、多个CGNAT流、多个TDF用户、或者DNS服务器或HTTP服务器的活动性。
根据本公开的技术,NFV平台100包括实现NFV背板的转发微芯片,这将在下面更详细地讨论。通过虚拟化NFV平台100内的网络功能,NFV平台100允许网络功能与物理硬件或硅分离。通常,VNF由一个或多个虚拟机执行。NFV背板通过在VNF之间以及VNF和NFV平台100外部的一个或多个装置之间执行分组的路由和/或交换和/或基于策略的转发,来促进根据定义的服务链引导分组流通过VNF。如下文详细描述的,使用转发微芯片来实现NFV背板,可以消除对位于转发芯片和VNF之间的虚拟化交换机或虚拟化I/O接口的需求,作为NFV背板的一部分。因此,如本文所述,使用这种转发微芯片来实现用于服务链的NFV背板,可以简化NFV平台100的实现、配置和操作。
图2是进一步详细示出图1的NFV平台100的实例的框图。NFV平台100包括NFV背板204和虚拟机(VM)206A-206N(以下称为“VM206”)。每个VM 206实现一个VNF 208A-208N(以下称为“VNF 208”)。在一些实例中,NFV平台100是网络装置,例如,路由器或交换机。
NFV是一种将软件网络功能与物理硬件或硅分离的技术。NFV的使用允许使用独立于硬件的VNF 208。例如,VM 206可以实现VNF 208,VNF 208提供诸如交换、路由、负载平衡器等网络功能,同时在商用硬件上执行。客户从NFV的使用中受益匪浅。例如,客户可以混合和匹配来自多个供应商的同类最佳网络功能。NFV允许硬件和软件架构分离,避免了供应商的锁定。NFV允许使用更便宜的商用硬件,而不是昂贵的定制硬件,例如,定制的专用集成电路(ASIC)。此外,NFV通过更简单的部署和升级周期,提高了运营效率。
网络供应商也受益于NFV的使用。例如,NFV允许使用模块化硬件和软件架构。这转化为高效的开发工作流和服务部署策略。NFV的使用使得与其他行业参与者的协作变得更加容易,从而实现互补服务,并扩展到更新的、相邻的市场领域(market segment)。NFV进一步简化了与第三方软件的集成。此外,NFV可以允许使用创新的定价模型,这是通过使用分离的硬件和软件模型实现的。
参考图2,NFV平台100的核心是NFV背板204。NFV背板204提供转发平面,用于引导图1的VNF 208和虚拟网络20之间的流量。NFV背板204在VNF 208之间提供快速、可靠的连接。此外,NFV背板204提供了在VNF 208之间的一个或多个灵活服务链202的实现。例如,NFV背板可以允许一个VNF 208出现在服务链202中的任何地方任何次数。此外,NFV背板204允许实现服务链202,该服务链允许但不要求使用服务转发链报头。此外,NFV背板204允许多租户。通常,NFV背板204的操作对用户和管理员都是透明的。
NFV背板204包括一个或多个物理网络端口210A-210N(以下称为“物理端口210”或“物理网络端口210”)。物理端口210充当实现NFV背板204的一个或多个计算装置和一个或多个外部装置(例如,图1的PE路由器8)之间的物理接口。物理端口210可以包括插头、电缆、软线或光纤适配器连接到的专用插座。物理端口210还可以包括用于发送和接收电信号的一个或多个电导体。在一个实例中,物理端口210包括一个或多个以太网端口。例如,NFV背板204经由物理端口210接收外部流量,并将流量转发给VM 206。作为另一实例,NFV背板204接收来自VM 206的内部流量,并经由物理端口210将流量从外部转发到例如图1的PE路由器8。
虚拟机206托管相应的VNF 208。每个VNF 208可以表示图1的服务节点10的实例网络服务实例。在一些实例中,VM 206可以托管一个或多个VNF 208。每个VNF 208实现应用于分组流的虚拟化网络服务。VNF 208表示可以应用上面关于服务节点10描述的任何一种网络功能的软件。VNF 208可以由控制器(例如,SDN控制器14)编排,以由相应的VM 206执行,以应用网络服务。
尽管针对虚拟机进行了图示和描述,但是VNF 208可以由其他操作环境来执行,例如,容器(例如,DOCKER容器)。操作系统内核(图2中未示出)可以在内核空间中执行,并且可以包括例如可从微软公司获得的Linux、伯克利软件分发(BSD)、另一Unix变体内核或视窗服务器操作系统内核。
图3是示出图2的NFV平台100的概念模型的框图。具体地,图3描绘了NFV平台100的平台组件的实例。例如,如图3所示,NFV平台100包括实现VNF 208的层2/层3转发微芯片302、NIC 312、主机操作系统(OS)/管理程序310、控制VM 306和VM 206。VM 206和VNF 208可以以与图2的VM 206基本相似的方式运行。如图3所示,NFV平台100可以表示NFV平台的典型实现。在一些实例中,NFV平台100是网络装置,例如,路由器或交换机。
转发微芯片302实现转发平面,用于向NFV平台100和从该平台100引导分组。转发微芯片302包括物理端口210,其可以以与图2的物理端口210基本相似的方式运行。转发微芯片302可以是定制的(例如,专用集成电路(ASIC))或从供应商或商家处购买的现成组件。在一些实例中,转发微芯片302可以是物理硅或硬件的软件仿真。
NIC 312实现交换功能,以便将VM 206连接到转发微芯片302。NIC 312可以作为第1层(OSI模型的物理层)装置操作,以向VM 206提供对网络介质的物理接入。此外,NIC 312可以作为第2层(OSI模型的数据链路层)装置操作,以通过使用唯一分配给VM 206的网络接口的MAC地址来提供低级寻址系统。在一些实例中,NIC 312是双端口NIC。在一些实例中,NIC 312能够进行单根输入/输出虚拟化SR-IOV,而在其他实例中,NIC 312不能够进行单根输入/输出虚拟化(SR-IOV)。NFV平台100实现转发微芯片302和NIC 312之间的内部以太网连接。在一些实例中,以太网连接约为10千兆以太网或更高。
NFV平台100还包括执行装置管理器308的控制VM 306。装置管理器308托管用于转发微芯片302的管理和第2层/第3层控制平面软件。装置管理器308还为主机OS/管理程序310和转发微芯片302之间的路径实现分组I/O。
主机OS和管理程序310管理NIC 312和VM 206,其实现VNF 208,以启用NFV。实例管理程序包括用于Linux内核OS的基于内核的虚拟机(KVM)、Xen、VMware提供的ESXi、微软提供的视窗Hyper-V以及其他开源和专有管理程序。
图4是示出使用虚拟化交换机406实现NFV背板404的NFV平台400的实例实现的框图。在一些实例中,NFV平台400是图2的NFV平台100的实例实现。
在该实例中,虚拟化交换机406位于NIC 312和VM 206之间,并用于使用在虚拟化交换机406内创建的VLAN 404来实现层2、层3和/或基于策略的服务链。在一些实例中,虚拟化交换机406是开放式vSwitch。
虚拟化交换机406经由NIC端口408A-408B(以下称为“NIC端口408”)连接VM 206的虚拟NICS(图4中未示出)和前面板物理端口(front-panel physical port)210。在一些实例中,虚拟化交换机406在内核空间中执行,而在其他实例中,虚拟化交换机406在用户空间中执行。例如,在虚拟化交换机406是开放式vSwitch的情况下,虚拟化交换机406可以使用www.dpdk.org提供的数据平面开发工具包(DPDK)软件应用程序来配置。
如图4所示,在转发微芯片302中创建用于转发分组的VLAN 410A-410N(以下称为“VLAN 410”),而在虚拟化交换机406中创建虚拟局域网(VLAN)404A-404C(以下称为“VLAN404”),以便为VNF 208之间的不同业务流创建不同的服务链。NIC 312可以使用接收到的网络分组的VLAN标签来将网络分组与相应的VLAN 404相关联。在一些实例中,控制器(例如,图1的SDN控制器14)可以用于在虚拟化交换机406中创建流量导向策略,以实现服务链。这种控制器可以是例如OpenFlow代理。
然而,如图4所示,NFV平台400可能遭受许多问题。例如,NFV背板404中虚拟化交换机406的操作对用户来说是不透明的。这意味着管理员必须使用虚拟化交换机406的命令行界面或管理协议(例如,开放式vSwitch数据库管理协议(OVSDB))明确配置VLAN 404、IP地址和策略。这些应用程序通常都不是底层平台(例如,NFV背板404)的本地应用程序。因此,如图4所示的NFV平台400可能需要用户管理来自第二供应商的第二网络系统,来配置NFV背板404,这可能导致管理和兼容性问题。此外,如图4所示,NFV背板404需要使用控制器,例如,SDN控制器14或OpenFlow代理,来实现基于策略的服务链。此外,由于NFV背板404的复杂性,NFV平台400可能易于错误配置,这可能导致转发微芯片302和虚拟化交换机406之间的分组路径环路。这可能会导致消耗大量计算资源的广播风暴(broadcast storms)。此外,由于具有不同能力的不同系统的实现,利用NFV平台400实现一致的端到端服务质量(QoS)和流量控制可能是困难和麻烦的。
图5是示出使用虚拟化I/O接口506来实现NFV背板504的NFV平台500的实例实现的框图。作为在如图4所示的NFV背板404中使用虚拟化交换机406的替代,虚拟化I/O接口506可以在NFV背板504中使用,以在一个或多个虚拟NIC端口508A-508B(以下称为“虚拟NIC端口508”)上提供多个虚拟功能,这些端口可以用于连接到VM 206的虚拟NIC。VLAN 504A-504C(以下称为“VLAN 504”)在虚拟化I/O接口506中创建,VLAN 510A-510N(以下称为“VLAN510”)在转发微芯片302中创建,以便为VNF 208之间的不同业务流创建不同的服务链。
在一些实例中,虚拟化I/O接口506是SR-IOV。通常,NIC 312可以包括将一个或多个物理NIC端口512A-512B(以下称为“物理NIC端口512”)连接到一个或多个虚拟NIC端口508的内部交换机(未示出)。内部交换机类似于图4中描述的虚拟化交换机406,但是以硬件实现。因此,相对于所支持的特征,这种内部交换机的能力可能低得多。NIC 306可以实现虚拟化I/O接口506,以扩展这种内部交换机的功能。
然而,NFV平台500也可能遭受许多问题。例如,图5所示的实例NFV平台500要求NIC312具有虚拟化I/O接口(例如,SR-IOV)能力,以便实现虚拟化I/O接口506。通常,支持这种功能的NIC比不支持这种功能的NIC更加复杂和昂贵。此外,每个VNF 208都需要用与主机OS中的驱动程序兼容的驱动程序版本来支持SR-IOV。因此,如图5所示,NFV平台500对于部署来说可能不太实用,因为很少有商用VNF支持SR-IOV。
此外,类似于图4的NFV平台400,当在NFV背板504中实现服务链时,虚拟化I/O接口(例如,SR-IOV)的使用对于用户来说是不透明的。此外,虚拟化I/O接口506的使用可能不如图4的虚拟化交换机406的使用理想,因为用户可能对NIC 312中的内部硬件交换机具有很少或没有可见性、控制或可调试性。与图4的NFV背板404一样,NFV背板504可能易于错误配置,这可能导致NIC 312和转发微芯片302之间的分组环路。此外,实现端到端流量控制对管理员来说可能很麻烦或困难。例如,如果服务链中的几个VNF 208支持SR-IOV,但是其他VNF208不支持,则NFV平台500将需要虚拟化I/O接口506以及虚拟化交换机,例如,图4的虚拟化交换机406,从而进一步增加NFV背板504的复杂性。
图6是示出根据本公开的技术使用转发微芯片302来实现NFV背板604的NFV平台600的实例实现的框图。在一些实例中,NFV平台600是图2的NFV平台100的实例实现。在一些实例中,NFV平台600是网络装置,例如,路由器或交换机。分别与图4和图5的NFV平台400和500一样,NFV平台600可以与图2和图3的NFV平台100一样操作,以虚拟化由图1的数据中心9提供的网络功能。通过在NFV平台600内虚拟化这种网络功能,NFV平台600允许网络功能与图1的数据中心9的物理硬件或硅分离。
根据本公开的技术,NFV平台600包括转发微芯片302。转发微芯片302的功能扩展为也用作NFV背板604。NFV背板604通过经由路由、交换和/或ACL在VNF 208之间以及VNF208和NFV平台600外部的一个或多个装置之间执行分组转发来支持VNF 208。通过使用转发微芯片302来实现NFV背板604,NFV平台600可以消除对外部组件的需求,以实现NFV背板。例如,NFV平台600可以消除对虚拟化交换机(例如,图4的NFV平台400的虚拟化交换机406)或虚拟化I/O接口(例如,图5的NFV平台500的虚拟化I/O接口506)的要求。因此,转发微芯片302的使用可以简化NFV平台600的实现、配置和操作。
参考图6,NFV背板604提供转发平面,用于引导图1的VNF 208和虚拟网络20之间的流量。NFV背板604在VNF 208之间提供快速、可靠的连接。此外,NFV背板604提供了在VNF208之间的一个或多个灵活服务链的实现。例如,NFV背板可以允许一个VNF 208出现在服务链中的任何位置任何次数。此外,NFV背板604允许实现服务链,该服务链允许但不要求使用服务转发链报头。此外,NFV背板604允许多租户。通常,NFV背板604的操作对用户和管理员都是透明的。
虚拟机206托管相应的VNF 208。每个VNF 208可以表示图1的服务节点10的实例网络服务实例。在一些实例中,VM 206可以托管一个或多个VNF 208。每个VNF 208实现应用于分组流的虚拟化网络服务。VNF 208表示可以应用上面关于服务节点10描述的任何一种网络功能的软件。VNF 208可以由控制器(例如,图1的SDN控制器14)编排,以由相应的VM 206执行,以应用网络服务。
尽管针对虚拟机进行了图示和描述,但是虚拟网络文件206可以由其他操作环境来执行,例如,容器(例如,DOCKER容器)。操作系统内核(图6中未示出)可以在内核空间中执行,并且可以包括例如可从微软公司获得的Linux、伯克利软件分发(BSD)、另一Unix变体内核或视窗服务器操作系统内核。
转发微芯片302实现转发平面,用于向NFV平台600和从该平台600引导分组。转发微芯片302可以是定制的(例如,专用集成电路(ASIC))或从供应商或商家处购买的现成组件。在一些实例中,转发微芯片302可以是物理硅或硬件的软件仿真。
转发微芯片302包括物理端口210,其可以以与图2的物理端口210基本相似的方式运行。例如,物理端口210充当实现NFV平台600的一个或多个计算装置和一个或多个外部装置(例如,图1的PE路由器8)之间的物理接口。物理端口210可以包括插头、电缆、软线或光纤适配器连接到的专用插座。物理端口210还可以包括用于发送和接收电信号的一个或多个电导体。在一个实例中,物理端口210包括一个或多个以太网端口。
NIC 312实现交换功能,以便将VM 206连接到转发微芯片302。NIC 312可以作为第1层(OSI模型的物理层)装置操作,以向VM 206提供对网络介质的物理接入。此外,NIC 312可以作为第2层(OSI模型的数据链路层)装置操作,以通过使用唯一分配给VM 206的网络接口的MAC地址来提供低级寻址系统。在一些实例中,NIC 312是双端口NIC。在一些实例中,NIC 312能够进行单根输入/输出虚拟化SR-IOV,而在其他实例中,NIC 312不能够进行单根输入/输出虚拟化(SR-IOV)。NFV平台100实现转发微芯片302和NIC 312之间的内部以太网连接。在一些实例中,以太网连接约为10千兆以太网或更高。
NFV平台600还包括执行装置管理器308的控制VM 306。装置管理器308托管用于转发微芯片302的管理和第2层/第3层控制平面软件。
根据本公开的技术,转发微芯片302的功能扩展为用作NFV背板604,从而省略了实现NFV背板的外部组件的需要。如图6所示,转发微芯片302提供多个“虚拟”或“环回”端口612A-612N(以下称为“虚拟端口612”)。虚拟端口612是NFV平台600内部的端口,并且通常用于实现诸如GRE、VxLAN等隧道。从用户配置和特征能力的角度来看,虚拟端口612是一流端口,因为虚拟端口612具有与转发微芯片302的前面板物理端口210相当的功能和特征能力。例如,用户可以将虚拟端口612添加到VLAN,在虚拟端口612上配置IP地址,或者在虚拟端口612上应用ACL。此外,转发微芯片302在转发分组时通常不区分虚拟端口612和物理端口210。对于外部连接,虚拟端口612上的分组与一个或多个物理端口210相关联。这种关联是动态的,并且在运行时,基于分组报头和在虚拟端口612上配置的交换、路由或策略规则的结果来确定。虚拟端口612的典型用例是隧道(例如,GRE和VXLAN)的实现,其中,虚拟端口612可以用于隧道封装或解封装。本公开的技术利用虚拟端口612来实现NFV背板。
在图6的实例中,VNF 208的每个虚拟NIC端口608A-608N(以下称为“虚拟NIC端口608”)在转发微芯片302上具有保留的虚拟端口612。转发微芯片302可以使用层2交换、层3路由、策略或接入控制列表(ACL)来在虚拟端口612和相应的虚拟NIC端口608之间传输分组。转发微芯片302在每个虚拟端口612和相应的虚拟NIC端口608之间建立逻辑连接614。用户可以以类似于物理前面板端口210的方式配置虚拟端口612。例如,用户可以向VLAN添加虚拟端口612,向虚拟端口612分配IP地址,或者在虚拟端口612上配置一个或多个ACL,诸如此类。
在转发微芯片302中创建VLAN 610A-610N(以下称为“VLAN 610”),以便为VNF 208之间的不同业务流创建不同的服务链。此外,对于包括转发微芯片302的虚拟端口612和VM206的虚拟端口608的每一对,可以为该对分配唯一的VLAN-ID。在一些实例中,转发微芯片302的虚拟端口612可以在内部配置为用于IEEE 802.1ad(Q-in-Q)操作,以在从转发微芯片302到NIC 204的出口上将相关联的VLAN标签添加到分组,并且在NIC 204的入口剥离相关联的VLAN标签。
从转发微芯片302的前面板物理端口210到虚拟NIC端口608的分组路径如下所述。对于接收路径,转发微芯片302的前面板物理端口(例如,物理端口210A)接收分组。分组可以是未标记的或VLAN标记的。转发微芯片302按照常规方式处理分组。如果由分组查找确定的出口虚拟端口(例如,虚拟端口612A)是虚拟端口,则转发微芯片302将相应的VLAN标签添加到分组,并将分组转发到NIC 204。NIC 204接收分组并将分组转发给交叉连接应用606(例如,DPDK)。交叉连接应用606在外部VLAN-ID上进行查找,并确定分组的虚拟NIC端口608(例如,虚拟NIC端口608A)。交叉连接应用剥离外部VLAN ID并将分组转发到虚拟NIC端口608A。
对于传输路径,交叉连接应用606(例如,DPDK)从虚拟NIC端口(例如,虚拟NIC端口608A)接收分组。交叉连接应用606将对应于虚拟NIC端口608A的VLAN ID添加到分组中,并经由NIC 312将分组转发到转发微芯片302。转发微芯片302使用外部VLAN ID将分组与正确的虚拟端口612(例如,虚拟端口612A)相关联,从分组中剥离外部VLAN ID,然后按照常规方式处理分组。分组经由转发微芯片302的前面板物理端口210(例如,物理端口210A)退出,物理端口210A由分组查找确定。作为非排他性实例,虚拟NIC端口608可以是virtio、vhost-net、vhost-user或veth-pair(对于Linux容器)。
本公开的技术为计算机网络和网络流量路由领域提供了特定的技术优势。例如,由NFV平台600实现的NFV背板具有丰富的特征,因为NFV背板继承了转发微芯片302的所有特征,例如,第2层/第3层协议、ACL、计数器、QoS等。这些特征不需要额外的成本,并且都是使用本机CLI和/或其他配置机制以同质方式配置的。此外,本文描述的由NFV平台600实现的NFV背板对于用户和管理员是透明的,并且交叉连接应用606不需要由用户维护。例如,转发微芯片302的虚拟端口612可以使用本地CLI和/或其他配置方法以类似于常规物理端口210的方式配置。此外,因为由NFV平台600实现的NFV背板在初始化时自动配置,所以本公开的技术显著降低了错误配置的可能性和频率。此外,本公开的技术消除了分组环路的出现,因为只有一个层2转发交换机。本公开的技术还允许使用转发微芯片302的虚拟路由器转发(VRF)和虚拟交换机能力来实现多租户服务链。本公开的技术还简化了QoS的实现,因为虚拟端口612支持多字段分类器、输出队列和队列调度器。本公开的技术还通过允许任何服务在服务链中的任何点发生任何次数来允许使用灵活的服务链。
图7是示出根据本公开的技术使用转发微芯片来实现NFV背板的实例操作的流程图。具体地,图7示出了使用转发微芯片来建立NFV背板的实例。为了方便起见,参考图1和图6描述了图7。
关于图7的实例,转发微芯片302对于针对相应的VNF 208而配置的多个虚拟端口608中的每一个,保留转发微芯片302的相应虚拟端口612(702)。例如,转发微芯片302针对为VNF 208A配置的虚拟端口608A保留虚拟端口612A。
转发微芯片302还在针对相应的VNF 208而配置的多个虚拟端口608中的每一个与转发微芯片302的相应虚拟端口612之间建立逻辑连接(704)。例如,对于包括虚拟端口608和虚拟端口612的每对虚拟端口,转发微芯片302创建VLAN 610。此外,转发微芯片302向包括虚拟端口608和虚拟端口612的每对虚拟端口分配唯一的VLAN ID(706)。在一些实例中,转发微芯片302可以为IEEE 802.1ad(Q-in-Q)操作配置虚拟端口612。因此,(如参考图8和图9更详细描述的),转发芯片302可以在从转发微芯片302到NIC 204的出口向分组添加相关联的VLAN标签,并且在NIC 204的入口上剥离相关联的VLAN标签。VLAN 610的使用可以允许转发微芯片302在针对相应的VNF 208而配置的多个虚拟端口608中的每一个与转发微芯片302的相应虚拟端口612之间创建逻辑连接。VLAN 610的使用可以进一步允许为VNF 208之间的不同业务流创建不同的服务链。
图8是示出根据本公开的技术使用转发微芯片来实现NFV背板的实例操作的流程图。具体地,图8示出了使用NFV背板来处理从外部装置接收并去往内部VNF的分组的实例。为了方便起见,参考图1和6描述了图8。
关于图8的实例,转发微芯片302经由一个物理端口210从外部装置(例如,图1的PE路由器8)接收分组(802),并执行分组查找,以识别分组的下一跳。转发微芯片302处理该分组,以识别对应于该分组的转发微芯片302的虚拟端口612(例如,虚拟端口612A)(804)。转发微芯片302向对应于所识别的虚拟端口612(例如,虚拟端口612A)的分组添加外部VLAN标签(806),并将分组转发到NIC 312(808),NIC 312又将分组转发到交叉连接应用606(810)。
交叉连接应用606从分组中移除外部VLAN标签(812)。此外,交叉连接应用606在外部VLAN标签上执行分组查找,以确定对应于外部VLAN标签的虚拟NIC端口612(例如,虚拟NIC端口608A)(814)。交叉连接应用606将分组转发到虚拟NIC端口608A。
图9是示出根据本公开的技术使用转发微芯片来实现NFV背板的实例操作的流程图。具体地,图9示出了使用NFV背板来处理从内部VNF接收并去往外部装置的分组的实例。为了方便起见,参考图1和图6描述了图9。
关于图9的实例,交叉连接应用606经由虚拟NIC端口(例如,虚拟NIC端口608A)从一个VNF 208(例如,VNF 208A)接收分组(902)。交叉连接应用606处理该分组,以识别对应于虚拟端口612的VLAN,并添加对应于虚拟端口612的外部VLAN标签(904)。交叉连接应用606将分组转发到NIC 312(906),NIC 312又将分组转发到转发微芯片302(908)。
转发微芯片302接收分组并从分组中移除VLAN标签(910)。转发微芯片302基于VLAN标签识别对应于VLAN标签的转发微芯片302的虚拟端口612(例如,虚拟端口612A)(912)。转发微芯片302进一步处理该分组,以识别该分组的下一跳(next hop),并且经由一个物理端口210将该分组转发到外部装置(例如,图1的PE路由器8)(914)。
除了上述内容或作为上述内容的替代,描述了以下实例。以下任一实例中描述的特征可以与本文描述的任何其他实例一起使用。
实例1.一种在网络装置内使用网络功能虚拟化(NFV)背板处理分组的方法,所述方法包括以下步骤:通过由网络装置的转发微芯片的处理电路在所述转发微芯片的多个虚拟端口中的每一个与针对在所述网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接,来在所述网络装置内配置NFV背板,由所述处理电路经由所述转发微芯片的一个或多个物理端口接收分组;以及由所述处理电路使用所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间的所述逻辑连接,将所述分组转发到网络接口控制器(NIC),以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例2.根据实例1所述的方法,其中,在转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间建立相应的所述逻辑连接包括:由所述处理电路将虚拟局域网(VLAN)标识符分配给转发微芯片的多个虚拟端口和为相应软件实现的VNF而配置的多个虚拟端口的多对端口。
实例3.根据实例1至2中任一项所述的方法,其中,在所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间建立相应的所述逻辑连接包括:对于针对相应软件实现的VNF而配置的多个虚拟端口中的每一个,保留所述转发微芯片的多个虚拟端口中的相应虚拟端口。
实例4.根据实例1至3中任一项所述的方法,其中,由所述处理电路使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口包括:由所述处理电路经由层2交换操作将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例5.根据实例1至4中任一项所述的方法,其中,由所述处理电路使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口包括:由所述处理电路经由第3层路由操作将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例6.根据实例1至5中任一项所述的方法,还包括由所述处理电路处理所述分组,以确定应用于所述分组的虚拟局域网(VLAN)标识符,其中,由所述处理电路使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口包括:基于应用于所述分组的VLAN标签并且使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例7.根据实例1至6中任一项所述的方法,其中,所述分组包括第一分组,并且其中,所述方法还包括:由所述处理电路使用所述逻辑连接从NIC中接收第二分组,所述第二分组源自针对相应软件实现的VNF而配置的多个虚拟端口;并且由所述处理电路经由所述一个或多个物理端口转发所述第二分组。
实例8.根据实例7所述的方法,还包括由所述处理电路处理所述第二分组,以确定应用于所述第二分组的第二VLAN标签,其中,经由所述一个或多个物理端口转发所述第二分组包括:经由所述一个或多个物理端口并且基于应用于所述第二分组的所述第二VLAN标签转发所述第二分组。
实例9.一种转发微芯片,包括:处理电路;一个或多个物理端口;以及多个虚拟端口,其中,所述处理电路被配置为:通过由所述处理电路在转发微芯片的多个虚拟端口中的每一个与针对在网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接,来在所述网络装置内配置网络功能虚拟化(NFV)背板,经由所述转发微芯片的一个或多个物理端口接收分组;并且使用所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间的所述逻辑连接,将所述分组转发到网络接口控制器(NIC),以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例10.根据实例9所述的转发微芯片,其中,为了在所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间建立相应的所述逻辑连接,所述处理电路被配置为:将虚拟局域网(VLAN)标识符分配给所述转发微芯片的多个虚拟端口和针对相应软件实现的VNF而配置的多个虚拟端口的多对端口。
实例11.根据实例9至10中任一项所述的转发微芯片,其中,为了在所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间建立相应的所述逻辑连接,所述处理电路被配置为:对于针对相应软件实现的VNF而配置的多个虚拟端口中的每一个,保留所述转发微芯片的多个虚拟端口中的相应虚拟端口。
实例12.根据实例9至11中任一项所述的转发微芯片,其中,为了使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口,所述处理电路被配置为:经由层2交换操作将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例13.根据实例9至12中任一项所述的转发微芯片,其中,为了使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口,所述处理电路被配置为:经由第3层路由操作将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例14.根据实例9至13中任一项所述的转发微芯片,其中,所述处理电路还被配置为:处理所述分组,以确定应用于所述分组的虚拟局域网(VLAN)标识符,其中,为了使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口,所述处理电路被配置为:基于应用于所述分组的VLAN标签并且使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例15.根据实例9至14中任一项所述的转发微芯片,其中,所述分组包括第一分组,并且其中,所述处理电路还被配置为:使用所述逻辑连接从所述NIC中接收第二分组,所述第二分组源自针对相应软件实现的VNF而配置的多个虚拟端口;并且经由所述一个或多个物理端口转发所述第二分组。
实例16.根据实例15所述的转发微芯片,其中,所述处理电路还被配置为处理所述第二分组,以确定应用于所述第二分组的第二VLAN标签,其中,为了经由所述一个或多个物理端口转发所述第二分组,所述处理电路被配置为:经由所述一个或多个物理端口并且基于应用于所述第二分组的所述第二VLAN标签转发所述第二分组。
实例17.一种网络装置,被配置为使用网络装置内的网络功能虚拟化(NFV)背板来处理分组,所述网络装置包括:网络接口控制器(NIC);以及转发微芯片,包括:处理电路;一个或多个物理端口;以及多个虚拟端口,其中,所述处理电路被配置为:通过由所述处理电路在所述转发微芯片的多个虚拟端口中的每一个与针对在网络装置上执行的相应软件实现的虚拟网络功能(VNF)而配置的多个虚拟端口中的每一个之间建立相应的逻辑连接,来在所述网络装置内配置NFV背板,经由所述转发微芯片的一个或多个物理端口接收分组;并且使用所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间的所述逻辑连接,将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
实例18.根据实例17所述的网络装置,其中,为了在所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间建立相应的所述逻辑连接,所述处理电路被配置为:将虚拟局域网(VLAN)标识符分配给所述转发微芯片的多个虚拟端口和针对相应软件实现的VNF而配置的多个虚拟端口的多对端口。
实例19.根据实例17至18中任一项所述的网络装置,其中,为了在所述转发微芯片的多个虚拟端口中的每一个与针对相应软件实现的VNF而配置的多个虚拟端口中的每一个之间建立相应的所述逻辑连接,所述处理电路被配置为:对针对相应软件实现的VNF而配置的多个虚拟端口中的每一个,保留所述转发微芯片的多个虚拟端口中的相应虚拟端口。
实例20.根据实例17至19中任一项所述的网络装置,其中,所述处理电路还被配置为处理所述分组,以确定应用于所述分组的虚拟局域网(VLAN)标识符,其中,为了使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口,所述处理电路被配置为:基于应用于所述分组的VLAN标签并且使用所述逻辑连接将所述分组转发到所述NIC,以便转发到针对相应软件实现的VNF而配置的多个虚拟端口。
此外,在上述任何实例中阐述的任何特定特征可以组合成所述技术的有益实例。即,任何特定特征通常适用于本发明的所有实例。已经描述了本发明的各种实例。
本公开中描述的技术可以至少部分地在硬件、软件、固件或其任意组合中实现。例如,所描述技术的相应方面可以在一个或多个处理器内实现,包括一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等效的集成或分立逻辑电路以及这些组件的任何组合。术语“处理器”或“处理电路”通常可以指任何前述逻辑电路,单独或与其他逻辑电路或任何其他等效电路相结合。包括硬件的控制单元也可以执行本公开的一种或多种技术。
这种硬件、软件和固件可以在同一装置内或在单独的装置内实现,以支持本公开中描述的各种操作和功能。此外,任何所描述的单元、模块或组件可以一起或单独实现为分立但可互操作的逻辑装置。将不同特征描述为模块或单元,旨在突出不同的功能方面,并不一定意味着这些模块或单元必须通过单独的硬件或软件组件来实现。相反,与一个或多个模块或单元相关联的功能可以由单独的硬件或软件组件来执行,或者集成在公共或单独的硬件或软件组件内。
本公开中描述的技术也可以在包含指令的计算机可读介质(例如,计算机可读存储介质)中实现或编码。在计算机可读存储介质中嵌入或编码的指令可以促使可编程处理器或其他处理器执行该方法,例如,当执行指令时。计算机可读存储介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、硬盘、CD-ROM、软盘、磁带、磁介质、光学介质或其他计算机可读介质。
Claims (14)
1.一种在网络装置内使用网络功能虚拟化NFV背板处理分组的方法,所述方法包括以下步骤:
在所述网络装置内配置NFV背板,其中,所述网络装置包括:
机箱,包括一个或多个面向外部的物理端口;
转发微芯片,容纳在所述机箱中并物理地连接到所述机箱的所述一个或多个面向外部的物理端口中的每一个;
网络接口控制器NIC,容纳在所述机箱中并经由物理通信链路通信地耦合到所述机箱内的所述转发微芯片;以及
处理电路,容纳在所述机箱中,其中,所述处理电路被配置成执行多个软件实现的虚拟网络功能VNF,
其中,在所述网络装置内配置所述NFV背板包括:通过将相应的虚拟局域网VLAN标识符分配给所述转发微芯片的多个虚拟端口与针对多个VNF中的相应VNF配置的多个虚拟端口的对,来配置具有所述多个虚拟端口的所述转发微芯片,所述多个虚拟端口用于将VLAN标记的分组通过所述物理通信链路转发到所述NIC,
由所述转发微芯片经由所述机箱的所述一个或多个面向外部的物理端口接收第一分组;
由所述转发微芯片基于所述第一分组与所述多个VNF中的第一VNF相关联的确定,将第一VLAN标识符附加到所述第一分组,所述第一VLAN标识符被分配给所述对中的第一对,所述第一对是所述转发微芯片的所述多个虚拟端口中的第一虚拟端口与针对相应VNF配置的多个虚拟端口中的第二虚拟端口,所述第二虚拟端口针对所述第一VNF配置;
由所述转发微芯片经由所述第一虚拟端口和与所述NIC的所述物理通信链路将所述第一分组转发到所述NIC;
由所述NIC基于所述第一VLAN标识符将所述第一分组转发到用于所述第一VNF的所述第二虚拟端口,以供所述第一VNF处理;
由所述转发微芯片经由所述第一虚拟端口和与所述NIC的所述物理通信链路接收来自用于所述第一VNF的所述第二虚拟端口的第二分组,其中,所述第一VLAN标识符被附加于所述第二分组;
由所述转发微芯片从所述第二分组移除所述第一VLAN标识符;以及
由所述转发微芯片经由所述机箱的所述一个或多个面向外部的物理端口转发所述第二分组。
2.根据权利要求1所述的方法,其中,将相应的VLAN标识符分配给所述转发微芯片的所述多个虚拟端口与针对所述多个VNF中的相应VNF配置的多个虚拟端口的对包括:
对于针对所述多个VNF中的相应VNF配置的多个虚拟端口中的每一个,保留所述转发微芯片的所述多个虚拟端口中的对应的虚拟端口。
3.根据权利要求1至2中任一项所述的方法,其中,由所述转发微芯片将所述第一分组转发到所述NIC包括:由所述转发微芯片经由层2交换操作,从所述第一虚拟端口和与所述NIC的所述物理通信链路将所述第一分组转发到所述NIC。
4.根据权利要求1至2中任一项所述的方法,其中,由所述转发微芯片将所述第一分组转发到所述NIC包括:由所述转发微芯片经由层3路由操作,从所述第一虚拟端口和与所述NIC的所述物理通信链路将所述第一分组转发到所述NIC。
5.根据权利要求1至2中任一项所述的方法,
其中,所述第一VLAN标识符包括外部VLAN标识符,
其中,经由所述机箱的所述一个或多个面向外部的物理端口接收所述第一分组包括:接收第一分组,每个所述第一分组标记有内部VLAN标识符,并且
其中,由所述转发微芯片将所述第一分组转发到所述NIC包括:将标记有所述外部VLAN标识符和所述内部VLAN标识符的所述第一分组转发到所述NIC。
6.根据权利要求1所述的方法,
其中,所述第一VLAN标识符包括外部VLAN标识符,
其中,经由所述第一虚拟端口和与所述NIC的所述物理通信链路接收所述第二分组包括:接收第二分组,每个所述第二分组标记有内部VLAN标识符,
其中,从所述第二分组移除所述第一VLAN标识符包括:从所述第二分组移除所述外部VLAN标识符,并且
其中,经由所述机箱的所述一个或多个面向外部的物理端口转发所述第二分组包括:经由所述机箱的所述一个或多个面向外部的物理端口转发标记有所述内部VLAN标识符的所述第二分组。
7.一种转发微芯片,被配置用于插入网络装置的机箱内,所述转发微芯片包括:
物理链路,被配置为与所述机箱的一个或多个面向外部的物理端口中的每一个接口连接;以及
物理通信链路,被配置为与容纳在所述机箱中的网络接口控制器NIC通信地耦合,
其中,所述转发微芯片被配置为:
在所述网络装置内配置网络功能虚拟化NFV背板,其中,在所述网络装置内配置所述NFV背板包括:通过将虚拟局域网VLAN标识符分配给所述转发微芯片的多个虚拟端口与针对在所述网络装置的处理电路上执行的多个软件实现的虚拟网络功能VNF中的相应VNF配置的多个虚拟端口的对,来配置具有所述多个虚拟端口的所述转发微芯片,所述多个虚拟端口用于将VLAN标记的分组通过所述物理通信链路转发到所述NIC,经由所述机箱的一个或多个面向外部的物理端口接收第一分组;并且
基于所述第一分组与多个VNF中的第一VNF相关联的确定,将第一VLAN标识符附加到所述第一分组,所述第一VLAN标识符被分配给所述对中的第一对,所述第一对是所述转发微芯片的所述多个虚拟端口中的第一虚拟端口与针对相应VNF配置的多个虚拟端口中的第二虚拟端口,所述第二虚拟端口针对所述第一VNF配置;
经由所述第一虚拟端口和与所述NIC的所述物理通信链路将所述第一分组转发到所述NIC,以用于由所述NIC基于所述第一VLAN标识符将所述第一分组转发到用于所述第一VNF的所述第二虚拟端口,以供所述第一VNF处理;
经由所述第一虚拟端口和与所述NIC的所述物理通信链路接收来自用于所述第一VNF的所述第二虚拟端口的第二分组,
其中,所述第一VLAN标识符被附加于所述第二分组;
从所述第二分组移除所述第一VLAN标识符;以及
经由所述机箱的所述一个或多个面向外部的物理端口转发所述第二分组。
8.根据权利要求7所述的转发微芯片,其中,为了将相应的VLAN标识符分配给所述转发微芯片的所述多个虚拟端口与针对所述多个VNF中的相应VNF配置的多个虚拟端口的对,所述转发微芯片被配置为:
对于针对所述多个VNF中的相应VNF配置的多个虚拟端口中的每一个,保留所述转发微芯片的所述多个虚拟端口中的对应的虚拟端口。
9.根据权利要求7至8中任一项所述的转发微芯片,其中,为了将所述第一分组转发到所述NIC,所述转发微芯片被配置为:经由层2交换操作,从所述第一虚拟端口和与所述NIC的所述物理通信链路将所述第一分组转发到所述NIC。
10.根据权利要求7至8中任一项所述的转发微芯片,其中,为了将所述第一分组转发到所述NIC,所述转发微芯片被配置为:经由层3路由操作,从所述第一虚拟端口和与所述NIC的所述物理通信链路将所述第一分组转发到所述NIC。
11.根据权利要求7至8中任一项所述的转发微芯片,
其中,所述第一VLAN标识符包括外部VLAN标识符,
其中,为了经由所述机箱的所述一个或多个面向外部的物理端口接收所述第一分组,所述转发微芯片被配置为:接收第一分组,每个所述第一分组标记有内部VLAN标识符,并且
其中,为了将所述第一分组转发到所述NIC,所述转发微芯片被配置为:将标记有所述外部VLAN标识符和所述内部VLAN标识符的所述第一分组转发到所述NIC。
12.根据权利要求7所述的转发微芯片,
其中,所述第一VLAN标识符包括外部VLAN标识符,
其中,为了经由所述第一虚拟端口和与所述NIC的所述物理通信链路接收所述第二分组,所述转发微芯片被配置为:接收第二分组,每个所述第二分组标记有内部VLAN标识符,
其中,为了从所述第二分组移除所述第一VLAN标识符,所述转发微芯片被配置为:从所述第二分组移除所述外部VLAN标识符,并且
其中,为了经由所述机箱的所述一个或多个面向外部的物理端口转发所述第二分组,所述转发微芯片被配置为:经由所述机箱的所述一个或多个面向外部的物理端口转发标记有所述内部VLAN标识符的所述第二分组。
13.一种网络装置,被配置为使用网络装置内的网络功能虚拟化NFV背板来处理分组,所述网络装置包括:
机箱,包括一个或多个面向外部的物理端口;
转发微芯片,容纳在所述机箱中并物理地连接到所述机箱的所述一个或多个面向外部的物理端口中的每一个;
网络接口控制器NIC,容纳在所述机箱中并经由物理通信链路通信地耦合到所述机箱内的所述转发微芯片;以及
处理电路,容纳在所述机箱中,其中,所述处理电路被配置成执行多个软件实现的虚拟网络功能VNF,
其中,所述网络装置被配置为在所述网络装置内配置所述NFV背板,
其中,为了在所述网络装置内配置所述NFV背板,所述网络装置被配置为:通过将相应的虚拟局域网VLAN标识符分配给所述转发微芯片的多个虚拟端口与针对多个VNF中的相应VNF配置的多个虚拟端口的对,来配置具有所述多个虚拟端口的所述转发微芯片,所述多个虚拟端口用于将VLAN标记的分组通过所述物理通信链路转发到所述NIC,
其中,所述转发微芯片被配置为:
经由所述机箱的所述一个或多个面向外部的物理端口接收分组,每个所述分组标记有内部VLAN标识符;
基于所述分组与所述多个VNF中的第一VNF相关联的确定,将外部VLAN标识符附加到所述分组,所述外部VLAN标识符被分配给所述对中的第一对,所述第一对是所述转发微芯片的所述多个虚拟端口中的第一虚拟端口与针对相应VNF配置的多个虚拟端口中的第二虚拟端口,所述第二虚拟端口针对所述第一VNF配置;并且
经由所述第一虚拟端口和与所述NIC的所述物理通信链路将标记有所述外部VLAN标识符和所述内部VLAN标识符的所述分组转发到所述NIC。
14.根据权利要求13所述的网络装置,其中,为了将相应的VLAN标识符分配给所述转发微芯片的所述多个虚拟端口与针对所述多个VNF中的相应VNF配置的多个虚拟端口的对,所述转发微芯片被配置为:
对于针对所述多个VNF中的相应VNF配置的多个虚拟端口中的每一个,保留所述转发微芯片的所述多个虚拟端口中的对应的虚拟端口。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/370,331 | 2019-03-29 | ||
US16/370,331 US11283732B2 (en) | 2019-03-29 | 2019-03-29 | Network functions virtualization (NFV) backplane on forwarding microchip |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111756658A CN111756658A (zh) | 2020-10-09 |
CN111756658B true CN111756658B (zh) | 2022-06-21 |
Family
ID=67296934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910936065.XA Active CN111756658B (zh) | 2019-03-29 | 2019-09-29 | 转发微芯片上的网络功能虚拟化(nfv)背板 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11283732B2 (zh) |
EP (1) | EP3716551A1 (zh) |
CN (1) | CN111756658B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11246087B2 (en) | 2019-02-22 | 2022-02-08 | Vmware, Inc. | Stateful network slice selection using slice selector as connection termination proxy |
US11024144B2 (en) | 2019-02-22 | 2021-06-01 | Vmware, Inc. | Redirecting traffic from mobile device to initial slice selector for connection |
US11483762B2 (en) | 2019-02-22 | 2022-10-25 | Vmware, Inc. | Virtual service networks |
US11146964B2 (en) | 2019-02-22 | 2021-10-12 | Vmware, Inc. | Hierarchical network slice selection |
US11018973B2 (en) * | 2019-05-31 | 2021-05-25 | Microsoft Technology Licensing, Llc | Distributed sonic fabric chassis |
US11522764B2 (en) * | 2019-08-26 | 2022-12-06 | Vmware, Inc. | Forwarding element with physical and virtual data planes |
CN112543137A (zh) * | 2020-11-30 | 2021-03-23 | 中国电子科技集团公司第五十四研究所 | 基于半虚拟化和ovs-dpdk的虚拟机网络加速系统 |
US11611512B2 (en) * | 2020-12-30 | 2023-03-21 | Arris Enterprises Llc | System to dynamically detect and enhance classifiers for low latency traffic |
US11836551B2 (en) | 2021-03-05 | 2023-12-05 | Vmware, Inc. | Active and standby RICs |
US20220283839A1 (en) | 2021-03-05 | 2022-09-08 | Vmware, Inc. | Direct access to hardware accelerator in an o-ran system |
US11888736B2 (en) * | 2021-07-14 | 2024-01-30 | Cisco Technology, Inc. | Service chaining in fabric networks |
CN114726744B (zh) * | 2022-03-30 | 2023-11-14 | 新华三技术有限公司 | 一种仿真网络中虚拟端口上线方法及装置 |
US11991097B2 (en) * | 2022-06-17 | 2024-05-21 | Juniper Networks, Inc. | Hybrid data plane for a containerized router |
US20240205697A1 (en) | 2022-12-19 | 2024-06-20 | VMware LLC | Differential management for updated configurations in a ran system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104584491A (zh) * | 2012-08-28 | 2015-04-29 | 阿尔卡特朗讯公司 | 提供分布式虚拟路由和交换(dvrs)的系统和方法 |
CN105247826A (zh) * | 2013-01-11 | 2016-01-13 | 华为技术有限公司 | 网络设备的网络功能虚拟化 |
CN105282135A (zh) * | 2014-06-23 | 2016-01-27 | 英特尔公司 | 采用软件定义联网中的虚拟机和虚拟化容器的本地服务链接 |
CN107278362A (zh) * | 2016-11-09 | 2017-10-20 | 华为技术有限公司 | 云计算系统中报文处理的方法、主机和系统 |
CN107566440A (zh) * | 2016-06-30 | 2018-01-09 | 丛林网络公司 | 软件定义的网络环境中服务的自动发现和自动扩缩 |
CN107924226A (zh) * | 2015-07-28 | 2018-04-17 | 华为技术有限公司 | 用于多接口虚拟网络功能的单个网络接口 |
CN108259216A (zh) * | 2016-12-29 | 2018-07-06 | 丛林网络公司 | 网络服务应用和客户意识的虚拟化网络功能放置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU6361901A (en) * | 1999-02-23 | 2001-10-18 | Alcatel Internetworking, Inc. | Multi-service network switch |
US6988150B2 (en) * | 2002-05-06 | 2006-01-17 | Todd Matters | System and method for eventless detection of newly delivered variable length messages from a system area network |
US9426095B2 (en) | 2008-08-28 | 2016-08-23 | International Business Machines Corporation | Apparatus and method of switching packets between virtual ports |
US8537860B2 (en) * | 2009-11-03 | 2013-09-17 | International Business Machines Corporation | Apparatus for switching traffic between virtual machines |
US8472447B2 (en) * | 2010-08-04 | 2013-06-25 | Alcatel Lucent | IP multicast snooping and routing with multi-chassis link aggregation |
US8635614B2 (en) * | 2011-05-14 | 2014-01-21 | International Business Machines Corporation | Method for providing location independent dynamic port mirroring on distributed virtual switches |
US9064216B2 (en) | 2012-06-06 | 2015-06-23 | Juniper Networks, Inc. | Identifying likely faulty components in a distributed system |
US9059868B2 (en) * | 2012-06-28 | 2015-06-16 | Dell Products, Lp | System and method for associating VLANs with virtual switch ports |
EP2932659A4 (en) * | 2012-12-12 | 2016-05-18 | Ericsson Telefon Ab L M | METHOD AND DEVICE FOR VLAN INTERFACE ROUTING |
US9755991B2 (en) * | 2014-06-11 | 2017-09-05 | International Business Machines Corporation | Live partition mobility with shared persistent reservations |
US10432532B2 (en) * | 2016-07-12 | 2019-10-01 | Cisco Technology, Inc. | Dynamically pinning micro-service to uplink port |
EP3340064B1 (en) * | 2016-08-03 | 2020-12-02 | Huawei Technologies Co., Ltd. | Network interface card, computer device and data packet processing method |
US11494212B2 (en) * | 2018-09-27 | 2022-11-08 | Intel Corporation | Technologies for adaptive platform resource assignment |
-
2019
- 2019-03-29 US US16/370,331 patent/US11283732B2/en active Active
- 2019-06-24 EP EP19182053.9A patent/EP3716551A1/en active Pending
- 2019-09-29 CN CN201910936065.XA patent/CN111756658B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104584491A (zh) * | 2012-08-28 | 2015-04-29 | 阿尔卡特朗讯公司 | 提供分布式虚拟路由和交换(dvrs)的系统和方法 |
CN105247826A (zh) * | 2013-01-11 | 2016-01-13 | 华为技术有限公司 | 网络设备的网络功能虚拟化 |
CN105282135A (zh) * | 2014-06-23 | 2016-01-27 | 英特尔公司 | 采用软件定义联网中的虚拟机和虚拟化容器的本地服务链接 |
CN107924226A (zh) * | 2015-07-28 | 2018-04-17 | 华为技术有限公司 | 用于多接口虚拟网络功能的单个网络接口 |
CN107566440A (zh) * | 2016-06-30 | 2018-01-09 | 丛林网络公司 | 软件定义的网络环境中服务的自动发现和自动扩缩 |
CN107278362A (zh) * | 2016-11-09 | 2017-10-20 | 华为技术有限公司 | 云计算系统中报文处理的方法、主机和系统 |
CN108259216A (zh) * | 2016-12-29 | 2018-07-06 | 丛林网络公司 | 网络服务应用和客户意识的虚拟化网络功能放置 |
Also Published As
Publication number | Publication date |
---|---|
US11283732B2 (en) | 2022-03-22 |
EP3716551A1 (en) | 2020-09-30 |
CN111756658A (zh) | 2020-10-09 |
US20200314029A1 (en) | 2020-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111756658B (zh) | 转发微芯片上的网络功能虚拟化(nfv)背板 | |
US11115465B2 (en) | Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table | |
CN114342336B (zh) | 在数据平面电路中执行基于切片的操作 | |
US10547508B1 (en) | Network services using pools of pre-configured virtualized network functions and service chains | |
US10491516B2 (en) | Packet communication between logical networks and public cloud service providers native networks using a single network interface and a single routing table | |
US10177936B2 (en) | Quality of service (QoS) for multi-tenant-aware overlay virtual networks | |
EP3716063A1 (en) | Scalable multi-tenant underlay network supporting multi-tenant overlay network | |
US9544248B2 (en) | Overlay network capable of supporting storage area network (SAN) traffic | |
Bakshi | Considerations for software defined networking (SDN): Approaches and use cases | |
CN109362085B (zh) | 通过openflow数据平面在云计算机中实现epc | |
EP3228053B1 (en) | Enf selection for nfvi | |
CN109889443B (zh) | 云计算系统和在云计算系统中实现演进分组核心(epc)的控制平面的方法 | |
US20170346700A1 (en) | Overlay network movement operations | |
US20140068703A1 (en) | System and method providing policy based data center network automation | |
BR112014001861B1 (pt) | Método para implementar um protocolo de túnel de serviço geral de rádio por pacotes, e, sistema computacional em nuvem para gerenciar a implementação de um protocolo de túnel de serviço geral de rádio por pacotes | |
WO2019040720A1 (en) | ACCESS TO END POINTS IN LOGIC NETWORKS AND NATIVE NETWORKS OF PUBLIC CLOUD SERVICE PROVIDERS USING ONLY ONE NETWORK INTERFACE AND ONE ROUTING TABLE | |
US11671358B2 (en) | Disambiguating traffic in networking environments with multiple virtual routing and forwarding (VRF) logical routers | |
US20210051077A1 (en) | Communication system, communication apparatus, method, and program | |
US11902160B2 (en) | EVPN host routed bridging (HRB) and EVPN cloud native data center | |
US10469402B2 (en) | Dynamic endpoint group binding for cross-tenant resource sharing in software defined networks | |
Bakshi et al. | Cloud network and I/O virtualization | |
WO2014173116A1 (zh) | 一种虚拟网络管理方法和系统 | |
WO2014161315A1 (zh) | 基于公共信息模型的网络管理方法和系统 |
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 |