CN108463989B - 跨多个子网络的业务功能链接 - Google Patents
跨多个子网络的业务功能链接 Download PDFInfo
- Publication number
- CN108463989B CN108463989B CN201780005588.1A CN201780005588A CN108463989B CN 108463989 B CN108463989 B CN 108463989B CN 201780005588 A CN201780005588 A CN 201780005588A CN 108463989 B CN108463989 B CN 108463989B
- Authority
- CN
- China
- Prior art keywords
- network
- virtual
- sub
- bridge
- switching
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- 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
- 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
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Abstract
一种用于跨子网络的业务功能链接的方法包括:在虚拟交换集成网桥处,从位于业务功能链(service function chain,SFC)中并且位于第一子网络上的第一业务功能(service function,SF)接收报文;确定不同子网络的所述SFC中的下一个SF;以及将所述接收到的报文直接从所述虚拟交换集成网桥发送至所述下一个SF。
Description
相关申请案交叉申请
本申请要求2017年1月23日递交的发明名称为“跨多个子网络的业务功能链接(Service Function Chaining Across Multiple Subnetworks)”的第15/412,282号美国非临时专利申请案的在先申请优先权,该在先申请又要求2016年1月25日递交的发明名称为“使用虚拟交换路由器旁路的跨多个子网络的业务功能链接(Service FunctionChaining Across Multiple Subnetworks Using Virtual Switch Router Bypass)”的第62/286,893号美国临时专利申请案的在先申请优先权。这两个申请中的每一个的在先申请的全部内容均以引用的方式并入本文本中。
技术领域
本发明大体上涉及用于在业务功能链中处理数据的系统和方法,且在具体实施例中,涉及当在业务链中的业务功能之间传递数据报文时绕过虚拟路由器的系统和方法。
背景技术
作为一种动态创建能够应用到虚拟网络环境中的流量流的一系列虚拟业务功能(service function,SF)的手段,业务链接正在被网络行业广泛采用。在虚拟网络环境中,每个虚拟业务功能可部署在数据中心的多个物理节点中的一个上。可以创建指定一系列端口对的业务链,每个端口对均具有业务功能的入端口和出端口。每个节点均具有一个虚拟机监视器,其托管实现业务功能的虚拟机(virtual machine,VM);以及一个虚拟交换机,其将流量引导至各VM。
可能存在业务功能部署在不同子网络上的情况。在虚拟网络环境中,这些子网络通过虚拟路由器互相连接。
发明内容
本文描述了用于增加业务链的流量吞吐量的网络设备、方法和系统。
在一实施例中,网络设备包括:一个或多个处理器;以及非瞬时性计算机可读介质,其与所述一个或多个处理器相连且存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:在虚拟交换集成网桥处,从位于业务功能链(servicefunction chain,SFC)中并且位于第一子网络上的业务功能(service function,SF)接收报文;确定所述SFC中的下一个SF,其中,所述下一个SF位于第二子网络上;将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述下一个SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual network identifier,VNI)更改为所述第二子网络的VNI;以及将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述下一个SF。
在一些实施例中,所述非瞬时性计算机可读介质上还存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:追踪与所述虚拟交换集成网桥相连的端口;以及将交换规则添加至所述虚拟交换集成网桥,所述交换规则指示所述虚拟交换集成网桥将所述更改后的报文从所述SF的出端口引导至所述下一个SF的入端口。
在另一实施例中,网络设备包括:一个或多个处理器;以及非瞬时性计算机可读介质,其与所述一个或多个处理器相连且存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:在虚拟交换集成网桥处,从位于第一子网络上的源虚拟机(virtual machine,VM)接收报文;确定位于第二子网络上的业务功能(service function,SF);将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual networkidentifier,VNI)更改为所述第二子网络的VNI;以及将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述SF。
在一些实施例中,所述非瞬时性计算机可读介质上还存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:追踪与所述虚拟交换集成网桥相连的端口;以及将交换规则添加至所述虚拟交换集成网桥,其中,所述交换规则用于指示所述虚拟交换集成网桥将所述更改后的报文从所述源VM的出端口引导至所述SF的入端口。所述交换规则还用于指示所述虚拟交换集成网桥将所述报文的源MAC地址更改为所述第二子网络上的虚拟路由器的接口的MAC地址。
在一示例实施例中,一种方法包括:在虚拟交换集成网桥处,从位于业务功能链(service function chain,SFC)中并且位于第一子网络上的第一业务功能(servicefunction,SF)接收报文;确定所述SFC中的下一个SF,其中,所述下一个SF位于第二子网络上;将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述下一个SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual networkidentifier,VNI)更改为所述第二子网络的VNI;以及将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述下一个SF。
在另一实施例中,一种网络设备包括:接收单元,其在虚拟交换集成网桥处,从位于业务功能链(service function chain,SFC)中并且位于第一子网络上的第一业务功能(service function,SF)接收报文;确定单元,其确定所述SFC中的下一个SF,其中,所述下一个SF位于第二子网络上;更改单元,其将所述报文的目标媒体接入控制(media accesscontrol,MAC)地址更改为所述下一个SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual network identifier,VNI)更改为所述第二子网络的VNI;以及发送单元,其将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述下一个SF。
在一示例实施例中,一种方法包括:在虚拟交换集成网桥处,从位于第一子网络上的源虚拟机(virtual machine,VM)接收报文;确定位于第二子网络上的业务功能(servicefunction,SF);将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtualnetwork identifier,VNI)更改为所述第二子网络的VNI;以及将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述SF。
在另一实施例中,一种网络设备包括:接收单元,其在虚拟交换集成网桥处,从位于第一子网络上的源虚拟机(virtual machine,VM)接收报文;确定单元,其确定第二子网络上的业务功能(service function,SF);更改单元,其将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual network identifier,VNI)更改为所述第二子网络的VNI;以及发送单元,其将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述SF。
根据一些实施例,网络系统包括具有业务功能链(service function chain,SFC)中的第一业务功能(service function,SF)的第一子网络、具有SFC中的下一个SF的第二子网络,以及连接至所述第一子网络和所述第二子网络的虚拟交换集成网桥。所述虚拟交换集成网桥用于从所述第一SF接收报文,确定所述SFC中的所述下一个SF,并根据一个或多个交换规则将所述接收到的报文直接发送至所述下一个SF。
这样,业务链流量可以绕过虚拟路由器并直接从一个SF发送至下一个SF,或直接从VM发送至SF。这样,所述网络设备、方法和系统增加了业务链的流量吞吐量。
附图说明
为了更完整地理解本发明及其优点,现在参考下文结合附图进行的描述,其中:
图1为根据一些实施例的示出业务功能链(service function chain,SFC)编排器和OVS代理的逻辑图;
图2为根据一些实施例的示出具有通过三个虚拟路由器跨越四个子网络的两个业务功能的SFC的逻辑图;
图3为根据一些实施例的示出通过虚拟路由器在不同子网络中的业务功能之间进行路由的业务链流量的逻辑图;
图4为根据一些实施例的示出将流量直接从一个业务功能引导至另一个子网络中的下一个业务功能的路由器旁路的逻辑图;
图5为根据一些实施例的示出将流量直接从一个业务功能(service function,SF)引导至另一个子网络中的下一个业务功能的路由器旁路的逻辑图,其中,该下一个SF被托管在单独的计算节点上;
图6为根据一些实施例的示出在源VM和第一SF位于不同子网络的情况下,将流量从SFC的入口分类器引导至SFC中的第一SF的路由器旁路的逻辑图;
图7为根据一些实施例的示出在源VM和第一SF位于不同子网络的情况下,将流量从SFC的入口分类器引导至SFC中的第一SF的路由器旁路的逻辑图,其中,第一SF被托管在单独的计算节点上;以及
图8为可以用于实施各实施例的处理系统800的框图。
具体实施方式
下文详细论述当前实例实施例的制作和使用。
子网络(也称为子网)通常在虚拟网络环境中通过虚拟路由器互连。业务功能托管在计算节点上,而虚拟路由器通常实施在单独的网络节点上。业务链中的流量必须发送至网络节点以到达虚拟路由器,然后再返回至下一个业务功能所驻留的计算节点。
图1为示出业务功能链(service function chain,SFC)编排器102、开放式虚拟交换机(open virtual switch,OVS)代理104和开放式虚拟交换机(open virtual switch,OVS)106的逻辑图。SFC编排器102可包括SFC驱动管理器1022、SFC通用驱动应用程序接口(Applicationprogram interface,API)1024和OVS驱动1026。SFC编排器102创建SFC,并与OVS代理104通信,其中,OVS代理104驻留在存在业务功能的各计算节点上。虚拟交换机106用流规则(也称为切换规则或OVS规则)来编程,以将报文从组成业务链的业务功能的出端口引导至入端口。OVS 106作为虚拟交换机广泛应用于虚拟网络数据中心中。业务功能与OVS 106相连。OVS代理104在OVS 106上建立流规则,以将流量引导至SFC中的各业务功能。
图2为示出具有通过三个虚拟路由器跨越四个子网络的两个业务功能的SFC的逻辑图。业务链流量通过虚拟路由器在不同子网络中的业务功能之间进行路由。因此,具有跨越四个子网络的两个业务功能的SFC经过三个虚拟路由器:客户端虚拟机(virtualmachine,VM)与第一业务功能SF1之间的第一虚拟路由器、第一业务功能SF1与第二业务功能SF2之间的第二虚拟路由器,以及第二业务功能SF2与服务器VM之间的第三虚拟路由器。
图3为示出通过虚拟路由器在不同子网络中的业务功能之间进行路由的业务链流量的逻辑图。业务功能被附加到OVS集成网桥,OVS集成网桥将业务链流量从一个业务功能引导至SFC中的下一个业务功能。业务链流量通过虚拟路由器在不同子网络中的业务功能之间进行路由。
将来自第一SF 302的报文发送至开放式虚拟交换机(open virtual switch,OVS)集成网桥310,其确定下一个SF 304是一个不同的子网络,因此将报文发送至隧道网桥312以经由虚拟可扩展LAN(virtual extensible LAN,VxLAN)或通用路由封装(genericrouting encapsulation,GRE)隧道传输到托管虚拟路由器314的网络节点。虚拟路由器314将报文路由至下一子网络308中的下一个SF 304,并将报文传送至下一个SF 304。此外,如果存在两个以上的子网络,则对虚拟路由器进行编程以将链路流量引导至正确的子网络。这导致额外的延迟,并导致网络节点上存在潜在瓶颈。
根据一些实施例,当业务功能存在于多个子网络上时,OVS集成网桥避免通过虚拟路由器来引导业务链流量。在一些实施例中,当业务链的业务功能部署在不同的子网络上时,OVS集成网桥可绕过虚拟路由器。在这一实施例中,在不同子网络上的业务功能之间传送的流量不会经过虚拟路由器。通过使用OVS集成网桥,业务链流量可以绕过虚拟路由器并直接从一个SF发送至下一个SF,或直接从VM发送至SF。因此,OVS集成网桥避免了必须在虚拟路由器上增加复杂的SFC引导功能性,增加了业务链的流量吞吐量,减少了通过业务链的流量延迟,避免了托管虚拟路由器的节点处的瓶颈,并有效地将流量负载分发至网络中的多个节点,而不是单个节点上。
到达下一个下游子网络中的业务功能端口的报文看起来是来自于连接上游子网络与下游子网络的虚拟路由器。发送至下游子网络的报文的源以太网地址或媒体接入控制(media access control,MAC)地址必须是将虚拟路由器连接至下游子网络的出接口的以太网地址。对报文进行标记,以确保不同租户虚拟网络相互隔离。此外,在一些实施例中,通过将数据中心中的不同物理节点互连的隧道来引导报文。
通过在OVS上的L2转发桥上建立的流规则或切换规则来引导流量。在一些实施例中,在Linux命名空间中实施的虚拟路由器上执行子网络间路由。OVS流规则控制路由器旁路的操作。
图4为根据一些实施例的示出将流量直接从一个业务功能(例如SF1)引导至另一个子网络中的下一个业务功能(例如SF2)的路由器旁路的逻辑图。路由器旁路允许将流量直接从一个业务功能引导至另一个子网络中的下一个业务功能,而不需要经过虚拟路由器。路由器旁路可以与虚拟路由器一起使用,虚拟路由器将报文路由至OVS集成网桥外部的子网络。将来自第一SF的报文发送至OVS集成网桥,其确定下一个SF在一个不同的子网络上,因此将报文直接发送至下一个SF。第一SF和第二SF可以托管在相同的计算节点上,或托管在不同的计算节点上,这在实施例中无限制。
OVS代理追踪连接至虚拟交换集成网桥的端口,以便OVS代理了解将业务功能连接至OVS集成网桥的所有端口。OVS代理能够将OVS规则添加到集成网桥,以将报文从一个SF的出端口直接引导至下一个SF的入端口。建立在集成网桥上的OVS规则设置报文的源以太网地址,使得它们看起来是来自虚拟路由器。一旦链路的最后一个SF上存在SFC流量,就使用通过虚拟路由器进行的常规路由将流量传送至其最终目的地。
例如,源VM需通过业务功能SF 402和SF 404将流量发送至目标VM。SF 402位于虚拟网络标识符(virtual network identifier,VNI)为10的第一子网络1.1.1.0/24 406上。SF 402的IP地址为1.1.1.10/32,MAC地址为MAC-SF1。SF 404位于VNI为20的第二子网络1.1.2.0/24408上。SF 404的IP地址为1.1.2.10/32,MAC地址为MAC-SF2。目标VM位于VNI为30的第三子网络1.1.3.0/24上。目标VM的IP地址为1.1.3.10,MAC地址为MAC-VM。MAR-VR1可表示子网络1.1.1.0/24上的虚拟路由器的接口的MAC地址(也称为子网络1.1.1.0/24的虚拟路由器MAC地址或子网络1.1.1.0/24的虚拟路由器接口的MAC地址)。MAC-VR2可表示子网络1.1.2.0/24上的虚拟路由器的接口的MAC地址(也称为子网络1.1.2.0/24的虚拟路由器MAC地址或子网络1.1.2.0/24的虚拟路由器接口的MAC地址)。MAC-VR3可表示子网络1.1.3.0/24上的虚拟路由器的接口的MAC地址(也称为子网络1.1.3.0/24的虚拟路由器MAC地址或子网络1.1.3.0/24的虚拟路由器接口的MAC地址)。
(1)来自源VM的报文到达第一SF 402。第一SF 402接收报文,并对其执行功能。然后,第一SF 402将报文回发至第一子网络406的OVS集成网桥410。报文的目标MAC地址包括MAC-VR1,报文的目标IP地址包括1.1.3.10。
(2)OVS集成网桥410接收报文。OVS集成网桥410查询本地存储的OVS规则,并了解到报文必须经过第二SF 404。OVS规则从OVS代理获得。OVS集成网桥410将目标MAC(DestMAC)从MAC-VR1更改为MAC-SF2,将VNI从10更改为20,将源MAC从MAC-SF1更改为MAC-VR2。然后,OVS集成网桥410将更改后的报文直接发送至第二SF 404,以便绕过虚拟路由器。
(3)第二SF 404接收更改后的报文,并对其执行功能。然后,第二SF 404将报文回发至OVS集成网桥410。
(4)然后,OVS集成网桥410将报文发送至目标VM。由于路径上不再有业务功能,所以OVS集成网桥410将报文发送至驻留在网络节点上的虚拟路由器。然后,虚拟路由器将报文路由至目标VM。如果业务功能链中还有其它业务功能,则OVS集成网桥410将报文发送至其它业务功能。
目标VM将IP报文发送至源VM的过程与上述过程类似,此处不再赘述。
图5为根据一些实施例的示出在第一SF和第二SF在不同子网络的情况下,将流量从第一SF的入口分类器引导至SFC中的第二SF的路由器旁路的逻辑图。图5的应用场景与图4所示实施例的应用场景类似,除了在图5中第一SF和第二SF托管在不同的计算节点上。以下详细描述交互过程。分类器可基于一个或多个输入对网络流量进行分类,例如,输入端口、源MAC地址、目标MAC地址、源IP地址、目标IP地址、协议(TCP、UDP等)、第四层(Layer 4,L4)源端口和/或L4目标端口等。
(1)例如,源VM需通过业务功能502和504将流量发送至目标VM。来自源VM的报文到达第一SF 502。第一SF 502接收报文,并对其执行功能。然后,第一SF 502将报文发至第一子网络506的OVS集成网桥510。报文的目标MAC地址包括MAC-VR1,报文的目标IP地址包括1.1.3.10。
(2)OVS集成网桥510接收报文。OVS集成网桥510查询本地存储的OVS规则,了解到报文必须经过第二S F504。OVS规则从OVS代理获得。OVS集成网桥510将目标MAC(DestMAC)从MAC-VR1更改为MAC-SF2,将VNI从10更改为20,将源MAC从MAC-SF1更改为MAC-VR2。然后,OVS集成网桥510将更改后的报文发送至第一子网络的OVS隧道网桥512。
(3)OVS隧道网桥512通过IP报文的VxLAN封装将更改后的报文直接发送至第二子网络508的OVS隧道网桥514,以便绕过虚拟路由器518。
(4)OVS隧道网桥514通过第二子网络的OVS集成网桥516将更改后的报文发送至第二SF 504。
(5)第二SF 504接收更改后的报文,并对其执行功能。然后,第二SF 504将报文回发至OVS集成网桥516。
(6)然后,OVS集成网桥516将报文发送至目标VM。由于路径上不再有业务功能,所以OVS集成网桥516将报文发送至驻留在网络节点上的虚拟路由器518。然后,虚拟路由器518将报文路由至目标VM。如果业务功能链中还有其它业务功能,则OVS集成网桥516将报文发送至其它业务功能。
目标VM将IP报文发送至源VM的过程与上述过程类似,此处不再赘述。
图6为根据一些实施例的示出在源VM和第一SF位于不同子网络的情况下,将流量从源VM的入口分类器引导至SFC中的第一SF的路由器旁路的逻辑图。在源VM和第一SF位于不同子网络的情况下,路由器旁路可以用于将流量从VM的入口分类器引导至SFC中的第一SF。一旦链路的最后一个SF上存在SFC流量,就使用通过虚拟路由器进行的常规路由将流量传送至其最终目的地。源VM和第一SF可以托管在一个计算节点上,或托管在不同的计算节点上,这在实施例中无限制。
下文描述根据一实施例在VM之间进行的通信。例如,源VM需通过业务功能(service function,SF)将流量发送至目标VM。源VM位于虚拟网络标识符(virtualnetwork identifier,VNI)为10的第一子网络1.1.1.0/24上。源VM的IP地址为1.1.1.10/32,MAC地址为MAC-SRC。SF位于VNI为20的第二子网络1.1.2.0/24上。SF的IP地址为1.1.2.10/32,MAC地址为MAC-SF。目标VM位于VNI为30的第三子网络1.1.3.0/24上。目标VM的IP地址为1.1.3.10,MAC地址为MAC-DST。MAC-VR1可表示子网络1.1.1.0/24上的虚拟路由器的接口的MAC地址(也称为子网络1.1.1.0/24的虚拟路由器MAC地址或子网络1.1.1.0/24的虚拟路由器接口的MAC地址)。MAC-VR2可表示子网络1.1.2.0/24上的虚拟路由器的接口的MAC地址(也称为子网络1.1.2.0/24的虚拟路由器MAC地址或子网络1.1.2.0/24的虚拟路由器接口的MAC地址)。MAC-VR3可表示子网络1.1.3.0/24上的虚拟路由器的接口的MAC地址(也称为子网络1.1.3.0/24的虚拟路由器MAC地址或子网络1.1.3.0/24的虚拟路由器接口的MAC地址)。
(1)源VM需与目标VM通信。来自源VM 602的报文到达第一子网络606的OVS集成网桥610。报文的目标MAC地址包括MAC-VR1,报文的目标IP地址包括1.1.3.10。
(2)OVS集成网桥610接收报文。OVS集成网桥610查询本地存储的OVS规则,了解到报文必须经过业务功能604。OVS规则从OVS代理获得。OVS集成网桥610将目标MAC(DestMAC)从MAC-VR1更改为MAC-SF,将VNI从10更改为20,将源MAC从MAC-SRC更改为MAC-VR2。然后,OVS集成网桥610将更改后的报文直接发送至业务功能604,以便绕过虚拟路由器。
(3)业务功能604接收更改后的报文,并对其执行功能。然后,业务功能604将报文回发至OVS集成网桥610。
(4)然后,OVS集成网桥610将报文发送至目标VM。由于路径上不再有业务功能,所以OVS集成网桥610将报文发送至驻留在网络节点上的虚拟路由器。然后,虚拟路由器将报文路由至目标VM。如果业务功能链中还有其它业务功能,则OVS集成网桥610将报文发送至其它业务功能。
目标VM将IP报文发送至源VM的过程与上述过程类似,此处不再赘述。
图7为根据一些实施例的示出在源VM和第一SF位于不同子网络的情况下,将流量从源VM的入口分类器引导至SFC中的第一SF的路由器旁路的逻辑图。图7的应用场景与图6所示实施例的应用场景类似,除了在图7中,源VM和第一SF托管在不同的计算节点上。以下详细描述交互过程。
(1)源VM 702需通过业务功能SF 704将流量发送至目标VM。来自源VM 702的报文到达第一子网络706的OVS集成网桥710。报文的目标MAC地址包括MAC-VR1,报文的目标IP地址包括1.1.3.10。
(2)OVS集成网桥710接收报文。OVS集成网桥710查询本地存储的OVS规则,了解到报文必须经过业务功能704。OVS规则从OVS代理获得。OVS集成网桥710将目标MAC(DestMAC)从MAC-VR1更改为MAC-SF,将VNI从10更改为20,将源MAC从MAC-SRC更改为MAC-VR2。然后,OVS集成网桥710将更改后的报文发送至第一子网络的OVS隧道网桥712。
(3)OVS隧道网桥712通过IP报文的VxLAN封装将更改后的报文直接发送至第二子网络706的OVS隧道网桥714,以便绕过虚拟路由器718。
(4)OVS隧道网桥714通过第二子网络的OVS集成网桥716将更改后的报文发送至业务功能704。
(5)业务功能704接收更改后的报文,并对其执行功能。然后,业务功能704将报文回发至OVS集成网桥716。
(6)然后,OVS集成网桥716将报文发送至目标VM。由于路径上不再有业务功能,所以OVS集成网桥716将报文发送至驻留在网络节点上的虚拟路由器718。然后,虚拟路由器718将报文路由至目标VM。如果业务功能链中还有其它业务功能,则OVS集成网桥716将报文发送至其它业务功能。
目标VM将IP报文发送至源VM的过程与上述过程类似,此处不再赘述。
根据一些实施例,网络系统包括具有业务功能链(service function chain,SFC)中的第一业务功能(service function,SF)的第一子网络、具有SFC中的下一个SF的第二子网络,以及连接至第一子网络和第二子网络的虚拟交换集成网桥。虚拟交换集成网桥用于从第一SF接收报文,确定SFC中的下一个SF,并根据一个或多个交换规则将接收到的报文直接发送至下一个SF。
图8为可以用于实施各实施例的处理系统800的框图。处理系统800可以是服务器、路由器、计算机、基站、网络控制器或其它网络设备的一部分。此外,处理系统可以托管所述元件中的一个或多个。例如,OVS集成网桥和OVS代理可部署在相同的处理系统800上,或者,集成网桥和OVS代理可部署在不同的处理系统800上,或者,OVS集成网桥和OVS代理各自可跨多个处理系统800部署。特定设备使用所有所示的组件,或者只使用组件的一个子集。不同设备的集成度会有所不同。此外,设备可包含组件的多个实例,例如多个处理单元、处理器、存储器、发射器、接收器等。在一些实施例中,处理系统800具有配备了一个或多个输入/输出设备,例如扬声器、麦克风、鼠标、触摸屏、按键、键盘、打印机、显示器等的处理单元801。处理单元801可包括连接至总线的中央处理器(central processing unit,CPU)810、存储器820、大容量存储器830、视频适配器840以及I/O接口860。总线为任意类型的若干总线架构中的一个或多个,包括存储器总线或存储器控制器、外设总线、视频总线等。
CPU 810可具有任何类型的电子数据处理器。存储器820可具有或可以是任意类型的系统存储器,例如静态随机存取存储器(static random access memory,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步DRAM(synchronous DRAM,SDRAM)、只读存储器(read-only memory,ROM)或其组合等。在一实施例中,存储器820可包括在开机时使用的ROM以及在执行程序时用来存储程序和数据的DRAM。在实施例中,存储器820是非瞬时性的。大容量存储设备830包括任意类型的存储设备,其用于存储数据、程序和其它信息,并使这些数据、程序和其它信息可通过总线接入。大容量存储设备830包括例如固态驱动器、硬盘驱动器、磁盘驱动器、光盘驱动器等中的一个或多个。
视频适配器840和I/O接口860提供接口,以将外部输入和输出设备耦合到处理单元。如图所示,输入和输出设备的示例包括耦合至视频适配器840的显示器890和耦合至I/O接口860的鼠标/键盘/打印机870的任意组合。其它设备可以耦合至处理单元801,且可以利用更多或更少的接口卡。例如,串行接口卡(未示出)可以用于为打印机提供串行接口。
处理单元801还包括一个或多个网络接口850,其包括诸如以太网电缆等有线链路,和/或到接入节点或一个或多个网络880的无线链路。网络接口850允许处理单元801通过网络880与远程单元通信。例如,网络接口850可通过一个或多个发送器/发送天线以及一个或多个接收器/接收天线提供无线通信。在一个实施例中,处理单元801耦合到局域网或广域网上以用于数据处理以及与诸如其它处理单元、因特网、远程存储设施或其类似者的远程设备通信。
在一些实施例中,当业务链中的业务功能部署在不同的子网络上时,OVS集成网桥可绕过虚拟路由器。在这一实施例中,在不同子网络上的业务功能之间传送的流量不会经过虚拟路由器。通过使用OVS集成网桥,业务链流量可以绕过虚拟路由器并直接从一个SF发送至下一个SF,或直接从VM发送至SF。因此,OVS集成网桥避免了必须在虚拟路由器上增加复杂的SFC引导功能性,增加了业务链的流量吞吐量,减少了通过业务链的流量延迟,避免了托管虚拟路由器的节点处的瓶颈,并有效地将流量负载分发至网络中的多个节点,而不是单个节点上。
虽然已参考说明性实施例描述了本发明,但此描述并不意图限制本发明。所属领域的技术人员在参考该描述后,将会明白说明性实施例的各种修改和组合,以及本发明其它实施例。因此,所附权利要求书意图涵盖任何此类修改或实施例。
Claims (12)
1.一种网络设备,其特征在于,包括:
一个或多个处理器;以及
非瞬时性计算机可读介质,其与所述一个或多个处理器相连且存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:
在虚拟交换集成网桥处,从位于业务功能链(service function chain,SFC)中并且位于第一子网络上的业务功能(service function,SF)接收报文;
确定所述SFC中的下一个SF,其中,所述下一个SF位于第二子网络上;
将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述下一个SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual networkidentifier,VNI)更改为所述第二子网络的VNI;以及
将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述下一个SF;
追踪与所述虚拟交换集成网桥相连的端口;以及
将交换规则添加至所述虚拟交换集成网桥,所述交换规则指示所述虚拟交换集成网桥将所述更改后的报文从所述SF的出端口引导至所述下一个SF的入端口;所述交换规则还用于指示所述虚拟交换集成网桥将所述报文的源MAC地址更改为所述第二子网络上的虚拟路由器的接口的MAC地址。
2.根据权利要求1所述的网络设备,其特征在于,所述非瞬时性计算机可读介质上还存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:
当所述报文的源虚拟机与所述SFC中的初始SF位于不同的子网络上时,将流量引导至所述SFC中的所述初始SF。
3.根据权利要求1至2中的任一项所述的网络设备,其特征在于,所述SF和所述下一个SF托管在相同计算机节点或不同计算机节点上。
4.根据权利要求1至2中的任一项所述的网络设备,其特征在于,所述SF和所述下一个SF托管在不同计算机节点上,并且所述非瞬时性计算机可读介质上还存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:
将所述更改后的报文从所述虚拟交换集成网桥发送至所述第一子网络的虚拟交换隧道网桥;
通过VxLAN封装将所述更改后的报文从所述第一子网络的所述虚拟交换隧道网桥发送至所述第二子网络的虚拟交换隧道;以及
将所述更改后的报文从所述第二子网络的所述虚拟交换隧道发送至所述下一个SF。
5.一种网络设备,其特征在于,包括:
一个或多个处理器;以及
非瞬时性计算机可读介质,其与所述一个或多个处理器相连且存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:
在虚拟交换集成网桥处,从位于第一子网络上的源虚拟机(virtual machine,VM)接收报文;
确定位于第二子网络上的业务功能(service function,SF);
将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual networkidentifier,VNI)更改为所述第二子网络的VNI;以及
将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述SF;
追踪与所述虚拟交换集成网桥相连的端口;以及
将交换规则添加至所述虚拟交换集成网桥,其中,所述交换规则用于指示所述虚拟交换集成网桥将所述更改后的报文从所述源VM的出端口引导至所述SF的入端口;
所述交换规则还用于指示所述虚拟交换集成网桥将所述报文的源MAC地址更改为所述第二子网络上的虚拟路由器的接口的MAC地址。
6.根据权利要求5所述的网络设备,其特征在于,所述源VM和所述SF托管在不同计算机节点上,并且所述非瞬时性计算机可读介质上还存储有在由所述一个或多个处理器执行时使所述网络设备执行以下操作的指令:
将所述更改后的报文从所述虚拟交换集成网桥发送至所述第一子网络的虚拟交换隧道网桥;
通过VxLAN封装将所述更改后的报文从所述第一子网络的所述虚拟交换隧道网桥发送至所述第二子网络的虚拟交换隧道;以及
将所述更改后的报文从所述第二子网络的所述虚拟交换隧道发送至所述SF。
7.一种方法,其特征在于,包括:
在虚拟交换集成网桥处,从位于业务功能链(service function chain,SFC)中并且位于第一子网络上的第一业务功能(service function,SF)接收报文;
确定所述SFC中的下一个SF,其中,所述下一个SF位于第二子网络上;
将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述下一个SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual networkidentifier,VNI)更改为所述第二子网络的VNI;以及
将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述下一个SF;
追踪与所述虚拟交换集成网桥相连的端口;以及
将交换规则添加至所述虚拟交换集成网桥,所述交换规则指示所述虚拟交换集成网桥将所述更改后的报文从所述第一SF的出端口引导至所述下一个SF的入端口;
所述交换规则用于指示所述虚拟交换集成网桥将所述报文的源MAC地址更改为所述第二子网络上的虚拟路由器的接口的MAC地址。
8.根据权利要求7所述的方法,其特征在于,还包括:
当源虚拟机与所述SFC中的初始SF位于不同子网络上时,引导至所述SFC中的所述初始SF。
9.根据权利要求7或8所述的方法,其特征在于,还包括:
将所述更改后的报文从所述虚拟交换集成网桥发送至所述第一子网络的虚拟交换隧道网桥;
通过VxLAN封装将所述更改后的报文从所述第一子网络的所述虚拟交换隧道网桥发送至所述第二子网络的虚拟交换隧道;以及
将所述更改后的报文从所述第二子网络的所述虚拟交换隧道发送至所述SF。
10.一种方法,其特征在于,包括:
在虚拟交换集成网桥处,从位于第一子网络上的源虚拟机(virtual machine,VM)接收报文;
确定位于第二子网络上的业务功能(service function,SF);
将所述报文的目标媒体接入控制(media access control,MAC)地址更改为所述SF的MAC地址,并将所述报文中的所述第一子网络的虚拟网络标识符(virtual networkidentifier,VNI)更改为所述第二子网络的VNI;以及
将所述更改后的报文直接从所述虚拟交换集成网桥发送至所述SF;
追踪与所述虚拟交换集成网桥相连的端口;以及
将交换规则添加至所述虚拟交换集成网桥,其中,所述交换规则用于指示所述虚拟交换集成网桥将所述更改后的报文从所述源VM的出端口引导至所述SF的入端口;
所述交换规则还用于指示所述虚拟交换集成网桥将所述报文的源MAC地址更改为所述第二子网络上的虚拟路由器的接口的MAC地址。
11.根据权利要求10所述的方法,其特征在于,所述源VM和所述SF托管在不同计算机节点或相同计算机节点上。
12.根据权利要求10或11所述的方法,其特征在于,当所述源VM和所述SF托管在不同计算机节点上时,所述方法还包括:
将所述更改后的报文从所述虚拟交换集成网桥发送至所述第一子网络的虚拟交换隧道网桥;
通过VxLAN封装将所述更改后的报文从所述第一子网络的所述虚拟交换隧道网桥发送至所述第二子网络的虚拟交换隧道;以及
将所述更改后的报文从所述第二子网络的所述虚拟交换隧道发送至所述SF。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662286893P | 2016-01-25 | 2016-01-25 | |
US62/286,893 | 2016-01-25 | ||
US15/412,282 US10397108B2 (en) | 2016-01-25 | 2017-01-23 | Service function chaining across multiple subnetworks |
US15/412,282 | 2017-01-23 | ||
PCT/CN2017/072497 WO2017129114A1 (en) | 2016-01-25 | 2017-01-24 | Service function chaining across multiple subnetworks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108463989A CN108463989A (zh) | 2018-08-28 |
CN108463989B true CN108463989B (zh) | 2020-11-17 |
Family
ID=59359903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780005588.1A Active CN108463989B (zh) | 2016-01-25 | 2017-01-24 | 跨多个子网络的业务功能链接 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10397108B2 (zh) |
EP (1) | EP3254447B1 (zh) |
CN (1) | CN108463989B (zh) |
WO (1) | WO2017129114A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10374833B2 (en) * | 2014-12-03 | 2019-08-06 | Hewlett Packard Enterprise Development Lp | Modifying an address to forward a packet to a service function |
US9979645B2 (en) * | 2015-01-14 | 2018-05-22 | Futurewei Technologies, Inc. | Hardware and software methodologies for creating and managing portable service function chains |
US10193968B2 (en) * | 2016-10-14 | 2019-01-29 | Google Llc | Virtual router with dynamic flow offload capability |
US10432524B2 (en) | 2017-12-20 | 2019-10-01 | At&T Intellectual Property I, L.P. | Parallelism for virtual network functions in service function chains |
TWI819072B (zh) * | 2018-08-23 | 2023-10-21 | 美商阿爾克斯股份有限公司 | 在網路運算環境中用於避免環路衝突的系統、非暫態電腦可讀取儲存媒體及電腦實現方法 |
US11494212B2 (en) * | 2018-09-27 | 2022-11-08 | Intel Corporation | Technologies for adaptive platform resource assignment |
WO2020076061A1 (en) | 2018-10-08 | 2020-04-16 | Samsung Electronics Co., Ltd. | Method and system for forwarding data packets in a service function path of a network |
US11652666B2 (en) * | 2019-07-30 | 2023-05-16 | Vmware, Inc. | Methods for identifying a source location in a service chaining topology |
US11050640B1 (en) * | 2019-12-13 | 2021-06-29 | Cisco Technology, Inc. | Network throughput assurance, anomaly detection and mitigation in service chain |
CN113132200B (zh) * | 2019-12-30 | 2024-01-19 | 中兴通讯股份有限公司 | 数据转发方法、转发器、系统、服务器和存储介质 |
CN111371608B (zh) * | 2020-02-28 | 2022-07-22 | 苏州浪潮智能科技有限公司 | 一种部署sfc业务链的方法、装置和介质 |
CN111884863B (zh) * | 2020-08-04 | 2023-11-07 | 浪潮云信息技术股份公司 | 一种用于云计算环境的vpc服务链实现方法及系统 |
WO2022251307A1 (en) * | 2021-05-27 | 2022-12-01 | Cisco Technology, Inc. | Using global virtual network instance (vni) labels to signal a service chain |
US20220385572A1 (en) | 2021-05-27 | 2022-12-01 | Cisco Technology, Inc. | Using global virtual network instance (vni) labels to signal a service chain |
US20230031462A1 (en) * | 2021-07-30 | 2023-02-02 | Oracle International Corporation | Selective handling of traffic received from on-premises data centers |
CN113839933B (zh) * | 2021-09-13 | 2023-09-26 | 紫光云(南京)数字技术有限公司 | 一种利用安全组解决多网卡流量的方法 |
KR102660421B1 (ko) * | 2021-10-28 | 2024-04-23 | 에스케이텔레콤 주식회사 | 가상네트워크관리장치 및 가상네트워크관리장치의 동작 방법 |
CN114760254B (zh) * | 2022-04-15 | 2023-04-07 | 北京志凌海纳科技有限公司 | 虚拟网络系统及虚拟网络系统实现数据包转发处理方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013109537A1 (en) * | 2012-01-20 | 2013-07-25 | Cisco Technology, Inc. | Connectivity system for multi-tenant access networks |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8325732B2 (en) * | 2008-12-22 | 2012-12-04 | Rockstar Consortium Us Lp | Method for operating multi-domain Provider Ethernet networks |
US8989192B2 (en) * | 2012-08-15 | 2015-03-24 | Futurewei Technologies, Inc. | Method and system for creating software defined ordered service patterns in a communications network |
US20140233569A1 (en) * | 2013-02-15 | 2014-08-21 | Futurewei Technologies, Inc. | Distributed Gateway in Virtual Overlay Networks |
US9660905B2 (en) * | 2013-04-12 | 2017-05-23 | Futurewei Technologies, Inc. | Service chain policy for distributed gateways in virtual overlay networks |
CN105765946B (zh) | 2013-11-26 | 2019-06-21 | 瑞典爱立信有限公司 | 支持数据网络中的服务链接的方法和系统 |
WO2015100656A1 (zh) * | 2013-12-31 | 2015-07-09 | 华为技术有限公司 | 一种实现虚拟机通信的方法和装置 |
US9825856B2 (en) | 2014-01-06 | 2017-11-21 | Futurewei Technologies, Inc. | Service function chaining in a packet network |
US9967175B2 (en) | 2014-02-14 | 2018-05-08 | Futurewei Technologies, Inc. | Restoring service functions after changing a service chain instance path |
CN103873374B (zh) * | 2014-03-27 | 2017-08-11 | 新华三技术有限公司 | 虚拟化系统中的报文处理方法及装置 |
CN105227498B (zh) | 2014-06-27 | 2018-03-02 | 国际商业机器公司 | 叠加网络交换机及其使用的方法 |
US9634936B2 (en) | 2014-06-30 | 2017-04-25 | Juniper Networks, Inc. | Service chaining across multiple networks |
CN104283806B (zh) | 2014-10-31 | 2018-01-12 | 新华三技术有限公司 | 业务链处理方法和设备 |
US9923815B2 (en) * | 2014-11-11 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Network based service function chaining on top of rack switches |
US9531850B2 (en) * | 2014-12-04 | 2016-12-27 | Cisco Technology, Inc. | Inter-domain service function chaining |
US9853898B1 (en) * | 2015-04-29 | 2017-12-26 | Juniper Networks, Inc. | Dynamic service chain provisioning |
CN106302206B (zh) * | 2015-05-28 | 2020-04-24 | 中兴通讯股份有限公司 | 报文的转发处理方法、装置及系统 |
CN106341298B (zh) * | 2015-07-06 | 2019-03-22 | 中兴通讯股份有限公司 | 报文发送方法及装置 |
-
2017
- 2017-01-23 US US15/412,282 patent/US10397108B2/en active Active
- 2017-01-24 CN CN201780005588.1A patent/CN108463989B/zh active Active
- 2017-01-24 WO PCT/CN2017/072497 patent/WO2017129114A1/en active Application Filing
- 2017-01-24 EP EP17743729.0A patent/EP3254447B1/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013109537A1 (en) * | 2012-01-20 | 2013-07-25 | Cisco Technology, Inc. | Connectivity system for multi-tenant access networks |
Also Published As
Publication number | Publication date |
---|---|
WO2017129114A1 (en) | 2017-08-03 |
CN108463989A (zh) | 2018-08-28 |
EP3254447A4 (en) | 2018-02-21 |
EP3254447B1 (en) | 2019-03-20 |
US10397108B2 (en) | 2019-08-27 |
EP3254447A1 (en) | 2017-12-13 |
US20170214613A1 (en) | 2017-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108463989B (zh) | 跨多个子网络的业务功能链接 | |
US10116559B2 (en) | Operations, administration and management (OAM) in overlay data center environments | |
US9755959B2 (en) | Dynamic service path creation | |
US9942148B1 (en) | Tunneled packet aggregation for virtual networks | |
US8913613B2 (en) | Method and system for classification and management of inter-blade network traffic in a blade server | |
CN106878047B (zh) | 故障处理方法及装置 | |
JP2021530908A (ja) | SRv6とBGPを使用するマルチクラウド接続 | |
US20180026878A1 (en) | Scalable deadlock-free deterministic minimal-path routing for dragonfly networks | |
CN111865806B (zh) | 基于前缀的胖流 | |
US11165693B2 (en) | Packet forwarding | |
US9774710B2 (en) | System and method for network protocol offloading in virtual networks | |
CN109327400B (zh) | 一种数据通信方法及数据通信网络 | |
US11411998B2 (en) | Reputation-based policy in enterprise fabric architectures | |
US9634927B1 (en) | Post-routed VLAN flooding | |
WO2017164068A1 (ja) | トランスポートネットワーク制御装置、通信システム、転送ノードの制御方法及びプログラム | |
CN113497757B (zh) | 利用域分段标识符来进行域间最短路径分段路由 | |
US10924396B2 (en) | Achieving L2 tunnel reduncancy and L3 load balancing | |
US20180241670A1 (en) | Software switch for providing network function and operation method thereof | |
Zhang et al. | A Novel Software Defined Networking Framework for Cloud Environments | |
CN109714259B (zh) | 一种流量处理方法及装置 | |
CN117424863A (zh) | 指定针对多播业务的主要多播流和备份多播流 | |
WO2018137252A1 (zh) | 路由发布的方法和装置 | |
Daino et al. | Service Function Chaining S. Mackie Internet-Draft B. Risjman Intended status: Informational Juniper Networks Expires: April 2, 2015 M. Napierala AT&T | |
CN111865821A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220224 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |