具有物理网络功能和虚拟化网络功能的服务链的制作方法

文档序号:36937599发布日期:2024-02-02 22:05阅读:35来源:国知局
具有物理网络功能和虚拟化网络功能的服务链的制作方法

本公开大体上涉及计算机网络,并且更具体地,涉及将网络服务应用于遍历计算机网络的网络业务。


背景技术:

1、计算机网络是交换数据和共享资源的互连的计算设备的类集。在基于分组的网络(诸如,互联网)中,计算设备通过将数据划分为被称为分组的小块来传送数据,这些小块被单独地在网络上从源设备路由到目的地设备。该目的地设备从分组中提取数据,并且将数据组装成其原始形式。

2、网络中的某些设备(被称为路由器)使用路由协议来交换和累积描述网络的拓扑信息。这允许路由器构建其自身的网络路由拓扑图。在接收到传入的数据分组之后,路由器检查该分组内的键控(keying)信息,并且根据累积的拓扑信息来转发该分组。

3、网络操作者可以部署一个或多个网络设备以实现服务点,这些服务点应用网络功能,诸如,防火墙、电信级(carrier grade)网络地址转换(cg-nat)、针对视频的性能增强委托(proxy)、传输控制协议(tcp)优化和报头丰富、高速缓存以及负载均衡。附加地,网络操作者可以配置服务链,这些服务链各自标识要被应用于被映射至相应服务链的分组流(packet flow)的网络功能集合。换言之,服务链按照特定顺序来定义要被应用的一个或多个网络功能,以提供要应用于被绑定到服务链的分组流的复合网络服务。


技术实现思路

1、一般地,描述了集中控制器(诸如,软件定义联网(sdn)控制器)构建服务链的技术,该服务链包括在裸金属服务器(bms)与虚拟执行元件(例如,虚拟机或容器)或者在一些实例中,与远程bms之间的物理网络功能(pnf),反之亦然。根据本文所公开的技术,控制器可以构建包括pnf或pnf和虚拟网络功能(vnf)的组合的网络间服务链。控制器可以构建网络间服务链,以通过将虚拟可扩展局域网(vxlan)用作基础传输技术的网络间服务链来引导(steer)bms与虚拟执行元件或远程bms之间的业务通过该服务链。

2、在当前系统中,pnf可以不被配置为服务链的一部分。相反,服务链可以限于包括vnf。在这种系统中,当网络业务从源网络进入服务链时,多协议标签交换(mpls)被用于将网络业务从服务链中的一个vnf引导到下一vnf,再引导到目的地网络。例如,通用路由封装上的mpls(mplsogre)或用户数据报协议上的mpls(mplsoudp)可以被用于针对层3虚拟专用网(l3vpn)和/或以太网vpn(evpn)创建覆盖隧道(overlay tunnel),以引导分组通过服务链。

3、有若干技术问题可能会阻止pnf并入到服务链中。例如,pnf通常不支持mpls,如上面提到的,mpls通常是被用于引导网络业务通过服务链的覆盖隧道技术。虽然vnf和pnf都可以支持vxlan作为传输技术,但是用vxlan来代替mpls可能在服务链内引起循环(looping)问题。在vxlan的情况下,网络分组中的vxlan标识符(vnid)通常映射至虚拟网络(vn)。可以在vn的主要路由实例中执行查找,以找到第一服务实例的左接口。然而,网络分组所携带的vnid通常与通过服务链传送的分组相同。因此,在当前服务链中使用vxlan可能导致服务链中的第二服务实例接收到相同的vnid。当分组到达链中的第二服务实例时,vnid可能使分组被环回到服务链的第一服务实例,因为vnid映射至与服务链中的第一服务实例相同的虚拟网络和主要路由实例。

4、在一些示例中,控制器可以构建lr间服务链,以引导源自bms的业务通过包括至少一个pnf的至少一个服务链,并且最终,引导到使用vxlan作为传输技术的虚拟机。控制器可以在服务链的每个pnf中创建两个路由实例,并且可以向每个路由实例指派(assign)用于与逻辑路由器相关联的虚拟网络的不同vnid。为了经由服务链来将业务从源网络导向(direct)到目的地网络,控制器可以获得到与目的地网络相关联的虚拟机的路由(在本文中被称为“ip路由”)。控制器可以修改ip路由,以将业务从源网络导向到服务链中的pnf的左接口,而不是直接导向到目的地网络。例如,控制器可以通过设置下一跳以及在一些实例中,设置vnid或标识服务链的pnf的路由实例的其他下一跳信息来修改ip路由。然后,控制器向源网络通告(advertise)修改的ip路由。由控制器向源网络的、对修改的ip路由的该通告被称为“重新创建(re-originating)”ip路由。源网络的逻辑路由器可以从控制器导入修改的ip路由,这使网络设备将业务引导到路由下一跳,例如,在服务链的前端的pnf。

5、作为重新创建ip路由的一部分,控制器还可以将获得的ip路由存储为evpn路由。例如,除了将ip路由存储在用于源网络的ip路由表中之外,控制器还可以将ip路由作为evpn路由(例如,可以指定用于子网间连接性(即,ip网络的分区的连接性,在一些情况下,跨数据中心)的ip路由的evpn type-5路由)存储在用于源网络的evpn路由表中。控制器还可以将evpn路由的下一跳设置为引用源网络的在服务链的前端托管pnf的逻辑路由器。控制器可以将修改的evpn路由通告给被直接连接至bms的物理架顶式(tor)交换机。tor交换机可以从控制器导入evpn路由,以将tor交换机配置为将源自bms的数据业务引导到路由下一跳,例如,在服务链的前端托管服务节点的服务器。

6、为了防止循环,控制器可以在每个pnf中创建两个路由实例,第一路由实例与“左”逻辑路由器相关联,并且第二路由实例与“右”逻辑路由器相关联。第一和第二路由实例可以被配置有与其对应的逻辑路由器的虚拟网络相关联的vnid。

7、按照这种方式,当tor交换机接收到源自bms的去往目的地网络(例如,“右”逻辑路由器的网络)的虚拟机的数据业务时,tor交换机可以使用例如,虚拟可扩展局域网(vxlan)来将业务引导到在服务链前端的pnf的左接口。当pnf接收到数据业务时,pnf可以对数据业务执行其相关联的服务,并且确定与数据业务的vxlan报头中的vnid相关联的路由实例。vnid被用于确定哪个路由实例将被用于确定数据业务的下一跳。pnf可以对与目的地网络(例如,“右”网络)相关联的路由实例的路由表执行查找,并且将数据业务从pnf的右接口转发到托管服务链中的下一pnf的左接口的tor。pnf可以将vxlan报头中的vnid标签与被指派给与目的地网络相关联的路由接口的vnid交换。服务链中接收数据业务的下一pnf可以使用vnid来确定包括路由表的路由实例,这些路由表被用于确定如何进一步转发数据业务。

8、本公开的技术可以被实现为提供一个或多个技术优点的实际应用的一部分。例如,这些技术可以允许客户将pnf包括在服务链中,同时避免服务链中的后续pnf或vnf将分组循环回到服务链中的第一pnf。结果,客户可以通过将pnf包括在服务链中来利用其对pnf的投资,而不仅限于基于vnf的服务链。进一步地,使用pnf可以提供更好的网络吞吐量,因为与具有等效功能性的vnf相比较,当执行操作时,pnf通常具有更高的吞吐量。例如,pnf可以包括专用处理器以及用于使对网络分组执行的处理类型加速的其他硬件。

9、在一个实施例中,一种方法包括:由网络系统的软件定义网络sdn控制器创建包括多个物理网络功能pnf的服务链,该多个pnf包括第一pnf和第二pnf,服务链在网络系统的第一逻辑路由器和第二逻辑路由器之间;针对第一pnf和第二pnf中的每一个创建对应的第一路由实例和对应的第二路由实例;针对第一pnf和第二pnf中的每一个,利用第一标签配置对应的第一路由实例,并且利用第二标签配置第二路由实例,该第一标签包括与第一逻辑路由器相关联的第一虚拟网络的第一虚拟可扩展局域网vxlan标识符vnid,该第二标签包括与第二逻辑路由器相关联的第二虚拟网络的第二vnid;通过服务链来在第一虚拟网络上的第一设备到第二虚拟网络上的第二设备之间创建第一路由,该第一路由在第一设备与第一pnf之间的第一交换机中将第一pnf的第一路由实例的第一vnid指定为针对从第一交换机到第一pnf的下一跳的第一标签,并且在第一pnf与第二pnf之间的第二交换机中将第二pnf的第一路由实例的第一vnid指定为用于从第二交换机到第二pnf的下一跳的第二标签;以及将第一路由推送到被通信地耦合至多个pnf中的一个或多个pnf的多个交换机中的至少一个交换机,多个交换机包括第一交换机和所述第二交换机。

10、在另一示例中,一种控制器包括:一个或多个处理器;服务链单元,该服务链单元由一个或多个处理器可执行,服务链单元被配置为:创建包括多个物理网络功能pnf的服务链,该多个pnf包括第一pnf和第二pnf,服务链在网络系统的第一逻辑路由器和第二逻辑路由器之间;针对每个pnf创建对应的第一路由实例和对应的第二路由实例;针对每个pnf,利用第一标签配置对应的第一路由实例,并且利用第二标签配置第二路由实例,该第一标签包括与第一逻辑路由器相关联的第一虚拟网络的第一vnid,该第二标签包括与第二逻辑路由器相关联的第二虚拟网络的第二vnid;并且通过服务链来在第一虚拟网络上的第一设备到第二虚拟网络上的第二设备之间创建第一路由,该第一路由在第一设备与第一pnf之间的第一交换机中将第一pnf的第一路由实例的第一vnid指定为针对从第一交换机到第一pnf的下一跳的标签,并且在第一pnf与第二pnf之间的第二交换机中将第二pnf的第一路由实例的第一vnid指定为针对从第二交换机到第二pnf的下一跳的标签;以及控制平面虚拟机,该控制平面虚拟机由一个或多个处理器可执行并且被配置为将第一路由推送到被通信地耦合至多个pnf中的一个或多个pnf的多个交换机中的至少一个交换机,多个交换机包括第一交换机和第二交换机。

11、在另一示例中,一种pnf设备包括:一个或多个处理器;以及计算机可读存储设备,该计算机可读存储设备被配置为存储第一路由实例、第二路由实例和指令,这些指令由一个或多个处理器可执行以使pnf设备:接收针对第一路由实例的配置数据,该配置数据包括第一标签和第二标签,该第一标签包括与第一逻辑路由器相关联的第一虚拟网络的第一vnid,该第二标签包括与第二逻辑路由器相关联的第二虚拟网络的第二vnid;利用第一标签配置第一路由实例;利用第二标签配置第二路由实例;接收第一路由数据,该第一路由数据指定从pnf设备到朝向第二虚拟网络的交换机的下一跳;利用第一路由数据配置第一路由实例;接收第二路由数据,该第二路由数据指定从pnf设备到朝向第一虚拟网络的交换机的下一跳;以及利用第二路由数据配置第二路由实例;其中pnf设备被配置在第一逻辑路由器和第二逻辑路由器之间的服务链中,第一逻辑路由器与第一虚拟网络相关联,第二逻辑路由器与第二虚拟网络相关联。

12、在附图和下面的描述中阐述了本公开一种或多种技术的细节。本发明的其他特征、目的和优点将通过本说明书和附图以及权利要求书而变得明显。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1