CN106375355B - 负载均衡处理方法及装置 - Google Patents
负载均衡处理方法及装置 Download PDFInfo
- Publication number
- CN106375355B CN106375355B CN201510429135.4A CN201510429135A CN106375355B CN 106375355 B CN106375355 B CN 106375355B CN 201510429135 A CN201510429135 A CN 201510429135A CN 106375355 B CN106375355 B CN 106375355B
- Authority
- CN
- China
- Prior art keywords
- load balancing
- node
- protocol
- parameters
- controller
- 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.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000012545 processing Methods 0.000 claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000004044 response Effects 0.000 claims description 35
- 238000000926 separation method Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 3
- 238000004808 supercritical fluid chromatography Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 241000252233 Cyprinus carpio Species 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了负载均衡处理方法及装置,其中,该方法包括:节点接收控制器发送的负载均衡参数;该节点根据该负载均衡参数对业务流量进行负载均衡处理,解决了相关技术中如何对业务进行负载均衡处理的问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及负载均衡处理方法及装置。
背景技术
目前提出了一种业务功能链的方式SFC(Service Function Chain),即把所有的业务整合,虚拟出Service overlay层,形成自己的服务拓扑,和底层网络解耦合,不再受到底层网络结构的限制,图1是根据相关技术中的业务功能链的架构图,如图1所示。然后,流量所要经过的业务路径由SFC决定。业务功能链通过增加对每条SFC的标识,并对流量进行分类,给不同类别的流量分配不同的SFC,即针对不同的流量,可以实施不同的业务功能链处理,实现差异化需求。
对于业务功能一样的业务功能组,需要有支持负载均衡功能的设备在前端,对流量进行一些算法,使得流量合理地分散到业务功能组上。对于某些低需求业务,推荐使用简单的负载均衡算法实现业务功能组之间的负载均衡;对于某些TCP/UDP业务,需要使用适用于TCP/UDP的负载均衡算法实现业务功能组之间的负载均衡;对于高需求的业务,当处理流量过大时,需要动态增加相应的业务功能来对这些流量进行分流,实现对这些业务功能组的流量分担,当处理流量减少时,需要动态减少相应的业务功能组来节省资源;同时,对于某些流量,要求在动态增加/删除业务功能的同时,能保持流量的原有连接不变。
同时,我们发现现有多种负载均衡的算法,每种都有其优势和劣势,算法可以包括:
静态算法(Static算法):为一个服务器指定多个IP:PORT,总是返回服务器组的第一个服务器,当第一个服务器不可用的时候,才返回后续可用的服务器;
随机算法(Random算法):根据随机算法Rand,随便选取一台服务器,每台服务器的命中率一样;
轮询算法(Round-robin算法):典型的平均主义,idx=(idx+1)%M,和随机算法的原理一致,每台服务器的命中率一样;但是,相同的请求会被落到不同的服务器上;
哈希算法(Hash算法):又叫取余算法,将query_key作为键值进行Hash,然后取余,选取一个服务器进行连接;具体算法为idx=hash(query_key)%M;这种算法简单,数据的分散性好,但是,当添加或者移除服务器时,余数会发生变化,这样就无法获取与之前相同的服务器;
CARP算法(Cache Array Routing Protocol算法):缓存群组路由协议。计算全部服务器的idx_key=hash(query_key+server_idx),其中,计算得到idx_key最大的server_idx就是需要的idx服务器;算法相对复杂一些,但是新增或者删除一台服务器时,不会引起已存服务器的重新选择;
一致性哈希算法(Consistent hash算法):首先算出服务器的哈希值,并将其配置到0~2^23的圆上,然后用同样的方法求出存储数据的健的哈希值,并映射到圆上。然后从数据映射到的位置开始顺时针查找,将数据保存到找到的第一个服务器上,如果超过2^23仍然找不到服务器,就会保存到第一台服务器上。具体算法idx=FirstMaxServerIdx(hash(query_key))。一致性哈希算法适用于每个节点只保存部分数据,而不像前面的几种算法,每个服务器保存全部数据。这样做的好处是能够把服务器映射到一段interval上,而这段interval就会包括一定数目的对象的hash值。如果某台服务器被移除,那么它映射到的interval被和移除服务器相邻的服务器托管,其他所有服务器不变;也就是说一致性哈希算法最大程度的避免了key在服务节点列表上的重新分布;
最少连接法:负载均衡器记录当前所有活跃链接,把下一个新的请求发给当前含有最少连接数的服务器;这种算法针对TCP连接进行;但由于不同应用对系统资源的消耗可能差异很大,而连接数无法反映出真实的应用负载,因此在使用重型Web服务器作为集群服务器时,该算法在负载均衡的效果上要打折扣;
最快响应法:负载均衡器记录自身到每一个服务器的网络响应时间,并将到达的连接请求分配给响应时间最短的服务器,这种方法要求使用ICMP包或基于UDP包的专用技术来主动探测各服务器。
当前网络中,根据业务特性不一样,业务功能链上发生负载均衡时,会选择不同的负载均衡算法;但是,负载均衡器上并不知道选择何种算法作为对应业务的负载均衡算法。
针对相关技术中如何对业务进行负载均衡处理的问题,还未提出有效的解决方案。
发明内容
本发明提供了负载均衡处理方法及装置,以至少解决相关技术中如何对业务进行负载均衡处理的问题。
根据本发明的一个方面,提供了一种负载均衡处理方法,包括:节点接收控制器发送的负载均衡参数;所述节点根据所述负载均衡参数对业务流量进行负载均衡处理。
进一步地,所述节点根据所述负载均衡参数对所述业务流量进行负载均衡处理包括:在所述节点为支持负载均衡功能的节点的情况下,在接收到待处理的业务流量时,所述节点根据所述负载均衡参数对所述业务流量进行负载均衡处理;或者,在所述节点为不支持负载均衡功能的节点的情况下,所述节点通过元数据的方式,将所述负载均衡参数传递给支持负载均衡功能的节点,供所述支持负载均衡功能的节点在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理。
进一步地,在所述节点为支持负载均衡功能的节点的情况下,在所述节点接收控制器发送的负载均衡参数之后,所述方法还包括:所述节点对所述负载均衡参数进行配置。
进一步地,所述方法还包括:在所述节点配置成功的情况下,所述节点向所述控制器发送配置成功消息;在所述节点配置失败的情况下,所述节点向所述控制器发送配置失败消息。
进一步地,在所述节点接收所述控制器发送的负载均衡参数之前,所述方法还包括:所述节点接收所述控制器对所述负载均衡参数进行查询的请求消息;所述节点根据所述请求消息向所述控制器发送响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数,所述响应消息用于所述控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,所述负载均衡参数中携带有用于进行负载均衡处理的负载均衡算法和负载均衡算法标识。
进一步地,所述节点通过以下方法之一接收所述控制器发送的负载均衡参数:开放流Openflow协议,网络配置协议(Network Configuration Protocol,简称为Netconf协议),简单网络管理协议(Simple Network Management Protocol,简称为SNMP协议),边界网关协议链路状态(Border Gateway Protocol-Link State,简称为BGP-LS),位置和身份标识分离协议(Location-ID Separation Protocol,简称为LISP协议)。
根据本发明的另一方面,提供了一种负载均衡处理方法,包括:控制器确定负载均衡参数;所述控制器向所述节点发送所述负载均衡参数,所述负载均衡参数用于所述节点根据所述负载均衡参数对所述业务流量进行负载均衡处理。
进一步地,在所述控制器向所述节点发送所述负载均衡参数之后,所述方法还包括:在所述节点为支持负载均衡功能的节点的情况下,所述控制器接收所述节点发送的配置成功消息或配置失败消息。
进一步地,在所述控制器向节点发送所述负载均衡参数之前,所述方法还包括:所述控制器向所述节点发送对所述负载均衡参数进行查询的请求消息;所述控制器接收所述节点发送的响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数。
进一步地,控制器确定所述负载均衡参数包括:所述控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点的负载均衡参数,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,所述控制器通过以下方法之一向所述节点发送所述负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
进一步地,所述负载均衡参数中携带有用于进行负载均衡处理的负载均衡算法和负载均衡算法标识。
根据本发明的另一方面,还提供了一种负载均衡处理装置,应用于节点,包括:第一接收模块,用于接收控制器发送的负载均衡参数;负载均衡模块,用于根据所述负载均衡参数对业务流量进行负载均衡处理。
进一步地,所述负载均衡模块包括:负载均衡单元,用于在所述节点为支持负载均衡功能的节点的情况下,在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理;或者,传递单元,用于在所述节点为不支持负载均衡功能的节点的情况下,通过元数据的方式,将所述负载均衡参数传递给支持负载均衡功能的节点,供所述支持负载均衡功能的节点在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理。
进一步地,所述装置还包括:配置模块,用于在所述节点为支持负载均衡功能的节点的情况下,在所述节点接收控制器发送的负载均衡参数之后,对所述负载均衡参数进行配置。
进一步地,所述装置还包括:第一发送模块,用于在所述节点配置成功的情况下,向所述控制器发送配置成功消息;第二发送模块,用于在所述节点配置失败的情况下,向所述控制器发送配置失败消息。
进一步地,所述装置还包括:第二接收模块,用于接收所述控制器对所述负载均衡参数进行查询的请求消息;第三发送模块,用于根据所述请求消息向所述控制器发送响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数,所述响应消息用于所述控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,所述第一接收模块还用于通过以下方法之一接收所述控制器发送的负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
根据本发明的再一方面,还提供了一种负载均衡处理装置,应用于控制器,包括:确定模块,用于确定负载均衡参数;发送参数模块,用于向所述节点发送所述负载均衡参数,所述负载均衡参数用于所述节点在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理。
进一步地,所述装置还包括:第三接收模块,用于接收所述节点发送的配置成功消息或配置失败消息。
进一步地,所述装置还包括:第四发送模块,用于向所述节点发送对所述负载均衡参数进行查询的请求消息;第四接收模块,用于接收所述节点发送的响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数。
进一步地,所述确定模块包括:选择确定单元,用于根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,所述发送参数模块还用于通过以下方法之一向所述节点发送所述负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
通过本发明,采用节点接收控制器发送的负载均衡参数;所述节点根据所述负载均衡参数对业务流量进行负载均衡处理,解决了相关技术中如何对业务进行负载均衡处理的问题,实现了能够通过负载均衡参数进行负载均衡处理。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术中的业务功能链的架构图;
图2是根据本发明实施例的负载均衡处理方法的流程图一;
图3是根据本发明实施例的负载均衡处理方法的流程图二;
图4是根据本发明实施例的负载均衡处理方法的框图一;
图5是根据本发明实施例的负载均衡处理方法的框图二;
图6是根据本发明实施例的基于TLV格式实现负载均衡相关参数的示意图;
图7是根据本发明实施例的基于Openflow协议扩展实施例一的示意图;
图8是根据本发明实施例的基于Openflow协议扩展实施例二的示意图;
图9是根据本发明实施例的基于Netconf协议扩展实施例三的示意图;
图10是根据本发明实施例的基于Netconf协议扩展实施例四的示意图;
图11是根据本发明实施例的业务功能链报文头携带负载均衡相关参数的示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例提供了一种负载均衡处理方法,图2是根据本发明实施例的负载均衡处理方法的流程图一,如图2所示,包括:
步骤S202,节点接收控制器发送的负载均衡参数;
步骤S204,节点根据该负载均衡参数对业务流量进行负载均衡处理。
通过上述步骤,节点接收控制器发送的负载均衡参数;该节点根据该负载均衡参数对业务流量进行负载均衡处理,解决了相关技术中如何对业务进行负载均衡处理的问题,能够通过负载均衡参数进行负载均衡处理。
节点根据该负载均衡参数对该业务流量进行负载均衡处理可以包括:在该节点为支持负载均衡功能的节点的情况下,在接收到待处理的业务流量时,该节点根据该负载均衡参数对该业务流量进行负载均衡处理;或者,在该节点为不支持负载均衡功能的节点的情况下,该节点通过元数据的方式,将该负载均衡参数传递给支持负载均衡功能的节点,供该支持负载均衡功能的节点在接收到待处理的业务流量时,根据该负载均衡参数对该业务流量进行负载均衡处理。
在一个可选的实施例中,在节点为支持负载均衡功能的节点的情况下,在该节点接收控制器发送的负载均衡参数之后,该节点对负载均衡参数进行配置。
进一步地,在该节点配置成功的情况下,该节点向该控制器发送配置成功消息;在该节点配置失败的情况下,该节点向该控制器发送配置失败消息。
节点接收该控制器对该负载均衡参数进行查询的请求消息;该节点根据该请求消息向该控制器发送响应消息,其中,该响应消息中携带有该节点已支持的负载均衡参数,该响应消息用于该控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的该节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给该节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,上述的负载均衡参数中携带有用于进行负载均衡处理的负载均衡算法和负载均衡算法标识。
进一步地,上述的节点通过以下方法之一接收控制器发送的负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
本发明实施例还提供了一种负载均衡处理方法,图3是根据本发明实施例的负载均衡处理方法的流程图二,如图3所示,包括:
步骤S302,控制器确定负载均衡参数;
步骤S304,控制器向该节点发送该负载均衡参数,该负载均衡参数用于该节点根据该负载均衡参数对业务流量进行负载均衡处理。
在一个可选的实施例中,在该控制器向该节点发送负载均衡参数之后,在该节点为支持负载均衡功能的节点的情况下,该控制器接收该节点发送的配置成功消息或配置失败消息。
在控制器向节点发送负载均衡参数之前,该控制器向该节点发送对该负载均衡参数进行查询的请求消息;该控制器接收该节点发送的响应消息,其中,该响应消息中携带有该节点已支持的负载均衡参数。
控制器确定该负载均衡参数可以包括:该控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的该节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给该节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
控制器通过以下方法之一向该节点发送该负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
进一步地,上述的负载均衡参数中携带有用于进行负载均衡处理的负载均衡算法和负载均衡算法标识。
本发明实施例提供了一种负载均衡处理装置,应用于节点,图4是根据本发明实施例的负载均衡处理方法的框图一,如图4所示,包括:
第一接收模块42,用于接收控制器发送的负载均衡参数;
负载均衡模块44,用于根据该负载均衡参数对业务流量进行负载均衡处理。
进一步地,该负载均衡模块包括:负载均衡单元,用于在该节点为支持负载均衡功能的节点的情况下,在接收到待处理的业务流量时,根据该负载均衡参数对该业务流量进行负载均衡处理;或者,传递单元,用于在该节点为不支持负载均衡功能的节点的情况下,通过元数据的方式,将该负载均衡参数传递给支持负载均衡功能的节点,供该支持负载均衡功能的节点在接收到待处理的业务流量时,根据该负载均衡参数对该业务流量进行负载均衡处理。
进一步地,该装置还包括:配置模块,用于在该节点为支持负载均衡功能的节点的情况下,在该节点接收控制器发送的负载均衡参数之后,对该负载均衡参数进行配置。
进一步地,该装置还包括:第一发送模块,用于在该节点配置成功的情况下,向该控制器发送配置成功消息;第二发送模块,用于在该节点配置失败的情况下,向该控制器发送配置失败消息。
进一步地,该装置还包括:第二接收模块,用于接收该控制器对该负载均衡参数进行查询的请求消息;第三发送模块,用于根据该请求消息向该控制器发送响应消息,其中,该响应消息中携带有该节点已支持的负载均衡参数,该响应消息用于该控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的该节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给该节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,上述的第一接收模块还用于通过以下方法之一接收控制器发送的负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
本发明实施例还提供了一种负载均衡处理装置,应用于控制器,图5是根据本发明实施例的负载均衡处理方法的框图二,如图5所示,包括:
确定模块52,用于确定负载均衡参数,其中,该负载均衡参数中携带有负载均衡算法;
发送参数模块54,用于向该节点发送该负载均衡参数,该负载均衡参数用于该节点在接收到待处理的业务流量时,根据该负载均衡算法对该业务流量进行负载均衡处理。
进一步地,该装置还包括:第三接收模块,用于接收该节点发送的配置成功消息或配置失败消息。
进一步地,该装置还包括:第四发送模块,用于向该节点发送对该负载均衡参数进行查询的请求消息;第四接收模块,用于接收该节点发送的响应消息,其中,该响应消息中携带有该节点已支持的负载均衡参数;
进一步地,该确定模块包括:选择确定单元,用于根据业务功能链的业务所需要的负载均衡参数,结合接收到的该节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给该节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
进一步地,该发送参数模块还用于通过以下方法之一向该节点发送该负载均衡参数:Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议。
针对相关技术中存在的上述问题,下面以负载均衡相关参数代替上述的负载均衡参数,节点为接收设备为例,结合具体的可选实施例进行进一步说明,下述可选实施例结合了上述可选实施例及其可选实施方式。
本发明实施例提供了一种业务功能链实现负载均衡的方法,所述方法包括:控制器支持负载均衡相关参数的下发;接收设备支持上述负载均衡相关参数的接收,并根据接收到的相关参数设置负载均衡相关参数,和/或通知需要支持负载均衡功能的设备设置其负载均衡相关参数;当支持负载均衡功能的设备接收到待处理的业务流量时,根据配置的算法对业务流量进行负载均衡分流。
进一步地,控制器根据业务功能链中业务的特性,下发业务功能链所需负载均衡相关参数。
进一步地,控制器支持对接收设备的负载均衡相关参数的查询。
进一步地,接收到来自于接收设备的已支持的负载均衡相关参数的查询响应后,控制器根据业务功能链自身的业务需求所需要的负载均衡相关参数,结合接收到的所述接收设备已支持的负载均衡相关参数,选择最优的负载均衡相关参数下发给所述接收设备,例如,对于实现多个NAT的负载均衡,需要负载均衡器选择的算法支持相同的流量到同一个NAT上,而不是一会到这个NAT,过一会到另外一个NAT。
进一步地,接收设备支持来自于控制器的负载均衡相关参数的查询,并根据自身已支持的负载均衡相关参数,发送响应消息给控制器;进一步地,接收设备可以是分类器Classifier,业务功能转发器Service Function Forwarder,业务功能Service Function任意之一。
进一步地,当接收设备是分类器Classifier或者是不需要支持负载均衡功能的设备时,分类器或者不需要支持负载均衡功能的设备可以通过元数据metadata的方式将负载均衡相关参数通知给需要支持负载均衡功能的设备,该设备进一步根据接收到的参数进行负载均衡参数的配置。
进一步地,当接收设备是需要支持负载均衡功能的设备本身时,则根据接收到的负载均衡相关参数进行配置。
进一步地,控制器可以通过Openflow协议,Netconf协议,SNMP协议,BGP-LS,LISP协议等的扩展,实现负载均衡相关参数的下发。
进一步地,负载均衡相关参数包括负载均衡算法、负载均衡算法标识等信息。
对于负载均衡相关参数的下发,主要涉及负载均衡算法的下发,本发明实施例使用TLV格式扩展报文结构,图6是根据本发明实施例的基于TLV格式实现负载均衡相关参数的示意图,如图6所示,其中,使用一个字节(8-bit)来标识不同的负载均衡算法,包括但不限于如下算法及标识:
0000 0001:标识静态算法;
0000 0010:标识随机算法;
0000 0011:标识轮询算法;
0000 0100:标识哈希算法;
0000 0101:标识CARP算法;
0000 0110:标识一致性哈希算法;
0000 0111:标识最少链接算法;
0000 1000:标识最快响应算法;
等等。
下面结合具体实施例对本发明实施例进行进一步说明。
实施例一
本发明实施例基于Openflow开流协议扩展,定义了一个新的Openflow消息用于负载均衡,当控制器需要针对某类业务实现负载均衡时,可以直接下发负载均衡相关参数,或者会主动下发请求查询消息到接收设备,获取接收设备能力后,再根据协商出的负载均衡参数,进行下发;Openflow负载均衡消息包括如下:
图7是根据本发明实施例的基于Openflow协议扩展实施例一的示意图,如图7所示,业务功能1和业务功能2均是NAT业务,数据报文到达业务功能转发器(ServiceFunction Forwarder1,简称为SFF1)时,需要根据负载均衡算法确定数据报文到底由哪个业务功能NAT处理,包括:
步骤1,Openflow控制器向需要支持负载均衡的SFF1发送负载均衡参数的配置消息,该消息用来对所述业务功能转发器SFF1进行配置,如配置业务功能链负载均衡相关参数。
步骤2,配置成功后,所述业务功能转发器SFF1向Openflow控制器回复携带参数配置成功的回复消息。
步骤3,配置失败后,所述业务功能转发器SFF1向Openflow控制器回复携带参数配置失败的回复消息。
步骤4,数据报文转发到所述业务功能转发器SFF1时,根据负载均衡算法对数据报文进行计算,发现计算结果是业务功能SF2,于是将报文转发到业务功能SF2上进行处理;
实施例二
基于上述实施例一中Openflow扩展,图8是根据本发明实施例的基于Openflow协议扩展实施例二的示意图,如图8所示,业务功能1和业务功能2均是NAT业务,数据报文到达业务功能转发器SFF1时,需要根据负载均衡算法确定数据报文到底由哪个业务功能NAT处理,包括:
步骤1,Openflow控制器查询需要支持负载均衡的SFF1的负载均衡相关参数。
步骤2,所述业务功能转发器SFF1向Openflow控制器发送回复消息,其中携带自身支持的负载均衡相关参数。
步骤3,Openflow控制器收到所述业务功能转发器SFF1发送的回复消息后,结合业务功能链自身的业务需求所需要的负载均衡相关参数,向所述业务功能转发器SFF1发送合适的配置消息来配置负载均衡相关参数。
步骤4,配置成功后,所述业务功能转发器SFF1向Openflow控制器回复携带参数配置成功的回复消息。
步骤5,配置失败后,所述SFF1向Openflow控制器回复携带参数配置失败的回复消息;
步骤6,数据报文转发到所述业务功能转发器SFF1时,根据负载均衡算法对数据报文进行计算,发现计算结果是业务功能SF2,于是将报文转发到业务功能SF2上进行处理。
实施例三
图9是根据本发明实施例的基于Netconf协议扩展实施例三的示意图,如图9所示,业务功能1和业务功能2均是NAT业务,数据报文到达业务功能转发器SFF1时,需要根据负载均衡算法确定数据报文到底由哪个业务功能NAT处理,包括:
步骤1,Openflow配置点查询需要支持负载均衡的SFF1上的负载均衡相关参数。
步骤2,所述业务功能转发器SFF1向Openflow配置点回复远程程序调用协议回复消息,其中携带自身支持的负载均衡相关参数。
步骤3,Openflow配置点收到远程程序调用协议回复消息后,结合业务功能链自身的业务需求所需要的负载均衡相关参数,向所述业务功能转发器SFF1发送编辑配置消息来配置负载均衡相关参数。
步骤4,配置成功后,所述业务功能转发器SFF1向Openflow配置点回复携带参数配置成功的远程程序调用协议回复消息。
步骤5,配置失败后,所述业务功能转发器SFF1向Openflow配置点回复携带错误信息的远程程序调用协议回复消息。
步骤6,数据报文转发到所述业务功能转发器SFF1时,根据负载均衡算法对数据报文进行计算,发现计算结果是业务功能SF2,于是将报文转发到业务功能SF2上进行处理。
实施例四
图10是根据本发明实施例的基于Netconf协议扩展实施例四的示意图,如图10所示,业务功能1和业务功能2均是NAT业务,数据报文到达业务功能转发器SFF1时,需要根据负载均衡算法确定数据报文到底由哪个业务功能NAT处理。但是,业务功能转发器SFF1并不支持来自于控制器Netconf的负载均衡相关参数的下发;分类器Classifier支持来自于控制器Netconf的负载均衡相关参数的下发,包括:
步骤1,Openflow配置点向分类器Classifier发送编辑配置消息,该消息用来对所述分类器Classifier进行配置,如配置业务功能链负载均衡相关参数。
步骤2,配置成功后,所述分类器Classifier向Openflow配置点回复携带参数配置成功的远程程序调用协议回复消息。
步骤3,配置失败后,所述分类器Classifier向Openflow配置点回复携带错误信息的远程程序调用协议回复消息。
步骤4,数据报文到达所述分类器Classifier,分类器对报文进行分类,发现该数据报文经历的业务功能路径中存在一个SFF1需要支持负载均衡功能,于是,所述Classifier将负载均衡相关参数封装在业务功能报文头的元数据Metadata中,图11是根据本发明实施例的业务功能链报文头携带负载均衡相关参数的示意图,报文封装格式如图11所示,随着报文转发到所述业务功能转发器SFF1,该SFF1提取出元数据Metadata的负载均衡相关参数信息,进行负载均衡,将数据报文分发到相应的业务功能SF2上去处理。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种负载均衡处理方法,其特征在于,包括:
节点接收控制器发送的负载均衡参数;
所述节点根据所述负载均衡参数对业务流量进行负载均衡处理;
其中,在所述节点为支持负载均衡功能的节点的情况下,在所述节点接收控制器发送的负载均衡参数之后,所述节点对所述负载均衡参数进行配置;
在所述节点接收所述控制器发送的负载均衡参数之前,所述方法还包括:
所述节点接收所述控制器对所述负载均衡参数进行查询的请求消息;
所述节点根据所述请求消息向所述控制器发送响应消息;
其中,所述响应消息中携带有所述节点已支持的负载均衡参数,所述响应消息用于所述控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
2.根据权利要求1所述的方法,其特征在于,所述节点根据所述负载均衡参数对所述业务流量进行负载均衡处理包括:
在所述节点为支持负载均衡功能的节点的情况下,在接收到待处理的业务流量时,所述节点根据所述负载均衡参数对所述业务流量进行负载均衡处理;或者,
在所述节点为不支持负载均衡功能的节点的情况下,所述节点通过元数据的方式,将所述负载均衡参数传递给支持负载均衡功能的节点,供所述支持负载均衡功能的节点在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述节点配置成功的情况下,所述节点向所述控制器发送配置成功消息;
在所述节点配置失败的情况下,所述节点向所述控制器发送配置失败消息。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述负载均衡参数中携带有用于进行负载均衡处理的负载均衡算法和负载均衡算法标识。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述节点通过以下方法之一接收所述控制器发送的负载均衡参数:
开放流Openflow协议,网络配置协议Netconf协议,简单网络管理协议SNMP协议,边界网关协议链路状态BGP-LS,位置和身份标识分离协议LISP协议。
6.一种负载均衡处理方法,其特征在于,包括:
控制器确定负载均衡参数;
所述控制器向节点发送所述负载均衡参数,所述负载均衡参数用于所述节点根据所述负载均衡参数对业务流量进行负载均衡处理;
其中,在所述控制器向所述节点发送所述负载均衡参数之后,在所述节点为支持负载均衡功能的节点的情况下,所述控制器接收所述节点发送的配置成功消息或配置失败消息;
在所述控制器向节点发送所述负载均衡参数之前,所述控制器向所述节点发送对所述负载均衡参数进行查询的请求消息;
所述控制器接收所述节点发送的响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数;
其中,所述控制器确定所述负载均衡参数包括:
所述控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
7.根据权利要求6所述的方法,其特征在于,所述控制器通过以下方法之一向所述节点发送所述负载均衡参数:
开放流Openflow协议,网络配置协议Netconf协议,简单网络管理协议SNMP协议,边界网关协议链路状态BGP-LS,位置和身份标识分离协议LISP协议。
8.根据权利要求6所述的方法,其特征在于,所述负载均衡参数中携带有用于进行负载均衡处理的负载均衡算法和负载均衡算法标识。
9.一种负载均衡处理装置,其特征在于,应用于节点,包括:
第一接收模块,用于接收控制器发送的负载均衡参数;
负载均衡模块,用于根据所述负载均衡参数对业务流量进行负载均衡处理;
所述装置还包括:
配置模块,用于在所述节点为支持负载均衡功能的节点的情况下,在所述节点接收控制器发送的负载均衡参数之后,对所述负载均衡参数进行配置;
第二接收模块,用于接收所述控制器对所述负载均衡参数进行查询的请求消息;
第三发送模块,用于根据所述请求消息向所述控制器发送响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数,所述响应消息用于所述控制器根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
10.根据权利要求9所述的装置,其特征在于,所述负载均衡模块包括:
负载均衡单元,用于在所述节点为支持负载均衡功能的节点的情况下,在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理;或者,
传递单元,用于在所述节点为不支持负载均衡功能的节点的情况下,通过元数据的方式,将所述负载均衡参数传递给支持负载均衡功能的节点,供所述支持负载均衡功能的节点在接收到待处理的业务流量时,根据所述负载均衡参数对所述业务流量进行负载均衡处理。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第一发送模块,用于在所述节点配置成功的情况下,向所述控制器发送配置成功消息;
第二发送模块,用于在所述节点配置失败的情况下,向所述控制器发送配置失败消息。
12.根据权利要求9至10中任一项所述的装置,其特征在于,所述第一接收模块还用于通过以下方法之一接收所述控制器发送的负载均衡参数:开放流Openflow协议,网络配置协议Netconf协议,简单网络管理协议SNMP协议,边界网关协议链路状态BGP-LS,位置和身份标识分离协议LISP协议。
13.一种负载均衡处理装置,其特征在于,应用于控制器,包括:
确定模块,用于确定负载均衡参数;
发送参数模块,用于向节点发送所述负载均衡参数,所述负载均衡参数用于所述节点根据所述负载均衡参数对业务流量进行负载均衡处理;
其中,所述装置还包括:
第三接收模块,用于在所述节点为支持负载均衡功能的节点的情况下,接收所述节点发送的配置成功消息或配置失败消息;
第四发送模块,用于向所述节点发送对所述负载均衡参数进行查询的请求消息;
第四接收模块,用于接收所述节点发送的响应消息,其中,所述响应消息中携带有所述节点已支持的负载均衡参数;
其中,所述确定模块包括:
选择确定单元,用于根据业务功能链的业务所需要的负载均衡参数,结合接收到的所述节点已支持的负载均衡参数,确定最优的负载均衡参数,并发送给所述节点,其中,所述最优的负载均衡参数为根据业务特性选择与所述业务匹配的负载均衡参数。
14.根据权利要求13所述的装置,其特征在于,所述发送参数模块还用于通过以下方法之一向所述节点发送所述负载均衡参数:开放流Openflow协议,网络配置协议Netconf协议,简单网络管理协议SNMP协议,边界网关协议链路状态BGP-LS,位置和身份标识分离协议LISP协议。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510429135.4A CN106375355B (zh) | 2015-07-20 | 2015-07-20 | 负载均衡处理方法及装置 |
PCT/CN2016/088798 WO2017012471A1 (zh) | 2015-07-20 | 2016-07-06 | 负载均衡处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510429135.4A CN106375355B (zh) | 2015-07-20 | 2015-07-20 | 负载均衡处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106375355A CN106375355A (zh) | 2017-02-01 |
CN106375355B true CN106375355B (zh) | 2020-02-28 |
Family
ID=57833554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510429135.4A Expired - Fee Related CN106375355B (zh) | 2015-07-20 | 2015-07-20 | 负载均衡处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106375355B (zh) |
WO (1) | WO2017012471A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109327400B (zh) | 2017-08-01 | 2022-04-26 | 华为技术有限公司 | 一种数据通信方法及数据通信网络 |
CN108984306A (zh) * | 2018-07-16 | 2018-12-11 | 广发证券股份有限公司 | 一种依据tcp请求质量评估的负载均衡调度系统和方法 |
CN110399178B (zh) * | 2019-06-14 | 2022-09-27 | 五八有限公司 | 一种第三方服务的调用方法、装置、电子设备和存储介质 |
CN110839086A (zh) * | 2019-12-23 | 2020-02-25 | 吉林省民航机场集团公司 | 一种高并发负载均衡处理方法 |
CN112749015B (zh) * | 2021-01-25 | 2023-07-25 | 杭州迪普科技股份有限公司 | 负载均衡方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207568A (zh) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | 多协议适配器及其对多种业务实现适配处理的方法 |
CN101207550A (zh) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | 负载均衡系统及多种业务实现负载均衡的方法 |
CN102711177A (zh) * | 2012-04-26 | 2012-10-03 | 北京邮电大学 | 基于业务预测的负载均衡方法 |
CN102932270A (zh) * | 2012-11-27 | 2013-02-13 | 无锡城市云计算中心有限公司 | 支持网络安全业务的负载均衡方法和设备 |
CN103929492A (zh) * | 2014-04-28 | 2014-07-16 | 华为技术有限公司 | 业务链负载均衡方法及其装置、系统 |
CN104079630A (zh) * | 2014-06-09 | 2014-10-01 | 中国建设银行股份有限公司 | 一种业务服务端负载均衡方法、客户端、服务端以及系统 |
CN104283806A (zh) * | 2014-10-31 | 2015-01-14 | 杭州华三通信技术有限公司 | 业务链处理方法和设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110055845A1 (en) * | 2009-08-31 | 2011-03-03 | Thyagarajan Nandagopal | Technique for balancing loads in server clusters |
CN103259739A (zh) * | 2012-02-15 | 2013-08-21 | 株式会社日立制作所 | 负载均衡设备以及负载均衡方法 |
JP2015525027A (ja) * | 2012-06-04 | 2015-08-27 | エデン ロック コミュニケーションズ, エルエルシーEden Rock Communications,Llc | セルラーネットワーク負荷バランシングのための方法及びシステム |
US20150071071A1 (en) * | 2013-09-11 | 2015-03-12 | Cluster Wireless, LLC | Load balancing between nodes processing data and backhaul utilization |
-
2015
- 2015-07-20 CN CN201510429135.4A patent/CN106375355B/zh not_active Expired - Fee Related
-
2016
- 2016-07-06 WO PCT/CN2016/088798 patent/WO2017012471A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207568A (zh) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | 多协议适配器及其对多种业务实现适配处理的方法 |
CN101207550A (zh) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | 负载均衡系统及多种业务实现负载均衡的方法 |
CN102711177A (zh) * | 2012-04-26 | 2012-10-03 | 北京邮电大学 | 基于业务预测的负载均衡方法 |
CN102932270A (zh) * | 2012-11-27 | 2013-02-13 | 无锡城市云计算中心有限公司 | 支持网络安全业务的负载均衡方法和设备 |
CN103929492A (zh) * | 2014-04-28 | 2014-07-16 | 华为技术有限公司 | 业务链负载均衡方法及其装置、系统 |
CN104079630A (zh) * | 2014-06-09 | 2014-10-01 | 中国建设银行股份有限公司 | 一种业务服务端负载均衡方法、客户端、服务端以及系统 |
CN104283806A (zh) * | 2014-10-31 | 2015-01-14 | 杭州华三通信技术有限公司 | 业务链处理方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2017012471A1 (zh) | 2017-01-26 |
CN106375355A (zh) | 2017-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10348556B2 (en) | Method and network infrastructure for a direct public traffic connection within a datacenter | |
US9762494B1 (en) | Flow distribution table for packet flow load balancing | |
US9379975B2 (en) | Communication control system, control server, forwarding node, communication control method, and communication control program | |
US9521028B2 (en) | Method and apparatus for providing software defined network flow distribution | |
EP2845372B1 (en) | Two level packet distribution with stateless first level packet distribution to a group of servers and stateful second level packet distribution to a server within the group | |
EP3399703B1 (en) | Method for implementing load balancing, apparatus, and network system | |
CN106375355B (zh) | 负载均衡处理方法及装置 | |
US10742697B2 (en) | Packet forwarding apparatus for handling multicast packet | |
CN108881018B (zh) | 用于在diameter信令路由器处路由diameter消息的方法、系统及装置 | |
US20140036726A1 (en) | Network, data forwarding node, communication method, and program | |
CN108123878B (zh) | 一种路由方法、装置及数据转发设备 | |
CN102447638A (zh) | 负载均衡的方法及转发设备 | |
US20140233577A1 (en) | Communication system, control apparatus, and control method thereof | |
JP2014161098A (ja) | 通信システム、ノード、パケット転送方法およびプログラム | |
US20150372924A1 (en) | Network routing overlay | |
US20150381775A1 (en) | Communication system, communication method, control apparatus, control apparatus control method, and program | |
US10205661B1 (en) | Control messages for scalable satellite device clustering control in a campus network | |
US11523443B2 (en) | Extraction, conversion, and transmission of user packet from encapsulated packet | |
CN112202888A (zh) | 一种边缘用户的报文转发方法及sdn | |
CN106209634B (zh) | 地址映射关系的学习方法及装置 | |
WO2013023479A1 (zh) | 负荷分担方法、装置和系统 | |
US20160050105A1 (en) | Maintenance of data forwarder connection state information | |
US20240113959A1 (en) | Instance-affine service scheduling | |
JP2013013032A (ja) | 通信制御方法および通信制御プログラム | |
US20170279683A1 (en) | Distributed system partition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200228 Termination date: 20210720 |