CN106165359A - 数据流分发方法和设备 - Google Patents
数据流分发方法和设备 Download PDFInfo
- Publication number
- CN106165359A CN106165359A CN201480076763.2A CN201480076763A CN106165359A CN 106165359 A CN106165359 A CN 106165359A CN 201480076763 A CN201480076763 A CN 201480076763A CN 106165359 A CN106165359 A CN 106165359A
- Authority
- CN
- China
- Prior art keywords
- data
- data flow
- information
- keyword
- application server
- 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.)
- Granted
Links
Classifications
-
- 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/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种数据流分发的方法和装置,该方法中:负载均衡器可以根据应用服务器根据接口协议发送的或者根据接口协议配置于负载均衡器上的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则的指示,读取数据流的数据,进而进行数据流的分发,降低了负载均衡器进行数据流分发处理的复杂程度。
Description
本发明实施例涉及通信领域,并且更具体地,涉及数据流分发方法和装置。
数据流由多层协议组成,当前数据流分发的方法一般为:负载均衡器接收数据流,解析获取接收到的数据流中的协议数据,一般为数据流的目的IP地址、三元组或者五元组等信息,根据获取到的数据流中的协议数据对数据流进行分发,将相同协议数据的数据流以哈希或者轮询的方法发送到应用服务器进行处理。
根据现有技术中提供的数据流分发方法,负载均衡器需解析数据流中的具体协议进行数据流的分发,然而随着接口协议的多样化和复杂化,负载均衡器本身需要对各类接口协议的数据流进行解析,导致负载均衡器本身对于数据流的分发处理愈发复杂。
发明内容
本发明实施例提供一种数据流分发的方法和装置,降低负载均衡器进行数据流分发处理的复杂度。
第一方面,提供了一种数据流分发的方法,包括:负载均衡器接收数据流;所述负载均衡器根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数
据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述负载均衡器的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述负载均衡器上;所述负载均衡器将所述数据流发送至所述确定的应用服务器。
结合第一方面,在第一种可能的实现方式中,所述第一数据为所述第一分发规则指示所述负载均衡器读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。
结合第一方面和第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一分发规则中包括用于指示所述负载均衡器读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
结合第一方面或结合第一方面的第一种或第二种可能的实现方式,在第三种可能的实现方式中,所述第一分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述负载均衡器根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字,所述根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服
务器。
结合第一方面或结合第一方面的第一种至第三种中任一可能的实现方式,在第四种可能的实现方式中,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述负载均衡器根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规则,根据所述第二分发规则确定处理所述数据流的应用服务器。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述第二分发规则中包括用于指示所述负载均衡器读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,所述负载均衡器根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。
结合第一方面的第五种或第六种可能的实现方式,在第七种可能
的实现方式中,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据。
结合第一方面或者第一方面的第一种至第七种中任一可能的实现方式,在第八种实现方式中,所述负载均衡器获取所述数据流的流特征信息;所述负载均衡器根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
第二方面,提供了一种数据流分发的方法,包括:接收单元,用于接收数据流;处理单元,用于根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述负载均衡器的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述负载均衡器上;发送单元,用于将所述数据流发送至所述确定的应用服务器。
结合第二方面,在第一种可能的实现方式中,所述第一数据为所述第一分发规则指示所述负载均衡器读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。
结合第二方面和第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一分发规则中包括用于指示所述负载均衡器读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
结合第二方面或结合第二方面的第一中或第二种任一可能的实现方式,在三种可能的实现方式中,所述第一分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述处理单元用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元用于根据所述关键字,所述根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。
结合第二方面或结合第二方面的第一种至第三种中任一可能的实现方式,在第四种可能的实现方式中,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述处理单元用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元用于根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规则,根据所述第二分发规则确定处理所述数据流的应用服务器。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方
式中,所述第二分发规则中包括用于指示所述负载均衡器读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,
所述处理单元根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:
所述处理单元根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。
结合第二方面的第五种或第六种可能的实现方式,在第七种可能的实现方式中,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据。
结合第二方面或者第二方面的第一种至第七种中任一可能的实现方式,在第八种实现方式中,所述处理单元还用于获取所述数据流的流特征信息;根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
第三方面,提供了一种数据流分发的方法,包括:接收器,用于
接收数据流;处理器,用于根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述装置的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述装置上;发送器,用于将所述数据流发送至所述确定的应用服务器。
结合第三方面,在第一种可能的实现方式中,所述第一数据为所述第一分发规则指示所述装置读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述装置读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述装置读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。
结合第三方面和第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一分发规则中包括用于指示所述装置读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
结合第三方面或结合第三方面的第一中或第二种任一可能的实现方式,在三种可能的实现方式中,所述第一分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述处理器用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包
括:所述处理器用于根据所述关键字,所述根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。
结合第三方面或结合第三方面的第一种至第三种中任一可能的实现方式,在第四种可能的实现方式中,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述处理器用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元用于根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规则,根据所述第二分发规则确定处理所述数据流的应用服务器。
结合第三方面的第四种可能的实现方式,在第五种可能的实现方式中,所述第二分发规则中包括用于指示所述装置读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。
结合第三方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,所述处理器根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述处理器根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息
之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。
结合第三方面的第五种或第六种可能的实现方式,在第七种可能的实现方式中,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据。
结合第三方面或者第三方面的第一种至第七种中任一可能的实现方式,在第八种实现方式中,所述处理器还用于获取所述数据流的流特征信息;根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
因此,结合本发明实施例提供的上述技术方案,负载均衡器可以根据应用服务器根据接口协议发送的或者根据接口协议配置于负载均衡器上的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则的指示,读取数据流的数据,进而进行数据流的分发,降低了负载均衡器进行数据流分发处理的复杂程度。
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得
其他的附图。
图1示出了本发明实施例提供的网络架构图。
图2示出了本发明实施例提供的一种数据流分发方法的示意性流程图。
图3示出了本发明实施例提供的一种数据流分发装置的示意性框图。
图4示出了本发明实施例提供的一种数据流分发装置的示意性框图。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
应理解,本发明实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(Global System of Mobile communication,简称为“GSM”)系统、码分多址(Code Division Multiple Access,简称为“CDMA”)系统、宽带码分多址(Wideband Code Division Multiple Access,简称为“WCDMA”)系统、通用分组无线业务(General Packet Radio Service,简称为“GPRS”)、长期演进(Long Term Evolution,简称为“LTE”)系统、LTE频分双工(Frequency Division Duplex,简称为“FDD”)系统、LTE时分双工(Time Division Duplex,
简称为“TDD”)、通用移动通信系统(Universal Mobile Telecommunication System,简称为“UMTS”)、全球互联微波接入(Worldwide Interoperability for Microwave Access,简称为“WiMAX”)通信系统等。
图1示出了本发明实施例的一种应用场景的网络架构图。如图1所示,负载均衡器101为一种采用各种分配算法将网络请求分散到各个可用的应用服务器上,从而使得网络访问者获得尽可能最佳的网络体验的设备;一般地,负载均衡器有不同的形式,除了可以作为独立意义上的负载均衡器外,也可能集成在其他通信设备上,以达到将网络请求分散到各个应用服务器的效果,负载均衡器一般可以与多个应用服务器连接。应用服务器102一般为用于处理多种不同的网络请求的服务器,应用服务器可以单独存在,也可以为通信设备(例如Gateway GPRS Support Node或Serving GPRS SUPPORT NODE等)中处理不同请求,进行内部负载均衡的节点。
图2示出了本发明实施例提供的一种数据流分发的方法的示意性流程图。该方法可以由负载均衡器执行,但是本发明对此并不限制。如图2所示,该方法包括:
S201、负载均衡器接收数据流;
S202、所述负载均衡器根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述负载均衡器的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述负载均衡器上;
S203、所述负载均衡器将所述数据流发送至所述确定的应用服务器。
一般地,应用服务器有一个或多个业务接口,一个接口对应的协议的层次一般有多层,例如对应的协议包括因特网互联(Internet Protocol,简称为“IP”)协议,还可以包括传输层控制(Transmission Control Protocol,简称为“TCP”)协议、或用户数据报(User Datagram Protocol,简称为“UDP”)协议、或流传输控制(Stream Control Transmission Protocol,简称为“SCTP”)协议,还可以包括应用层协议。接口对应的协议(简称接口协议)的情况与具体的接口相关。应用服务器可以根据接口协议的数据生成分发规则和分发信息。具体地,应用服务器可以根据一种接口协议的数据生成一种分发规则和分发信息,并发送至负载均衡器,以指示负载均衡器根据数据流中具体的协议数据,对数据流进行分发,使得负载均衡器可以根据指示解析当前日益多样化且繁杂的协议类型,并对相应数据流进行准确的分发处理,使得负载均衡器的负载均衡能力得到提高,且降低负载均衡器本身需要对各类接口协议的数据流进行解析的复杂程度。类似的,也可以根据接口协议的数据在负载均衡器上配置分发规则和分发信息。
因此,基于本发明实施例提供的技术方案,负载均衡器可以根据应用服务器根据接口协议发送的或者根据接口协议配置于负载均衡器上的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则的指示,读取数据流的数据,进而进行数据流的分发,降低了负载均衡器进行数据
流分发处理的复杂程度。
负载均衡器接收数据流后,获取数据流的流特征信息,所述流特征信息为可以用于标识数据流的信息。例如,数据流的流特征信息可以为数据流的源IP地址、目的IP地址、三元组信息或者五元组信息等,本发明对此并不限制。
负载均衡器获取数据流的流特征信息,根据数据流的流特征信息,确定数据流的第一分发规则。分发规则和数据流的流特征信息之间存在对应关系,负载均衡器可以根据数据流的流特征信息,确定数据流的第一分发规则。
分发规则中包括用于指示所述负载均衡器读取数据流中的数据,根据数据流中的数据生成关键字,根据关键字查询第一分发信息的指示信息。即第一分发规则中包括用于指示所述负载均衡器读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
负载均衡器根据分发规则的指示读取数据流中的数据的方式主要有以下方式:一是负载均衡器根据分发规则的指示,读取数据流中确定的数据,例如负载均衡器根据分发规则的指示,读取数据流的IP地址或者端口号等数据,二是负载均衡器根据分发规则的指示,读取数据流中起始位置(Begin)数据、偏移量(Offset)数据和长度(Length)数据,或者读取数据流中起始位置(Begin)数据、偏移量(Offset)数据、长度(Length)数据和掩码(Mask)数据。因此,负载均衡器根据第一分发规则,读取数据流中的第一数据,所述第一数据为所述第一分发规则指示所述负载均衡器读取的确定的数据,或者所述第一数据
为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据和长度数据,或者为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。负载均衡器根据分发规则的指示,读取数据流中的数据,根据读取的数据生成关键字,根据生成的关键字查询第一分发信息,从而确定处理数据流的应用服务器。所述负载均衡器根据读取的所述数据流中的数据生成关键字,具体可以是负载均衡器将读取的数据流中的一个或多个数据,按照定义的算法进行运算生成关键字。生成关键字的算法可以包括多种类型的常规算法,例如进行或、与、加、减等运算。例如:负载均衡器根据转发规则中的指示信息读取数据流中的数据,例如读取数据流中的字段1和字段2,生成关键字的算法可以是加(+)运算,即关键字为字段1+字段2。
因此,基于本发明实施例提供的技术方案,负载均衡器可以根据应用服务器发送的或者配置于负载均衡器上的分发规则的指示,灵活读取数据流中的数据,根据读取的数据生成的关键字,确定分发信息,从而确定处理数据流的应用服务器。
负载均衡器根据分发规则,读取数据流中的数据,根据读取的数据流的数据生成关键字,根据生成的关键字查询分发信息,根据第一分发信息确定处理数据流的应用服务器。其中,分发信息可以是根据接口协议配置于负载均衡器中,或者应用服务器根据接口协议生成并发送至负载均衡器的,本发明对此并不限制。分发信息中包括根据接口协议中的数据生成的关键字和处理数据流的应用服务器信息之间的对应关系。
负载均衡器根据读取的数据流的数据生成关键字后,可以根据接口协议中数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,确定处理数据流的应用服务器。此处,分发信息为根据接口协议中数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,负载均衡器可以根据读取的数据流的数据生成的关键字,在上述分发信息(多个根据接口协议中数据生成的关键字和处理数据流的应用服务器信息之间的对应关系)中,查询与根据读取的数据流的数据生成的关键字对应的对应关系。即第一分发信息中可以包括根据所述接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述负载均衡器根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字,所述根据所述数据流中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。因此,基于本发明实施例提供的技术方案,载均衡器可以根据通用的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则,进行数据流的分发,降低了负载均衡器进行数据流分发处理的复杂程度。
在本发明的另一实施例中,负载均衡器根据第一分发规则的指示,读取数据流中的第一数据,根据读取的第一数据生成关键字,根据关键字查询第一分发信息,该第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系。所述第二分发规则中包括用于指示所述负载均衡器读取所述数据流中的第二数据,根据
读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,所述负载均衡器根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字、所述第二协议数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。由此,通过在分发信息中嵌套另一分发规则,根据另一分发规则的指示,读取数据流中的其他数据,进而根据其他数据生成的关键字,查询其他分发信息,进而确定处理数据流的应用服务器,使得负载均衡器可以根据接口协议的具体情况,读取数据流中更加具体的数据,将数据流分发至相应的应用服务器上,增强负载均衡器的负载均衡能力。
具体地,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层析高于所述第一数据所处协议的层次(例如第一数据为数据流中传输层控制协议的数据,第二数据为应用层协议的数据);或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据(例如第一数据为数据流的三元组信息、第二数据为数据流的五元组信息)。即应用服务器根据接口协议的情况,生成具体的分发规则和分发信息。
例如,负载均衡器在接收数据流后,根据数据流的流特征信息确定数据流的第一分发规则,根据第一分发规则的指示,读取数据流中
的五元组信息,根据五元组信息生成的关键字,查询获取第一分发信息,根据第一分发信息中包括的关键字与第二分发规则的对应关系,获取第二分发规则,根据第二分发规则的的指示,读取数据流中的七元组信息,根据七元组信息生成关键字,查询获取第二分发信息,进而根据第二分发信息中包括的根据七元组生成的关键字和具体应用服务器信息之间的对应关系,确定处理数据流的应用服务器。
因此,基于本发明实施例提供的技术方案,基于本发明实施例提供的技术方案,负载均衡器可以根据通用的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则,进行数据流的分发,降低了负载均衡器进行数据流分发处理的复杂程度。且通过在分发信息中嵌套另一分发规则,进而根据另一分发规则的指示,确定处理数据流的应用服务器,使得负载均衡器可以根据接口协议的具体情况,读取数据流中更加具体的数据,将数据流分发至相应的应用服务器上,增强负载均衡器的负载均衡能力。
下述为图2示出的本发明实施例的一个具体实施例。该方法可以由负载均衡器执行,但是本发明对此并不限制。
首先、负载均衡器接收数据流,确定数据流的分发规则。
一般地,可以由应用服务器发送分发规则至负载均衡器,或者在负载均衡器上配置分发规则。该分发规则可以由应用服务器根据接口协议数据生成并发送分发规则至负载均衡器或者根据接口协议数据在负载均衡器配置分发规则。
该分发规则(分发规则1)与数据流的流特征信息存在对应关系。
该流特征信息为可以标识数据流的信息,一般可以为IP地址、三元组或者五元组信息等,本发明对此并不限制;该分发规则中包括指示信息,该指示信息为用于指示负载均衡器,读取数据流中的数据,根据读取的数据生成关键字,根据生成的关键字确定处理数据流的应用服务器,具体地,可以根据生成的关键字查询分发信息。分发信息包括根据接口协议数据生成的关键字和处理数据流的应用服务器信息之间的对应关系。若分发信息中包括的根据接口协议数据生成的关键字与负载均衡器根据读取的数据生成的关键字之间存在对应关系,则负载均衡器可由此确定该数据流的分发信息。该分发信息中包括根据接口协议的数据生成的关键字和处理数据流的应用服务器的信息的对应关系,则负载均衡器可在该指示信息的指示下,根据生成的关键字、该关键字和处理数据流的应用服务器的信息的对应关系,获取处理数据流的应用服务器信息,确定处理数据流的应用服务器。若该分发规则包括该关键字和另一分发规则(分发规则2)的对应关系,即负载均衡器可在该指示信息的指示信,根据生成的关键字、该关键字和另一分发规则的对应关系,确定该另一分发规则,进而根据该另一分发规则,确定处理数据流的应用服务器(步骤可参考根据分发规则1确定处理数据流的应用服务器的相关步骤)。
其次、负载均衡器根据分发规则,确定处理数据流的应用服务器。
具体地,负载均衡器根据分发规则1中的指示信息,读取数据流中的数据。读取数据流中的数据主要有以下方式。
1、该分发规则中的指示信息指示负载均衡器读取数据流中的指
定数据。例如读取数据流中的源IP地址、目的IP地址、三元组信息、五元组信息或者七元组信息等。
2、该分发规则中的指示信息指示负载均衡器读取数据流中起始位置(Begin)数据、偏移量(Offset)数据和长度(Length)数据;或者读取数据流中起始位置(Begin)数据、偏移量(Offset)数据、长度(Length)数据和掩码(Mask)数据。
例如读取:Begin:IP payload Begin
OffSet:AA
Length:BB
Mask:XXXXXXXX
可选地,该分发规则中的指示信息可以指示负载均衡器读取数据流中的一个或多个数据。进一步地,该分发规则中的指示信息指示负载均衡器根据读取的数据,生成关键字。生成关键字的算法可以包括多种类型的常规算法,例如进行或、与、加、减、大于,小于,等于,不等于等运算。例如:负载均衡器根据转发规则中的指示信息读取数据流中协议数据中的字段1和字段2,生成关键字的算法可以是加(+)运算,即关键字为字段1+字段2。
进一步地,负载均衡器根据分发规则中的指示信息,根据关键字确定分发信息。根据关键字确定分发信息有两种方式:
1、分发信息中包括根据接口协议数据生成的关键字和应用服务器的信息的对应关系或者包括接口协议数据生成的关键字和另一分
发规则之间的对应关系。则负载均衡器可以根据关键字和上述的对应关系,确定分发信息。
2、负载均衡器根据分发规则中的指示信息,将关键字与预设值进行比较,若关键字与预设值相同,确定分发信息为分发信息A,若关键字与预设值不同,确定分发信息为分发信息B。
进一步地,负载均衡器根据分发规则中的指示信息,确定分发信息。若确定的分发信息中包括处理数据流的应用服务器的信息,则负载均衡器可以根据获取的处理数据流的应用服务器的信息,确定处理数据流的应用服务器。例如:负载均衡器接收数据流,获取数据流的流特征信息,流特征信息可以为数据流的源IP地址;负载均衡器根据数据流的流特征信息确定数据流的分发规则,分发规则中包括指示负载均衡器读取数据流中的三元组信息,根据三元组信息生成关键字,根据关键字确定分发信息,则负载均衡器根据分发规则中的指示信息,读取数据流的三元组信息,根据三元组信息生成关键字,根据关键字确定分发信息;分发信息中包括根据三元组生成的关键字和处理数据流的应用服务器的信息,则负载均衡器可以根据分发信息确定处理数据流的应用服务器。因此,基于本发明的实施例,负载均衡器可以根据应用服务器发送的或者配置的分发规则中的指示信息,读取数据流中的数据,确定处理数据流的应用服务器。降低了负载均衡器对数据流进行分发处理的复杂程度,达到了负载均衡的效果。
可选地,负载均衡器根据数据流的流特征信息,确定分发规则,进行根据分发规则确定分发信息,该确定的分发信息中还包括有另一分发规则,负载均衡器根据该另一分发规则确定另一分发信息,进而
确定处理数据流的应用服务器。例如:负载均衡器接收数据流,获取数据流中的流特征信息,可以是数据流的三元组信息,根据该数据流的三元组信息,确定该数据流的分发规则1;负载均衡器根据分发规则1中的指示信息,读取数据流中的数据,可以是读取数据流中的五元组信息,根据读取的数据流的五元组信息生成关键字,根据关键字确定分发信息1;该分发信息1中包括根据接口协议数据中的五元组信息生成的关键字和分发规则2,则负载均衡器根据接口协议数据中的的五元组信息生成的关键字和分发规则2的对应关系,确定数据流的分发规则2,该分发规则2中包括指示负载均衡器读取数据流的七元组(或者可以是指示读取数据流的TCP协议数据、GDP协议数据等),根据该读取的七元组数据确定分发信息2,该分发信息2中包括根据接口协议数据的七元组信息生成的关键字和处理该数据流的应用服务器的对应关系,负载均衡器可以根据该分发信息2确定处理数据流的应用服务器,将数据流分发至该应用服务器进行处理。因此,基于本发明实施例提供的方法,在分发规则中嵌套其他分发规则,以指示负载均衡器读取数据流中的数据,使得负载均衡器可以读取数据流中的更详细数据,可以根据接口协议的具体情况,读取数据流中更加具体的数据,根据读取的数据将数据流准确分发至相应的应用服务器进行处理,增强负载均衡器的负载均衡能力。
图3示出了本发明实施例提供的一种数据流分发装置的示意性框图,该装置可以是上述实施例中的负载均衡器,本发明对此并不限制。该装置可用于执行上述实施例提供的数据流分发方法。本实施例与上述实施例可以相互参考。
接收单元301、用于接收数据流;
处理单元302、用于根据第一分发规则,读取所述数据流中的第
一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述装置的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述装置上;
发送单元303、用于将所述数据流发送至所述确定的应用服务器。
因此,基于本发明实施例提供的技术方案,负载均衡器可以根据应用服务器根据接口协议发送的或者根据接口协议配置于负载均衡器上的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则的指示,读取数据流的数据,进而进行数据流的分发,降低了负载均衡器进行数据流分发处理的复杂程度。
具体地,所述第一数据所述第一数据为所述第一分发规则指示所述负载均衡器读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。所述处理单元302读取数据流中的数据即可按照分发规则中的指示,读取数据流中确定的数据,或者读取数据流中起始位置数据、偏移量数据和长度数据,或者读取数据流中起始位置数据、偏移量数据、长度数据和掩码数据。因此,负载均衡器根据应用服务器或者配置于负载均衡器上的分发规则中的指示信息,读取数据流中的
相关数据,使得负载均衡器可以解析当前日益复杂多样化的接口协议,降低了负载均衡器本身进行数据流解析分发的复杂度。
进一步地,所述第一分发规则中包括用于指示所述负载均衡器读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
在本发明实施例提供的一种数据分发的装置中,所述第一分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述处理单元302用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元302用于根据所述关键字,所述根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。
因此,基于本发明实施例提供的数据流分发装置,该装置可以根据应用服务器发送的或者配置于负载均衡器上的分发规则的指示,灵活读取数据流中的数据,根据读取的数据生成的关键字,确定分发信息,从而确定处理数据流的应用服务器。
在本发明实施例提供的另一数据流分发装置中,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述处理单元302用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元302用于根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规
则,根据所述第二分发规则确定处理所述数据流的应用服务器。具体地,所述第二分发规则中包括用于指示所述装置读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,则所述处理单元302根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述处理单元302根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。因此,基于本发明实施例提供的数据流分发装置,在分发规则中嵌套其他分发规则,以指示该装置读取数据流中的数据,使得该装置可以读取数据流中的更详细数据,可以根据接口协议的具体情况,读取数据流中更加具体的数据,根据读取的数据将数据流准确分发至相应的应用服务器进行处理,增强该数据流分发装置的负载均衡能力。
具体地,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据。
可选地,所述处理单元302还用于获取所述数据流的流特征信息;根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
图4示出了本发明实施例提供的一种数据流分发的装置的示意性
框图。该装置可以是上述实施例中的负载均衡器,本发明对此并不限制。该装置可以执行上述实施例中的方法。本发明实施例与上述实施例可相互参考。
接收器401、用于接收数据流;
处理器402、用于根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述装置的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述装置上;
发送器403、用于将所述数据流发送至所述确定的应用服务器。
因此,基于本发明实施例提供的技术方案,该装置,可以是负载均衡器,负载均衡器可以根据应用服务器根据接口协议发送的或者根据接口协议配置于负载均衡器上的分发规则中的指示,读取数据流中的数据,根据读取的数据生成的关键字,确定处理数据流的应用服务器,将数据流发送确定的应用服务器上。使得负载均衡器可以根据通用的分发规则的指示,读取数据流的数据,进而进行数据流的分发,降低了负载均衡器进行数据流分发处理的复杂程度。
具体地,所述第一数据所述第一数据为所述第一分发规则指示所述负载均衡器读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述装置读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述装置读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。
所述处理器402读取数据流中的数据即可按照分发规则中的指示,读取数据流中确定的数据,或者读取数据流中起始位置数据、偏移量数据和长度数据,或者读取数据流中起始位置数据、偏移量数据、长度数据和掩码数据。因此,负载均衡器根据应用服务器或者配置于负载均衡器上的分发规则中的指示信息,读取数据流中的相关数据,使得负载均衡器可以解析当前日益复杂多样化的接口协议,降低了负载均衡器本身进行数据流解析分发的复杂度。
进一步地,所述第一分发规则中包括用于指示所述负载均衡器读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
在本发明实施例提供的一种数据分发的装置中,所述第一分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述处理器402用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理器402用于根据所述关键字,所述根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。
因此,基于本发明实施例提供的数据流分发装置,该装置可以根据应用服务器发送的或者配置于负载均衡器上的分发规则的指示,灵活读取数据流中的数据,根据读取的数据生成的关键字,确定分发信息,从而确定处理数据流的应用服务器。
在本发明实施例提供的另一数据流分发装置中,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述处理器402用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理器402用于根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规则,根据所述第二分发规则确定处理所述数据流的应用服务器。具体地,所述第二分发规则中包括用于指示所述负载均衡器读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,则所述处理器402根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述处理器402根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。因此,基于本发明实施例提供的数据流分发装置,在分发规则中嵌套其他分发规则,以指示该装置读取数据流中的数据,使得该装置可以读取数据流中的更详细数据,可以根据接口协议的具体情况,读取数据流中更加具体的数据,根据读取的数据将数据流准确分发至相应的应用服务器进行处理,增强该数据流分发装置的负载均衡能力。
具体地,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同
层析协议中的不同数据。
可选地,所述处理器402还用于获取所述数据流的流特征信息;根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
应理解,在本发明实施例中,该处理器可以是中央处理单元(Central Processing Unit,简称为“CPU”),该处理器还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在实现过程中,上述各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来
实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行
本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称为“ROM”)、随机存取存储器(Random Access Memory,简称为“RAM”)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (18)
- 一种数据流分发方法,其特征在于,包括:负载均衡器接收数据流;所述负载均衡器根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述负载均衡器的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述负载均衡器上;所述负载均衡器将所述数据流发送至所述确定的应用服务器。
- 根据权利要求1中所述的方法,其特征在于:所述第一数据为所述第一分发规则指示所述负载均衡器读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述负载均衡器读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。
- 根据权利1或2中任一所述的方法,其特征在于,所述第一分发规则中包括用于指示所述负载均衡器读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
- 根据权利要求1-3中任一所述的方法,其特征在于,所述第一 分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述负载均衡器根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字,所述根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。
- 根据权利要求1-3中任一所述的方法,其特征在于,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述负载均衡器根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规则,根据所述第二分发规则确定处理所述数据流的应用服务器。
- 根据权利要求5所述的方法,其特征在于,所述第二分发规则中包括用于指示所述负载均衡器读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。
- 根据权利要求6所述的方法,其特征在于,所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用 服务器信息之间的对应关系,所述负载均衡器根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述负载均衡器根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。
- 根据权利要求6或7中所述的方法,其特征在于,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据。
- 根据权利要求1-8中任一所述的方法,其特征在于,所述方法还包括:所述负载均衡器获取所述数据流的流特征信息;所述负载均衡器根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
- 一种数据流分发装置,其特征在于,包括:接收单元,用于接收数据流;处理单元,用于根据第一分发规则,读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键 字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,所述第一分发规则和第一分发信息为应用服务器根据接口协议生成并发送至所述装置的,或者所述第一分发规则和第一分发信息为根据接口协议配置于所述装置上;发送单元,用于将所述数据流发送至所述确定的应用服务器。
- 根据权利要求10所述的装置,其特征在于所述第一数据为所述第一分发规则指示所述装置读取的确定的数据;或者所述第一数据为所述第一分发规则指示所述装置读取的所述数据流中起始位置数据、偏移量数据和长度数据;或者所述第一数据为所述第一分发规则指示所述装置读取的所述数据流中起始位置数据、偏移量数据、长度数据和掩码数据。
- 根据权利要求10或11中任一所述的装置,其特征在于,所述第一分发规则中包括用于指示所述装置读取所述数据流中的第一数据,根据读取的所述数据流中的第一数据生成关键字,根据所述关键字查询第一分发信息的指示信息。
- 根据权利要求9-12中任一所述的装置,其特征在于,所述第一分发信息中包括根据接口协议中的第一数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,所述处理单元用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元用于根据所述关键字,所述根据接口协议中的第一 数据生成的关键字和处理所述数据流的应用服务器信息之间的对应关系,获取处理所述数据流的应用服务器信息,确定处理所述数据流的应用服务器。
- 根据权利10-12中任一所述的装置,其特征在于,所述第一分发信息中包括根据接口协议的第一数据生成的关键字和第二分发规则的对应关系;所述处理单元用于根据所述关键字查询第一分发信息,根据所述第一分发信息确定处理所述数据流的应用服务器,包括:所述处理单元用于根据所述关键字,所述根据所述接口协议的第一数据生成的关键字和第二分发规则的对应关系,确定所述第二分发规则,根据所述第二分发规则确定处理所述数据流的应用服务器。
- 根据权利要求14所述的装置,其特征在于,所述第二分发规则中包括用于指示所述装置读取所述数据流中的第二数据,根据读取的所述数据流中的第二数据生成关键字,根据所述关键字查询第二分发信息的指示信息。
- 根据权利要求15所述的装置,其特征在于,所述第二分发信息中包括根据接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,所述处理单元根据所述关键字查询第二分发信息,根据所述第二分发信息确定处理所述数据流的应用服务器,包括:所述处理单元根据所述关键字、根据所述接口协议的第二数据生成的关键字和处理数据流的应用服务器信息之间的对应关系,获取所 述处理数据流的应用服务器的信息,确定处理所述数据流的应用服务器。
- 根据权利要求15或16中任一所述的装置,其特征在于,所述第一数据与所述第二数据为所述数据流中不同层次协议中的数据,所述第二数据所处协议的层次高于所述第一数据所处协议的层次;或者所述第一数据与所述第二数据为所述数据流中相同层析协议中的不同数据。
- 根据权利要求10-17中任一所述的装置,其特征在于,所述处理单元还用于获取所述数据流的流特征信息;根据所述数据流的流特征信息与第一分发规则之间的对应关系确定所述数据流的第一分发规则。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/088785 WO2016058169A1 (zh) | 2014-10-17 | 2014-10-17 | 数据流分发方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106165359A true CN106165359A (zh) | 2016-11-23 |
CN106165359B CN106165359B (zh) | 2020-05-08 |
Family
ID=55745981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480076763.2A Active CN106165359B (zh) | 2014-10-17 | 2014-10-17 | 数据流分发方法和设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10715589B2 (zh) |
EP (1) | EP3200407B1 (zh) |
JP (1) | JP6456495B2 (zh) |
CN (1) | CN106165359B (zh) |
WO (1) | WO2016058169A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112380257A (zh) * | 2020-11-26 | 2021-02-19 | 厦门市美亚柏科信息股份有限公司 | 一种网络数据流锁定方法、终端设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080170575A1 (en) * | 2007-01-12 | 2008-07-17 | Czuchry Andrew J | System and method for distributed intelligent-assistant control of predictive digital information distribution |
US7443796B1 (en) * | 2000-08-30 | 2008-10-28 | Cisco Technology, Inc. | Distributed, rule based packet redirection |
CN102255816A (zh) * | 2011-08-18 | 2011-11-23 | 华为数字技术有限公司 | 负载分担方法及装置 |
CN102769575A (zh) * | 2012-08-08 | 2012-11-07 | 南京中兴特种软件有限责任公司 | 一种用于智能网卡的流量负载均衡方法 |
CN102970242A (zh) * | 2012-11-09 | 2013-03-13 | 深圳市共进电子股份有限公司 | 一种实现负载均衡的方法 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6944162B1 (en) | 2000-10-03 | 2005-09-13 | Alcatel | Tuple-based lookup scheme for packet switching node |
US7774484B1 (en) * | 2002-12-19 | 2010-08-10 | F5 Networks, Inc. | Method and system for managing network traffic |
JP2006259812A (ja) * | 2005-03-15 | 2006-09-28 | Hitachi Ltd | 動的キュー負荷分散方法、システム及びプログラム |
US8370649B2 (en) * | 2006-03-31 | 2013-02-05 | Cisco Technology, Inc. | Stream control failover utilizing an attribute-dependent protection mechanism |
US20080112326A1 (en) * | 2006-11-09 | 2008-05-15 | Avaya Technology Llc | Load-Balancing Routes In Multi-Hop Ad-Hoc Wireless Networks |
US8855082B2 (en) * | 2007-05-04 | 2014-10-07 | Cisco Technology, Inc. | Application load balancing for different domains |
JP5493479B2 (ja) * | 2008-10-03 | 2014-05-14 | 富士通株式会社 | サービス提供システム、方法、一意性保証情報設定管理プログラム、負荷分散プログラム、及び管理装置 |
US8321873B2 (en) * | 2009-06-09 | 2012-11-27 | Yahoo! Inc. | System and method for offline data generation for online system analysis |
US10621518B2 (en) * | 2009-07-10 | 2020-04-14 | Disney Enterprises, Inc. | Interoperable keychest |
US20110161657A1 (en) * | 2009-12-31 | 2011-06-30 | Verizon Patent And Licensing Inc. | Method and system for providing traffic hashing and network level security |
US20120230194A1 (en) * | 2011-03-11 | 2012-09-13 | Broadcom Corporation | Hash-Based Load Balancing in Large Multi-Hop Networks with Randomized Seed Selection |
US20120287946A1 (en) * | 2011-05-13 | 2012-11-15 | Broadcom Corporation | Hash-Based Load Balancing with Flow Identifier Remapping |
US8804736B1 (en) * | 2011-09-23 | 2014-08-12 | Juniper Networks, Inc. | Network tunneling using a label stack delimiter |
US9787585B2 (en) | 2012-03-30 | 2017-10-10 | Nec Corporation | Distributed storage system, control apparatus, client terminal, load balancing method and program |
US9032488B2 (en) * | 2012-04-17 | 2015-05-12 | Salesforce.Com, Inc. | Cross instance user authentication architecture |
US9325785B2 (en) * | 2012-06-29 | 2016-04-26 | Rodolfo Kohn | Device, system, and method for client-governed session persistency between one or more clients and servers of a data center |
CN102882939B (zh) * | 2012-09-10 | 2015-07-22 | 北京蓝汛通信技术有限责任公司 | 负载均衡方法、设备及泛域名加速访问系统 |
US9374276B2 (en) * | 2012-11-01 | 2016-06-21 | Microsoft Technology Licensing, Llc | CDN traffic management in the cloud |
JP5758934B2 (ja) * | 2013-02-26 | 2015-08-05 | 日本電信電話株式会社 | 振分けサーバおよびそのプログラム |
US9124564B2 (en) * | 2013-08-22 | 2015-09-01 | Cisco Technology, Inc. | Context awareness during first negotiation of secure key exchange |
IN2013MU03081A (zh) * | 2013-09-27 | 2015-08-07 | Sudarshan Deshmukh | |
US9502111B2 (en) * | 2013-11-05 | 2016-11-22 | Cisco Technology, Inc. | Weighted equal cost multipath routing |
US9967183B2 (en) * | 2013-12-20 | 2018-05-08 | Huawei Technologies Co., Ltd. | Source routing with entropy-header |
US9503374B2 (en) * | 2014-01-22 | 2016-11-22 | Futurewei Technologies, Inc. | Apparatus for hybrid routing in SDN networks to avoid congestion and achieve good load balancing under fluctuating traffic load |
US9584594B2 (en) * | 2014-04-11 | 2017-02-28 | Maxeler Technologies Ltd. | Dynamic provisioning of processing resources in a virtualized computational architecture |
US9501325B2 (en) * | 2014-04-11 | 2016-11-22 | Maxeler Technologies Ltd. | System and method for shared utilization of virtualized computing resources |
US10715587B2 (en) * | 2014-04-11 | 2020-07-14 | Maxeler Technologies Ltd. | System and method for load balancing computer resources |
US10275258B2 (en) * | 2014-06-30 | 2019-04-30 | Vmware, Inc. | Systems and methods for enhancing the availability of multi-tier applications on cloud computing platforms |
US9709964B2 (en) * | 2014-07-11 | 2017-07-18 | Cummins Power Generation Ip, Inc. | Genset power control in power systems |
-
2014
- 2014-10-17 CN CN201480076763.2A patent/CN106165359B/zh active Active
- 2014-10-17 WO PCT/CN2014/088785 patent/WO2016058169A1/zh active Application Filing
- 2014-10-17 JP JP2017520921A patent/JP6456495B2/ja active Active
- 2014-10-17 EP EP14903910.9A patent/EP3200407B1/en active Active
-
2017
- 2017-04-17 US US15/489,456 patent/US10715589B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7443796B1 (en) * | 2000-08-30 | 2008-10-28 | Cisco Technology, Inc. | Distributed, rule based packet redirection |
US20080170575A1 (en) * | 2007-01-12 | 2008-07-17 | Czuchry Andrew J | System and method for distributed intelligent-assistant control of predictive digital information distribution |
CN102255816A (zh) * | 2011-08-18 | 2011-11-23 | 华为数字技术有限公司 | 负载分担方法及装置 |
CN102769575A (zh) * | 2012-08-08 | 2012-11-07 | 南京中兴特种软件有限责任公司 | 一种用于智能网卡的流量负载均衡方法 |
CN102970242A (zh) * | 2012-11-09 | 2013-03-13 | 深圳市共进电子股份有限公司 | 一种实现负载均衡的方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112380257A (zh) * | 2020-11-26 | 2021-02-19 | 厦门市美亚柏科信息股份有限公司 | 一种网络数据流锁定方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20170223098A1 (en) | 2017-08-03 |
EP3200407A4 (en) | 2017-11-08 |
US10715589B2 (en) | 2020-07-14 |
EP3200407A1 (en) | 2017-08-02 |
JP6456495B2 (ja) | 2019-01-23 |
JP2018501681A (ja) | 2018-01-18 |
EP3200407B1 (en) | 2019-08-28 |
CN106165359B (zh) | 2020-05-08 |
WO2016058169A1 (zh) | 2016-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8655985B2 (en) | Content delivery using multiple sources over heterogeneous interfaces | |
US10063476B2 (en) | Content centric networking system providing differentiated service and method of controlling data traffic in content centric networking providing differentiated service | |
US8953600B2 (en) | Telemetry data routing | |
CN105814843B (zh) | 一种流表的生成方法和装置 | |
CN101809950A (zh) | 为移动通信网络的控制平面实施负载均衡的方法和设备 | |
CN106656849A (zh) | 报文限速方法及装置 | |
CN103004172B (zh) | 信息处理方法和负载均衡设备 | |
CN105099803A (zh) | 一种流量识别方法、应用服务器及网元设备 | |
US11743236B2 (en) | Generating an application-based proxy auto configuration | |
CN107409047A (zh) | 加密会话的协调分组递送 | |
CN106165359A (zh) | 数据流分发方法和设备 | |
CN105099802A (zh) | 一种流量识别方法、终端及网元设备 | |
US10034158B2 (en) | Method of maintaining internet protocol (IP) connectivity in low power internet of things (IoT) communication device based on near field communication (NFC), and device operating the same | |
CN105991373B (zh) | 一种应用协议识别方法及装置 | |
CN104363176A (zh) | 一种报文控制的方法和设备 | |
US9497088B2 (en) | Method and system for end-to-end classification of level 7 application flows in networking endpoints and devices | |
CN109150726A (zh) | 一种报文处理方法和装置 | |
US11582158B2 (en) | System and methods to filter out noisy application signatures to improve precision of first packet classification | |
EP4248605A1 (en) | Optimizing user experience in encrypted traffic | |
JP2023049340A (ja) | 通信装置 | |
CN114363266A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |