CN102457440A - 实现负载均衡的方法、dns服务器和客户端 - Google Patents

实现负载均衡的方法、dns服务器和客户端 Download PDF

Info

Publication number
CN102457440A
CN102457440A CN2012100114003A CN201210011400A CN102457440A CN 102457440 A CN102457440 A CN 102457440A CN 2012100114003 A CN2012100114003 A CN 2012100114003A CN 201210011400 A CN201210011400 A CN 201210011400A CN 102457440 A CN102457440 A CN 102457440A
Authority
CN
China
Prior art keywords
load
application servers
address
dns
client
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.)
Pending
Application number
CN2012100114003A
Other languages
English (en)
Inventor
李小强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Huawei Software Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2012100114003A priority Critical patent/CN102457440A/zh
Publication of CN102457440A publication Critical patent/CN102457440A/zh
Priority to PCT/CN2012/076812 priority patent/WO2013104172A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及通信技术领域,具体涉及实现负载均衡的方法、DNS服务器和客户端,其中实现负载均衡的方法包括:接收客户端发送的DNS请求,该DNS请求包括域名地址;查找该域名地址对应的多个应用服务器的负载及IP地址;向该客户端发送DNS响应,该DNS响应包括上述多个应用服务器的负载及IP地址,以便于该客户端根据上述多个应用服务器的负载确定访问的IP地址。使用本发明,能够实现客户端根据多个应用服务器的负载情况访问负载较轻的应用服务器,以达到多个客户端均衡访问多个应用服务器的目的。

Description

实现负载均衡的方法、DNS服务器和客户端
技术领域
本发明涉及通信技术领域,具体涉及实现负载均衡的方法、DNS服务器和客户端。
背景技术
域名解析系统(DNS:Domain Name System)负载均衡技术是最早的负载均衡解决方案,DNS服务器为同一个域名地址配置多个不同的IP地址,因而当客户端访问域名地址时,能够获取DNS服务器根据该域名地址配置的IP地址列表,并且不同的客户端能够根据IP地址列表中不同的IP地址访问不同的应用服务器,达到访问应用服务器的负载均衡的目的。
DNS负载均衡是一种简单而有效的实现负载均衡的方法,但是该种方案的缺点表现在不能区分不同的IP地址对应的应用服务器的差异,没有考虑这些应用服务器的负载能力,在没有考虑应用服务器的负载能力的情况下,简单的根据不同的IP地址访问不同的应用服务器,并没有实现客户端根据应用服务器的负载情况来均衡访问应用服务器,因此不是真正意义上的负载均衡。
发明内容
本发明的实施例提供了实现负载均衡的方法、DNS服务器和客户端,能够实现客户端根据应用服务器的负载情况来均衡访问应用服务器。
本发明的实施例提供了一种实现负载均衡的方法,包括:接收客户端发送的DNS请求,所述DNS请求包括域名地址;查找所述域名地址对应的多个应用服务器的负载及IP地址;向所述客户端发送DNS响应,所述DNS响应包括所述多个应用服务器的负载及IP地址,以便于所述客户端根据所述多个应用服务器的负载确定访问的IP地址。
本发明的另一个实施例提供了一种实现负载均衡的方法,包括:向DNS服务器发送DNS请求,所述DNS请求包括域名地址;接收所述DNS服务器发送的DNS响应,所述DNS响应包括所述域名地址对应的多个应用服务器的负载及IP地址;根据所述多个应用服务器的负载确定访问的IP地址。
本发明的一个实施例提供了一种DNS服务器,包括:接收单元,用于接收客户端发送的DNS请求,所述DNS请求包括域名地址;查找单元,用于查找所述接收单元接收的DNS请求中域名地址对应的多个应用服务器的负载及IP地址;发送单元,用于向所述客户端发送DNS响应,所述DNS响应包括所述查找单元查找出的多个应用服务器的负载及IP地址,以便于所述客户端根据所述多个应用服务器的负载确定访问的IP地址。
本发明个一个实施例提供了一种客户端,包括:发送单元,用于向DNS服务器发送DNS请求,所述DNS请求包括域名地址;接收单元,用于接收所述DNS服务器发送的DNS响应,所述DNS响应包括所述域名地址对应的多个应用服务器的负载及IP地址;访问单元,用于根据所述多个应用服务器的负载确定访问的IP地址。
从本发明实施例提供的以上技术方案可以看出,由于本发明实施例中客户端在向DNS服务器发送DNS请求后,DNS服务器根据DNS请求中的域名地址查找对应的多个应用服务器的IP地址及负载,以便于客户端能够根据多个应用服务器的负载情况确定合适的应用服务器作为访问对象,实现多个客户端均衡访问多个应用服务器的目的。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例提供的一种实现负载均衡的方法的流程图。
图2为本发明另一个实施例提供的一种实现负载均衡的方法的流程图。
图3为本发明一个实施例提供的一种实现负载均衡的方法的信令流程图。
图4为本发明一个实施例提供的DNS查询报文格式示意图。
图5为本发明一个实施例提供的扩展的DNS响应报文格式示意图。
图6为本发明一个实施例提供的一种DNS服务器的结构图。
图7为本发明一个实施例提供的一种客户端的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1描述了本发明一个实施例提供的一种实现负载均衡的方法的流程,该实施例包括:
S11、接收客户端发送的DNS请求,所述DNS请求包括域名地址。
具体的,DNS服务器接收客户端发送的DNS请求,该DNS请求中携带客户端访问的域名地址;其中,DNS服务器主要用于解析客户端访问的域名地址,并将域名地址转换为对应的IP地址。
DNS服务器在接收客户端发送的DNS请求之前,会获取该域名地址对应的多个应用服务器的负载,具体包括:DNS服务器向该多个应用服务器发送负载请求,并接收该多个应用服务器发送的负载响应,该负载响应包括该多个应用服务器的负载,进一步,该负载响应还可以包括该多个应用服务器的状态,包括可用或不可用;可替代的,DNS服务器接收该多个应用服务器主动上报的负载消息,该负载消息包括该多个应用服务器的负载,进一步,还可以包括该多个应用服务器的状态,包括可用或不可用,进一步的,该多个应用服务器可以周期性上报自身的负载消息。
S12、查找所述域名地址对应的多个应用服务器的负载及IP地址。
具体的,DNS服务器在接收客户端发送的DNS请求后,获取其中携带的域名地址,并根据该域名地址查找对应的多个应用服务器的IP地址和该多个应用服务器的负载。
在本发明的实施例中,应用服务器包括Web服务器、邮件服务器、FTP(File Transfer Protocol)服务器等,应用服务器的负载反映了应用服务器的承载能力,负载越大,表明应用服务器还能接受的访问越少,负载越小,表明应用服务器还能接受的访问越多。
S13、向所述客户端发送DNS响应,所述DNS响应包括所述多个应用服务器的负载及IP地址,以便于所述客户端根据所述多个应用服务器的负载确定访问的IP地址。
具体的,DNS服务器向客户端发送DNS响应消息,该DNS响应消息中携带上述查找到的多个应用服务器的负载及IP地址,以便于客户端根据该多个应用服务器的负载确定访问的IP地址。
从上可知,本实施例中客户端在向DNS服务器发送DNS请求后,DNS服务器根据DNS请求中的域名地址查找对应的多个服务器的负载及IP地址,以便于客户端能够根据多个应用服务器的负载情况确定合适的应用服务器作为访问对象,实现多个客户端均衡访问多个应用服务器的目的。
图2描述了本发明另一个实施例提供的一种实现负载均衡的方法的流程,该实施例包括:
S21、向DNS服务器发送DNS请求,所述DNS请求包括域名地址。
具体的,客户端向DNS服务器发送DNS请求,该DNS请求中携带客户端请求访问的域名地址。
S22、接收所述DNS服务器发送的DNS响应,所述DNS响应包括所述域名地址对应的多个应用服务器的负载及IP地址。
具体的,客户端接收该DNS服务器发送的DNS响应,该DNS响应包括上述域名地址对应的多个应用服务器的负载及IP地址;其中,该多个应用服务器的负载及IP地址由该DNS服务器根据上述域名地址查找获取。
S23、根据所述多个应用服务器的负载确定访问的IP地址。
具体的,客户端根据上述多个应用服务器的负载确定访问的IP地址,并根据该IP地址来访问获取相关资源。优选的,客户端将上述多个应用服务器中负载最轻的应用服务器对应的IP地址确定为访问的IP地址。可选的,上述DNS响应还可以包括多个应用服务器的状态,包括可用或不可用,此时客户端可以根据多个应用服务器的负载及状态确定访问的IP地址,比如,在状态为可用的应用服务器中,将负载最轻的应用服务器对应的IP地址确定为访问的IP地址。
从上可知,本实施例中客户端在向DNS服务器发送DNS请求后,DNS服务器根据DNS请求中的域名地址查找对应的多个服务器的负载及IP地址,以便于客户端能够根据多个应用服务器的负载情况确定合适的应用服务器作为访问对象,实现多个客户端均衡访问多个应用服务器的目的。
图3描述了本发明一个实施例提供的一种实现负载均衡的方法的信令流程,需要说明的是,实际中DNS服务器会与多个应用服务器发生交互,图3中标示出的一个应用服务器不能理解成是对DNS服务器与多个应用服务器交互的限制,因此该实施例中应用服务器可以理解成是多个应用服务器。该实施例包括:
S31、发送负载请求。
DNS服务器获取应用服务器的负载情况,具体的,DNS服务器向应用服务器发送负载请求,该负载请求可以是用户数据报协议(UDP:UserDatagram Protocol)消息,并在该UDP消息中携带请求应用服务器负载的信息。比如,定义该UDP请求消息结构如下:
  UDP首部   Data
其中,数据Data部分包括:
  字段名   类型   长度   描述
  MessageType   Byte   2   UDP请求消息
MessageType表示该UDP消息用于请求应用服务器的负载;可选的,该UDP请求消息中还可以包括请求应用服务器状态的信息,此时MessageType表示该UDP消息用于请求应用服务器的负载和状态。
S32、返回负载响应。
应用服务器在接收DNS服务器发送的负载请求后,向该DNS服务器返回负载响应,具体的,该负载响应可以是UDP响应消息,该UDP响应消息包含该应用服务器的负载;进一步,当S31中的UDP请求消息中还包含请求该应用服务器的状态信息时,则该UDP响应消息中还包含该应用服务器的状态,该状态包括可用或不可用。
DNS服务器在获取应用服务器发送的负载响应后,根据负载响应中携带的应用服务器的负载,保存该应用服务器的IP地址及其负载的对应关系;进一步,如果该负载响应中还携带了该应用服务器的状态,还保存该应用服务器的IP地址及其状态的对应关系。
S311、发送负载消息。
可替换的,DNS服务器获取应用服务器的负载可以不采用S31和S32两步,而由应用服务器主动向DNS服务器发送自身的负载消息,从而使得DNS服务器获取应用服务器的负载。进一步,应用服务器可以周期性地向DNS服务器发送自身的负载消息;其中,该负载消息包括应用服务器的负载,进一步,该负载消息还可以包括应用服务器的状态,包括可用或不可用。
DNS服务器在获取应用服务器发送的上述负载消息后,根据该负载消息中携带的应用服务器的负载,保存该应用服务器的IP地址及其负载的对应关系;进一步,如果该负载响应中还携带了该应用服务器的状态,还保存该应用服务器的IP地址及其状态的对应关系。
S33、发送DNS请求。
客户端向DNS服务器发送DNS请求,该DNS请求中携带了客户端请求访问的域名地址。具体的,该DNS请求使用的是标准的DNS查询报文格式,如图4所示。其中,问题401表示DNS查询报文请求查询的内容,由域名402、类型403和类404组成,域名402是客户端请求访问的域名地址,类型403表示该DNS报文请求查询的类型,比如由域名查询IP地址或由IP地址查询域名,类404通常为1,表示因特网数据。
S34、查找域名地址对应的多个应用服务器的负载及IP地址。
DNS服务器在接收了客户端发送的DNS请求后,根据该请求中携带的域名地址查找对应的多个应用服务器的负载及IP地址。
具体的,由于域名地址可以对应多个应用服务器,即多个IP地址,DNS服务器根据该DNS请求中的域名地址查找出对应的多个应用服务器的IP地址;另外,由于DNS服务器中保存了IP地址及其对应的应用服务器的负载的对应关系,因此DNS服务器根据该域名地址可以查找出对应的多个应用服务器的负载及IP地址。可选的,DNS服务器还可以保存IP地址及其对应的应用服务器的状态的对应关系,因此DNS服务器还可以查找出该域名地址对应的多个应用服务器的状态,此时要求DNS服务器在获取多个应用服务器的负载时,同时获取该多个应用服务器的状态。
S35、发送DNS响应。
DNS服务器在查找出域名地址对应的多个应用服务器的负载及IP地址后,向客户端发送DNS响应,该DNS响应包括该多个应用服务器的负载及IP地址。
具体的,该DNS响应使用扩展的DNS响应报文格式,如图5所示。其中,回答501表示该DNS响应报文响应的相关内容,在标准的DNS响应报文格式中,回答501由指针502、类型503、类504、TTL505、长度506和IP地址507组成,其中,指针502表示客户端请求的域名地址;类型503和图4DNS查询报文中的类型403相同;类504通常是1,表示因特网数据;TTL505表示DNS响应报文的生存时间;长度506指资源数据(比如IP地址)的长度;IP地址507表示查找出的客户端请求的域名地址对应的IP地址。
本发明扩展的DNS响应报文中“回答”部分扩展的字段包括负载508,进一步还可以包括状态509,其中,负载508是指IP地址对应的应用服务器的负载情况,可以由具体的数值来反映负载的大小;状态509是指IP地址对应的应用服务器的状态,包括可用或不可用。
S36、发起访问。
客户端在获取DNS服务器发送的DNS响应后,根据该DNS响应中携带的多个应用服务器的负载确定访问的IP地址,并向该确定访问的IP地址发起访问请求以获取相应的资源。优选的,客户端选择多个应用服务器中负载最轻的应用服务器对应的IP地址发起访问请求;进一步,如果DNS响应中还包含该多个应用服务器的状态,则客户端选择状态为可用的应用服务器中负载最轻的应用服务器发起访问,从而获取应用服务器的资源。
因此,客户端根据应用服务器的负载情况来访问合适的应用服务器,可以有效的防止负载较重的应用服务器继续接受访问,而负载较轻的应用服务器却没有被访问,从而实现了合理的访问应用服务器,均衡了多个应用服务器的访问负载。
从上可知,本实施例中客户端在向DNS服务器发送DNS请求后,DNS服务器根据DNS请求中的域名地址查找对应的多个服务器的负载及IP地址,以便于客户端能够根据多个应用服务器的负载情况确定合适的应用服务器作为访问对象,实现多个客户端均衡访问多个应用服务器的目的。
图6描述了本发明一个实施例提供的一种DNS服务器的结构,包括:
接收单元608,用于接收客户端发送的DNS请求,该DNS请求包括该客户端请求的域名地址。
查找单元609,用于根据接收单元608接收的DNS请求中的域名地址,查找出对应的多个应用服务器的负载及IP地址。
发送单元610,用于向该客户端发送DNS响应,该DNS响应包括查找单元609查找出的多个应用服务器的负载及IP地址,以便于该客户端根据该多个应用服务器的负载确定访问的IP地址。
获取单元611,用于在接收单元608接收客户端发送的DNS请求之前,获取上述多个应用服务器的负载,并保存该多个应用服务器的负载及IP地址的对应关系。因此,查找单元609根据接收单元608接收的域名地址和获取单元611获取的应用服务器的负载,查找出该域名地址对应的该多个应用服务器的负载。
具体的,获取单元611可以通过向该多个应用服务器发送负载请求,再接收该多个应用服务器发送的负载响应来获取该多个应用服务器的负载情况,该过程与图3中S31和S32步骤相同,具体可以参见S31和S32,此处不予赘述。
可替换的,获取单元611可以通过直接接收该多个应用服务器上报的负载消息来获取该多个应用服务器的负载,此时要求该多个应用服务器能够主动向DNS服务器发送自身的负载信息。进一步,获取单元611可以每隔一定的时间接收应用服务器发送的负载消息,即周期性的向DNS服务器发送负载消息,该过程与图3中的S311步骤相同,具体可以参见S311,此处不予赘述。
图6又描述了本发明一个实施例提供的一种DNS服务器的结构,该DNS服务器可以包括至少一个处理器601,至少一个网络接口604,存储器605和至少一个通信总线602,该通信总线602用于实现这些组件之间的连接通信。该DNS服务器还可以包括用户接口603,用于实现与用户交互。存储器605可以包括:
操作系统606,用于处理各种基础的系统服务和执行基于硬件的任务。
应用单元607,用于根据客户端发送的DNS请求,向该客户端返回携带多个应用服务器的负载及IP地址的DNS响应,具体的,应用单元607包括:
接收单元608,用于接收客户端发送的DNS请求,该DNS请求包括该客户端请求的域名地址。
查找单元609,用于根据接收单元608接收的DNS请求中的域名地址,查找出对应的多个应用服务器的负载及IP地址。
发送单元610,用于向该客户端发送DNS响应,该DNS响应包括查找单元609查找出的多个应用服务器的负载及IP地址,以便于该客户端根据该多个应用服务器的负载确定访问的IP地址。
获取单元611,用于在接收单元608接收客户端发送的DNS请求之前,获取上述多个应用服务器的负载,并保存该多个应用服务器的负载及IP地址的对应关系。因此,查找单元609根据接收单元608接收的域名地址和获取单元611获取的应用服务器的负载,查找出该域名地址对应的该多个应用服务器的负载。
具体的,获取单元611可以通过向该多个应用服务器发送负载请求,再接收该多个应用服务器发送的负载响应来获取该多个应用服务器的负载情况,该过程与图3中S31和S32步骤相同,具体可以参见S31和S32,此处不予赘述。
可替换的,获取单元611可以通过直接接收该多个应用服务器上报的负载消息来获取该多个应用服务器的负载,此时要求该多个应用服务器能够主动向DNS服务器发送自身的负载信息。进一步,获取单元611可以每隔一定的时间接收应用服务器发送的负载消息,即周期性的向DNS服务器发送负载消息,该过程与图3中的S311步骤相同,具体可以参见S311,此处不予赘述。
上述DNS服务器执行了图1或图3所示的实施例的相关方法,具体的工作流程在此不再赘述。
从上可知,本实施例中客户端在向DNS服务器发送DNS请求后,DNS服务器根据DNS请求中的域名地址查找对应的多个服务器的负载及IP地址,以便于客户端能够根据多个应用服务器的负载情况确定合适的应用服务器作为访问对象,实现多个客户端均衡访问多个应用服务器的目的。
图7描述了本发明一个实施例提供的一种客户端,该实施例包括:
发送单元708,用于向DNS服务器发送DNS请求,该DNS请求包括域名地址,即客户端请求访问的域名地址。
接收单元709,用于接收该DNS服务器返回的DNS响应,该DNS响应包括该域名地址对应的多个应用服务器的负载及IP地址。进一步,该DNS响应还可以包括多个应用服务器的状态,包括可用或不可用。具体的,接收单元709接收的DNS响应与图3中S35中的DNS响应相同,此处不予赘述。
访问单元710,用于根据接收单元709接收的多个应用服务器的负载确定访问的IP地址,从而访问相应的应用服务器。优选的,访问单元710可以向上述多个应用服务器中负载最轻的应用服务器的IP地址发起访问请求,进而获取应用服务器的资源。可选的,如果接收单元709接收的DNS响应中还包括多个应用服务器的状态,则访问单元710可以向状态为可用的应用服务器中负载最轻的应用服务器的IP地址发起访问请求。
图7又描述了本发明一个实施例提供的一种装载了客户端的装置的结构,该装置可以包括至少一个处理器701,至少一个网络接口704,存储器705和至少一个通信总线702,该通信总线702用于实现这些组件之间的连接通信。该装置还可以包括用户接口703,用于实现与用户交互。存储器705可以包括:
操作系统706,用于处理各种基础的系统服务和执行基于硬件的任务。
客户端707,用于根据接收的DNS服务器发送的DNS响应中的多个应用服务器的负载确定访问的IP地址,具体的,客户端707包括:
发送单元708,用于向DNS服务器发送DNS请求,该DNS请求包括域名地址,即客户端请求访问的域名地址。
接收单元709,用于接收该DNS服务器返回的DNS响应,该DNS响应包括该域名地址对应的多个应用服务器的负载及IP地址。进一步,该DNS响应还可以包括多个应用服务器的状态,包括可用或不可用。具体的,接收单元709接收的DNS响应与图3中S35中的DNS响应相同,此处不予赘述。
访问单元710,用于根据接收单元709接收的多个应用服务器的负载确定访问的IP地址,从而访问相应的应用服务器。优选的,访问单元710可以向上述多个应用服务器中负载最轻的应用服务器的IP地址发起访问请求,进而获取应用服务器的资源。可选的,如果接收单元709接收的DNS响应中还包括多个应用服务器的状态,则访问单元710可以向状态为可用的应用服务器中负载最轻的应用服务器的IP地址发起访问请求。
上述客户端执行了图2或图3所示的实施例的相关方法,具体的工作流程在此不再赘述。
从上可知,本实施例中客户端在向DNS服务器发送DNS请求后,DNS服务器根据DNS请求中的域名地址查找对应的多个服务器的负载及IP地址,以便于客户端能够根据多个应用服务器的负载情况确定合适的应用服务器作为访问对象,实现多个客户端均衡访问多个应用服务器的目的。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(ROM:Read-Only Memory)或随机存储记忆体(RAM:Random Access Memory)等。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (20)

1.一种实现负载均衡的方法,其特征在于,包括:
接收客户端发送的DNS请求,所述DNS请求包括域名地址;
查找所述域名地址对应的多个应用服务器的负载及IP地址;
向所述客户端发送DNS响应,所述DNS响应包括所述多个应用服务器的负载及IP地址,以便于所述客户端根据所述多个应用服务器的负载确定访问的IP地址。
2.如权利要求1所述的方法,其特征在于,所述接收客户端发送的DNS请求之前还包括:
获取所述多个应用服务器的负载。
3.如权利要求2所述的方法,其特征在于,所述获取所述多个应用服务器的负载包括:
向所述多个应用服务器发送负载请求;
接收所述多个应用服务器发送的负载响应,所述负载响应包括所述多个应用服务器的负载。
4.如权利要求3所述的方法,其特征在于,所述负载响应还包括所述多个应用服务器的状态,所述多个应用服务器的状态包括可用或不可用;
所述DNS响应还包括所述多个应用服务器的状态,以便于所述客户端根据所述多个应用服务器的负载及状态确定访问的IP地址。
5.如权利要求2所述的方法,其特征在于,所述获取所述多个应用服务器的负载包括:
接收所述多个应用服务器发送的负载消息,所述负载消息包括所述多个应用服务器的负载。
6.如权利要求5所述的方法,其特征在于,所述接收所述多个应用服务器发送的负载消息包括:
接收所述多个应用服务器周期性发送的负载消息。
7.如权利要求5-6任一所述的方法,其特征在于,所述负载消息还包括所述多个应用服务器的状态,所述多个应用服务器的状态包括可用或不可用;
所述DNS响应还包括所述多个应用服务器的状态,以便于所述客户端根据所述多个应用服务器的负载及状态确定访问的IP地址。
8.一种实现负载均衡的方法,其特征在于,包括:
向DNS服务器发送DNS请求,所述DNS请求包括域名地址;
接收所述DNS服务器发送的DNS响应,所述DNS响应包括所述域名地址对应的多个应用服务器的负载及IP地址;
根据所述多个应用服务器的负载确定访问的IP地址。
9.如权利要求8所述的方法,其特征在于,所述根据所述多个应用服务器的负载确定访问的IP地址包括:
将所述多个应用服务器中负载最轻的应用服务器对应的IP地址确定为访问的IP地址。
10.如权利要求8所述的方法,其特征在于,所述DNS响应还包括所述多个应用服务器的状态,所述多个应用服务器的状态包括可用或不可用;
所述根据所述多个应用服务器的负载确定访问的IP地址包括:
根据所述多个应用服务器的负载及状态确定访问的IP地址。
11.如权利要求10所述的方法,其特征在于,所述根据所述多个应用服务器的负载及状态确定访问的IP地址包括:
在状态为可用的应用服务器中,将负载最轻的应用服务器对应的IP地址确定为访问的IP地址。
12.一种DNS服务器,其特征在于,包括:
接收单元,用于接收客户端发送的DNS请求,所述DNS请求包括域名地址;
查找单元,用于查找所述接收单元接收的DNS请求中域名地址对应的多个应用服务器的负载及IP地址;
发送单元,用于向所述客户端发送DNS响应,所述DNS响应包括所述查找单元查找出的多个应用服务器的负载及IP地址,以便于所述客户端根据所述多个应用服务器的负载确定访问的IP地址。
13.如权利要求12所述的DNS服务器,其特征在于,还包括:
获取单元,用于在所述接收单元接收所述客户端发送的DNS请求之前,获取所述多个应用服务器的负载。
14.如权利要求13所述的DNS服务器,所述获取单元获取所述多个应用服务器的负载包括:
向所述多个应用服务器发送负载请求;
接收所述多个应用服务器发送的负载响应,所述负载响应包括所述多个应用服务器的负载。
15.如权利要求13所述的DNS服务器,所述获取单元获取所述多个应用服务器的负载包括:
接收所述多个应用服务器发送的负载消息,所述负载消息包括所述多个应用服务器的负载。
16.如权利要求15所述的DNS服务器,所述接收所述多个应用服务器发送的负载消息包括:
周期性地接收所述多个应用服务器发送的负载消息。
17.一种客户端,其特征在于,包括:
发送单元,用于向DNS服务器发送DNS请求,所述DNS请求包括域名地址;
接收单元,用于接收所述DNS服务器发送的DNS响应,所述DNS响应包括所述域名地址对应的多个应用服务器的负载及IP地址;
访问单元,用于根据所述多个应用服务器的负载确定访问的IP地址。
18.如权利要求17所述的客户端,其特征在于,所述访问单元具体包括:
用于将所述多个应用服务器中负载最轻的应用服务器对应的IP地址确定为访问的IP地址。
19.如权利要求17所述的客户端,其特征在于,所述DNS响应还包括所述多个应用服务器的状态,所述多个应用服务器的状态包括可用或不可用;
所述访问单元具体包括:
用于根据所述多个应用服务器的负载及状态确定访问的IP地址。
20.如权利要求19所述的客户端,其特征在于,所述根据所述多个应用服务器的负载及状态确定访问的IP地址包括:
在状态为可用的应用服务器中,将负载最轻的应用服务器对应的IP地址确定为访问的IP地址。
CN2012100114003A 2012-01-13 2012-01-13 实现负载均衡的方法、dns服务器和客户端 Pending CN102457440A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2012100114003A CN102457440A (zh) 2012-01-13 2012-01-13 实现负载均衡的方法、dns服务器和客户端
PCT/CN2012/076812 WO2013104172A1 (zh) 2012-01-13 2012-06-13 实现负载均衡的方法、dns服务器和客户端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012100114003A CN102457440A (zh) 2012-01-13 2012-01-13 实现负载均衡的方法、dns服务器和客户端

Publications (1)

Publication Number Publication Date
CN102457440A true CN102457440A (zh) 2012-05-16

Family

ID=46040125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012100114003A Pending CN102457440A (zh) 2012-01-13 2012-01-13 实现负载均衡的方法、dns服务器和客户端

Country Status (2)

Country Link
CN (1) CN102457440A (zh)
WO (1) WO2013104172A1 (zh)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970391A (zh) * 2012-12-07 2013-03-13 华为技术有限公司 域名查询处理方法、服务器及系统
WO2013104172A1 (zh) * 2012-01-13 2013-07-18 华为技术有限公司 实现负载均衡的方法、dns服务器和客户端
CN103237089A (zh) * 2013-05-16 2013-08-07 广东睿江科技有限公司 基于dns轮询方式网页的修复方法、装置和服务器
CN103491123A (zh) * 2012-06-14 2014-01-01 中国移动通信集团贵州有限公司 一种基于域名访问的负载均衡方法、系统及负载均衡器
CN103905531A (zh) * 2014-03-14 2014-07-02 浪潮电子信息产业股份有限公司 一种集群存储系统中转换节点间负载均衡方法
CN104144227A (zh) * 2013-05-10 2014-11-12 中国电信股份有限公司 Ip地址查询方法、系统与全网资源控制器
CN104954401A (zh) * 2014-03-27 2015-09-30 阿里巴巴集团控股有限公司 流量调度方法和装置
CN103916332B (zh) * 2014-04-01 2017-02-08 珠海市君天电子科技有限公司 一种分配网络资源的方法及服务器
CN106936938A (zh) * 2015-12-29 2017-07-07 北界创想(北京)软件有限公司 域名解析方法及系统
CN107018159A (zh) * 2016-01-27 2017-08-04 五八同城信息技术有限公司 业务请求处理方法及装置、和业务请求方法及装置
CN107231446A (zh) * 2016-03-23 2017-10-03 北京京东尚科信息技术有限公司 同步ip配置方法和装置
WO2017166524A1 (zh) * 2016-03-31 2017-10-05 乐视控股(北京)有限公司 域名解析方法及装置
CN107454209A (zh) * 2017-09-11 2017-12-08 深圳市茁壮网络股份有限公司 一种域名解析方法及装置
CN108040085A (zh) * 2017-11-20 2018-05-15 广州华多网络科技有限公司 网络接入方法、装置及服务器
CN111147556A (zh) * 2019-12-15 2020-05-12 浪潮电子信息产业股份有限公司 一种负载均衡方法、装置、设备及存储介质
CN111556126A (zh) * 2020-04-24 2020-08-18 杭州浮云网络科技有限公司 模型管理方法、系统、计算机设备和存储介质
CN111696657A (zh) * 2019-03-12 2020-09-22 深圳迈瑞生物医疗电子股份有限公司 中间服务器、医疗监护设备及其连接方法和存储介质
CN111788809A (zh) * 2018-11-23 2020-10-16 华为技术有限公司 一种报文收发方法及装置
CN112333273A (zh) * 2020-11-06 2021-02-05 杭州迪普科技股份有限公司 一种访问请求的转发方法及系统
CN112543150A (zh) * 2020-10-29 2021-03-23 贵州新致普惠信息技术有限公司 基于服务端控制的动态负载均衡方法
CN113268343A (zh) * 2021-05-10 2021-08-17 北京邮电大学 一种负载均衡系统及方法
CN113347037A (zh) * 2021-06-07 2021-09-03 中国建设银行股份有限公司 一种数据中心访问方法及装置
CN115834535A (zh) * 2022-10-17 2023-03-21 北京奇艺世纪科技有限公司 一种域名解析方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101102288A (zh) * 2006-07-06 2008-01-09 阿里巴巴公司 一种实现大型即时通信的方法及系统
US20100011120A1 (en) * 2002-08-07 2010-01-14 Foundry Networks, Inc. Canonical name (cname) handling for global server load balancing
CN101677324A (zh) * 2008-09-17 2010-03-24 华为技术有限公司 业务管理方法、终端、网络系统及相关设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102457440A (zh) * 2012-01-13 2012-05-16 华为软件技术有限公司 实现负载均衡的方法、dns服务器和客户端

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100011120A1 (en) * 2002-08-07 2010-01-14 Foundry Networks, Inc. Canonical name (cname) handling for global server load balancing
CN101102288A (zh) * 2006-07-06 2008-01-09 阿里巴巴公司 一种实现大型即时通信的方法及系统
CN101677324A (zh) * 2008-09-17 2010-03-24 华为技术有限公司 业务管理方法、终端、网络系统及相关设备

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013104172A1 (zh) * 2012-01-13 2013-07-18 华为技术有限公司 实现负载均衡的方法、dns服务器和客户端
CN103491123A (zh) * 2012-06-14 2014-01-01 中国移动通信集团贵州有限公司 一种基于域名访问的负载均衡方法、系统及负载均衡器
CN102970391B (zh) * 2012-12-07 2016-09-28 华为技术有限公司 域名查询处理方法、服务器及系统
CN102970391A (zh) * 2012-12-07 2013-03-13 华为技术有限公司 域名查询处理方法、服务器及系统
CN104144227A (zh) * 2013-05-10 2014-11-12 中国电信股份有限公司 Ip地址查询方法、系统与全网资源控制器
CN103237089A (zh) * 2013-05-16 2013-08-07 广东睿江科技有限公司 基于dns轮询方式网页的修复方法、装置和服务器
CN103905531A (zh) * 2014-03-14 2014-07-02 浪潮电子信息产业股份有限公司 一种集群存储系统中转换节点间负载均衡方法
CN104954401B (zh) * 2014-03-27 2018-06-08 阿里巴巴集团控股有限公司 流量调度方法和装置
CN104954401A (zh) * 2014-03-27 2015-09-30 阿里巴巴集团控股有限公司 流量调度方法和装置
CN103916332B (zh) * 2014-04-01 2017-02-08 珠海市君天电子科技有限公司 一种分配网络资源的方法及服务器
CN106936938B (zh) * 2015-12-29 2021-01-26 北界创想(北京)软件有限公司 域名解析方法及系统
CN106936938A (zh) * 2015-12-29 2017-07-07 北界创想(北京)软件有限公司 域名解析方法及系统
CN107018159A (zh) * 2016-01-27 2017-08-04 五八同城信息技术有限公司 业务请求处理方法及装置、和业务请求方法及装置
CN107231446A (zh) * 2016-03-23 2017-10-03 北京京东尚科信息技术有限公司 同步ip配置方法和装置
WO2017166524A1 (zh) * 2016-03-31 2017-10-05 乐视控股(北京)有限公司 域名解析方法及装置
CN107454209A (zh) * 2017-09-11 2017-12-08 深圳市茁壮网络股份有限公司 一种域名解析方法及装置
CN107454209B (zh) * 2017-09-11 2020-05-19 深圳市茁壮网络股份有限公司 一种域名解析方法及装置
CN108040085A (zh) * 2017-11-20 2018-05-15 广州华多网络科技有限公司 网络接入方法、装置及服务器
CN111788809A (zh) * 2018-11-23 2020-10-16 华为技术有限公司 一种报文收发方法及装置
CN111696657A (zh) * 2019-03-12 2020-09-22 深圳迈瑞生物医疗电子股份有限公司 中间服务器、医疗监护设备及其连接方法和存储介质
CN111147556A (zh) * 2019-12-15 2020-05-12 浪潮电子信息产业股份有限公司 一种负载均衡方法、装置、设备及存储介质
CN111556126A (zh) * 2020-04-24 2020-08-18 杭州浮云网络科技有限公司 模型管理方法、系统、计算机设备和存储介质
CN112543150A (zh) * 2020-10-29 2021-03-23 贵州新致普惠信息技术有限公司 基于服务端控制的动态负载均衡方法
CN112543150B (zh) * 2020-10-29 2022-11-04 贵州新致普惠信息技术有限公司 基于服务端控制的动态负载均衡方法
CN112333273A (zh) * 2020-11-06 2021-02-05 杭州迪普科技股份有限公司 一种访问请求的转发方法及系统
CN112333273B (zh) * 2020-11-06 2023-03-14 杭州迪普科技股份有限公司 一种访问请求的转发方法及系统
CN113268343A (zh) * 2021-05-10 2021-08-17 北京邮电大学 一种负载均衡系统及方法
CN113347037A (zh) * 2021-06-07 2021-09-03 中国建设银行股份有限公司 一种数据中心访问方法及装置
CN113347037B (zh) * 2021-06-07 2022-07-12 中国建设银行股份有限公司 一种数据中心访问方法及装置
CN115834535A (zh) * 2022-10-17 2023-03-21 北京奇艺世纪科技有限公司 一种域名解析方法及装置

Also Published As

Publication number Publication date
WO2013104172A1 (zh) 2013-07-18

Similar Documents

Publication Publication Date Title
CN102457440A (zh) 实现负载均衡的方法、dns服务器和客户端
US20220174010A1 (en) Updating routing information based on client location
US11115500B2 (en) Request routing utilizing client location information
US11343353B2 (en) Method and system of dispatching requests in a content delivery network
CN102523256B (zh) 内容的管理方法的方法、装置和系统
CN103051740B (zh) 域名解析方法、dns服务器及域名解析系统
Kamilaris et al. Exploring the Use of DNS as a Search Engine for the Web of Things
US20110119370A1 (en) Measuring network performance for cloud services
EP3567881A2 (en) Request routing and updating routing information utilizing client location information
CN103597471A (zh) 用于对计算机网络上的数据通信进行缓存的方法和系统
US8935377B2 (en) Dynamic registration of listener resources for cloud services
CN102624916B (zh) 云计算系统中均衡负载的方法、节点管理器及系统
CN102196060A (zh) 一种Cache服务器选择源站的方法和系统
US20120005274A1 (en) System and method for offering cloud computing service
CN106027356B (zh) 一种隧道标识的转换方法及装置
CN110086886A (zh) 动态会话保持方法及装置
CN105610930A (zh) 一种基于dns的数据优选方法
CN109873855A (zh) 一种基于区块链网络的资源获取方法和系统
CN109547508A (zh) 一种实现资源访问的方法、装置及系统
CN102572001A (zh) 一种域名系统及其提供负荷均衡的方法
CN111541799A (zh) 域名解析方法、系统、终端和存储介质
CN108494870B (zh) 基于cdn的动态数据加载方法及装置
US11122131B1 (en) Edge cloud resource location using enhanced DNS service
CN102833287A (zh) 分布式文件系统及分布式文件系统中访问数据资源的方法
CN111107039A (zh) 一种基于tcp连接的通信方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120516