CN104412550A - 服务器选择 - Google Patents

服务器选择 Download PDF

Info

Publication number
CN104412550A
CN104412550A CN201280074616.2A CN201280074616A CN104412550A CN 104412550 A CN104412550 A CN 104412550A CN 201280074616 A CN201280074616 A CN 201280074616A CN 104412550 A CN104412550 A CN 104412550A
Authority
CN
China
Prior art keywords
server
participant
glb
response
management
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
CN201280074616.2A
Other languages
English (en)
Inventor
Q.林
J.谢
Z.沈
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN104412550A publication Critical patent/CN104412550A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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
    • 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/1036Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers

Abstract

提供了用于选择服务器的系统(360)、方法(240)和机器可读以及可执行指令(368)。服务器选择可以包括:在管理服务器(106)处从本地服务器(104)接收第一查询(114和242)。服务器选择还可以包括:通过从所述管理服务器(106)向多个参与者服务器(108-1、108-2和108-3)发送多个查询通知来触发回复竞赛(116、244),其中,所述多个参与者服务器(108-1、108-2和108-3)中的每个参与者服务器响应于接收查询通知(116)而向所述本地服务器(104)发送响应(118),并且其中,来自所述多个参与者服务器(108-1、108-2和108-3)的第一参与者服务器(108-1)是由所述本地服务器(104)选择的。服务器选择还可以包括:在所述管理服务器(116)处通过参考从所述第一参与者服务器接收(126)的第一报告对来自所述本地服务器的将来查询(246)进行解析。

Description

服务器选择
背景技术
负载平衡可以包括工作负载跨多个计算机系统或计算机集群的分布。计算机系统和计算机集群可以分别包括应用(例如,web应用)、服务器和应用服务器的集群。应用服务器的集群可以包括冗余应用服务器,并且冗余应用服务器可以包括相同应用或内容的多个副本。可以在跨应用服务器的多个集群(即,冗余应用服务器的多个集群)对应用托管工作负载进行负载平衡。应用服务器的集群可以在物理上位于多个位置处。建立用户与应用服务器之间的最短路径可以包括可以影响应用托管性能的多个度量。
附图说明
图1示出了根据本公开内容的服务器选择的图。
图2是示出根据本公开内容的用于选择服务器的方法的示例的流程图。
图3示出了根据本公开内容的、与用于服务器选择的处理资源通信的机器可读介质的示例的框图。
具体实施方式
本公开内容的示例可以包括用于服务器选择的方法和系统。用于选择服务器的示例方法可以包括:在管理服务器处从本地服务器接收第一查询,并通过从所述管理服务器向多个参与者服务器发送多个查询通知来触发回复竞赛;以及选择第一参与者服务器。另外,用于选择服务器的示例方法还可以包括:在所述管理服务器处通过参考从所述第一参与者服务器接收的第一报告对来自本地服务器的将来查询进行解析(resolve)。
在本公开内容的一些示例中,可以从部署在多个位置处的多个复制的服务器中选择服务器。所述选择可以基于从查询服务器到应用服务器的最短传播延迟。应用服务器可以包括对信息请求进行响应的多种类型的服务器。例如,应用服务器可以包括内容服务器或应用服务器,尽管服务器并不局限于内容服务器或应用服务器。查询服务器可以包括:协助客户端将主机名解析成网际协议(IP)地址的服务器。例如,查询服务器可以包括域名系统(DNS)服务器,然而,查询服务器并不局限于DNS服务器并且可以包括适用于其它用于解析主机名的约定的服务器。
图1示出了根据本公开内容的服务器选择的图。在本公开内容的一些示例中,本地服务器104可以代表客户端102来解析DNS查询。客户端102可以包括需要解析DNS查询的任何设备。例如,客户端102可以包括台式个人计算系统或移动计算系统,尽管客户端102不局限于此。本地服务器104可以包括:可以促进将主机名解析成网际协议地址的计算设备。例如,服务器104可以包括DNS服务器。此外,本地服务器104可以包括:指定用于为客户端102解析DNS查询的DNS服务器。本地服务器104可以与客户端102是本地的,因为本地服务器104被指定用于为客户端102解析DNS查询。也就是说,本地服务器104不局限于空间上位于客户端102附近的DNS服务器。
在本公开内容的一些示例中,拦截网络设备可以向多个应用服务器分配工作负载。拦截网络设备可以包括对业务(例如,网络业务)进行拦截并将该业务转发到多个服务器中的一个服务器(例如,应用服务器、内容服务器等等)的任何设备。例如,拦截网络设备可以包括应用传送控制器。应用传送控制器可以拦截请求并将该请求传送到多个应用服务器或内容服务器中的一个服务器。请求的传送可以包括:对多个应用服务器的工作负载进行平衡。
多个应用传送控制器可以经由互联网128连接。工作负载可以在多个应用传送控制器之间分布。应用传送控制器可以包括全局负载平衡器(GLB)。GLB可以用作管理器或者作为参与者,从而管理GLB可以向多个参与者GLB分布工作负载。例如,管理GLB 106可以向第一参与者GLB 108-1、第二参与者GLB 108-2以及向第三参与者GLB 108-3(统称为参与者GLB 108)分布工作负载。在本公开内容的多个示例中,管理GLB 106可以用作参与者GLB 108-2。参与者GLB 108可以向多个应用服务器分布工作负载。例如,参与者GLB 108-1可以向第一数量的应用服务器110-1分布工作负载;参与者GLB 108-2可以向第二数量的应用服务器110-2分布工作负载;并且参与者GLB 108-3可以向第三数量的应用服务器110-3(统称为应用服务器110)分布工作负载。
管理GLB 106和多个参与者GLB 108可以被同步。例如,管理GLB 106与参与者GLB 108-1可以是时间同步的;管理GLB 106与参与者GLB 108-2可以是时间同步的;并且管理GLB 106与参与者GLB 108-3可以是时间同步的。时间同步可以通过数字或装置来达到,并且不局限于单个方法。例如,时间同步可以通过使用网络时间协议(NTP)服务器或全球定位系统(GPS)来达到。时间同步可以通过提供从多个参与者GLB到本地服务器的延迟之间的精确比较而允许本地服务器选择到本地服务器具有最短延迟的参与者GLB。
在本公开内容的一些示例中,客户端102可以向本地服务器104发送DNS查询112。可以将在把域名解析为IP地址中的本地服务器104 指引到管理GLB 106。本地服务器104可以向管理GLB 106发送本地服务器104从客户端102接收的DNS查询114。响应于接收DNS查询114,管理GLB 106可以触发管理GLB 106管理的参与者GLB 108之间的回复竞赛。
回复竞赛可以包括选择参与者GLB的手段。管理GLB 106可以向每个参与者GLB 108转发其从本地服务器104接收的DNS查询。例如,管理GLB 106可以向参与者GLB 108-1转发DNS查询116;管理GLB 106可以向参与者GLB 108-2转发DNS查询116,其中,管理GLB 106还可以用作参与者GLB 108-2;并且管理GLB 106可以向参与者GLB 108-3转发DNS查询116。
在本公开内容的多个示例中,管理GLB 106可以向每个参与者GLB 108发送多个查询通知。查询通知可以包括:包括事务ID的私人消息、本地服务器104的IP地址、管理GLB 106的IP地址以及惩罚延迟值。此外,查询通知可以包括与本地服务器104、多个参与者GLB 108、管理GLB 106以及该私人消息有关的其它信息。
在本公开内容的一些示例中,管理GLB 106可以基于与每个参与者GLB 108相对应的应用服务器110的负载以及基于到每个参与者GLB 108的单向传播延迟来针对每个参与者GLB 108 计算惩罚延迟值。传播延迟可以包括:消息从第一服务器发送到第二服务器的时间。消息可以包括:从第一服务器前往第二服务器的任意数量的通信格式和/或信号。例如,管理GLB 106可以针对参与者GLB 108-1来计算第一惩罚延迟值。第一惩罚延迟值可以与应用服务器110-1上的工作负载以及从管理GLB 106到参与者GLB 108-1或者从参与者GLB 108-1到管理GLB 106的单向传播延迟相对应。管理GLB 106可以针对参与者GLB 108-2来计算第二惩罚延迟值。第二惩罚延迟值可以与应用服务器110-2上的工作负载以及从管理GLB 106到参与者GLB 108-2或者从参与者GLB 108-2到管理GLB 106的单向传播延迟相对应。管理GLB 106可以针对参与者GLB 108-3来计算第三惩罚延迟值。第三惩罚延迟值可以与应用服务器110-3上的工作负载以及从管理GLB 106到参与者GLB 108-3或者从参与者GLB 108-3到管理GLB 106的单向传播延迟相对应。本文中使用的示例是说明性的,并且可以包括用于确定传播延迟值的任意数量的标准。
管理GLB 106可以通过计算工作负载惩罚值来计算惩罚延迟值。为了计算工作负载惩罚值,管理GLB 106可以从代理GLB 108接收多个更新。更新可以包括应用服务器110的负载的更新。例如,参与者GLB 108-1可以向管理GLB 106发送包括应用服务器110-1的负载更新的更新。参与者GLB 108-2可以向管理GLB 106发送包括应用服务器110-2的负载更新的更新。参与者GLB 108-3可以向管理GLB 106发送包括应用服务器110-3的负载更新的更新。管理GLB 108可以接收这些更新中的每个更新,并针对每个参与者GLB 108确定不同的惩罚延迟值。本公开内容的示例可以包括应用服务器110的负载与惩罚延迟值之间的多个映射,并且不局限于特定的功能、变换或映射。
更新可以通过多个标准来激活。例如,更新可以以规律间隔安排,或者可以是事件驱动的。此外,可以在推模式或拉模式中报告更新,并且更新可以遵从任意格式。更新可以包括与参与者GLB和与该参与者GLB相关联的多个应用服务器相关联的多个元素,以及与管理GLB相关联的元素。
在本公开内容的多个示例中,管理GLB 106可以基于到每个参与者GLB 108的单向传播延迟,针对每个参与者GLB 108计算惩罚延迟值,并且参与者GLB 108可以将工作负载延迟值加到惩罚延迟值上,工作负载延迟值可以基于应用服务器110的负载。例如,管理GLB 106可以针对参与者GLB 108-1来计算第一惩罚延迟值。惩罚延迟值可以包括:从管理GLB 106到参与者GLB 108-1的单向传播延迟或从参与者GLB 108-1到管理GLB 106的单向传播延迟。针对参与者GLB 108-2的第二惩罚延迟值可以包括:从管理GLB 106到参与者GLB 108-2的单向传播延迟或从参与者GLB 108-2到管理GLB 106的单向传播延迟。针对参与者GLB 108-3的惩罚延迟值可以包括:从管理GLB 106到参与者GLB 108-3的单向传播延迟或从参与者GLB 108-3到管理GLB 106的单向传播延迟。
在从管理GLB 106接收惩罚延迟值之后,参与者GLB 108可以将工作负载延迟值加到惩罚延迟值上。例如,参与者GLB 108-1可以将工作负载延迟值加到惩罚延迟值上。工作负载延迟值可以基于应用服务器110-1的负载。参与者GLB 108-2可以将工作负载延迟值加到惩罚延迟值上。工作负载延迟值可以基于应用服务器110-2的负载。参与者GLB 108-3可以将工作负载延迟值加到惩罚延迟值上。工作负载延迟值可以基于应用服务器110-3的负载。本公开内容的示例可以包括应用服务器110的负载与工作负载延迟值之间的多个映射,并且不局限于特定的功能或变换。
重播中继竞赛还可以包括:参与者GLB 108等待与惩罚延迟值相等的时间值,以及向本地服务器104发送伪造响应118。发送伪造响应118可以包括:发送伪造的规范名称(CNAME)响应或名称服务器(NS)响应。伪造响应可以包括:可以代表任意IP地址向本地DNS服务器发送的DNS响应。伪造响应可以委派发送该响应的参与者GLB来解析域名。例如,参与者GLB 108-1可以等待与第一惩罚延迟值相等的时间值,然后向本地服务器104发送伪造响应118,委派参与者GLB 108-1来解析域名。参与者GLB 108-2可以等待与惩罚延迟值相等的时间值,然后向本地服务器104发送伪造响应118,委派参与者GLB 108-2来解析域名。参与者GLB 108-3可以等待与惩罚延迟值相等的时间值,然后向本地服务器104发送伪造响应118,委派参与者GLB 108-3来解析域名。
此外,重播中继竞赛可以包括:本地服务器104选择参与者GLB。本地服务器104可以通过在向管理GLB 106发送DNS查询114之后等待伪造响应,以及通过选择本地服务器104接收的第一伪造响应并忽略在该第一伪造响应接收之后所接收的伪造响应来选择参与者GLB。在第一伪造响应接收之后所接收的重复的伪造响应可由本地服务器104丢弃。本地服务器104可以选择发送第一伪造响应的参与者GLB。也就是说,本地服务器104可以选择在第一伪造CNAME响应或第一伪造NS响应中被委派解析域名的参与者GLB。例如,如果第一伪造响应委派参与者108-1解析域名,那么本地服务器104可以选择参与者108-1。
在接收第一伪造响应之后,本地服务器104可以向所选择的参与者GLB 108-1发送新的DNS查询120。新的DNS查询可以用于获得应用服务器110-1的IP地址,应用服务器110-1被认为是具有到本地服务器104的最短延迟的应用服务器。当接收新的DNS查询时,所选择的参与者GLB 108-1可以使用应用服务器110-1的IP地址来解析域名122。本地服务器104可以接收应用服务器110-1的IP地址122,并向客户端102发送IP地址124。
在本公开内容的一些示例中,所选择的参与者GLB 108-1可以向管理GLB 106报告往返时间(RTT)126。通过测量从参与者GLB 108-1到本地服务器104的时延以及通过测量从本地服务器104到参与者GLB 108-1的时延,RTT可以用来测量参与者GLB 108-1与本地服务器104之间的时延。RTT可以包括参与者GLB 108-1向本地服务器104发送伪造响应118时与参与者GLB 108-1接收新的DNS查询120时之间的时间。
在本公开内容的多个示例中,管理GLB 106可以在一段时间期间接收多个RTT报告。也就是说,管理GLB 106可以在一段时间期间从多个本地服务器接收多个DNS查询,并响应于在一段时间期间接收多个DNS查询来触发多个回复竞赛。管理GLB 106可以响应于触发多个回复竞赛在一段时间期间接收多个RTT报告。在接收多个RTT报告之后,如果管理GLB 106之前在一段时间期间接收了来自本地服务器104的DNS查询,那么管理GLB 106可以对来自本地服务器104的DNS查询进行解析。管理GLB 106可以通过参考多个RTT报告来解析DNS请求。例如,管理GLB 106可以通过从多个所接收的RTT报告中选择具有最低RTT的参与者GLB和/或具有最低应用服务器负载的参与者GLB来解析DNS查询。与不参考多个RTT报告的解析相比,通过参考多个RTT报告来解析将来DNS查询可以提供对域名的更快解析,这是因为当参考多个RTT报告时,并不必须每次接收到DNS查询时都对回复竞赛进行实例化。该多个RTT报告可以用作预先定义的时段的历史数据。例如,历史数据可以包括基于天或基于周接收的RTT报告。然而,历史数据并不局限于特定的时间间隔或特定的时间和日期。
在解析DNS查询中,管理GLB 106可以基于纳入了多个RTT报告的多个因素来选择参与者GLB。例如,管理GLB 106可以选择具有最高频率的参与者GLB 106。具有最高频率的参与者GLB 106可以包括在多个RTT报告中具有最高频率的RTT报告的参与者GLB 106。此外,管理GLB 106可以选择具有最高频率和最低加权RTT的参与者GLB 106。对RTT加权可以包括:通过将RTT与诸如一天中的时间或应用服务器负载的因子相乘来修改RTT。选择过程可以包括用于选择参与者GLB的多种方法,并且不局限于本文中给出的示例。
图2是示出根据本公开内容的一种用于选择服务器的方法的示例的流程图。方法240可以通过触发回复竞赛来选择服务器。方法240可以通过参考多个回复竞赛来选择将来服务器。
在242处,从服务器接收第一查询。服务器可以包括DNS服务器。第一查询可以包括用于解析域名的DNS查询。可以在管理服务器处接收第一查询。管理服务器可以包括:对向多个应用服务器和/或内容服务器发送的业务进行拦截,并将业务指引到多个参与者GLB的管理GLB。例如,管理服务器可以对被指引到多个应用服务器的业务进行拦截,从而使得应用服务器托管网站。
在244处,管理服务器触发回复竞赛。回复竞赛可以通过复制第一查询以及通过从管理服务器向多个参与者服务器发送多个复制的第一查询来触发。回复竞赛还可以通过向多个参与者服务器发送多个查询通知来触发。查询通知可以包括:包括事务ID的私人消息、本地服务器的IP地址、管理GLB的IP地址以及惩罚延迟值。参与者服务器可以包括参与者GLB,其对去往多个应用服务器和/或内容服务器的业务进行拦截,并向应用服务器和/或内容服务器分布该业务。参与者服务器中的每个参与者服务器可以创建对DNS查询的伪造响应,并将其发送到本地服务器。伪造响应可以委派发送该伪造响应的参与者服务器来解析域名。本地服务器可以通过选择所接收的第一伪造响应以及标识发送伪造响应的参与者服务器来选择第一参与者服务器。然后,本地服务器可以向发送首先接收的伪造响应的参与者服务器发送新的查询。新的查询可以用来解析域名。第一参与者服务器可以通过选择第一参与者服务器拦截业务所针对的应用服务器来解析域名。然后,第一参与者服务器可以向管理服务器报告RTT。RTT的报告可以用作第一报告。RTT可以包括第一参与者服务器发送伪造响应时与第一参与者服务器从本地服务器接收新的查询的时刻之间的时间。
在246处,管理服务器可以通过参考从第一参与者服务器接收的第一报告对来自本地服务器的将来查询进行解析。在本公开内容的一些示例中,管理服务器可以通过参考在一段时间期间所接收的多个RTT报告对来自本地服务器的将来查询进行解析。一段时间可以包括一天、一周或任意数量的时间段。例如,一段时间可以包括覆盖所接收的最后报告的时间。多个RTT报告可以包括在一段时间期间接收的多个RTT报告。例如,多个RTT报告可以包括在一天、一周中接收的多个RTT报告,或者在任意数量的时间段中接收的RTT报告。
图3示出了根据本公开内容的、与用于服务器选择的处理资源364-1、364-2......364-N通信的机器可读介质(MRM) 374的示例的框图360。MRM 374可以与计算设备363(例如,具有比364-1、364-2......364-N更多或更少的处理器资源的应用服务器)通信。如本文中所描述的,计算设备363可以与有形非临时性MRM 374通信,和/或接收有形非临时性MRM 374,有形非临时性MRM 374存储可由处理器资源364-1、364-2......364-N中的一个或多个处理器资源执行的一组机器可读指令368。计算设备363可以包括存储器资源370,并且处理器资源364-1、364-2......364-N可以耦合到存储器资源370。
处理器资源364-1、364-2......364-N可以执行存储在内部或外部非临时性MRM 374上的机器可读指令368。如本文中所使用的,非临时性MRM可以包括易失性和/或非易失性存储器。易失性存储器可以包括根据电力来存储信息的存储器,例如,各种类型的动态随机存取存储器(DRAM)等。非易失性存储器可以包括不根据电力来存储信息的存储器。非易失性存储器的示例可以包括:诸如闪速存储器、EEPROM、相变随机存取存储器(PCRAM)的固态介质;诸如硬盘、磁带驱动器、软盘和/或磁带存储器的磁存储器;光学盘、数字多功能盘(DVD),蓝光盘(BD)、光盘(CD)、和/或固态驱动器(SSD)、闪速存储器等以及其它类型的机器可读介质。
非临时性MRM 374可以与计算设备集成,或者以有线或无线的方式通信地耦合到计算设备。例如,非临时性机器可读介质可以是内部存储器、便携式存储器、便携式盘、或与另一种计算资源相关联的存储器(例如,使机器可读指令能够跨例如因特网的网络转移和/或执行)。
MRM 374可以经由通信路径372与处理器资源364-1、364-2......364-N通信。通信路径372可以是与处理器资源364-1、364-2......364-N相关联的机器本地的或远程的。本地通信路径372的示例可以包括例如计算机的机器内部的电子总线,其中,MRM 374是经由该电子总线与处理器资源364-1、364-2......364-N通信的易失性、非易失性、固定和/或可移动存储介质中的一种。除了其它类型的电子总线和它们的变体,这些电子总线的示例还可以包括:工业标准架构(ISA)、外围组件互连(PCI)、高级技术附件(ATA)、小型计算机系统接口(SCSI)、通用串行总线(USB)。
通信路径372可以使得MRM 374远离处理器资源(例如,364-1、364-2......364-N),例如在MRM 374与处理器资源(例如,364-1、364-2......364-N)之间的网络连接的示例中那样。也就是说,通信路径372可以是网络连接。这种网络连接的示例可以包括局域网(LAN)、广域网(WAN)、个域网(PAN)以及因特网等等。在这些示例中,MRM 374可以与第一计算设备相关联,并且处理器资源364-1、364-2......364-N可以与第二计算设备(例如,Java应用服务器)相关联。
耦合到存储器370的处理器资源364-1、364-2......364-N可以在管理服务器处从本地服务器接收第一查询,并通过复制第一查询以及通过从管理服务器向多个参与者服务器发送多个复制的第一查询来触发回复竞赛。耦合到存储器370的处理器资源364-1、364-2......364-N可以在管理服务器处通过参考从第一参与者服务器接收的第一报告对来自本地服务器的将来查询进行解析。
以上说明书、示例和数据提供了对方法和应用以及本公开内容的系统和方法的使用的描述。由于可以在不脱离本公开内容的系统和方法的精神和范围的情况下做出许多示例,因此本说明书仅阐述了许多可能实施例配置和实现中的一些。

Claims (15)

1. 一种用于选择服务器的方法,包括:
在管理服务器处从本地服务器接收第一查询;
通过构建多个查询通知以及通过从所述管理服务器向多个参与者服务器发送所述多个查询通知来触发回复竞赛,其中,所述多个参与者服务器中的每个参与者服务器响应于接收所述多个查询通知而向所述本地服务器发送响应,并且其中,来自所述多个参与者服务器的第一参与者服务器被所述本地服务器选择;以及
在所述管理服务器处通过参考从所述第一参与者服务器接收的第一报告对来自所述本地服务器的将来查询进行解析。
2. 根据权利要求1所述的方法,其中,在所述管理服务器处从所述本地服务器接收所述第一查询包括:在全局负载平衡(GLB)管理服务器处接收第一域名系统(DNS)查询,并且其中,从所述管理服务器向所述多个参与者服务器发送所述多个查询通知包括:从GLB管理服务器向多个GLB 参与者服务器发送所述多个查询通知,所述多个查询通知包括通知标识符、所述本地服务器的IP地址、所述GLB管理服务器的IP地址以及惩罚延迟值。
3. 根据权利要求1所述的方法,其中,参考所述第一报告包括:
在一段时间期间触发多个回复竞赛;
从多个所选择的参与者服务器接收多个报告;
从多个所接收的报告选择具有最短延迟的第二报告;以及
选择与所述第二报告相关联的第二参与者服务器。
4. 根据权利要求1所述的方法,其中,构建多个查询通知包括:
创建指向所述多个参与者服务器的多个查询通知;以及
在所述管理服务器处针对所述多个参与者服务器中的每个参与者服务器计算惩罚延迟值,其中,所述多个参与者服务器中的每个参与者服务器的惩罚延迟值与所述多个参与者服务器中的每个参与者服务器上的负载或者与和所述多个参与者服务器相关联的多个应用服务器上的负载相关联。
5. 根据权利要求1所述的方法,其中,从所述多个参与者服务器中选择所述第一参与者服务器包括:所述本地服务器选择从所述多个参与者服务器接收的第一响应以及选择发送所接收的第一响应的所述第一参与者服务器。
6. 根据权利要求5所述的方法,其中,接收所述第一报告包括:接收选择结果和往返时间,并且其中,往返时间包括所述第一参与者服务器从其开始向所述本地服务器发送响应的时间到其中所述第一参与者服务器从所述本地服务器接收第二查询的时间。
7. 一种存储可由计算机执行的用于使计算机执行以下操作的用于服务器选择的指令的非临时性计算机可读介质:
在多个参与者服务器处接收复制的第一查询以便对来自管理服务器的域名进行解析,其中,所述管理服务器响应于接收第一查询而发送所述复制的第一查询以对来自本地服务器的域名进行解析;
在所述多个参与者服务器向所述本地服务器发送多个响应之前等待与惩罚延迟相等的一段时间,每个响应委派发送所述响应的参与者服务器来解析域名;
在第一参与者服务器处从所述多个参与者服务器接收来自所述本地服务器的第二查询,所述第二查询选择具有最短延迟的所述第一参与者服务器来解析域名;
向所述管理服务器报告往返时间(RTT)和对所述第一参与者服务器的标识,所述RTT包括所述第一参与者服务器向所述本地服务器发送响应与所述第一参与者服务器从所述本地服务器接收所述第二查询之间的时间,所述管理服务器使用所述往返时间来进行将来选择。
8. 根据权利要求7所述的介质,其中,向所述本地服务器发送所述多个响应包括:发送多个规范名称(CNAME)响应。
9. 根据权利要求7所述的介质,其中,向所述本地服务器发送所述多个响应包括:发送多个名称服务器(NS)响应。
10. 根据权利要求7所述的介质,其中,所述惩罚延迟是由所述多个参与者服务器计算的,并且包括与所述多个参与者服务器上的负载或者与和所述多个参与者服务器相关联的多个应用服务器上的负载相对应的时间延迟。
11. 根据权利要求7所述的介质,其中,等待与所述惩罚延迟相等的一段时间包括:所述多个参与者服务器与所述管理服务器之间的时间同步。
12. 根据权利要求7所述的介质,其中,所述往返时间由所述管理服务器在选择将来参与者服务器中使用。
13. 一种服务器选择系统,包括:
与计算机可读介质通信的处理资源,其中,所述计算机可读介质包括一组指令,并且其中,所述处理资源被设计为执行所述一组指令以:
 在管理服务器处从本地服务器接收第一查询;
 在所述管理服务器处复制所述第一查询;
 通过从所述管理服务器向多个参与者服务器发送多个复制的第一查询来触发回复竞赛,其中,所述多个参与者服务器响应于接收所述多个复制的查询而向所述本地服务器发送多个响应;
 在所述管理服务器处从所选择的参与者服务器接收报告,所述报告包括:
  往返时间(RTT),其中所述(RTT)包括:所述所选择的参与者服务器向所述本地服务器发送所选择的响应与所述所选择的参与者服务器从所述本地服务器接收第二查询之间的时间;
  所述所选择的参与者服务器的标识;以及
 通过参考所接收的报告和所述多个参与者服务器上的负载或者与所述多个参与者服务器相关联的多个参与者服务器上的负载来对从所述本地服务器向所述管理服务器发送的将来查询进行解析。
14. 根据权利要求12所述的系统,其中,发送所述多个复制的第一查询包括:发送时间惩罚,所述时间惩罚是通过所述多个参与者服务器上的负载和与所述多个参与者服务器相关联的多个应用服务器上的负载以及从所述管理服务器到所述多个参与者服务器的单向传播延迟确定的。
15. 根据权利要求13所述的系统,其中,所述时间惩罚是由所述管理服务器确定的,所述管理服务器从所述多个参与者服务器接收多个更新,所述多个更新包括:所述多个参与者服务器的负载和与所述多个参与者服务器相关联的多个应用服务器的负载。
CN201280074616.2A 2012-05-11 2012-05-11 服务器选择 Pending CN104412550A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/075362 WO2013166707A1 (en) 2012-05-11 2012-05-11 Server selection

Publications (1)

Publication Number Publication Date
CN104412550A true CN104412550A (zh) 2015-03-11

Family

ID=49550112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280074616.2A Pending CN104412550A (zh) 2012-05-11 2012-05-11 服务器选择

Country Status (4)

Country Link
US (1) US20150095494A1 (zh)
EP (1) EP2847954A4 (zh)
CN (1) CN104412550A (zh)
WO (1) WO2013166707A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981815A (zh) * 2019-03-19 2019-07-05 广州品唯软件有限公司 Ip地址的选择方法、终端、服务器和系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013189024A1 (en) * 2012-06-19 2013-12-27 Hewlett-Packard Development Company, L.P. Server site selection
US9900252B2 (en) * 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
EP3331217A1 (en) * 2016-12-02 2018-06-06 HOB GmbH & Co. KG Method for connecting a client to a server in a communication system
JP6626015B2 (ja) * 2017-01-04 2019-12-25 株式会社東芝 同期装置、同期方法、同期プログラム、および同期システム
US11297131B2 (en) * 2019-12-10 2022-04-05 Oracle International Corporation Method and apparatus for multi-vendor GTM fabric
CN114124778B (zh) * 2021-10-20 2023-03-14 国电南瑞科技股份有限公司 一种基于QoS约束的任播服务源路由方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529460A (zh) * 2003-10-14 2004-09-15 北京邮电大学 基于全球网络定位的全局负载均衡方法
US20090172192A1 (en) * 2007-12-28 2009-07-02 Christian Michael F Mapless Global Traffic Load Balancing Via Anycast
CN101610222A (zh) * 2009-07-20 2009-12-23 中兴通讯股份有限公司 基于客户端的服务器选择方法及装置
CN102148752A (zh) * 2010-12-22 2011-08-10 华为技术有限公司 基于内容分发网络的路由实现方法及相关设备、系统
CN102438278A (zh) * 2011-12-21 2012-05-02 优视科技有限公司 移动通信网络的负载分配方法及负载分配装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6115752A (en) * 1998-05-21 2000-09-05 Sun Microsystems, Inc. System and method for server selection for mirrored sites
US6810411B1 (en) * 1999-09-13 2004-10-26 Intel Corporation Method and system for selecting a host in a communications network
US6742044B1 (en) * 2000-05-10 2004-05-25 Cisco Technology, Inc. Distributed network traffic load balancing technique implemented without gateway router
US6920498B1 (en) * 2000-08-31 2005-07-19 Cisco Technology, Inc. Phased learning approach to determining closest content serving sites
US7343399B2 (en) * 2001-06-25 2008-03-11 Nortel Networks Limited Apparatus and method for managing internet resource requests
KR100511687B1 (ko) * 2003-05-21 2005-09-01 니트젠테크놀러지스 주식회사 네트워크에 대한 지능형 트래픽 관리시스템 및 그를이용한 지능형 트래픽 관리방법
US8539075B2 (en) * 2006-04-21 2013-09-17 International Business Machines Corporation On-demand global server load balancing system and method of use
US20090083422A1 (en) * 2007-09-25 2009-03-26 Network Connectivity Solutions Corp. Apparatus and method for improving network infrastructure
CN101340327B (zh) * 2008-08-21 2011-11-30 腾讯科技(深圳)有限公司 实现网络服务器负载均衡的方法和系统
US9960967B2 (en) * 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529460A (zh) * 2003-10-14 2004-09-15 北京邮电大学 基于全球网络定位的全局负载均衡方法
US20090172192A1 (en) * 2007-12-28 2009-07-02 Christian Michael F Mapless Global Traffic Load Balancing Via Anycast
CN101610222A (zh) * 2009-07-20 2009-12-23 中兴通讯股份有限公司 基于客户端的服务器选择方法及装置
CN102148752A (zh) * 2010-12-22 2011-08-10 华为技术有限公司 基于内容分发网络的路由实现方法及相关设备、系统
CN102438278A (zh) * 2011-12-21 2012-05-02 优视科技有限公司 移动通信网络的负载分配方法及负载分配装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SAN JOSE: "Cisco Global Site Selector UI-Based Global Server Load-Balancing Configuration Guide", 《HTTP://CISCO-IMAGES.TEST.EDGEKEY.NET/C/EN/US/TD/DOCS/APP_NTWK_SERVICES/DATA_CENTER_APP_SERVICES/GSS4400SERIES/V4-0/CONFIGURATION/GUI/GSLB/GUIDE/GUI_CONF/GSSCONGD.PDF》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981815A (zh) * 2019-03-19 2019-07-05 广州品唯软件有限公司 Ip地址的选择方法、终端、服务器和系统
CN109981815B (zh) * 2019-03-19 2022-05-27 广州品唯软件有限公司 Ip地址的选择方法、终端、服务器和系统

Also Published As

Publication number Publication date
EP2847954A1 (en) 2015-03-18
EP2847954A4 (en) 2015-12-30
WO2013166707A1 (en) 2013-11-14
US20150095494A1 (en) 2015-04-02

Similar Documents

Publication Publication Date Title
CN104412550A (zh) 服务器选择
EP2564559B1 (en) Using dns reflection to measure network performance
US9740708B2 (en) Systems and methods for distance and performance based load balancing
US10375011B2 (en) Enhanced content route selection in content delivery networks
US9246874B2 (en) Virtual domain name system
US11658935B2 (en) Systems and methods for content server rendezvous in a dual stack protocol network
US11336718B2 (en) Usage-based server load balancing
JPH11110324A (ja) 代理サーバ選択装置および代理サーバ
JP2003140930A5 (zh)
US9354940B2 (en) Provisioning tenants to multi-tenant capable services
US20210392200A1 (en) Systems and methods for remote network topology discovery
JP2017097707A (ja) 仮想マシン動的配置システム及びサーバ
JP3770801B2 (ja) 代理サーバ、サーバおよびそれらを実現するプログラムを記録した記録媒体
JP4445783B2 (ja) ファイル管理装置、ファイル管理装置を用いた計算機システム
US11297131B2 (en) Method and apparatus for multi-vendor GTM fabric
JP2007006214A (ja) リソース情報検索システム、リゾルバ及びプログラム
JP2017107382A (ja) プログラム実行システム、プログラム実行方法、および、プログラム
WO2022157930A1 (ja) コンピュータシステムおよび通信方法
Krebs et al. AUTOMATIC CONFIGURATION OF SERVICE DIRECTORIES IN MULTIAGENT SYSTEMS
JP2008287357A (ja) サービス提供システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150311

WD01 Invention patent application deemed withdrawn after publication