CN101442493A - Ip报文分发方法、集群系统和负载均衡器 - Google Patents
Ip报文分发方法、集群系统和负载均衡器 Download PDFInfo
- Publication number
- CN101442493A CN101442493A CNA2008102411915A CN200810241191A CN101442493A CN 101442493 A CN101442493 A CN 101442493A CN A2008102411915 A CNA2008102411915 A CN A2008102411915A CN 200810241191 A CN200810241191 A CN 200810241191A CN 101442493 A CN101442493 A CN 101442493A
- Authority
- CN
- China
- Prior art keywords
- message
- access control
- media access
- server
- load equalizer
- 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
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种IP报文分发方法、集群系统和负载均衡器。该方法包括接收外部客户设备发送的IP报文;根据所述IP报文确定所述IP报文目的MAC地址;将所述IP报文直接通过链路层发送给所述目的MAC地址对应的服务器;接收所述服务器发送的所述IP报文的响应报文,将所述响应报文发送给所述客户设备。通过本发明实施例可以实现具有较高吞吐量且组网较简单的集群系统。
Description
技术领域
本发明涉及网络技术,特别涉及一种IP报文分发方法、集群系统和负载均衡器。
背景技术
由于客户/服务器模型的简单性、易管理性和易维护性,客户/服务器计算模式在网上被大量采用。随着用户量和流量的大幅增长,单一的服务器已不能满足需求。同时,为了满足电信业新的需求,基础平台开始由嵌入式操作系统向Linux操作系统迁移。为此,针对高可伸缩、高可用网络服务的需求及操作系统向Linux操作系统的迁移,出现了Linux虚拟服务器(Linux Virtual Server,LVS)。LVS是一种集群系统,其将一组真实服务器构成一个实现可伸缩的、高可用网络服务的虚拟服务器。一组真实服务器通过高速的局域网或者地理分布的广域网相互连接,在它们的前端有一个负载均衡器。负载均衡器能无缝地将网络请求调度到真实服务器上,从而使得服务器集群的结构对客户是透明的,客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一样。LVS包括基于网络地址转换的虚拟服务器(Virtual Server via Network Address Translation,VS-NAT)、基于直接路由的虚拟服务器(Virtual Server via Direct Routing,VS-DR)和基于IP隧道的虚拟服务器(Virtual Server via IP Tunneling,VS-TUN)。
发明人在实现本发明的过程中发现现有技术至少存在如下问题:VS-NAT需要进行IP地址转换,VS-TUN需要进行IP地址封装,造成这两种方式的吞吐量不够大;VS-DR的每个真实服务器的出口直接通过网络与客户端连接,组网较复杂。
发明内容
本发明提供一种IP报文分发方法、集群系统和负载均衡器,解决现有吞吐量较小及组网较复杂的问题。
本发明实施例提供了一种IP报文分发方法,包括:
接收外部客户设备发送的IP报文;
根据所述IP报文确定所述IP报文目的介质接入控制地址;
将所述IP报文发送给所述目的介质接入控制地址对应的服务器;
接收所述服务器发送的所述IP报文的响应报文,将所述响应报文发送给所述客户设备。
本发明实施例提供了一种集群系统,包括:
一负载均衡器,与外部的客户设备连接,用于接收客户设备发送的IP报文,根据所述IP报文获取目的介质接入控制地址,将所述IP报文发送给所述目的介质接入控制地址对应的服务器;
至少一服务器,分别与负载均衡器连接,用于处理负载均衡器发送的IP报文得到该IP报文的响应报文,并将所述IP报文的响应报文通过所述负载均衡器发送给所述客户设备。
本发明实施例提供了一种负载均衡器,包括:
第一模块,用于接收外部客户设备发送的IP报文;
第二模块,用于根据第一模块得到的所述IP报文确定所述IP报文的目的介质接入控制地址;
第三模块,用于将所述IP报文直接通过链路层发送给第二模块得到的所述目的介质接入控制地址对应的服务器;
第四模块,用于接收所述服务器发送的所述IP报文的响应报文,将所述响应报文发送给所述客户设备。
由上述技术方案可知,本发明实施例通过目的MAC转发IP报文,无需对IP报文进行IP地址转换或IP封装,可以提高吞吐量;并且,本发明实施例通过将服务器发送的响应报文再通过负载均衡器转发给客户设备,无需每个服务器单独设置一个出口与客户设备连接,可以简化组网结构。
附图说明
图1为本发明第一实施例的方法流程示意图;
图2为本发明第二实施例的方法流程示意图;
图3为本发明第三实施例的转发表的示意图;
图4为本发明第四实施例的特征值与服务器的对应关系的示意图;
图5为本发明第五实施例的集群系统的结构示意图;
图6为本发明第六实施例的负载均衡器的结构示意图;
图7为本发明第七实施例的负载均衡器的结构示意图;
图8为本发明第八实施例的集群系统的结构示意图;
图9为本发明第九实施例的负载均衡器的结构示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
图1为本发明第一实施例的方法流程示意图,包括:
步骤101:负载均衡器接收外部客户设备发送的IP报文。其中,该IP报文中包含五元组及上层协议,五元组包括源IP地址、目的IP地址、源端口号、目的端口号和协议。
步骤102:负载均衡器根据该IP报文确定该IP报文的目的介质接入控制(Media Access Control,MAC)地址。其中,采用固定转发模式时,可以直接根据五元组确定目的MAC地址,采用特征转发模式时,可以根据上层协议得到IP报文的特征值,根据特征值确定目的MAC地址。
步骤103:负载均衡器将所述IP报文直接通过链路层(二层)发送给所述目的MAC地址对应的服务器。相比于现有的IP地址转换或IP地址封装方法:由于MAC地址的处理位于网络架构的第二层,IP地址的处理位于第三层,因此,通过获取MAC地址,并根据MAC地址直接在二层转发IP报文,可以提高转发速度,提高吞吐量。
步骤104:负载均衡器接收所述服务器发送的所述IP报文的响应报文,将所述响应报文转发给所述客户设备。具体可以为,服务器内部的转发模块将响应报文转发给负载均衡器内的转发模块,再由负载均衡器内部的转发模块转发给客户设备。相比于现有的服务器从入口侧接收IP报文,从出口侧返回响应报文:由于从出口侧返回响应报文,需要在每个服务器设置出口,并且需要布置连线连接该出口与客户设备,而本实施例无需另外设备出口,复用入口线路,可以简化组网结构,降低成本。
本实施例通过目的MAC直接在二层转发IP报文,无需对IP报文进行IP地址转换或IP封装,可以提高吞吐量;并且,本发明实施例通过将服务器发送的响应报文再通过负载均衡器转发给客户设备,无需每个服务器单独设置一个出口与客户设备连接,可以简化组网结构,降低成本。
图1的实施例描述了IP报文的总体流程,即采用MAC地址转发负载均衡器接收的IP报文,响应报文同样从负载均衡器返回给客户设备。图2描述了Linux系统的IP报文转发流程的一个实施例。
图2为本发明第二实施例的方法流程示意图,包括:
步骤201:负载均衡器的Linux内核空间接收外部客户设备发送的IP报文,获取所述IP报文的五元组及应用层协议。出于安全方面的考虑,Lin系统中包括内核空间和用户空间,运行于内核空间的程序可以直接访问任意硬件出口,运行于用户空间的程序需要一些特定的机制才能访问一定的硬件出口。外部客户端向负载均衡器发送IP包,该IP包会到达该负载均衡器的内核的Netfilter钩子(PREROUTING)处。可以在该Netfilter钩子处设置一个模块用于获取该IP报文。之后执行步骤202。
步骤202:负载均衡器的Linux内核空间根据该五元组判断是采用固定转发模式还是特征转发模式,若是固定转发模式,执行步骤203,否则,执行步骤205。其中,五元组中的端口号可以作为判断是固定转发模式还是特征转发模式的依据,例如,当端口号对于系统来讲是足够安全的可以采用固定转发模式,再例如,当端口号为上网端口号(如80)时,可以采用特征转发模式。在集群系统中可以包括固定转发模式和特征转发模式。固定转发模式是指在负载均衡器内预先配置转发表,该转发表中固定设置五元组与目的服务器的对应关系,五元组相同的IP报文被同一个服务器处理;特征转发模式是指同一个特征值的IP报文被同一个服务器处理,例如,同一个呼叫流程的IP报文被同一个服务器处理。
步骤203:负载均衡器的Linux内核空间根据预先配置的转发表确定与所述五元组对应的目的MAC地址。图3为本发明第三实施例的转发表的示意图,参见图3,例如,得到的五元组为第三IP五元组,根据该转发表可以得到与第三IP五元组对应的为第三服务器。其中,在转发表中可以配置五元组与服务器的序号之间的关系,即上述得到服务器的序号为3,进而根据该序号可以得到目的服务器的MAC地址,或者直接配置五元组与MAC地址的对应关系。之后执行步骤204。
步骤204:负载均衡器的Linux内核空间直接在二层将该IP报文发送给该目的MAC地址对应的服务器。由于IP报文是在负载均衡器的内核空间被获取的,运行于内核空间的程序可以直接访问任意硬件出口,并且,固定转发模式下负载均衡器无需对该IP报文进行进一步地处理,因此负载均衡器在获取目的服务器的MAC地址后,可以在负载均衡器的内核空间中,直接使用网络设备驱动接口将该IP报文发送给所述目的服务器,由所述目的服务器进行处理。结束固定转发模式的上行流程。之后执行步骤211。
步骤205:负载均衡器的Linux内核空间将该IP报文通过内核态到用户态的通信机制(如Netlink)发送给Linux用户空间。Netlink是Linux系统中实现内核空间与用户空间通信的一种机制。之后执行步骤206。
步骤206:负载均衡器的Linux用户空间通过与该应用层协议对应的特征值提取函数,对该IP报文进行特征值提取处理,得到该IP报文的特征值。本实施例中对于特征值相同的IP报文可以认为是同一事务,例如,属于同一次呼叫流程,这些具有相同CALL-ID值的IP报文将由同一个服务器进行处理。之后执行步骤207。
步骤207:负载均衡器的Linux用户空间判断是否存在所述特征值与服务器之间的对应关系,若是,执行步骤208,否则,执行步骤209。
步骤208:负载均衡器的Linux用户空间根据已经存在的所述特征值和对应关系确定目的服务器的MAC地址。图4为本发明第四实施例的特征值与服务器的对应关系的示意图,参见图4,例如,得到的特征值为第三特征值,根据对应关系可以得到与第三特征值对应的为第三服务器。之后执行步骤210。
步骤209:负载均衡器的Linux用户空间动态选择(例如顺序轮选和根据CPU占用率轮选)一个可用的服务器,将所述可用的服务器的MAC地址作为目的MAC地址,并新建所述特征值与所述可用的服务器之间的对应关系,以便下次分类使用。之后,再接收到该特征值后便可以根据该对应关系查找到目的服务器的MAC地址。之后执行步骤210。
步骤210:负载均衡器的Linux用户空间通过用户态二层报文发送接口,如PACKET socket,直接在二层将所述IP报文发送给所述目的MAC地址对应的服务器。PACKET socket是Linux系统中的一种机制,实现用户空间到内核空间的通信。结束分类转发模式的上行流程。之后执行步骤211。
步骤211:负载均衡器接收该目的MAC地址对应的服务器的响应报文。具体地,负载均衡器接收到IP报文后,将该IP报文发送给目的MAC地址对应的服务器,该服务器对该IP报文进行处理,得到该IP报文的响应报文,之后,将该响应报文发送客户设备,在该服务器上的Linux内核空间的转发模块将截获这个报文,它通过报文中的源IP地址,得到负载均衡器中的转发模块的MAC地址,例如,由于IP报文的源IP地址是负载均衡器中的转发模块的IP地址,服务器根据IP地址和MAC地址的关系可以获取转发模块的MAC地址。再将该报文直接通过二层转发给负载均衡器中的转发模块,负载均衡器中的转发模块再将报文转发给客户设备。在上述下行传输过程中,与上行相同,是根据各模块的MAC地址进行响应报文的传输的,实现在二层传输报文,加快传输速度。本实施例的IP报文及响应报文均通过负载均衡器实现客户设备与服务器之间的通信,无需服务器单独配置出口与客户设备连接,因此可以简化组网结构。
本实施例描述了IP报文上下行的流程,在上行、下行时均是根据MAC地址直接在二层进行IP报文的传输,因此可以加快传输速度,提高吞吐量;在下行时服务器通过负载均衡器向客户设备响应报文,无需在服务器单独设置与客户设备的出口,实现简化组网结构,降低成本。
上述实施例示出了一个负载均衡器的处理流程,为了保证系统的可靠性,可以在系统中采用冗余的方案,即在系统中设置主用负载均衡器和备用负载均衡器,当主用负载均衡器发生故障后,备用负载均衡器切换为主用负载均衡器实现上述流程。因此,在负载均衡器存在切换时,本发明实施例还可以进一步包括:当负载均衡器需要切换时,切换后备升主的负载均衡器将自身的MAC地址广播给所述外部客户设备,例如,通过无需应答的地址解析协议(Address Resolution Protocol,ARP)将MAC地址广播给外部客户设备,所述外部客户设备根据切换后的负载均衡器的MAC地址,将所述IP报文发送给切换后的负载均衡器。通过负载均衡器的切换可以保证系统的可靠性。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图5为本发明第五实施例的集群系统的结构示意图,该实施例的集群系统包括一个主用负载均衡器51和至少一个的服务器52。主用负载均衡器51与外部的客户设备及各服务器52连接,接收客户设备发送的IP报文,根据所述IP报文获取目的MAC地址,将所述IP报文发送给所述目的MAC地址对应的服务器;服务器52接收主用负载均衡器发送的IP报文,处理该IP报文后得到响应报文,并将响应报文发送给主用负载均衡器51,之后,主用负载均衡器51将该响应报文发送给外部的客户设备。进一步地,为了保证系统的可靠性,可以在系统中再设置备用负载均衡器,当备用负载均衡器发现主用负载均衡器发生故障后,可以将自身的MAC地址广播给外部客户设备,使外部客户设备更新自身的目的MAC地址,使外部客户设备将IP报文发送给备用负载均衡器,实现主备切换,保证系统可靠性。
本实施例通过负载均衡器实现外部客户设备与内部服务器之间的上下行报文转发,可以简化组网结构;并且,负载均衡器根据MAC地址直接在二层转发报文,可以加快转发速度,提高吞吐量。
图6为本发明第六实施例的负载均衡器的结构示意图,该实施例的负载均衡器包括接收模块61、确定模块62和发送模块63。接收模块61接收外部客户端发送的IP报文;确定模块62根据接收模块61得到的所述IP报文确定目的MAC地址;发送模块63将所述IP报文发送给确定模块62得到的所述目的MAC地址对应的服务器。
本实施例通过负载均衡器实现外部客户设备与内部服务器之间的上行报文转发,负载均衡器根据MAC地址直接在二层转发报文,可以加快转发速度,提高吞吐量。
图7为本发明第七实施例的负载均衡器的结构示意图,本实施例作为实施例六的一种具体实现,本实施例的确定模块62具体包括获取单元71、判断单元72、第一确定单元73、第二确定单元74。获取单元71用于获取接收模块61接收的IP报文的五元组,判断单元72根据获取单元71得到的所述五元组判断是固定转发模式还是特征转发,若是固定转发模式,则激活第一确定单元73,否则激活第二确定单元74;第一确定单元73根据预先配置的转发表确定与所述五元组对应的目的MAC地址;第二确定单元74根据所述IP报文得到所述IP报文的特征值,确定与所述特征值对应的目的MAC地址。
其中,获取单元71、判断单元72和第一确定单元73位于负载均衡器的Linux内核空间中,所述第二确定单元74位于所述负载均衡器的Linux用户空间中。
进一步地,判断单元72还用于根据所述五元组确定是特征转发,就通过内核态到用户态的通信机制(Netlink)将报文发送给所述第二确定单元74;所述第二确定单元74具体用于通过特征值提取函数,对所述IP报文包进行处理,得到所述IP报文包的特征值。
本实施例的确定模块62还可以进一步包括匹配数据单元75。匹配数据单元75保存IP报文的特征值与服务器之间的对应关系;第二确定单元74具体用于判断所述匹配数据单元75中是否存在得到的IP报文的特征值的对应关系,若存在,则根据所述匹配数据单元75中的对应关系确定所述目的MAC地址;若不存在,则动态选择一个可用的服务器,将所述可用的服务器的MAC地址作为目的MAC地址,并在所述匹配数据单元75中新建所述特征值与所述可用的服务器之间的对应关系。
本实施例的发送模块63包括第一发送单元76和第二发送单元77。第一发送单元76位于用户空间,用于当特征转发模式时,通过用户态二层报文发送接口(PACKET socket),将所述IP报文发送给所述目的MAC地址对应的服务器;第二发送单元77位于内核空间,用于当采用固定转发模式时,在内核空间中使用网络设备驱动接口直接将所述IP报文发送给所述目的MAC地址对应的服务器。
本实施例是针对客户设备发送的上行报文的情形,负载均衡器在接收到上行报文后解析出该报文的目的MAC地址,根据MAC地址实现报文在第二层的直接的转发,由于是在MAC层(第二层)实现的转发,无需进行第三层的处理(第三层的处理包括IP地址转换和IP地址封装),可以提高转发速度,提高吞吐量。
图8为本发明第八实施例的集群系统的结构示意图,本实施例的负载均衡器51中包括第二转发模块82,服务器52(为了简便本实施例只示出了一个服务器)中包括第一转发模块81。第一转发模块81位于服务器52的内核空间,用于将所述响应报文发送给第二转发模块;第二转发模块82位于负载均衡器51的内核空间,用于将第一转发模块81转发的所述响应报文发送给所述客户设备。
本实施例是针对服务器发送的下行报文的情形,服务器将下行报文通过负载均衡器转发给客户设备,无需在服务器上设置与客户设备的出口侧,可以简化组网结构。
图9为本发明第九实施例的负载均衡器的结构示意图,该负载均衡器9包括第一模块91、第二模块92、第三模块93和第四模块94。并且为了描述各模块与系统的连接关系,图中还示出了服务器10。第一模块91用于接收外部客户设备发送的IP报文;第二模块92用于根据第一模块91得到的所述IP报文确定所述IP报文的目的介质接入控制地址;第三模块93用于将所述IP报文直接通过链路层发送给第二模块92得到的所述目的介质接入控制地址对应的服务器10;第四模块94用于接收所述服务器10发送的所述IP报文的响应报文,将所述响应报文发送给所述客户设备。
具体的,本实施例的负载均衡器可以为上述的图6或图7所示的负载均衡器。
本实施例通过负载均衡器实现外部客户设备与内部服务器之间的上下行报文转发,可以简化组网结构;并且,负载均衡器根据MAC地址直接转发报文,可以加快转发速度,提高吞吐量。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。
Claims (18)
1、一种IP报文分发方法,其特征在于,包括:
接收外部客户设备发送的IP报文;
根据所述IP报文确定所述IP报文的目的介质接入控制地址;
将所述IP报文直接通过链路层发送给所述目的介质接入控制地址对应的服务器;
接收所述服务器发送的所述IP报文的响应报文,将所述响应报文发送给所述客户设备。
2、根据权利要求1所述的方法,其特征在于,所述根据所述IP报文确定目的介质接入控制地址包括:
获取所述IP报文的五元组;
根据所述五元组判断是采用固定转发模式还是采用特征转发模式;
在采用固定转发模式时,根据预先配置的转发表确定与所述五元组对应的目的介质接入控制地址;
在采用特征转发模式时,根据所述IP报文得到所述IP报文的特征值,确定与所述特征值对应的目的介质接入控制地址。
3、根据权利要求2所述的方法,其特征在于,所述根据所述IP报文得到所述IP报文的特征值包括:
Linux内核空间的进程将所述IP报文通过内核态到用户态通信机制发送给Linux用户空间;
Linux用户空间的进程通过特征值提取函数,得到所述IP报文的特征值。
4、根据权利要求2或3所述的方法,其特征在于,所述确定与所述特征值对应的目的介质接入控制地址包括:
判断是否存在所述特征值与服务器之间的对应关系;
当存在所述对应关系时,根据所述特征值和对应关系确定所述目的介质接入控制地址;
当不存在所述对应关系时,动态选择一个可用的服务器,将所述可用的服务器的介质接入控制地址作为目的介质接入控制地址,并新建所述特征值与所述可用的服务器之间的对应关系。
5、根据权利要求1所述的方法,其特征在于,所述将所述IP报文直接通过链路层发送给所述目的介质接入控制地址对应的服务器包括:
当采用特征转发模式时,通过Linux用户空间的二层报文发送接口,将所述IP报文发送给所述目的介质接入控制地址对应的服务器;
当采用固定转发模式时,在Linux内核空间中直接使用网络设备驱动接口将所述IP报文发送给所述目的介质接入控制地址对应的服务器。
6、根据权利要求1所述的方法,其特征在于,还包括:当负载均衡器需要切换时,切换后备升主的主负载均衡器将自身的MAC地址广播给所述外部客户设备,用于所述外部客户设备根据切换后的负载均衡器的MAC地址,将所述IP报文发送给切换后的负载均衡器。
7、一种集群系统,其特征在于,包括:
主用负载均衡器,与外部的客户设备连接,用于接收客户设备发送的IP报文,根据所述IP报文获取目的介质接入控制地址,将所述IP报文直接通过链路层发送给所述目的介质接入控制地址对应的服务器;
至少一服务器,分别与所述主用负载均衡器连接,用于接收所述主用负载均衡器发送的IP报文,并将所述IP报文的响应报文通过所述主用负载均衡器发送给所述客户设备。
8、根据权利要求7所述的系统,其特征在于,所述主用负载均衡器包括:
接收模块,用于接收外部客户端发送的IP报文;
确定模块,用于根据所述IP报文确定所述IP报文的目的介质接入控制地址;
发送模块,用于将所述IP报文直接通过链路层发送给所述目的介质接入控制地址对应的服务器。
9、根据权利要求8所述的系统,其特征在于,所述确定模块包括:
获取单元,用于获取所述IP报文的五元组;
判断单元,用于根据所述五元组判断是采用固定转发模式还是采用特征转发模式;
第一确定单元,用于在采用固定转发模式时,根据预先配置的转发表确定与所述五元组对应的目的介质接入控制地址;
第二确定单元,用于在采用特征转发模式时,根据所述IP报文得到所述IP报文的特征值,确定与所述特征值对应的目的介质接入控制地址。
10、根据权利要求9所述的系统,其特征在于:所述获取单元、判断单元和第一确定单元位于所述负载均衡器的内核空间中,所述第二确定单元位于所述负载均衡器的用户空间中。
11、根据权利要求10所述的系统,其特征在于:
所述判断单元还用于将所述IP报文通过内核态到用户态通信机制发送给所述第二确定单元;
所述第二确定单元具体用于通过特征值提取函数,得到所述IP报文的特征值。
12、根据权利要求9所述的系统,其特征在于,所述确定模块还包括:
匹配数据单元,用于保存IP报文的特征值与服务器之间的对应关系;
所述第二确定单元具体用于判断所述匹配数据单元中是否存在得到的IP报文的特征值的对应关系,若存在,则根据所述匹配数据单元中的对应关系确定所述目的介质接入控制地址;若不存在,则动态选择一个可用的服务器,将所述可用的服务器的介质接入控制地址作为目的介质接入控制地址,并在所述匹配数据单元中新建所述特征值与所述可用的服务器之间的对应关系。
13、根据权利要求8所述的系统,其特征在于,所述发送模块包括:
第一发送单元,位于Linux用户空间,用于当采用特征转发模式时,通过用户空间的二层报文发送接口,将所述IP报文发送给所述目的介质接入控制地址对应的服务器;
第二发送单元,位于Linux内核空间,用于当采用固定转发模式时,在内核空间中直接使用网络设备驱动接口将所述IP报文发送给所述目的介质接入控制地址对应的服务器。
14、根据权利要求7所述的系统,其特征在于:
所述服务器包括第一转发模块,位于所述服务器的Linux内核空间,用于将所述响应报文发送给第二分发模块;
所述负载均衡器还包括第二转发模块,位于所述负载均衡器的Linux内核空间,用于将所述响应报文发送给所述客户设备。
15、根据权利要求7所述的系统,其特征在于,还包括:
备用负载均衡器,用于在主用负载均衡器发生故障后,将自身的MAC地址广播给外部客户设备,切换为主用负载均衡器。
16、一种负载均衡器,其特征在于,包括:
第一模块,用于接收外部客户设备发送的IP报文;
第二模块,用于根据第一模块得到的所述IP报文确定所述IP报文的目的介质接入控制地址;
第三模块,用于将所述IP报文直接通过链路层发送给第二模块得到的所述目的介质接入控制地址对应的服务器;
第四模块,用于接收所述服务器发送的所述IP报文的响应报文,将所述响应报文发送给所述客户设备。
17、根据权利要求16所述的负载均衡器,其特征在于,所述第二模块具体用于获取所述IP报文的五元组;根据所述五元组判断是采用固定转发模式还是采用特征转发模式;在采用固定转发模式时,根据预先配置的转发表确定与所述五元组对应的目的介质接入控制地址;在采用特征转发模式时,根据所述IP报文得到所述IP报文的特征值,确定与所述特征值对应的目的介质接入控制地址。
18、根据权利要求16所述的负载均衡器,其特征在于,所述发送模块具体用于当采用特征转发模式时,通过用户空间的二层报文发送接口,将所述IP报文发送给所述目的介质接入控制地址对应的服务器;当采用固定转发模式时,在内核空间中直接使用网络设备驱动接口将所述IP报文发送给所述目的介质接入控制地址对应的服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102411915A CN101442493B (zh) | 2008-12-26 | 2008-12-26 | Ip报文分发方法、集群系统和负载均衡器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102411915A CN101442493B (zh) | 2008-12-26 | 2008-12-26 | Ip报文分发方法、集群系统和负载均衡器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101442493A true CN101442493A (zh) | 2009-05-27 |
CN101442493B CN101442493B (zh) | 2011-08-10 |
Family
ID=40726740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102411915A Active CN101442493B (zh) | 2008-12-26 | 2008-12-26 | Ip报文分发方法、集群系统和负载均衡器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101442493B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924698A (zh) * | 2010-07-22 | 2010-12-22 | 福建星网锐捷网络有限公司 | 基于ip单播路由的二层域负载均衡方法、系统和设备 |
CN103067473A (zh) * | 2012-12-21 | 2013-04-24 | 中标软件有限公司 | 一种远程协助转发方法及系统 |
CN103200120A (zh) * | 2013-04-09 | 2013-07-10 | 杭州华三通信技术有限公司 | 一种直接路由方式下的报文转发方法和网络设备 |
WO2014023003A1 (zh) * | 2012-08-09 | 2014-02-13 | 华为技术有限公司 | 控制数据传输的方法、装置和系统 |
CN103607356A (zh) * | 2013-11-14 | 2014-02-26 | 北京奇虎科技有限公司 | 一种负载均衡方法、负载均衡器及系统 |
CN103647716A (zh) * | 2013-11-22 | 2014-03-19 | 上海斐讯数据通信技术有限公司 | 一种数据包快速转发方法及装置 |
WO2015143802A1 (zh) * | 2014-03-27 | 2015-10-01 | 中兴通讯股份有限公司 | 业务功能链处理方法及装置 |
WO2016176942A1 (zh) * | 2015-05-07 | 2016-11-10 | 中兴通讯股份有限公司 | 一种基于负载均衡器的链路复用方法及系统 |
CN107508700A (zh) * | 2017-08-15 | 2017-12-22 | 北京小米移动软件有限公司 | 容灾方法、装置、设备及存储介质 |
CN107547661A (zh) * | 2017-10-12 | 2018-01-05 | 福建富士通信息软件有限公司 | 一种高性能且高可用的容器负载均衡实现方法 |
CN108156008A (zh) * | 2016-12-05 | 2018-06-12 | 北京国双科技有限公司 | 服务器的配置方法和装置 |
CN109361602A (zh) * | 2018-11-12 | 2019-02-19 | 网宿科技股份有限公司 | 一种基于OpenStack云平台转发报文的方法和系统 |
CN109698796A (zh) * | 2019-03-07 | 2019-04-30 | 江苏省人民医院 | 一种高性能网络负载均衡系统及其实现方法 |
CN110213069A (zh) * | 2018-03-21 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种数据转发方法、装置、容灾系统及存储介质 |
CN110365644A (zh) * | 2019-06-05 | 2019-10-22 | 华南理工大学 | 一种构建物联网设备高性能监控平台的方法 |
CN110768865A (zh) * | 2019-10-23 | 2020-02-07 | 新华三信息安全技术有限公司 | 一种深度报文检测引擎激活方法、装置及电子设备 |
WO2020211214A1 (zh) * | 2019-04-17 | 2020-10-22 | 烽火通信科技股份有限公司 | 用于Linux操作系统的故障诊断方法及系统 |
CN114020466A (zh) * | 2021-11-08 | 2022-02-08 | 江苏安超云软件有限公司 | 双活负载均衡的方法及装置、电子设备和存储介质 |
CN114827078A (zh) * | 2022-04-01 | 2022-07-29 | 阿里云计算有限公司 | 节点访问方法以及数据传输系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1272724C (zh) * | 2002-12-31 | 2006-08-30 | 联想(北京)有限公司 | 基于内核中套接字对接的第七层负载均衡的方法 |
CN100456690C (zh) * | 2003-10-14 | 2009-01-28 | 北京邮电大学 | 基于全球网络定位的全局负载均衡方法 |
CN101009692A (zh) * | 2006-01-25 | 2007-08-01 | 中兴通讯股份有限公司 | 硬件地址解析方法及通信处理设备及报文处理方法 |
-
2008
- 2008-12-26 CN CN2008102411915A patent/CN101442493B/zh active Active
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924698B (zh) * | 2010-07-22 | 2012-12-12 | 福建星网锐捷网络有限公司 | 基于ip单播路由的二层域负载均衡方法、系统和设备 |
CN101924698A (zh) * | 2010-07-22 | 2010-12-22 | 福建星网锐捷网络有限公司 | 基于ip单播路由的二层域负载均衡方法、系统和设备 |
WO2014023003A1 (zh) * | 2012-08-09 | 2014-02-13 | 华为技术有限公司 | 控制数据传输的方法、装置和系统 |
CN103067473A (zh) * | 2012-12-21 | 2013-04-24 | 中标软件有限公司 | 一种远程协助转发方法及系统 |
CN103200120B (zh) * | 2013-04-09 | 2016-08-03 | 杭州华三通信技术有限公司 | 一种直接路由方式下的报文转发方法和网络设备 |
CN103200120A (zh) * | 2013-04-09 | 2013-07-10 | 杭州华三通信技术有限公司 | 一种直接路由方式下的报文转发方法和网络设备 |
CN103607356A (zh) * | 2013-11-14 | 2014-02-26 | 北京奇虎科技有限公司 | 一种负载均衡方法、负载均衡器及系统 |
CN103647716A (zh) * | 2013-11-22 | 2014-03-19 | 上海斐讯数据通信技术有限公司 | 一种数据包快速转发方法及装置 |
WO2015074324A1 (zh) * | 2013-11-22 | 2015-05-28 | 上海斐讯数据通信技术有限公司 | 一种数据包快速转发方法及装置 |
US10084706B2 (en) | 2014-03-27 | 2018-09-25 | Zte Corporation | Method and device for processing service function chaining |
WO2015143802A1 (zh) * | 2014-03-27 | 2015-10-01 | 中兴通讯股份有限公司 | 业务功能链处理方法及装置 |
WO2016176942A1 (zh) * | 2015-05-07 | 2016-11-10 | 中兴通讯股份有限公司 | 一种基于负载均衡器的链路复用方法及系统 |
CN108156008B (zh) * | 2016-12-05 | 2021-03-26 | 北京国双科技有限公司 | 服务器的配置方法和装置 |
CN108156008A (zh) * | 2016-12-05 | 2018-06-12 | 北京国双科技有限公司 | 服务器的配置方法和装置 |
CN107508700B (zh) * | 2017-08-15 | 2021-01-15 | 北京小米移动软件有限公司 | 容灾方法、装置、设备及存储介质 |
CN107508700A (zh) * | 2017-08-15 | 2017-12-22 | 北京小米移动软件有限公司 | 容灾方法、装置、设备及存储介质 |
CN107547661B (zh) * | 2017-10-12 | 2020-05-08 | 中电福富信息科技有限公司 | 一种容器负载均衡实现方法 |
CN107547661A (zh) * | 2017-10-12 | 2018-01-05 | 福建富士通信息软件有限公司 | 一种高性能且高可用的容器负载均衡实现方法 |
CN110213069A (zh) * | 2018-03-21 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种数据转发方法、装置、容灾系统及存储介质 |
CN110213069B (zh) * | 2018-03-21 | 2022-01-07 | 腾讯科技(深圳)有限公司 | 一种数据转发方法、装置、容灾系统及存储介质 |
CN109361602B (zh) * | 2018-11-12 | 2021-06-22 | 网宿科技股份有限公司 | 一种基于OpenStack云平台转发报文的方法和系统 |
CN109361602A (zh) * | 2018-11-12 | 2019-02-19 | 网宿科技股份有限公司 | 一种基于OpenStack云平台转发报文的方法和系统 |
CN109698796A (zh) * | 2019-03-07 | 2019-04-30 | 江苏省人民医院 | 一种高性能网络负载均衡系统及其实现方法 |
WO2020211214A1 (zh) * | 2019-04-17 | 2020-10-22 | 烽火通信科技股份有限公司 | 用于Linux操作系统的故障诊断方法及系统 |
CN110365644A (zh) * | 2019-06-05 | 2019-10-22 | 华南理工大学 | 一种构建物联网设备高性能监控平台的方法 |
CN110768865A (zh) * | 2019-10-23 | 2020-02-07 | 新华三信息安全技术有限公司 | 一种深度报文检测引擎激活方法、装置及电子设备 |
CN114020466A (zh) * | 2021-11-08 | 2022-02-08 | 江苏安超云软件有限公司 | 双活负载均衡的方法及装置、电子设备和存储介质 |
CN114020466B (zh) * | 2021-11-08 | 2022-07-19 | 江苏安超云软件有限公司 | 双活负载均衡的方法及装置、电子设备和存储介质 |
CN114827078A (zh) * | 2022-04-01 | 2022-07-29 | 阿里云计算有限公司 | 节点访问方法以及数据传输系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101442493B (zh) | 2011-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101442493B (zh) | Ip报文分发方法、集群系统和负载均衡器 | |
CN111885075B (zh) | 容器通信方法、装置、网络设备及存储介质 | |
US9281995B2 (en) | Virtual network and management method of virtual network | |
EP4009593A1 (en) | Data transmission method and apparatus, network card and storage medium | |
WO2016034014A1 (zh) | 一种基于虚拟机迁移的网关控制方法、装置及系统 | |
US20160191571A1 (en) | Applications processing in a network apparatus | |
JP4053967B2 (ja) | Vlanサーバ | |
US7996569B2 (en) | Method and system for zero copy in a virtualized network environment | |
CN109302466B (zh) | 数据处理方法、相关设备及计算机存储介质 | |
CN110213148B (zh) | 一种数据传输的方法、系统及装置 | |
US20230275832A1 (en) | Networking processor and network device | |
CN110012118B (zh) | 一种提供网络地址转换nat服务的方法及控制器 | |
CN103905510A (zh) | 一种数据包的处理方法及后台服务器 | |
CN100414936C (zh) | 平衡网络文件系统服务器多网卡间负载的方法 | |
CN101795238B (zh) | 网络负载平衡的组网方法、设备及系统 | |
CN105897542B (zh) | 一种隧道建立方法及视频监控系统 | |
CN112583655B (zh) | 数据传输方法、装置、电子设备及可读存储介质 | |
KR101794719B1 (ko) | Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템 | |
CN110661728B (zh) | 多虚通道传输时共享与私有相结合的缓冲设计方法与装置 | |
WO2019134637A1 (zh) | 多类型的层叠虚拟网络互连的方法、装置及系统 | |
JP4021780B2 (ja) | 計算機ノード、クラスタシステム、クラスタ管理方法、クラスタ管理プログラム | |
CN111865801B (zh) | 一种基于Virtio端口传输数据的方法和系统 | |
CN107483520B (zh) | 一种网络附属存储实例处理的方法和装置 | |
CN112073503A (zh) | 一种基于流控机制的高性能负载均衡方法 | |
CN108965494A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |