CN104283806B - 业务链处理方法和设备 - Google Patents
业务链处理方法和设备 Download PDFInfo
- Publication number
- CN104283806B CN104283806B CN201410604484.0A CN201410604484A CN104283806B CN 104283806 B CN104283806 B CN 104283806B CN 201410604484 A CN201410604484 A CN 201410604484A CN 104283806 B CN104283806 B CN 104283806B
- Authority
- CN
- China
- Prior art keywords
- business
- business function
- chain
- node
- message
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了业务链处理方法和设备。本申请中,只需要业务链识别设备支持负载均衡功能,由业务链识别设备按照负载均衡的方法为报文所属业务链中各个业务功能选择一个对应的业务功能节点,这能够实现有多个业务功能节点同时具有报文所属业务链中某一业务功能时,实现该多个业务功能节点之间的负载均衡。
Description
技术领域
本申请涉及网络通信技术,特别涉及业务链处理方法和设备。
背景技术
为使本申请容易理解,下面对本申请涉及的技术术语进行描述:
网络功能虚拟化(NFV:Network Function Virtualization),其目的是在标准服务器上运行网络功能软件,代替传统的网络设备;
虚拟网络功能(VNF:Virtualised Network Function),指的是运行在服务器上的网络功能软件;
业务链,是指按照一个指定顺序排列的业务功能集合;
业务功能,对报文进行业务处理的硬件或软件实体,例如防火墙,WAN优化,IPS,NAT等。相应地,将具有业务功能的设备称为业务功能节点;
负载均衡(LB:Load Balance),指的是按照某个策略将报文均匀分配到多个具有同一业务功能的业务功能节点上,降低对单一业务功能节点的性能压力。
以上对本申请涉及的技术术语进行了描述。
在实际应用中,针对一条业务链中的业务功能,可能存在多个具有该业务功能的业务功能节点,而如何在这些具有同一业务功能的业务功能节点之间实现负载均衡,目前现有业务链方案并没有给出具体的实现方法。
发明内容
本申请提供了业务链处理方法和设备,以实现在多个业务功能节点具有业务链中某一业务功能时实现该多个业务功能节点的负载均衡。
本申请提供的技术方案包括:
一种业务链处理方法,该方法用于业务链识别设备,包括:
接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链;
按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点;
确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备;
在所述报文上封装业务链封装头并发送至所述业务功能转发设备;所述业务链封装头中包含所述业务链、待处理的业务功能数量、所述业务链对应的业务链处理路径,其中,业务链处理路径为:按照所述业务链中业务功能的排列顺序对应排列为所述业务链中业务功能选择的业务功能节点的标识,所述待处理的业务功能数量为所述业务链中业务功能的总数量。
一种业务链处理方法,该方法应用于业务功能转发设备,包括:
接收封装了业务链封装头的报文;
识别所述业务链封装头中待处理的业务功能数量M;
识别所述业务链封装头中业务链处理路径所包含的业务功能节点标识的数量N;
根据识别出的所述业务功能数量M和所述业务功能节点标识的数量N之间的关系转发所述报文。
一种业务链处理设备,该设备应用于业务链识别设备,包括:
识别单元,用于接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链;
负载均衡单元,用于按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点;
确定单元,用于确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备;
发送单元,用于在所述报文上封装业务链封装头并发送至所述业务功能转发设备;所述业务链封装头中包含所述业务链、待处理的业务功能数量、所述业务链对应的业务链处理路径,其中,业务链处理路径为:按照所述业务链中业务功能的排列顺序对应排列为所述业务链中业务功能选择的业务功能节点的标识,所述待处理的业务功能数量为所述业务链中业务功能的总数量。
一种业务链处理设备,该设备应用于业务功能转发设备,包括:
接收单元,用于接收封装了业务链封装头的报文;
识别单元,用于识别所述业务链封装头中待处理的业务功能数量M,以及识别所述业务链封装头中业务链处理路径所包含的业务功能节点标识的数量N;
转发单元,用于根据识别出的所述业务功能数量M和所述业务功能节点标识的数量N之间的关系转发所述报文。
由以上技术方案可以看出,本申请只需要业务链识别设备支持负载均衡功能,由业务链识别设备按照负载均衡的方法为报文所属业务链中各个业务功能选择一个对应的业务功能节点,这能够实现有多个业务功能节点同时具有报文所属业务链中某一业务功能时,实现该多个业务功能节点之间的负载均衡;
进一步地,本申请只需要业务链识别设备支持负载均衡功能,并不要求业务功能节点、业务功能转发设备支持负载均衡功能,降低了对业务功能节点、业务功能转发设备的功能要求。
附图说明
图1为本发明提供的方法流程图;
图2为本发明提供的业务链封装头格式示意图;
图3为本发明提供的报文格式示意图;
图4为本发明提供的实施例示意图;
图5为本发明提供的第一种设备结构图;
图6为本发明提供的第二种设备结构图。
具体实施方式
本发明只需要业务链识别设备支持负载均衡就能实现整个业务链的负载均衡处理,而对业务功能转发设备、业务功能节点,则并不要求其支持负载均衡。
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
参见图1,图1为本发明提供的方法流程图。如图1所示,该流程可包括以下步骤:
步骤101,业务链识别设备接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链。
作为本发明的一个实施例,本发明中,为便于识别报文所属的业务链,可预先在业务链识别设备设置业务链识别信息与业务链之间的对应关系,基于此,本步骤101中,当接收到报文时,可基于该对应关系找到该报文携带的业务链识别信息对应的业务链,将该找到的业务链作为该报文所属的业务链。
优选地,本发明中,业务链识别信息可为报文携带的五元组信息中的一个或者多个。
步骤102,业务链识别设备按照负载均衡算法为业务链中各个业务功能选择一个对应的业务功能节点。
作为本发明的一个实施例,为实现步骤102,本发明中,需要业务链控制器实时下发业务功能节点的负载均衡参数至业务链识别设备。这里,负载均衡参数具体实现时可为CPU占用率、内存占用率、业务功能节点本地的链接数量等,本发明并不具体限定。
其中,优选地,作为本发明的一个实施例,业务链控制器可按照以下操作1下发业务功能节点的负载均衡参数至业务链识别设备:
操作1:针对每一业务功能,识别具有该业务功能的业务功能节点的数量,如果该数量大于1,则表示有多个业务功能节点具有该业务功能,后续执行该业务功能时可在这些业务功能节点上进行负载均衡,为便于实现负载均衡,业务链控制器会实时下发具有该业务功能的每一业务功能节点的负载均衡参数至业务链识别设备;而如果该数量为1,则表示只有一个业务功能节点具有该业务功能,不管该业务功能节点的负载均衡参数如何,都是需要该业务功能节点执行业务功能,没有必要下发该业务功能节点的负载均衡参数至业务链识别设备。
作为本发明的另一实施例,业务链控制器还可不按照上述操作1下发业务功能节点的负载均衡参数至业务链识别设备,而是直接实时下发每一业务功能节点的负载均衡参数至业务链识别设备。
基于上面描述的业务链控制器下发业务功能节点的负载均衡参数至业务链识别设备的操作,则步骤102具体为:
业务链识别设备针对所述业务链中每一业务功能,确定具有该业务功能的业务功能节点,如果确定出的业务功能节点的数量大于1,则根据最新接收的该确定出的各个业务功能节点的负载均衡参数并按照负载均衡算法从该确定出的各个业务功能节点中选择一个作为该业务功能对应的业务功能节点,如果确定出的业务功能节点的数量等于1,选择该确定出的业务功能节点为该业务功能对应的业务功能节点。
需要说明的是,本发明中,业务链控制器会预先下发业务链转发表至业务链识别设备,该业务链转发表至少包含以下四者之间的对应关系:业务链、业务功能节点、业务功能节点的标识、业务功能节点所属的业务功能转发设备。这里,业务功能节点的标识具体实现时可为业务功能节点的IP地址、名称、MAC地址等,本发明并不具体限定。
基于业务链转发表,上述针对所述业务链中每一业务功能,确定具有该业务功能的业务功能节点具体可包括:
针对所述业务链中每一业务功能,以该业务链、该业务功能为关键字,在所述业务链转发表中查找该关键字对应的业务功能节点,将查找到的业务功能节点确定为具有该业务功能的业务功能节点。
至此,完成步骤102的描述。通过步骤102能够实现整个业务链的负载均衡处理。
步骤103,确定所述业务链中首个业务功能对应的业务功能节点所属的业务功能转发设备。
如背景技术所述,业务链是业务功能按照指定顺序排列的组合。比如,业务链为业务功能1->业务功能2->业务功能3,则业务链中首个业务功能就为业务功能1。
如上所述,业务链控制器会预先下发业务链转发表至业务链识别设备,基于此,本步骤103中,确定业务链中首个业务功能对应的业务功能节点所属的业务功能转发设备具体可包括:
以业务链、在步骤102中为业务链中首个业务功能选择的业务功能节点为关键字在所述业务链转发表中查找该关键字对应的业务功能转发设备,将查找到的业务功能转发设备确定为业务链中首个业务功能对应的业务功能节点所属的业务功能转发设备。
步骤104,在所述报文上封装业务链封装头并发送至所述业务功能转发设备。
这里,所述业务链封装头中包含报文所属的业务链、待处理的业务功能数量、该业务链处理路径。作为本发明的一个实施例,图2示出了业务链封装头的格式。在图2中,路径标识字段(Path ID)携带报文所属的业务链,业务索引字段(Service Index)携带待处理的业务功能数量,VNF标识列表字段(VNF Identifier)携带业务链处理路径。对于业务链识别设备而言,其发送的报文中待处理的业务功能数量实质为报文所属业务链中业务功能的总数量。
其中,业务链处理业务路径具体为:按照该业务链中业务功能的排列顺序对应排列该业务链中业务功能所对应的业务功能节点的标识。
比如,业务链中业务功能的排列顺序为业务功能1->业务功能2->业务功能3,在步骤102中为业务功能1、业务功能2、业务功能3分别选择的业务功能节点为业务功能节点1a、业务功能节点2b、业务功能节点3c,则执行到本步骤104时,业务链处理路径就为:
业务功能节点1a的标识->业务功能节点2b的标识->业务功能节点3c的标识。
如上所述,业务链控制器会预先下发业务链转发表至业务链识别设备,基于此,这里业务链处理业务路径中各业务功能节点的标识可在业务链转发表中查找。
执行完步骤104,报文最终的格式如图3所示。其中,报文的外层承载报文头、原始报文均是现有报文的格式,这里不再赘述。
优选地,本发明中,为减轻业务链识别设备的负担,本申请可限制业务链识别设备只在接收到业务流的首个报文时执行步骤102,而其他情况不执行步骤102。为达到该目的,步骤102可进一步包括:识别所述报文所代表的业务流;在本地记录以下三者之间的对应关系:所述业务流、所述业务链、按照负载均衡算法分别为所述业务链中各个业务功能选择的对应业务功能节点;
基于此,本申请中,在执行步骤102之前,可先执行以下操作:
识别所述报文所代表的业务流(这里可预先在业务链识别设备配置业务流与业务流特征信息之间的对应关系,如此,可基于该对应关系和报文携带的业务流特征信息识别该报文所代表的业务流);
以识别出的业务流和所述业务链为关键字在本地记录的所述对应关系中查找包含该关键字的对应关系,如果查找到,直接在所述报文上增加所述业务链封装头并发送至所述业务链中首个业务功能对应的业务功能节点所属的业务功能转发设备,如果未查找到,继续执行步骤102的操作。
步骤105,业务功能转发设备接收封装了业务链封装头的报文。
步骤106,业务功能转发设备识别所述业务链封装头中待处理的业务功能数量(这里以M表示举例),以及识别所述业务链封装头中业务链处理路径所包含的业务功能节点标识的数量(这里以N表示举例),根据识别出的业务功能数量M和业务功能节点标识数量N之间的关系转发所述报文。
这里,作为本发明的一个实施例,业务功能转发设备根据识别出的业务功能数量M和业务功能节点标识的数量N之间的关系转发所述报文具体实现时可包括:
业务功能转发设备比较M与N,
如果M等于N,则将所述报文发送至具有所述业务链处理路径中首个业务功能节点标识的业务功能节点。这里,M等于N,意味着业务功能转发设备接收的报文还未执行其所属业务链的业务功能处理,基于此,业务功能转发设备就会将所述报文发送至具有所述业务链处理路径中首个业务功能节点标识的业务功能节点以进行业务链的首个业务功能处理。
如果M小于N,且M不等于0,则检测所述业务路径中第N-M+1个业务功能节点标识是否为所属本设备的业务功能节点的标识,如果是,将所述报文转发至具有第N-M+1个业务功能节点标识的业务功能节点;如果否,确定具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备,将所述报文发送至该确定出的业务功能转发设备。这里,M小于N,且M不等于0,意味着已对该报文执行其所属业务链中部分业务功能的处理,但还没有处理完,还需要进一步执行业务功能处理。优选地,本发明中,为便于业务功能转发设备确定具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备,业务链控制器会预先下发以下对应关系至业务功能转发设备:业务功能节点、业务功能节点的标识、业务功能节点所属的业务功能转发设备。基于此,业务功能转发设备确定具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备可包括:以第N-M+1个业务功能节点标识为关键字,在该对应关系中查找该关键字对应的业务功能转发设备,将该查找到业务功能转发设备确定为具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备。
如果M等于0,删除所述报文封装的业务链封装头,并向所述报文的目的IP地址转发。这里,M等于0,意味着已对该报文执行完其所属业务链中的所有业务功能,无需再对报文封装业务链封装头。其中,向所述报文的目的IP地址转发类似于现有的报文转发,这里不再赘述。
步骤107,业务功能节点从业务功能转发设备接收封装了业务链封装头的报文时,对所述报文执行本设备具有的业务功能的处理,在处理完成后,将所述业务链封装头中业务功能的总数量M减1,并沿原路返回报文给业务功能转发设备,返回步骤105。
需要说明的是,在实际应用中,一个业务功能节点唯一具有一个业务功能,一般不会出现一个业务功能节点同时具有两个以上业务功能的情况。
至此,完成图1所示流程。
下面通过一个具体实施例对图1所示流程进行描述:
在该实施例中,如上所述,业务链控制器预先负责向业务链识别设备下发如上所述的业务链转发表,并且,业务链控制器还会在具有同一个业务功能的业务功能节点数量大于1时实时向业务链识别设备下发该具有同一个业务功能的各个业务功能节点的负载均衡参数;
如图4所示,当报文到达业务链识别设备时,业务链识别设备对报文进行业务链识别,确定报文所属的业务链,这里,假如确定出的业务链为业务功能1->业务功能2->业务功能3。
假如业务链转发表中记录了以下3个业务功能节点具有业务功能1:业务功能节点1a、业务功能节点1b、业务功能节点1c,记录了以下2个业务功能节点具有业务功能2:业务功能节点2a、业务功能节点2b,以及记录了以下2个业务功能节点具有业务功能3:业务功能节点3a、业务功能节点3b,则,
业务链识别设备针对业务链中每一业务功能,根据具有该业务功能的各个业务功能节点的负载均衡参数,并实施负载均衡算法,选择这个业务功能对应的业务功能节点。假如业务链识别设备针对业务功能1选择业务功能节点1b对应,针对业务功能2选择业务功能节点2b对应,针对业务功能3选择业务功能节点3b对应。
业务链识别设备确定业务链中首个业务功能即业务功能1对应的业务功能节点1b所属的业务功能转发设备。这里,假如确定的业务功能转发设备为业务功能转发设备1。
业务链识别设备在报文上封装如图2所示的业务链头封装,其中Service Index设置为3(因为该报文所属业务链中有三个业务功能待处理),VNF Identifier中依次是业务功能节点1b的标识(这里以标识为IP地址为例)->业务功能节点2b的IP地址->业务功能节点3b的IP地址。
业务链识别设备将将封装后的报文发送给业务功能转发设备1。
业务功能转发设备1接收到报文后,发现该报文中Service Index中的数值M与VNFIdentifier中IP地址的数量N相等,都是3,则确定要把报文转发给业务功能节点1b的IP地址,把该报文的外层承载报文头的目的IP地址修改为业务功能节点1b的IP地址,从而将报文转发给业务功能节点1b。
业务功能节点1b收到业务功能转发设备1发送的报文后,对该报文执行业务功能的处理,处理完成后,将业务链封装头中Service Index中的数值M减1,即此时ServiceIndex中的数值M就为2,将报文发回给业务功能转发设备1。
业务功能转发设备1再次收到报文后,发现该报文中Service Index中的数值M为2,而VNF Identifier中IP地址的数量N为3,两者不相等,则检测VNF Identifier中第N-M+1(3-2+1)即2个IP地址对应的业务功能节点2b是否属于本设备,根据业务链控制器预先下发的以下对应关系:业务功能节点、业务功能节点的IP地址、业务功能节点所属的业务功能转发设备,发现VNF Identifier中第2个IP地址对应的业务功能节点2b所属的业务功能转发设备不为本设备,而是为业务功能转发设备2,则将报文发送给业务功能转发设备2。
业务功能转发设备2收到报文时,发现该报文中Service Index中的数值M为2,而VNF Identifier中IP地址的数量N为3,两者不相等,则检测VNF Identifier中第N-M+1(3-2+1)即2个IP地址对应的业务功能节点2b是否属于本设备,根据业务链控制器预先下发的以下对应关系:业务功能节点、业务功能节点的IP地址、业务功能节点所属的业务功能转发设备,发现VNF Identifier中第2个IP地址对应的业务功能节点2b所属的业务功能转发设备为本业务功能转发设备2,则将报文发送给VNF Identifier中第2个IP地址即业务功能节点2b。
业务功能节点2b收到业务功能转发设备2发送的报文后,对该报文执行业务功能的处理,处理完成后,将业务链封装头中Service Index中的数值M减1,即此时ServiceIndex中的数值M就为1,将报文发回至业务功能转发设备2。
业务功能转发设备2再次收到报文时,发现该报文中Service Index中的数值M为1,而VNF Identifier中IP地址的数量N为3,两者不相等,则检测VNF Identifier中第N-M+1(3-1+1)即3个IP地址对应的业务功能节点3b是否属于本设备,根据业务链控制器预先下发的以下对应关系:业务功能节点、业务功能节点的IP地址、业务功能节点所属的业务功能转发设备,发现VNF Identifier中第3个IP地址对应的业务功能节点3b所属的业务功能转发设备不为本业务功能转发设备2,而是为业务功能转发设备3,则将报文发送给业务功能转发设备3。
业务功能转发设备3收到报文时,发现该报文中Service Index中的数值M为1,而VNF Identifier中IP地址的数量N为3,两者不相等,则检测VNF Identifier中第N-M+1(3-1+1)即3个IP地址对应的业务功能节点3b是否属于本设备,根据业务链控制器预先下发的以下对应关系:业务功能节点、业务功能节点的IP地址、业务功能节点所属的业务功能转发设备,发现VNF Identifier中第3个IP地址对应的业务功能节点3b所属的业务功能转发设备为本业务功能转发设备3,则将报文发送给VNF Identifier中第3个IP地址即业务功能节点3b。
业务功能节点3b收到业务功能转发设备3发送的报文后,对该报文执行业务功能的处理,处理完成后,将业务链封装头中Service Index中的数值M减1,即此时ServiceIndex中的数值M就为0,将报文发回至业务功能转发设备3。
业务功能转发设备3再次收到报文时,发现该报文中Service Index中的数值M为0,意味着已对该报文执行完其所属业务链中的所有业务功能,则删除所述报文封装的业务链封装头,并向所述报文的目的IP地址转发。图4中的虚线示出了对报文执行整个业务链的处理。
至此,完成图4所示的流程。
以上对本发明提供的方法进行了描述。下面对本发明提供的设备进行描述:
参见图5,图5为本发明提供的第一种设备结构图。该设备应用于业务链识别设备,如图5所示,可包括:
识别单元,用于接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链;
负载均衡单元,用于按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点;
确定单元,用于确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备;
发送单元,用于在所述报文上封装业务链封装头并发送至所述业务功能转发设备;所述业务链封装头中包含所述业务链、待处理的业务功能数量、所述业务链对应的业务链处理路径,其中,业务链处理路径为:按照所述业务链中业务功能的排列顺序对应排列为所述业务链中业务功能选择的业务功能节点的标识,所述待处理的业务功能数量为所述业务链中业务功能的总数量。
优选地,所述识别单元进一步识别所述报文所代表的业务流,并在本地记录以下三者之间的对应关系:所述业务流、所述业务链、按照负载均衡算法分别为所述业务链中各个业务功能选择的对应业务功能节点;以及,
所述识别单元进一步在所述负载均衡单元按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点之前,进一步识别所述报文所代表的业务流,以识别出的业务流和所述业务链为关键字在本地记录的所述对应关系中查找包含该关键字的对应关系,如果查找到,触发所述发送单元在所述报文上增加所述业务链封装头并发送至所述确定单元确定的业务功能转发设备,如果未查找到,触发所述负载均衡单元继续执行按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点的操作。
优选地,所述负载均衡单元进一步接收业务链控制器下发的业务功能节点的负载均衡参数;
所述负载均衡单元按照负载均衡算法分别为业务链中各个业务功能选择一个对应的业务功能节点包括:
针对所述业务链中每一业务功能,确定具有该业务功能的业务功能节点,如果确定出的业务功能节点的数量大于1,根据最新接收的该确定出的各个业务功能节点的负载均衡参数并按照负载均衡算法从该确定出的各个业务功能节点中选择一个作为该业务功能对应的业务功能节点,如果确定出的业务功能节点的数量等于1,选择该确定出的业务功能节点为该业务功能对应的业务功能节点。
优选地,如图5所示,该设备进一步包括:
存储单元,用于接收并存储业务链控制器下发的业务链转发表;业务链转发表至少包含以下四者之间的对应关系:业务链、业务功能节点、业务功能节点的标识、业务功能节点所属的业务功能转发设备;
所述负载均衡单元确定具有业务功能的业务功能节点、确定为业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备、以及确定所述业务链处理路径中各个业务功能节点的标识是从所述业务链转发表查找的。
至此,完成图5所示的设备结构描述。
本发明还提供了第二种设备的结构。参见图6,图6为本发明提供的第二种设备结构图。该设备应用于业务功能转发设备,如图6所示,可包括:
接收单元,用于接收封装了业务链封装头的报文;
识别单元,用于识别所述业务链封装头中待处理的业务功能数量M,以及识别所述业务链封装头中业务链处理路径所包含的业务功能节点标识的数量N;
转发单元,用于根据识别出的所述业务功能数量M和所述业务功能节点标识的数量N之间的关系转发所述报文。
优选地,所述转发单元通过以下步骤转发所述报文:
比较所述业务功能数量M和所述业务功能节点标识的数量N,
如果M等于N,将所述报文发送至具有所述业务链处理路径中首个业务功能节点标识的业务功能节点;
如果M小于N,且M不等于0,检测所述业务路径中第N-M+1个业务功能节点标识是否为所属本设备的业务功能节点的标识,如果是,将所述报文转发至具有第N-M+1个业务功能节点标识的业务功能节点;如果否,确定具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备,将所述报文发送至该确定出的业务功能转发设备;
如果M等于0,删除所述报文封装的业务链封装头,向所述报文的目的IP地址转发。
至此,完成图6所示的设备结构描述。
以上对本发明提供的设备进行了描述。
由以上技术方案可以看出,本申请只需要业务链识别设备支持负载均衡功能,由业务链识别设备按照负载均衡的方法为报文所属业务链中各个业务功能选择一个对应的业务功能节点,这能够实现有多个业务功能节点同时具有报文所属业务链中某一业务功能时,实现该多个业务功能节点之间的负载均衡;
进一步地,本申请只需要业务链识别设备支持负载均衡功能,并不要求业务功能节点、业务功能转发设备支持负载均衡功能,降低了对业务功能节点、业务功能转发设备的功能要求;同时,由于不要求业务功能节点、业务功能转发设备支持负载均衡功能,则业务链控制器没有必要下发与负载均衡相关的信息至业务功能节点、业务功能转发设备,减少了业务链控制器与业务功能节点、业务功能转发设备之间的交互,降低了网络压力和管理复杂性,提升了网络的稳定性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (12)
1.一种业务链处理方法,其特征在于,该方法用于业务链识别设备,包括:
接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链;
按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点;
确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备;
在所述报文上封装业务链封装头并发送至所述业务功能转发设备;所述业务链封装头中包含所述业务链、待处理的业务功能数量、所述业务链对应的业务链处理路径,其中,业务链处理路径为:按照所述业务链中业务功能的排列顺序对应排列为所述业务链中业务功能选择的业务功能节点的标识,所述待处理的业务功能数量为所述业务链中业务功能的总数量。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
接收业务链控制器下发的业务功能节点的负载均衡参数;
所述按照负载均衡算法分别为业务链中各个业务功能选择一个对应的业务功能节点包括:
针对所述业务链中每一业务功能,确定具有该业务功能的业务功能节点;
如果确定出的业务功能节点的数量大于1,根据确定出的业务功能节点的负载均衡参数并按照负载均衡算法从该确定出的业务功能节点中选择一个作为该业务功能对应的业务功能节点;
如果确定出的业务功能节点的数量等于1,选择确定出的业务功能节点作为该业务功能对应的业务功能节点。
3.根据权利要求2所述的方法,其特征在于,该方法进一步包括:
接收并存储业务链控制器下发的业务链转发表;业务链转发表至少包含以下四者之间的对应关系:业务链、业务功能节点、业务功能节点的标识、业务功能节点所属的业务功能转发设备;
所述确定具有业务功能的业务功能节点、确定为业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备、以及所述业务链处理路径中各个业务功能节点的标识是从所述业务链转发表查找的。
4.根据权利要求1至3任一所述的方法,其特征在于,该方法进一步包括:
识别所述报文所代表的业务流;在本地记录以下三者之间的对应关系:所述业务流、所述业务链、按照负载均衡算法分别为所述业务链中各个业务功能选择的对应业务功能节点;
在按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点之前,该方法进一步包括:识别所述报文所代表的业务流,以识别出的业务流和所述业务链为关键字在本地记录的所述对应关系中查找包含该关键字的对应关系,如果查找到,在所述报文上增加所述业务链封装头并发送至所述业务功能转发设备,如果未查找到,继续执行按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点的操作。
5.一种业务链处理方法,其特征在于,该方法应用于业务功能转发设备,包括:
接收封装了业务链封装头的报文;所述封装了业务链封装头的报文由业务链识别设备在接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链,按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点,确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备后,在所述报文上封装业务链封装头并发送至所述业务功能转发设备得到;
识别所述业务链封装头中待处理的业务功能数量M;
识别所述业务链封装头中业务链处理路径所包含的业务功能节点标识的数量N;
根据识别出的所述业务功能数量M和所述业务功能节点标识的数量N之间的关系转发所述报文。
6.根据权利要求5所述的方法,其特征在于,所述根据识别出的所述业务功能数量M和所述业务功能节点标识的数量N之间的关系转发所述报文包括:
比较所述业务功能数量M和所述业务功能节点标识的数量N,
如果M等于N,将所述报文发送至具有所述业务链处理路径中首个业务功能节点标识的业务功能节点;
如果M小于N,且M不等于0,检测所述业务路径中第N-M+1个业务功能节点标识是否为所属本设备的业务功能节点的标识,如果是,将所述报文转发至具有第N-M+1个业务功能节点标识的业务功能节点;如果否,确定具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备,将所述报文发送至该确定出的业务功能转发设备;
如果M等于0,删除所述报文封装的业务链封装头,向所述报文的目的IP地址转发。
7.一种业务链处理设备,其特征在于,该设备应用于业务链识别设备,包括:
识别单元,用于接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链;
负载均衡单元,用于按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点;
确定单元,用于确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备;
发送单元,用于在所述报文上封装业务链封装头并发送至所述业务功能转发设备;所述业务链封装头中包含所述业务链、待处理的业务功能数量、所述业务链对应的业务链处理路径,其中,业务链处理路径为:按照所述业务链中业务功能的排列顺序对应排列为所述业务链中业务功能选择的业务功能节点的标识,所述待处理的业务功能数量为所述业务链中业务功能的总数量。
8.根据权利要求7所述的设备,其特征在于,所述负载均衡单元进一步接收业务链控制器下发的业务功能节点的负载均衡参数;
所述负载均衡单元按照负载均衡算法分别为业务链中各个业务功能选择一个对应的业务功能节点包括:
针对所述业务链中每一业务功能,确定具有该业务功能的业务功能节点,如果确定出的业务功能节点的数量大于1,根据最新接收的该确定出的各个业务功能节点的负载均衡参数并按照负载均衡算法从该确定出的各个业务功能节点中选择一个作为该业务功能对应的业务功能节点,如果确定出的业务功能节点的数量等于1,选择该确定出的业务功能节点作为该业务功能对应的业务功能节点。
9.根据权利要求8所述的设备,其特征在于,该设备进一步包括:
存储单元,用于接收并存储业务链控制器下发的业务链转发表;业务链转发表至少包含以下四者之间的对应关系:业务链、业务功能节点、业务功能节点的标识、业务功能节点所属的业务功能转发设备;
所述负载均衡单元确定具有业务功能的业务功能节点、确定为业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备、以及确定所述业务链处理路径中各个业务功能节点的标识是从所述业务链转发表查找的。
10.根据权利要求7至9任一所述的设备,其特征在于,所述识别单元进一步识别所述报文所代表的业务流,并在本地记录以下三者之间的对应关系:所述业务流、所述业务链、按照负载均衡算法分别为所述业务链中各个业务功能选择的对应业务功能节点;以及,
所述识别单元在所述负载均衡单元按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点之前,进一步识别所述报文所代表的业务流,以识别出的业务流和所述业务链为关键字在本地记录的所述对应关系中查找包含该关键字的对应关系,如果查找到,触发所述确定单元确定业务功能转发设备,如果未查找到,触发所述负载均衡单元继续执行按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点的操作。
11.一种业务链处理设备,其特征在于,该设备应用于业务功能转发设备,包括:
接收单元,用于接收封装了业务链封装头的报文;所述封装了业务链封装头的报文由业务链识别设备在接收报文,依据报文携带的业务链识别信息识别出报文所属的业务链,按照负载均衡算法分别为所述业务链中各个业务功能选择一个对应的业务功能节点,确定为所述业务链中首个业务功能选择的业务功能节点所属的业务功能转发设备后,在所述报文上封装业务链封装头并发送至所述业务功能转发设备得到;
识别单元,用于识别所述业务链封装头中待处理的业务功能数量M,以及识别所述业务链封装头中业务链处理路径所包含的业务功能节点标识的数量N;
转发单元,用于根据识别出的所述业务功能数量M和所述业务功能节点标识的数量N之间的关系转发所述报文。
12.根据权利要求11所述的设备,其特征在于,所述转发单元通过以下步骤转发所述报文:
比较所述业务功能数量M和所述业务功能节点标识的数量N,
如果M等于N,将所述报文发送至具有所述业务链处理路径中首个业务功能节点标识的业务功能节点;
如果M小于N,且M不等于0,检测所述业务路径中第N-M+1个业务功能节点标识是否为所属本设备的业务功能节点的标识,如果是,将所述报文转发至具有第N-M+1个业务功能节点标识的业务功能节点;如果否,确定具有第N-M+1个业务功能节点标识的业务功能节点所属的业务功能转发设备,将所述报文发送至该确定出的业务功能转发设备;
如果M等于0,删除所述报文封装的业务链封装头,向所述报文的目的IP地址转发。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410604484.0A CN104283806B (zh) | 2014-10-31 | 2014-10-31 | 业务链处理方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410604484.0A CN104283806B (zh) | 2014-10-31 | 2014-10-31 | 业务链处理方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104283806A CN104283806A (zh) | 2015-01-14 |
CN104283806B true CN104283806B (zh) | 2018-01-12 |
Family
ID=52258303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410604484.0A Active CN104283806B (zh) | 2014-10-31 | 2014-10-31 | 业务链处理方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104283806B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871572B (zh) * | 2015-01-20 | 2019-06-25 | 中国移动通信集团公司 | 业务链策略优化方法、装置及系统 |
US10587698B2 (en) * | 2015-02-25 | 2020-03-10 | Futurewei Technologies, Inc. | Service function registration mechanism and capability indexing |
CN106034087B (zh) | 2015-03-20 | 2019-12-20 | 中兴通讯股份有限公司 | 一种业务功能链负载均衡方法、装置及系统 |
CN106375355B (zh) * | 2015-07-20 | 2020-02-28 | 中兴通讯股份有限公司 | 负载均衡处理方法及装置 |
CN106411768B (zh) * | 2015-07-31 | 2019-08-23 | 中国电信股份有限公司 | 业务链资源调度方法和装置 |
US9948556B2 (en) | 2015-08-25 | 2018-04-17 | Google Llc | Systems and methods for externalizing network functions via packet trunking |
CN106603602A (zh) * | 2015-10-15 | 2017-04-26 | 中兴通讯股份有限公司 | 一种基于业务链信息的报文选路方法及装置 |
CN105376170B (zh) * | 2015-11-16 | 2018-08-03 | 中国人民解放军信息工程大学 | 一种负载均衡优先的虚拟化网络功能组合方法 |
CN106921532A (zh) * | 2015-12-25 | 2017-07-04 | 中国电信股份有限公司 | 一种业务链系统的性能管理方法、装置 |
WO2017113346A1 (zh) * | 2015-12-31 | 2017-07-06 | 华为技术有限公司 | 负荷分担的方法和业务交换机 |
US10397108B2 (en) * | 2016-01-25 | 2019-08-27 | Futurewei Technologies, Inc. | Service function chaining across multiple subnetworks |
CN110896371B (zh) * | 2016-02-14 | 2022-07-26 | 华为技术有限公司 | 一种虚拟网络设备及相关方法 |
US20170317886A1 (en) * | 2016-05-02 | 2017-11-02 | Huawei Technologies Co., Ltd. | Systems and Methods for Configuring a Radio Access Network Process in a Communications Network |
CN107786437B (zh) * | 2016-08-24 | 2020-12-15 | 华为技术有限公司 | 报文转发方法及装置 |
CN109150720B (zh) * | 2017-06-19 | 2022-04-12 | 中兴通讯股份有限公司 | 业务链报文转发方法、装置、设备及计算机可读存储介质 |
CN110661828A (zh) * | 2018-06-28 | 2020-01-07 | 中移(苏州)软件技术有限公司 | 一种资源分配方法、装置、服务器及可读存储介质 |
CN109614239A (zh) * | 2018-12-12 | 2019-04-12 | 浪潮(北京)电子信息产业有限公司 | 系统集群负载均衡方法、装置及相关设备 |
CN112583719A (zh) * | 2019-09-29 | 2021-03-30 | 中兴通讯股份有限公司 | 一种业务转发方法、装置、设备及计算机可读存储介质 |
CN110784535B (zh) * | 2019-10-25 | 2022-06-28 | 新华三信息安全技术有限公司 | 报文转发方法、装置及网络设备 |
CN111800352B (zh) * | 2020-06-30 | 2023-02-17 | 中国联合网络通信集团有限公司 | 基于负载均衡的服务功能链部署方法和存储介质 |
CN114697253A (zh) * | 2020-12-28 | 2022-07-01 | 华为技术有限公司 | 一种业务链的转发路径确定方法及通信装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101090377A (zh) * | 2007-07-31 | 2007-12-19 | 中兴通讯股份有限公司 | 网关上多业务数据流选路的实现方法 |
CN101656630A (zh) * | 2009-09-09 | 2010-02-24 | 中兴通讯股份有限公司 | 一种业务保护方法和系统 |
CN102065504A (zh) * | 2008-12-12 | 2011-05-18 | 华为技术有限公司 | 数据业务链路的处理方法、装置和通信系统 |
CN103929368A (zh) * | 2014-05-05 | 2014-07-16 | 华为技术有限公司 | 多业务单元负载均衡方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW595159B (en) * | 2003-04-04 | 2004-06-21 | Admtek Inc | Load balancing method of wireless local area network |
CN107342952B (zh) * | 2014-04-01 | 2022-03-01 | 华为技术有限公司 | 业务链路选择控制方法以及设备 |
CN103929492B (zh) * | 2014-04-28 | 2017-08-29 | 华为技术有限公司 | 业务链负载均衡方法及其装置、系统 |
-
2014
- 2014-10-31 CN CN201410604484.0A patent/CN104283806B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101090377A (zh) * | 2007-07-31 | 2007-12-19 | 中兴通讯股份有限公司 | 网关上多业务数据流选路的实现方法 |
CN102065504A (zh) * | 2008-12-12 | 2011-05-18 | 华为技术有限公司 | 数据业务链路的处理方法、装置和通信系统 |
CN101656630A (zh) * | 2009-09-09 | 2010-02-24 | 中兴通讯股份有限公司 | 一种业务保护方法和系统 |
CN103929368A (zh) * | 2014-05-05 | 2014-07-16 | 华为技术有限公司 | 多业务单元负载均衡方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104283806A (zh) | 2015-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104283806B (zh) | 业务链处理方法和设备 | |
CN104348740B (zh) | 数据包处理方法和系统 | |
CN105827495B (zh) | Vxlan网关的报文转发方法和设备 | |
CN103929368B (zh) | 多业务单元负载均衡方法及装置 | |
CN106254256B (zh) | 基于三层vxlan网关的数据报文转发方法和设备 | |
CN102136989B (zh) | 报文传输的方法、系统和设备 | |
US8948180B2 (en) | Routing encapsulated data packets onto selected VLANs | |
CN102739518B (zh) | 一种流量负载分担方法和设备 | |
CN107579923A (zh) | 一种sdn网络的链路负载均衡方法和sdn控制器 | |
CN104038425B (zh) | 转发以太网报文的方法和装置 | |
CN102857414A (zh) | 一种转发表写入、报文转发方法及装置 | |
CN101217528B (zh) | 一种链路聚合方法和装置 | |
CN101789949B (zh) | 一种实现负荷分担的方法和路由设备 | |
CN103731376B (zh) | 堆叠设备上链路汇聚根端口选择的方法及系统 | |
CN106330597A (zh) | Vxlan隧道端点vtep之间的路径可达检测方法和装置 | |
CN104937896A (zh) | 地址解析协议消息的处理方法和转发器、控制器 | |
CN106209637B (zh) | 从虚拟可扩展局域网至虚拟局域网的报文转发方法和设备 | |
CN107547391A (zh) | 一种报文传输方法和装置 | |
CN105556916A (zh) | 网络流的信息统计方法和装置 | |
WO2017054202A1 (zh) | 一种数据路由的方法及装置 | |
CN107579925A (zh) | 报文转发方法及装置 | |
CN105099721B (zh) | 维护组播成员的方法及设备 | |
CN104521220A (zh) | 报文处理方法及设备 | |
CN106487683A (zh) | 一种报文的处理方法及装置 | |
WO2016049926A1 (zh) | 一种数据包处理装置及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |