一种业务链处理方法、设备及系统的制作方法

文档序号:9914371阅读:217来源:国知局
一种业务链处理方法、设备及系统的制作方法
【技术领域】
[0001]本发明涉及通信领域,特别涉及一种业务链处理方法、设备及系统。
【背景技术】
[0002]在数据中心应用领域及宽带接入领域中,为了给报文提供特定的服务,如防火墙、入侵防御系统、应用优化或负载均衡等服务,需要部署各种服务设备,组成业务功能链。业务功能链,又称业务链,指的是由各种服务设备按序组成的业务序列。
[0003]为了保证报文享受业务链提供的服务,业务链为报文提供服务时会采用报文的介质访问控制(英文:Media Access Control ;简称:MAC)地址携带业务链的元数据,元数据通常包括业务链标识、下一跳服务设备的索引等信息。现有业务链中的服务设备主要分为二层透明设备、普通三层设备、特殊三层设备和隧道设备四种,其中,普通三层设备给报文提供服务时会修改报文中的MAC地址,不修改报文的五元组,交换机能够通过具有学习能力的转发配置通过固定的五元组将修改的MAC地址学习回来;特殊三层设备可以包括负载均衡器(英文:Load Balance ;简称:LB)或网络地址转换(英文:Network AddressTransfer;简称:NAT)等服务设备,该类服务设备设置有互联网协议(英文:InternetProtocol Address ;简称:IP)地址,在给报文提供服务时会修改报文中的MAC地址和五元组,因此,报文在流经特殊三层设备后,业务链的元数据无法通过学习找回。
[0004]由于报文在流经特殊三层设备后,业务链的元数据将丢失,因此,现有的业务链服务过程无法兼容特殊三层服务设备,业务链的通用性较低。

【发明内容】

[0005]为了解决业务链的通用性较低的问题,本发明提供了一种业务链处理方法、设备及系统。所述技术方案如下:
[0006]第一方面,提供了一种业务链处理方法,用于管理节点,所述方法包括:
[0007]获取用户创建的第一业务链,所述第一业务链由依次排布的至少两跳服务设备组成,所述至少两跳服务设备包括η个特殊三层设备,所述η大于或等于I,其中,当所述第一业务链的末尾服务设备为特殊三层设备时,所述η大于或等于2 ;
[0008]以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为至少两条子业务链,所述至少两条子业务链包括:第一子业务链和第二子业务链,所述第一子业务链为所述第一业务链的首个服务设备至所述第一业务链上首个特殊三层设备形成的业务链,所述第二子业务链为所述第一业务链上第一特殊三层设备之后的设备至第二设备形成的业务链,所述第一特殊三层设备为所述第一业务链上任一非末尾的特殊三层设备,当所述第一特殊三层设备之后存在特殊三层设备时,所述第二设备为第一特殊三层设备之后的首个特殊三层设备,当所述第一特殊三层设备之后不存在特殊三层设备时,所述第二设备为所述第一业务链上的末尾设备;
[0009]向分类器发送第一分类配置,所述第一分类配置指示所述分类器根据所述第一分类配置将第一报文重定向至所述第一子业务链,并向所述第一报文中注入所述第一子业务链的初始元数据,所述第一报文为需重定向至所述第一子业务链的报文,所述第一子业务链的初始元数据包括:所述第一子业务链的业务链标识和所述第一子业务链上的首个服务设备的设备索引;
[0010]向与所述第一特殊三层设备连接的第一交换机发送第二分类配置,所述第二分类配置指示所述第一交换机根据所述第二分类配置将第二报文重定向至所述第二子业务链,并向所述第二报文中注入所述第二子业务链的初始元数据,所述第二报文为需重定向至所述第二子业务链的报文,所述第二子业务链的初始元数据包括:所述第二子业务链的业务链标识和所述第二子业务链上的首个服务设备的设备索引。
[0011]结合第一方面,在第一种可实现方式中,所述以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为至少两条子业务链,包括:
[0012]当所述第一业务链的末尾服务设备为特殊三层设备,以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为η条子业务链,每条所述子业务链的末尾服务设备均为特殊三层设备;
[0013]当所述第一业务链的末尾服务设备不为特殊三层设备,以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为η+1条子业务链,所述η+1条子业务链中的前η条子业务链中,每条所述子业务链的末尾服务设备均为特殊三层设备。
[0014]结合第一方面或第一种可实现方式,在第二种可实现方式中,
[0015]所述第一分类配置还指示:将满足与所述第一子业务链关联条件的输入报文确定为所述第一报文;
[0016]所述第二分类配置还指示:将满足与所述第二子业务链关联条件的输入报文确定为所述第二报文。
[0017]结合第一方面,在第三种可实现方式中,
[0018]所述第一业务链还包括隧道设备,在所述获取用户创建的第一业务链之后,所述方法还包括:
[0019]向第二交换机发送配置信息,其中,当所述隧道设备为所述第一业务链的首个服务设备时,所述第二交换机为分类器,当所述隧道设备为所述第一业务链的非首个服务设备时,所述第二交换机为所述第一业务链上的所述隧道设备的上一跳服务设备连接的交换机,所述配置信息指示所述第二交换机为第三报文封装第一隧道信息头,将所述第一业务链的第一元数据注入所述第一隧道信息头中,所述第三报文为下一跳需经过所述第一业务链上所述隧道设备处理的报文,所述第一业务链的第一元数据包括:所述第一业务链的标识、所述隧道设备的设备索引;
[0020]向所述隧道设备连接的第三交换机发送两条转发配置,分别为第一转发配置和第二转发配置,其中,所述第一转发配置指示所述第三交换机将第四报文转发至所述隧道设备,所述第四报文封装有第二隧道信息头,且所述第二隧道信息头中的信息指示所述第四报文需经所述隧道设备处理,所述第二转发配置指示所述第三交换机将第五报文解封装后,将所述第一业务链的第二元数据注入所述第五报文中,所述第五报文为经过所述第一业务链上所述隧道设备处理后的报文,所述第一业务链的第二元数据包括:所述第一业务链的标识、所述第一业务链上的所述隧道设备的下一跳设备的设备索引。
[0021]结合第三种可实现方式,在第四种可实现方式中,
[0022]所述第一转发配置还指示:将隧道源端为所述第一业务链上所述隧道设备的上一跳设备连接的交换机,隧道目的端为所述隧道设备的隧道报文确定为所述第四报文;
[0023]所述第二转发配置还指示:将隧道源端为所述隧道设备,隧道目的端为所述第一业务链上所述第三交换机的隧道报文确定为所述第五报文。
[0024]结合第一方面至第四种可实现方式,在第五种可实现方式中,
[0025]所述特殊三层设备为负载均衡器LB或网络地址转换NAT设备。
[0026]结合第三或第四种可实现方式,在第六种可实现方式中,所述隧道设备为通用路由封装GRE设备或虚拟扩展局域网VXLAN设备。
[0027]第二方面,提供了一种业务链处理方法,用于管理节点,所述方法包括:
[0028]向第二交换机发送配置信息,其中,当所述隧道设备为所述第一业务链的首个服务设备时,所述第二交换机为分类器,当所述隧道设备为所述第一业务链的非首个服务设备时,所述第二交换机为所述第一业务链上的所述隧道设备的上一跳服务设备连接的交换机,所述配置信息指示所述第二交换机为第三报文封装第一隧道信息头,将所述第一业务链的第一元数据注入所述第一隧道信息头中,所述第三报文为下一跳需经过所述第一业务链上所述隧道设备处理的报文,所述第一业务链的第一元数据包括:所述第一业务链的标识、所述隧道设备的设备索引;
[0029]向所述隧道设备连接的第三交换机发送两条转发配置,分别为第一转发配置和第二转发配置,其中,所述第一转发配置指示所述第三交换机将第四报文转发至所述隧道设备,所述第四报文封装有第二隧道信息头,且所述第二隧道信息头中的信息指示所述第四报文需经所述隧道设备处理,所述第二转发配置指示所述第三交换机将第五报文解封装后,将所述第一业务链的第二元数据注入所述第五报文中,所述第五报文为经过所述第一业务链上所述隧道设备处理后的报文,所述第一业务链的第二元数据包括:所述第一业务链的标识、所述第一业务链上的所述隧道设备的下一跳设备的设备索引。
[0030]结合第二方面,在第一种可实现方式中,所述第一转发配置还指示:将隧道源端为所述第一业务链上所述隧道设备的上一跳设备连接的交换机,隧道目的端为所述隧道设备的隧道报文确定为所述第四报文;
[0031]所述第二转发配置还指示:将隧道源端为所述隧道设备,隧道目的端为所述第一业务链上所述第三交换机的隧道报文确定为所述第五报文。
[0032]结合第二方面或第一种可实现方式,在第二种可实现方式中,所述隧道设备为通用路由封装GRE设备或虚拟扩展局域网VXLAN设备。
[0033]第三方面,提供了一种业务链处理设备,用于管理节点,所述业务链处理设备包括:
[0034]获取单元,用于获取用户创建的第一业务链,所述第一业务链由依次排布的至少两跳服务设备组成,所述至少两跳服务设备包括η个特殊三层设备,所述η大于或等于I,其中,当所述第一业务链的末尾服务设备为特殊三层设备时,所述η大于或等于2 ;
[0035]划分单元,用于以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为至少两条子业务链,所述至少两条子业务链包括:第一子业务链和第二子业务链,所述第一子业务链为所述第一业务链的首个服务设备至所述第一业务链上首个特殊三层设备形成的业务链,所述第二子业务链为所述第一业务链上第一特殊三层设备之后的设备至第二设备形成的业务链,所述第一特殊三层设备为所述第一业务链上任一非末尾的特殊三层设备,当所述第一特殊三层设备之后存在特殊三层设备时,所述第二设备为第一特殊三层设备之后的首个特殊三层设备,当所述第一特殊三层设备之后不存在特殊三层设备时,所述第二设备为所述第一业务链上的末尾设备;
[0036]第一发送单元,用于向分类器发送第一分类配置,所述第一分类配置指示所述分类器根据所述第一分类配置将第一报文重定向至所述第一子业务链,并向所述第一报文中注入所述第一子业务链的初始元数据,所述第一报文为需重定向至所述第一子业务链的报文,所述第一子业务链的初始元数据包括:所述第一子业务链的业务链标识和所述第一子业务链上的首个服务设备的设备索引;
[0037]第二发送单元,用于向与所述第一特殊三层设备连接的第一交换机发送第二分类配置,所述第二分类配置指示所述第一交换机根据所述第二分类配置将第二报文重定向至所述第二子业务链,并向所述第二报文中注入所述第二子业务链的初始元数据,所述第二报文为需重定向至所述第二子业务链的报文,所述第二子业务链的初始元数据包括:所述第二子业务链的业务链标识和所述第二子业务链上的首个服务设备的设备索引。
[0038]结合第三方面,在第一种可实现方式中,
[0039]所述划分单元,包括:
[0040]第一划分模块,用于当所述第一业务链的末尾服务设备为特殊三层设备,以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为η条子业务链,每条所述子业务链的末尾服务设备均为特殊三层设备;
[0041]第二划分模块,用于当所述第一业务链的末尾服务设备不为特殊三层设备,以位于所述第一业务链上的非末尾的特殊三层设备为分界点,将所述第一业务链划分为η+1条子业务链,所述η+1条子业务链中的前η条子业务链中,每条所述子业务链的末尾服务设备均为特殊三层设备。
[0042]结合第三方面或第一种可实现方式,在第二种可实现方式中,
[0043]所述第一分类配置还指示:将满足与所述第一子业务链关联条件的输入报文确定为所述第一报文;
[0044]所述第二分类配置还指示:将满足与所述第二子业务链关联条件的输入报文确定为所述第二报文。
[0045]结合第三方面,在第三种可实现方式中,所述第一业务链还包括隧道设备,所述业务链处理设备还包括:
[0046]第三发送单元,用于向第二交换机发送配置信息,其中,当所述隧道设备为所述第一业务链的首个服务设备时,所述第二交换机为分类器,当所述隧道设备为所述第一业务链的非首个服务设备时,所述第二交换机为所述第一业务链上的所述隧道设备的上一跳服务设备连接的交换机,所述配置信息指示所述第二交换机为第三报文封装第一隧道信息头,将所述第一业务链的第一元数据注入所述第一隧道信息头中,所述第三报文为下一跳需经过所述第一业务链上所述隧道设备处理的报文,所述第一业务链的第一元数据包括:所述第一业务链的标识、所述隧道设备的设备索引;
[0047]第四发送单元,用于向所述隧道设备连接的第三交换机发送两条转发配置,分别为第一转发配置和第二转发配置,其中,所述第一转发配置指示所述第三交换机将第四报文转发至所述隧道设备,所述第四报文封装有第二隧道信息头,且所述第二隧道信息头中的信息指示所述第四报文需经所述隧道设备处理,所述第二转发配置指示所述第三交换机将第五报文解封装后,将所述第一业务链的第二元数据注入所述第五报文中,所述第五报文为经过所述第一业务链上所述隧道设备处理后的报文,所述第一业务链的第二元数据包括:所述第一业务链的标识、所述第一业务链上的所述隧道设备的下一跳设备的设备索引。
[0048]结合第三种可实现方式,在第四种可实现方式中,
[0049]所述第一转发配置还指示:将隧道源端为所述第一业务链上所述隧道设备的上一跳设备连接的交换机,隧道目的端为所述隧道设备的隧道报文确定为所述第四报文;
[0050]所述第二转发配置还指示:将隧道源端为所述隧道设备,隧道目的端为所述第一业务链上所述第三交换机的隧道报文确定为所述第五报文。
[0051]结合第三方面至第四种可实现方式,在第五种可实现方式中,
[0052]所述特殊三层设备为负载均衡器LB或网络地址转换NAT设备。
[0053]结合第三或第四种可实现方式,在第六种可实现方式中,所述隧道设备为通用路由封装GRE设备或虚拟扩展局域网VXLAN设备。
[0054]第四方面,提供了一种业务链处理系统,包括:管理节点和交换机;
[0055]所述管理节点包括第三方面任一所述的业务链处理设备。
[0056]第五方面,提供了一种业务链处理设备,用于管理节点,所述业务链处理设备包括:
[0057]第一发送单元,用于向第二交换机发送配置信息,其中,当所述隧道设备为所述第一业务链的首个服务设备时,所述第二交换机为分类器,当所述隧道设备为所述第一业务链的非首个服务设备时,所述第二交换机为所述第一业务链上的所述隧道设备的上一跳服务设备连接的交换机,所述配置信息指示所述第二交换机为第三报文封装第一隧道信息头,将所述第一业务链的第一元数据注入所述第一隧道信息头中,所述第三报文为下一跳需经过所述第一业务链上所述隧道设备处理的报文,所述第一业务链的第一元数据包括:所述第一业务链的标识、所述隧道设备的设备索引;
[0058]第二发送单元,用于向所述隧道设备连接的第三交换机发送两条转发配置,分别为第一转发配置和第二转发配置,其中,所述第一转发配置指示所述第三交换机将第四报文转发至所述隧道设备,所述第四报文封装有第二隧道信息头,且所述第二隧道信息头中的信息指示所述第四报文需经所述隧道设备处理,所述第二转发配置指示所述第三交换机将第五报文解封装后,将所述第一业务链的第二元数据注入所述第五报文中,所述第五报文为经过所述第一业务链上所述隧道设备处理后的报文,所述第一业务链的第二元数据包括:所述第一业务链的标识、所述第一业务链上的所述隧道设备的下一跳设备的设备索引。
[0059]结合第五方面,在第一种可实现方式中,
[0060]所述第一转发配置还指示:将隧道源端为所述第一业务链上所述隧道设备的上一跳设备连接的交换机,隧道目的端为所述隧道设备的隧道报文确定为所述第四报文;
[0061]所述第二转发配置还指示:将隧道源端为所述隧道设备,隧道目的端为所述第一业务链上所述第三交换机的隧道报文确定为所述第五报文。
[0062]结合第五方面或第一种可实现方式,在第二种可实现方式中,所述隧道设备为通用路由封装GRE设备或虚拟扩展局域网VXLAN设备。
[0063]第六方面,
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1