CN101562533A - 用于服务器负载均衡器的基于标号的目标主机配置 - Google Patents

用于服务器负载均衡器的基于标号的目标主机配置 Download PDF

Info

Publication number
CN101562533A
CN101562533A CNA2008101755484A CN200810175548A CN101562533A CN 101562533 A CN101562533 A CN 101562533A CN A2008101755484 A CNA2008101755484 A CN A2008101755484A CN 200810175548 A CN200810175548 A CN 200810175548A CN 101562533 A CN101562533 A CN 101562533A
Authority
CN
China
Prior art keywords
destination host
server
label
request
load balancing
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
CNA2008101755484A
Other languages
English (en)
Inventor
张中廷
史蒂文·A·马尔姆斯科格
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.)
Jungle Network
Juniper Networks Inc
Original Assignee
Jungle Network
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 Jungle Network filed Critical Jungle Network
Publication of CN101562533A publication Critical patent/CN101562533A/zh
Pending legal-status Critical Current

Links

Images

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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • 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
    • 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/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • 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/1025Dynamic adaptation of the criteria on which the server selection is based
    • 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/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种用于配置服务器负载均衡器的方法,包括:接收定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令,以及接收将目标主机服务器增加到负载均衡组的用户命令,其中用户命令包括对目标主机服务器的配置信息。在接收将目标主机服务器增加到负载均衡组的用户命令后,该方法包括更新服务器负载均衡器的数据库以使其包括对目标主机服务器的配置信息。在更新数据库之后,该方法包括接收将标号分配给目标主机服务器的子设备而不创建新的负载均衡组且不重新配置关于目标主机服务器的信息的用户命令,其中标号指出目标主机服务器的子设备能够服务于特定类型的访问请求。

Description

用于服务器负载均衡器的基于标号的目标主机配置
技术领域
本发明涉及计算机网络,以及更具体地,涉及计算机网络中的服务器负载均衡。
背景技术
计算机网络是可以交换数据和共享资源的互相连接的计算设备的集合。在基于数据包的网络中,计算设备通过将数据分成多个被称为数据包的小块来传送数据,这些小块在网络中独立地从源设备(source device)被发送到目的设备(destination device)。目的设备从包中提取数据并且将数据组合成它的原始形式。
服务器负载均衡器(server load balancer)是从多个后端目标主机服务器中分配输入(incoming)网络流量(traffic)的网络设备。在传统的配置中,服务器负载均衡器上配置的规则使服务器负载均衡器分析该输入网络流量以将该流量的一部分引导到目标主机服务器的一个子设备,将该流量的另一部分引导到目标主机的另一子设备,等等。例如,目标主机服务器的分隔的子设备可以服务于图像请求、可移植文档格式(PDF)请求、联合图像专家组(JPEG)请求、图形交换格式(GIF)请求、以及所有的其他超文本链接标识语言(HTML)请求。
已经提出了将目标主机服务器的子设备配置在服务器负载均衡器上的多种方法。例如,在一种方法中,创建服务于不同类型流量的分隔的目标主机服务器组实体,并且还创建总体负载均衡组实体。然后,将目标主机服务器组与总体负载均衡组相关联。配置规则,所述规则规定了应该怎样将流量发送到目标主机服务器组。这种方法要求设置多个独立的实体(即,分隔的目标主机组和总体负载均衡组),之后该实体必须与负载均衡组相链接。
在将目标主机服务器的子设备配置在服务器负载均衡器上的另一个实例方法中,设置单一的目标主机组实体,并顺序地将目标主机增加到目标主机组实体。配置规则,该规则规定了应该怎样通过将属于子组的目标主机独立地列出从而将流量发送到目标主机组实体的子组。在这种方法中,每当将目标主机增加到子组的列表中时,必须复制关于单个的目标主机的信息。例如,如果一个目标主机是多个子组中的一员(例如,服务于多于一种类型的流量),则必须在多种规则下列出目标主机,因而必须输入多次关于目标主机的信息。另外,随着增加新的目标主机或者移除过期的目标主机,必须更新规则,以将目标主机增加至在规则中列出的子组中或从在规则中列出的子组中移除目标主机。
发明内容
大体上,将描述用于配置和操作服务器负载均衡器的技术。例如,该技术使基于标号(label)的系统能够在服务器负载均衡器上配置目标主机服务器,其中,在将每个目标主机服务器增加到总体负载均衡组之后,将把目标主机服务器与特定类型的网络流量相关联的标号增加到每个目标主机服务器。
由诸如网络管理员的用户配置服务器负载均衡器,以使服务器负载均衡器能够基于网络流量的类型在多个目标主机服务器之间对网络流量进行负载均衡。服务器负载均衡器利用基于标号的配置方案来执行负载均衡。网络管理员通过将用户命令提供给服务器负载均衡器来与服务器负载均衡器相互作用,以在服务器负载均衡器上配置目标主机服务器。为了在服务器负载均衡器上配置目标主机服务器,以使服务器负载均衡器知道向哪里发送不同类型的流量,网络管理员首先提供设置总体负载均衡组的用户命令。负载均衡组是单个的实体,被定义为表示多个目标主机服务器。一旦接收到用户命令,服务器负载均衡器就更新数据库以定义负载均衡组。之后管理员提供用户命令以将每个目标主机服务器单独地增加到负载均衡组。当将目标主机服务器中的一个增加到负载均衡组中时,网络管理员可能需要配置关于各自目标主机服务器的特定附加信息。
在接收到将目标主机服务器增加到负载均衡组中的多个用户命令中的每一个之后,服务器负载均衡器更新数据库以根据接收到的用户命令来定义各自的目标主机服务器。服务器负载均衡器可以将默认标号分配给每个定义的目标主机服务器。接下来,管理员可以将用户命令提供给服务器负载均衡器,以将一个或多个附加标号分配给一个或多个目标主机服务器。将标号增加到一个目标主机服务器表示该目标主机服务器能够处理与该标号相关的一种类型的网络流量。例如,服务器负载均衡器可以用于将标号“pdf”与配置用来服务于PDF请求的所有目标主机服务器相关联。当管理员将标号分配给目标主机服务器时,管理员不需要重新输入在配置目标主机服务器时已经输入过的所有初始信息。
在这种方式中,管理员可以模拟用于不同类型网络流量的目标主机组的创建过程,诸如(例如,文件请求或服务请求)网络访问请求。例如,可以在不同目标主机组(例如,PDF目标主机组、联合图像专家组(JPEG)目标主机组、以及图像交换格式(GIF)目标主机组)中的目标主机之间对不同类型的文件的请求进行负载均衡,而不需要实际上单独地配置任意目标主机组或明确地将目标主机服务器增加到不同的目标主机组,这需要在每次将目标主机服务器增加到目标主机组时重新输入关于目标主机服务器的信息。相似地,可以在目标主机的不同子设备之间对不同类型的网络访问请求或服务请求(例如,打印请求、动态主机配置协议(DHCP)请求、或其他请求)进行负载均衡,例如,打印服务器或DHCP服务器。
在这里描述的基于标号的配置技术虑及服务器负载均衡器将目标主机服务器与不同类型的网络流量相关联而不需要多次输入关于目标主机服务器的信息。管理员可以创建与给定的服务器负载均衡器为进行负载均衡目的而需要的相同数量的标号。之后管理员可以写出包含标号名称的用户规则(custom rule),该规则将特定类型的网络流量引导到被标记的目标主机服务器。
当服务器负载均衡器接收网络流量时,诸如通过网络的来自多个客户设备中的一个的对于文件的请求,服务器负载均衡器基于该请求识别被请求的文件类型。之后服务器负载均衡器访问被存储的规则以确定什么标号适用于被请求的文件类型。之后服务器负载均衡器通过选择具有该标号的一个目标主机服务器,并将文件输出至所选的目标主机服务器中的一个而在与该标号相关的目标主机服务器的子设备之间对文件请求进行负载均衡。在这种方式中,服务器负载均衡器可以根据所述标号在目标主机服务器的不同子设备之间对不同类型的网络流量进行负载均衡。
本发明可以提供一种或多种优点。例如,该技术可以虑及配置服务器负载均衡器上的目标主机服务器的效率。例如,管理员仅需要配置单个的顶层实体,即,负载均衡组。如果目标主机服务器的配置改变,则管理员只需改变与该目标主机服务器相关的标号。改变标号可能比将整个目标主机服务器配置从一个目标主机服务器组移动到另一个目标主机服务器组更为容易。
在一个实施例中,一种用于配置和操作服务器负载均衡器的方法包括:利用网络中的服务器负载均衡器接收用于定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令;利用服务器负载均衡器接收用于将多个目标主机服务器增加至负载均衡组的多个用户命令,其中,多个用户命令包括目标主机服务器的配置信息;一旦接收到将多个目标主机服务器增加至负载均衡组的多个用户命令中的每一个,就更新服务器负载均衡器的控制单元的数据库,以根据所接收到的用户命令来包含关于每个目标主机服务器的各自的配置信息,所述用户命令用于在目标主机服务器之间对网络流量进行负载均衡。
本方法进一步包括,在更新数据库以包含配置信息之后,利用服务器负载均衡器接收多个用户命令,所述用户命令将标号分配给之前定义的负载均衡组中的多个目标主机服务器的至少一个子设备中的每一个;更新数据库中的配置信息,以将标号分配给多个目标主机服务器的子设备中的每一个目标主机服务器,而不需要在数据库中创建新的负载均衡组,且不需要重新配置数据库中的关于分配有标号的目标主机服务器的配置信息,其中,标号表示多个目标主机服务器的子设备能够服务于特定类型的访问请求。本方法还包括接收来自客户设备的访问请求;识别访问请求的类型;访问一组存储的规则,以确定相对于识别的访问请求类型的标号;访问数据库中的配置信息,以识别与确定的标号相关的目标主机服务器的子设备;以及通过选择与所确定的标号相关的目标主机服务器的子设备中的一个并将访问请求输出给所选择的目标主机服务器,以在多个目标主机服务器之间对访问请求进行负载均衡。
在另一个实施例中,服务器负载均衡器包括:用户界面,用来接收用于定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令,以及用来接收将多个目标主机服务器增加到负载均衡组中的多个用户命令,其中,多个用户命令包括目标主机服务器的配置信息。服务器负载均衡器还包括:数据库,用来存储配置信息;一组规则,其中每一个参考标号均与能够服务于对网络流量的特定类型的请求的多个目标主机服务器的子设备相关,控制单元,用来更新数据库,以根据所接收到的用户命令来包含关于每个目标主机服务器的各自的配置信息,所述用户命令用于在目标主机服务器之间对网络流量进行负载均衡,其中,一旦控制单元更新数据库以包含配置信息,用户界面就接收到多个用户命令,这些用户命令将标号分配给之前定义的负载均衡组中的多个目标主机服务器的至少一个子设备中的每一个,而不需要在数据库中创建新的负载均衡组,且不需要重新配置数据库中的关于分配有所述标号的目标主机服务器的配置信息,其中,所述标号表示多个目标主机服务器的子设备能够服务于对网络流量的特定类型的请求。
服务器负载均衡器还包括用来接收来自客户设备的对网络流量的请求的界面。控制单元识别对网络流量的请求的类型,访问一组规则,以确定对应于所识别的对网络流量的请求类型的标号,并访问数据库中的配置信息,以识别与所确定的标号相关的目标主机服务器的子设备。控制单元通过选择与所确定的标号相关的一个目标主机服务器并将请求输出给所选择的目标主机服务器,以在多个目标主机服务器之间对网络流量的请求进行负载均衡。
在另一个实施例中,一种计算机可读介质包括指令。该指令使得可编成处理器能够:利用网络中的服务器负载均衡器接收用于定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令;以及利用服务器负载均衡器接收用于将多个目标主机服务器增加到负载均衡组的多个用户命令,其中,多个用户命令包括目标主机服务器的配置信息。一旦接收到将多个目标主机服务器增加至负载均衡组的多个用户命令的每一个,该指令就使得可编程处理器更新服务器负载均衡器的控制单元的数据库,以根据用户命令来包含关于每个目标主机服务器的各自的配置信息,所述用户命令用于在目标主机服务器之间对网络流量进行负载均衡。
一旦更新数据库以包含配置信息,该指令就使得可编程处理器利用服务器负载均衡器接收多个用户命令,所述用户命令将标号分配给之前定义的负载均衡组中的多个目标主机服务器的至少一个子设备的每一个;以及更新数据库中的配置信息,以将标号分配给多个目标主机服务器的子设备中的每一个目标主机服务器,而不需要在数据库中创建新的负载均衡组,且不需要重新配置数据库中的关于分配有标号的目标主机服务器的配置信息,其中,标号表示多个目标主机服务器的子设备能够服务于特定类型的访问请求。该指令使得可编成处理器能够接收来自客户设备的访问请求,识别访问请求的类型,访问一组存储的规则,以确定相对于所识别的访问请求类型的标号,访问数据库中的配置信息,以识别与确定的标号相关的目标主机服务器的子设备,以及通过选择与确定的标号相关的目标主机服务器的子设备中的一个并将访问请求输出给所选择的目标主机服务器,以在多个目标主机服务器之间对访问请求进行负载均衡。
在还有一个的实施例中,一种系统包括:多个客户设备,转发对网络流量的请求;多个目标主机服务器,将网络流量提供给多个客户设备,其中,多个目标主机服务器的每一个均用来服务于至少一种类型的对网络流量的请求;服务器负载均衡器,接收来自多个客户设备的对网络流量的请求并根据对网络流量的请求的类型而在多个目标主机服务器之间对请求进行负载均衡,其中服务器负载均衡器包括:用户界面,用来接收用于定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令,以及用来接收将多个目标主机服务器增加到负载均衡组的多个用户命令,其中,多个用户命令包括目标主机服务器的配置信息。
服务器负载均衡器还包括:数据库,用来存储配置信息;一组规则,其中每一个参考标号均与能够服务于对网络流量的特定类型的请求的多个目标主机服务器的子设备相关,控制单元,用来更新数据库,以根据所接收到的用户命令来包含关于每一个目标主机服务器的各自的配置信息,所述用户命令用于在目标主机服务器之间对网络流量进行负载均衡,其中,一旦控制单元更新数据库以包含配置信息,用户界面就接收多个用户命令,所述多个用户命令将标号分配给之前定义的负载均衡组中的多个目标主机服务器的至少一个子设备中的每一个,而不需要在数据库中创建新的负载均衡组,且不需要重新配置数据库中的关于分配有所述标号的目标主机服务器的数据库中的配置信息,其中,所述标号表示多个目标主机服务器的子设备能够服务于对网络流量的特定类型的请求。
服务器负载均衡器还包括:界面,用来接收来自客户设备的对网络流量的请求。控制单元识别对网络流量的请求的类型,访问一组规则,以确定对应于所识别的对网络流量的请求类型的标号,并访问数据库中的配置信息,以识别与所确定的标号相关的目标主机服务器的子设备。控制单元通过选择与所确定的标号相关的目标主机服务器的一个并将请求输出给所选择的目标主机服务器,以在多个目标主机服务器之间对网络流量的请求进行负载均衡。
下面将描述并结合附图阐述本发明的一个或多个实施例的细节。从描述和附图以及权利要求中本发明的其他特征、目的、以及优势将显而易见。
附图说明
图1是示出了具有服务器负载均衡器的示例性系统的框图,该服务器负载均衡器根据本发明的原理在多个目标主机服务器之间对从客户设备接收到的网络流量进行负载均衡;
图2是更详细地示出了诸如图1中的服务器负载均衡器的示例性服务器负载均衡器的框图;
图3和图4是示出了根据本文所描述的技术的服务器负载均衡器的示例性操作的流程图;
图5是从用户界面观看的由服务器负载均衡器表示的示例性命令行界面。
具体实施方式
图1是示出了具有服务器负载均衡器12的示例性系统10的框图,该服务器负载均衡器通过计算机网络16接收来自客户设备14A-14N(“客户设备14”)的文件请求。可以根据本文所描述的技术来配置服务器负载均衡器12以在一组目标主机服务器18A-18N(“目标主机服务器18”)之间对接收到的文件请求进行负载均衡。客户设备14可以是能够访问网络的任意设备,例如膝上型电脑、桌上型电脑、工作站、移动电话、或能够上网的个人数字助理(PDA)。服务器负载均衡器12是在系统10中运行的网络设备且能够远程配置。实例包括路由器、交换机、集线器、应用服务器、数据库服务器或其他网络设备。网络16可以包括任意的公共网络或专用网络或因特网。
可以指定每一个目标主机服务器18来处理特定类型的网络流量或特定类型的访问请求。例如,可以指定目标主机服务器18A、18B、和18C来处理HTML请求和JPEG图像,以及可以指定目标主机服务器18D、18E、和18N来处理HTML请求和PDF文件。另外,也可以指定目标主机服务器18C和18D来处理GIF文件。由诸如网络管理员的用户配置服务器负载均衡器12,以使服务器负载均衡器能够基于网络流量的类型或网络访问请求的类型而在目标主机服务器18之间对网络流量进行负载均衡。例如,如将在下文中的详细描述,服务器负载均衡器12利用基于标号的配置方案来执行负载均衡。
网络管理员通过对服务器负载均衡器12提供用户命令来与服务器负载均衡器12进行相互作用,以配置服务器负载均衡器12上的目标主机服务器18。例如,网络管理员可以通过服务器负载均衡器12的命令行界面来提供用户命令。又例如,网络管理员可以通过由服务器负载均衡器12表示的基于网络浏览器的界面来提供用户命令。
为了配置服务器负载均衡器12上的目标主机服务器18以使服务器负载均衡器12知道向哪里发送不同类型的流量,网络管理员首先提供建立总体负载均衡组的用户命令。负载均衡组是为表示多个目标主机服务器18而定义的单一实体。一旦接收到用户命令,服务器负载均衡器12就更新数据库以定义负载均衡组。之后管理员提供用户命令以单独地将每个目标主机服务器18A-18N增加到负载均衡组。当将一个目标主机服务器18增加到负载均衡组时,网络管理员可能需要配置关于各自的目标主机服务器18的特定的附加信息,例如目标主机服务器18可以处理的最大连接数。例如,目标主机服务器18A可以是比目标主机服务器18B更强大的服务器,因而能够处理比目标主机服务器18B更多数量的连接。
在接收将目标主机服务器18增加到负载均衡组的多个用户命令的每一个之后,服务器负载均衡器18更新数据库以根据接收到的用户命令来定义各自的目标主机服务器18。服务器负载均衡器12将默认标号分配给每个定义的目标主机服务器18。默认标号对每个目标主机服务器18可以是相同的。如果管理员不创建任何附加标号,则服务器负载均衡器12在所有的目标主机服务器18之间对接收到的网络流量进行负载均衡,即,所有目标主机服务器18都具有默认标号。
管理员可以将用户命令提供给服务器负载均衡器12基于每个目标主机服务器将一个或多个标号分配给一个或多个目标主机服务器18。在图1的例子中,管理员通过三个分隔的用户命令将标号“jpg”分配给目标主机服务器18A、18B、和18C。相似地,管理员通过三个单独的用户命令将标号“pdf”分配给目标主机服务器18D、18E、和18N。管理员也可以通过两个单独的用户命令将标号“gif”分配给目标主机服务器18C和18D。当管理员分配标号的时候,管理员不需要重新输入在配置目标主机服务器18时已经输入过的所有的初始信息。
下面的表1示出了上面描述的对目标主机服务器18的标号的分配。为了举例的目的而提供表1;服务器负载均衡器12可以或者不可以维持配置数据中的这样的数据结构。
Figure A20081017554800211
表1
在这种方式中,管理员可以使用对目标主机服务器的标号的分配来模拟不同类型的网络流量的目标主机组(例如,PDF目标主机组、JPEG目标主机组、以及GIF目标主机组)的创建过程,而不需要实际上单独地配置任意目标主机组或明确地将目标主机服务器增加到不同的目标主机组,其要求在每次将目标主机服务器增加到目标主机组时重新输入关于目标主机服务器的配置信息。这里,使用术语“组”指的是可以将单独的项目增加到项目的集合的逻辑表示,而其中,当将单独的项目增加到组中时,指定被增加的项目的特征。这里描述的基于标号的配置技术虑及将目标主机服务器18与不同的网络流量类型相联系而不要求多次输入关于目标主机服务器18的信息。
服务器负载均衡器12维持一组规则,该组规则规定怎样将特定类型的网络流量引导到目标主机服务器18。该规则是基于分配的标号而定义的用户规则,即,该规则涉及标号名称。作为一个例子,规则可以表达如下:{如果客户请求的URL以“jpg”结尾,则将客户请求发送到具有标号“jpg”的目标主机服务器。管理员可以在服务器负载均衡器12上配置该组规则,并且可以向该组规则增加或者从该组规则移除规则。由于是根据标号而不是根据特定的目标主机服务器来写入规则,因此当将新的目标主机服务器增加到系统10时,管理员不需要修改规则。而是,管理员仅将新的目标主机服务器增加到总体负载均衡组中,并且将一个或多个标号分配给新的目标主机服务器。
服务器负载均衡器12可以通过网络16接收来自一个客户设备14的对于文件的请求,例如,来自客户设备14B的对于PDF文件的请求。一旦接收到对PDF文件的请求,服务器负载均衡器12就基于该请求识别被请求的文件的类型。例如,服务器负载均衡器12可以从请求中提取应用数据并且检查该应用数据以识别对于请求的文件的文件扩展(例如,HTML,JPG,PDF)。下面将结合图2更加详细地讨论服务器负载均衡器12识别被请求的文件类型的方式。之后服务器负载均衡器12访问存储的规则,以确定文件请求是否与任何规则相匹配。如果文件请求不与任何规则相匹配,则使用默认的标号并且服务器负载均衡器12通过选择具有默认标号的一个目标主机服务器18并将文件请求输出给所选择的一个目标主机服务器而在所有目标主机服务器18之间对文件请求进行负载均衡。
如果文件请求确实与一个规则相匹配,则服务器负载均衡器12确定由匹配的规则识别的标号,并访问由服务器负载均衡器12维持的配置数据,以确定与该标号相关的目标主机服务器18的子设备。例如,假设文件请求与下述规定的规则相匹配:{如果客户请求的URL以“PDF”结尾,则将客户请求发送到具有标号“pdf’的目标主机服务器。之后服务器负载均衡器12访问存储的配置数据并确定目标主机服务器18D、18E、和18N具有标号“pdf”。之后服务器负载均衡器12通过选择目标主机服务器18D、18E、和18N中的一个而在目标主机服务器18D、18E、和18N之间对文件请求进行负载均衡,并将文件请求输出给所选择的目标主机服务器。服务器负载均衡器12可以以多种方式从被识别的目标主机服务器18的子设备中选择,例如随机地、以轮询的方式(round robin fashion)、根据权重(例如,基于可获得的带宽或最大连接数)、或者其他选择的方法。在一些情况下,该组规则可以包括默认规则,该默认规则规定:如果没有其他规则与文件请求相匹配,则发送到具有默认标号的目标主机服务器。
使用术语“文件”大体上涉及永久或暂时存储的数据的任意容器,网络可寻址或独立地选定地址的,并且通过计算机网络可以重新得到的,包括HTTP文件、PDF文件、Word文档、图像、可以下载或流(stream)到客户设备的媒体资产(media asset)。
可以使用本发明的技术来对服务器负载均衡器12接收到的多种类型的网络流量进行负载均衡。例如,在另一个实施例中,服务器负载均衡器12可以利用这里描述的技术识别来自一个客户设备14的访问请求的类型,并且在多个目标主机服务器18之间对访问请求进行负载均衡。作为一个例子,服务器负载均衡器12可以识别来自一个客户设备14的访问请求的类型,并且一接收到动态主机配置协议(DHCP)的请求就在DHCP服务器之间对访问请求进行负载均衡。在进一步的实施例中,服务器负载均衡器12可以识别来自一个客户设备14的对服务的请求的一种类型(例如,打印请求)并且在多个目标主机服务器18之间对服务的请求进行负载均衡。
图2是示出了示例性服务器负载均衡器30的方框图,该服务器负载均衡器根据本发明的原理在多个目标主机服务器之间对从客户设备接收到的网络流量进行负载均衡。例如,服务器负载均衡器30可以表示图1中的服务器负载均衡器12。
服务器负载均衡器30包括控制单元32,其确定向哪里发送接收到的包并相应地转发该包。在图3示出的示例性实施例中,服务器负载均衡器30包括接口卡(interface card)(IFC)34A-34N(全体地,“IFC 34”),用于通过外向链路(outbound link)36A-36N(“外向链路36”)和内向(inbound)链路38A-38N(“内向链路38”)来进行数据包的通信。IFC 34通过高速交换机40和链42相互连接。在一个例子中,交换机40包括交换结构(fabric),开关装置,可配置网络交换机或集线器等。链路42包括任意形式的通信路径,例如集成电路中的电路径,外部数据总线,光链路,网络连接,无线连接,或其他类型的通信路径。IFC 34通过多个接口端(未示出)连接至外向链路36和内向链路38。
在示出的例子中,服务器负载均衡器30包括转发(forwarding)面板44,其明显地监控内向网络流量46并作为外向网络流量48转发网络流量。在由图2示出的例子中,转发面板44包括流量(flow)分析模块50,规则引擎52,协议解码器54,转发元件56。服务器负载均衡器30的控制单元32包括管理模块58。管理模块58表示一个用户界面,管理员42可以通过该界面配置服务器负载均衡器30,例如,通过修改规则60或配置数据62(配置数据)。例如,管理模块58可以将用户界面表示为基于文本的命令行界面、基于网络浏览器的界面,或其他类型的用户界面。
系统管理员可以配置负载均衡组并通过与管理模块58接口而将目标主机服务器增加到负载均衡组中。系统管理员也可以将一个或多个标号与一个或多个目标主机服务器相关联。该关联可以被存储到配置数据62。作为另一个例子,系统管理员可以配置规则60。规则50包括规定与目标主机服务器18相关的规则,向所述目标主机服务器转发不同类型的网络流量。由系统管理员配置的规则60中的规则可以规定:一接收到特定类型的包,控制单元32就应该将包转发到具有特定标号的目标主机服务器的一个子设备。规则引擎52访问规则60以确定接收到的网络流量是否与任意规则60相匹配。可以以一个或多个表格、数据库、链表、基树、数据库、平面文件、或任意其他数据结构的形式来维持规则60和配置数据62。
服务器负载均衡器30在IFC 34的一个内向链路38A上接收来自诸如客户设备14B的一个客户设备14的网络流量。流量分析模块50接收来自交换机40的网络流量作为内向流量46并且识别流量中的网络流。每一个网络流表示数据包在网络流量中的一个方向上的流并且通过至少一个源地址、目的地址和通信协议被识别。流量分析模块50可以利用附加信息来指定网络流,包括源媒体访问控制(“MAC”)地址、目的MAC地址、源端口、和目的端口。其他实施例可以使用其他信息来识别网络流,例如IP地址。
流量分析模块50维持描述网络流量中表示的每个主动(active)数据包流的流表(flow table)64中的数据。流表64指定与每个主动数据包流相关的网络元件,即,诸如源设备和目的设备以及与数据包流相关的端口的底层信息。另外,流表64可以识别数据包流对,数据包流对共同形成客户机和服务器之间的单一通信会话。例如,流表64可以指定通信会话作为相反方向上的数据包流对,以使数据流共享至少一些公共的网络地址、端口和协议。
规则引擎52检查内向流量以识别应用的类型并基于识别的应用决定类型来调用合适的一个协议解码器54以分析应用层通信。协议解码器54表示一组一个或多个特定协议的软件模块。每个协议解码器54对应于一个不同的通信协议或服务。可以通过协议解码器54支持的通信协议的实例包括超文本传输协议(“HTTP”)、文件传输协议(“FTP”)、网络新闻传输协议(“NNTP”)、简单邮件传输协议(“SMTP”)、Telnet、域名系统(“DNS”)、Gopher、Finger、邮局协议(“POP”)、安全套接层(“SSL”)协议、轻量级目录访问协议(“LDAP”)、安全配置(“SSH”)、服务器信息块(“SMB”)和其他协议。
协议解码器54分析重新组合的应用层通信并且输出识别应用层事务的事务数据(transaction data)。具体地,事务数据指出在两个对等(peer)设备之间的一系列相关的应用层通信的开始和结束的时间。规则引擎52为数据包流分析重新组合的数据以识别与数据包流相关的应用和协议的类型。如果规则引擎52未能识别与数据包流相关的应用和协议的类型,则规则引擎52可以使用公知的静态端口绑定作为默认的应用选择。
规则引擎52访问规则60以确定任意存储的规则是否与被识别的与数据包流相关的协议和应用类型相匹配。例如,规则引擎52可以识别数据包流作为对PDF文档的HTTP请求。规则引擎52可以找到这样的数据包流与规则相匹配,该规则规定:{如果客户请求是以“PDF”结尾的HTTP请求,则将客户请求发送到具有标号“pdf”的目标主机服务器。规则引擎52还访问配置数据62以确定具有标号“pdf”的目标主机服务器18的子设备,例如,目标主机服务器18D、18E和18N。规则引擎52选择具有标号“pdf”的目标主机服务器18的子设备中的一个,并将选择的目标主机服务器18的子设备中的一个提供给转发元件56。转发元件56为选择的一个目标主机服务器18确定下一个转发点(hop),并且服务器负载均衡器30将识别的数据包流的网络流量输出给一个接口卡34的一个外向链路36上确定的下一个转发点。
图2中描述的服务器负载均衡器30的结构仅为了示例性目的而示出。本发明不限于此结构。在其他实施例中,服务器负载均衡器30可以以各种方式配置。例如,在一个实施例中,可以将控制单元32的一些功能分配到IFC 34。在进一步的实施例中,控制单元32可以包括执行发送功能并且维持诸如路由信息的路由信息库(RIB)的路由引擎,以及基于诸如转发信息的根据RIB生成的转发信息库(FIB)执行数据包转发的转发引擎。此外,虽然参照服务器负载均衡器30进行了描述,但本文描述的转发技术可以应用到其他类型的网络设备,例如网关、交换机、服务器、工作站、或其他网络设备。
可以单独地在软件、或硬件中实现控制单元32,或者作为软件、硬件或固件(firmware)的组合来实现。例如,控制单元32可以包括执行软件指令的一个或多个处理器。在这种情况下,控制单元32的多个软件模块可以包括存储在诸如计算机存储器或硬盘的计算机可读存储介质中的可执行指令。
图3是示出了根据本文描述的技术的服务器负载均衡器的示例性操作的流程图。例如,服务器负载均衡器可以是图1中的服务器负载均衡器12或图2中的服务器负载均衡器30。服务器负载均衡器30,例如,通过命令行界面或基于网络浏览器的用户界面(64)接收来自管理员的配置输入和规则。例如,配置输入可以创建负载均衡组,并且还可以配置独立的目标主机服务器18A-18N作为总体负载均衡组的成员,并将一个或多个标号与一个或多个目标主机服务器18相关联。该规则规定怎样基于分配的标号将特定类型的网络流量引导到目标主机服务器18。下面将结合图4更详细地描述服务器负载均衡器30的配置。
服务器负载均衡器30通过网络16接收来自一个客户设备14(例如客户设备14B)的对文件的请求(66)。如上面结合图2的描述,服务器负载均衡器30基于请求识别被请求的文件类型(68)。例如,服务器负载均衡器30可以识别请求作为对GIF文件的HTTP请求。之后服务器负载均衡器30调用规则引擎52来访问被存储的规则,以确定文件请求是否与任意规则相匹配,并根据规则确定对应于被识别的文件类型的标号(例如,标号“gif”)(70)。规则引擎52访问由服务器负载均衡器30维持的配置数据62,以确定与该标号相关的目标主机服务器18的子设备,例如,目标主机服务器18C和18D(72)。之后服务器负载均衡器30通过选择目标主机服务器18C和18D中的一个(74)并将文件请求输出给所选择的目标主机服务器(76)而在目标主机服务器18C和18D之间对文件请求进行负载均衡。
图4是示出了通过由服务器负载均衡器30的管理模块58表示的用户界面接收来自管理员的配置信息和规则的服务器负载均衡器30(图2)的示例性操作的流程图。下面将参照图5来描述图4。图5示出了由在界面上看到的管理模块58生成的实例命令行界面90的示例性屏幕表示,例如由图2的管理模块58表示的界面。具体地,命令行界面90表示用以配置服务器负载均衡器30上的目标主机服务器18的由管理员输入的实例命令。
服务器负载均衡器30接收来自管理员的创建负载均衡组的输入(80)。例如,如图5的命令行界面90所示,管理员输入表述为“Add cluster 1”的命令92,其中“cluster”指的是负载均衡组。服务器负载均衡器30也接收来自管理员的定义将一个或多个目标主机服务器18增加到负载均衡组的输入(82)。例如,如图5的命令行界面90所示,管理员输入多个命令94。多个命令94中的每一个命令将另一个目标主机服务器增加到“cluster 1”负载均衡组中。例如,命令“Set cluster 1 target host 1.1.1.1:80”可以增加目标主机服务器18A,其具有IP地址1.1.1.1并使用端口80。命令“Set cluster1 target host 1.1.1.2:80”可以增加目标主机服务器18B,并以此类推到目标主机服务器18N。
接收多个命令94的每一个之后,服务器负载均衡器30更新配置数据62以根据接收到的用户命令94定义相应的一个目标主机服务器18(84)。服务器负载均衡器30可以将默认标号分配给每一个目标主机服务器18。在更新完数据库以定义目标主机18之后,服务器负载均衡器30接收来自管理员的将标号增加给目标主机服务器18的输入(86)。例如,如图5的命令行界面90所示,管理员输入命令96以将标号“jpg”和“pdf”增加给目标主机服务器18A。管理员可以通过类似的命令将标号增加给其他的目标主机服务器18。
虽然为了示例性的目的示出了配置过程,增加所有的目标主机服务器18并且之后将标号增加给每个目标主机服务器18,管理员也可以作为选择地通过单个命令94增加单个目标主机服务器18A,并且在服务器负载均衡器30更新配置数据62以后,管理员接下来可以在将任意附加的目标主机服务器18A增加到集群(cluster)1负载均衡组之前,将一个或多个标号增加给目标主机服务器18A。例如,管理员可以将目标主机服务器18A增加到集群1负载均衡组中。在服务器负载均衡器30更新配置数据62以反映目标主机服务器18A的增加之后,管理员接下来可以将标号“jpg”增加到目标主机服务器18A。在这之后,管理员可以处理以将目标主机服务器18B增加到集群1负载均衡组,并且在服务器负载均衡器更新配置数据62之后,可以将一个或多个标号增加到目标主机服务器18B。如果目标主机服务器的配置改变,则管理员只需改变与该目标主机服务器相关的标号。
服务器负载均衡器30还接收来自管理员的定义一个或多个规则的输入,并更新规则60以存储被定义的规则(88)。管理员随后还可以通过增加、删除、或修改规则以更新该规则。备选地,管理员可以在配置负载均衡组之前定义规则。在这种方式中,管理员可以模拟不同类型的网络流量的目标主机组的创建过程,而不需实际上单独地配置任何目标主机组或明确地将目标主机服务器增加到不同的目标主机组中。
已经描述了本发明的各种实施例。这些和其他实施例都落入权利要求的范围之中。

Claims (21)

1.一种用于配置和操作服务器负载均衡器的方法,包括:
利用网络中的服务器负载均衡器接收用于定义负载均衡组的用户命令,所述负载均衡组能够表示所述网络中的多个目标主机服务器;
利用所述服务器负载均衡器接收用于将所述多个目标主机服务器增加至所述负载均衡组的多个用户命令,其中,所述多个用户命令包括所述目标主机服务器的配置信息;
一旦接收到将所述多个目标主机服务器增加至所述负载均衡组的多个用户命令的每一个,就更新所述服务器负载均衡器的控制单元的数据库,以根据所接收到的用户命令来包含关于每一个所述目标主机服务器的各自的配置信息,所述用户命令用于在所述目标主机服务器之间对网络流量进行负载均衡;
在更新所述数据库以包含所述配置信息之后,利用所述服务器负载均衡器接收多个用户命令,所述用户命令将标号分配给之前定义的负载均衡组中的所述多个目标主机服务器的至少一个子设备中的每一个;
更新所述数据库中的所述配置信息,以将所述标号分配给所述多个目标主机服务器的子设备中的每一个目标主机服务器,而不需要在所述数据库中创建新的负载均衡组,且不需要重新配置关于分配有所述标号的所述目标主机服务器的数据库中的配置信息,其中,所述标号表示所述多个目标主机服务器的子设备能够服务于特定类型的访问请求;
接收来自客户设备的访问请求;
识别所述访问请求的类型;
访问一组存储的规则,以确定对应于所识别的访问请求类型的标号;
访问所述数据库中的配置信息,以识别与所确定的标号相关联的所述目标主机服务器的子设备;以及
通过选择与所确定的标号相关联的目标主机服务器的子设备中的一个并将所述访问请求输出给所选择的目标主机服务器,以在所述多个目标主机服务器之间对所述访问请求进行负载均衡。
2.根据权利要求1所述的方法,其中,所述的一组存储的规则参考标号的每一个均与所述多个目标主机服务器的子设备相关联,其中,访问所述一组存储的规则以确定标号包括:确定所述访问请求是否与所述一组存储的规则中的任一个相匹配,并确定由与所述请求相匹配的规则所指定的标号。
3.根据权利要求1所述的方法,还包括:
一旦接收到将所述多个目标主机服务器增加到所述负载均衡组实体的所述多个用户命令中的每一个,就自动将默认标号分配给所述多个目标主机服务器中的每一个;以及
一旦接收到与所述一组规则中的任意规则均不相匹配的访问请求,就选择具有默认标号的多个目标主机服务器中的一个,以向该目标主机服务器转发所述访问请求。
4.根据权利要求1所述的方法,还包括接收将第二标号分配给所述多个目标主机服务器的第二子设备的第二用户命令,其中,所述第二标号相关,表示所述多个目标主机服务器的第二子设备能够服务于第二类型的访问请求。
5.根据权利要求1所述的方法,其中,接收访问请求包括接收对特定类型的文件的请求,而其中,所述标号表示所述多个目标主机服务器的所述子设备能够服务于对特定类型的文件的请求。
6.根据权利要求5所述的方法,其中,所分配的标号表示所述多个目标主机服务器的子设备中的每一个均能够服务于超文本链接标识语言(HTML)请求、可移植文档格式(PDF)请求、联合图像专家组(JPEG)请求、图形交换格式(GIF)请求、或图像请求中的一个。
7.根据权利要求1所述的方法,其中,接收访问请求包括接收对特定类型的服务的请求,而其中,所述标号表示所述多个目标主机服务器的子设备能够服务于对特定类型的服务的请求。
8.根据权利要求1所述的方法,其中,识别所述访问请求的类型包括识别所述访问请求的应用类型和协议类型。
9.根据权利要求1所述的方法,其中,接收所述用户命令包括在所述服务器负载均衡器的命令行界面上接收所述用户命令。
10.根据权利要求1所述的方法,其中,接收所述用户命令包括在所述服务器负载均衡器的网络浏览器界面上接收所述用户命令。
11.一种服务器负载均衡器,包括:
用户界面,用来接收用于定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令,以及用来接收将所述多个目标主机服务器增加到所述负载均衡组的多个用户命令,其中,所述多个用户命令包括所述目标主机服务器的配置信息;
数据库,用来存储配置信息;
一组规则,其中每一个参考标号均与能够服务于特定类型访问请求的多个目标主机服务器的子设备相关联;
控制单元,用来更新所述数据库,以根据所接收到的用户命令来包含关于每一个所述目标主机服务器的各自的配置信息,所述用户命令用于在所述目标主机服务器之间对网络流量进行负载均衡,
其中,一旦所述控制单元更新所述数据库以包含所述配置信息,所述用户界面就接收到多个用户命令,所述用户命令将标号分配给之前定义的负载均衡组中的所述多个目标主机服务器的至少一个子设备中的每一个,而不需要在所述数据库中创建新的负载均衡组,且不需要重新配置关于分配有所述标号的目标主机服务器的数据库中的配置信息,其中,所述标号表示所述多个目标主机服务器的子设备能够服务于特定类型的访问请求,以及
界面,用来接收来自客户设备的访问请求;
其中,所述控制单元识别所述访问请求的类型,访问所述的一组规则,以确定对应于所识别的访问请求类型的标号,并访问所述数据库中的所述配置信息,以识别与所确定的标号相关联的目标主机服务器的子设备,以及
其中,所述控制单元通过选择与所确定的标号相关联的所述目标主机服务器的一个并将所述请求输出给所选择的目标主机服务器,以在所述多个目标主机服务器之间对所述访问请求进行负载均衡。
12.根据权利要求11所述的服务器负载均衡器,其中,一旦访问所述的一组规则以确定对应于所识别的访问请求类型的标号,所述控制单元就用于确定所述访问请求是否与所述一组规则中的任一个相匹配,以及确定由与所述请求相匹配的规则指定的标号。
13.根据权利要求11所述的服务器负载均衡器,其中,一旦接收到将所述多个目标主机服务器增加到所述负载均衡组的多个用户命令的每一个,所述控制单元就用于自动将默认标号分配给所述多个目标主机服务器的每一个,以及
其中,一旦接收到与所述一组规则中的任意规则不相匹配的访问请求,所述控制单元就用于选择具有默认标号的所述多个目标主机服务器的一个,以向所述目标主机服务器转发所述访问请求。
14.根据权利要求11所述的服务器负载均衡器,其中,所述用户界面用于接收将第二标号分配给所述多个目标主机服务器的第二子设备的第二用户命令,其中,所述第二标号表示所述多个目标主机服务器的第二子设备能够服务于第二类型的访问请求。
15.根据权利要求11所述的服务器负载均衡器,其中,所述访问请求包括对特定类型文件的请求,而其中,所述标号表示所述多个目标主机服务器的子设备能够服务于对所述特定类型文件的请求。
16.根据权利要求11所述的服务器负载均衡器,其中,所分配的标号表示所述多个目标主机服务器的子设备中的每一个均能够服务于超文本链接标识语言(HTML)请求、可移植文档格式(PDF)请求、联合图像专家组(JPEG)请求、图形交换格式(GIF)请求、或图像请求中的一个。
17.根据权利要求11所述的服务器负载均衡器,其中,所述控制单元用于通过识别所述访问请求的应用类型和协议类型来识别所述访问请求的类型。
18.根据权利要求11所述的服务器负载均衡器,其中,所述用户界面包括命令行界面。
19.根据权利要求11所述的服务器负载均衡器,其中,所述用户界面包括网络浏览器界面。
20.一种包含指令的计算机可读介质,所述指令使得可编程处理器能够:
利用网络中的服务器负载均衡器接收用于定义负载均衡组的用户命令,所述负载均衡组能够表示所述网络中的多个目标主机服务器;
利用所述服务器负载均衡器接收用于将所述多个目标主机服务器增加至所述负载均衡组的多个用户命令,其中,所述多个用户命令包括所述目标主机服务器的配置信息;
一旦接收到将所述多个目标主机服务器增加至所述负载均衡组的多个用户命令的每一个,就更新所述服务器负载均衡器的控制单元的数据库,以根据所接收到的用户命令来包含关于每一个所述目标主机服务器的各自的配置信息,所述用户命令用于在所述目标主机服务器之间对网络流量进行负载均衡;
一旦更新所述数据库以包含所述配置信息,就利用所述服务器负载均衡器接收多个用户命令,所述用户命令将标号分配给之前定义的负载均衡组中的所述多个目标主机服务器的至少一个子设备中的每一个;
更新所述数据库中的所述配置信息,以将所述标号分配给所述多个目标主机服务器的子设备中的每一个目标主机服务器,而不需要在所述数据库中创建新的负载均衡组,且不需要重新配置关于分配有所述标号的所述目标主机服务器的数据库中的配置信息,其中,所述标号表示所述多个目标主机服务器的子设备能够服务于特定类型的访问请求;
接收来自客户设备的访问请求;
识别所述访问请求的类型;
访问一组存储的规则,以确定相对于所识别的访问请求类型的标号;
访问所述数据库中的配置信息,以识别与所确定的标号相关联的所述目标主机服务器的子设备;以及
通过选择与所确定的标号相关联的目标主机服务器的子设备中的一个并将所述访问请求输出给所选择的目标主机服务器,以在所述多个目标主机服务器之间对所述访问请求进行负载均衡。
21.一种系统,包括:
多个客户设备,转发对网络流量的请求;
多个目标主机服务器,将网络流量提供给所述多个客户设备,其中,所述多个目标主机服务器的每一个均用来服务于至少一种类型的对网络流量的请求;
服务器负载均衡器,接收来自所述多个客户设备的对网络流量的请求并根据所述对网络流量的请求的类型而在所述多个目标主机服务器之间对所述请求进行负载均衡,其中所述服务器负载均衡器包括:
用户界面,用来接收用于定义能够表示网络中的多个目标主机服务器的负载均衡组的用户命令,以及用来接收将所述多个目标主机服务器增加到所述负载均衡组的多个用户命令,其中,所述多个用户命令包括所述目标主机服务器的配置信息;
数据库,用来存储配置信息;
一组规则,其中每一个参考标号均与能够服务于对网络流量的特定类型的请求的多个目标主机服务器的子设备相关联;
控制单元,用来更新所述数据库,以根据所接收到的用户命令来包含关于每一个所述目标主机服务器的各自的配置信息,所述用户命令用于在所述目标主机服务器之间对网络流量进行负载均衡,
其中,一旦所述控制单元更新所述数据库以包含所述配置信息,所述用户界面就接收多个用户命令,所述用户命令将标号分配给之前定义的负载均衡组中的所述多个目标主机服务器的至少一个子设备中的每一个,而不需要在所述数据库中创建新的负载均衡组,且不需要重新配置关于分配有所述标号的目标主机服务器的数据库中的配置信息,其中,所述标号表示所述多个目标主机服务器的所述子设备能够服务于对网络流量的特定类型的请求,以及
界面,用来接收来自客户设备的对网络流量的请求;
其中,所述控制单元识别对网络流量的所述请求的类型,访问所述的一组规则,以确定对应于所识别的对网络流量的请求类型的标号,并访问所述数据库中的所述配置信息,以识别与所确定的标号相关联的目标主机服务器的子设备,以及
其中,所述控制单元通过选择与所确定的标号相关联的所述目标主机服务器的一个并将所述请求输出给所选择的目标主机服务器,以在所述多个目标主机服务器之间对网络流量的所述请求进行负载均衡。
CNA2008101755484A 2008-04-15 2008-11-07 用于服务器负载均衡器的基于标号的目标主机配置 Pending CN101562533A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/103,475 2008-04-15
US12/103,475 US20090259736A1 (en) 2008-04-15 2008-04-15 Label-based target host configuration for a server load balancer

Publications (1)

Publication Number Publication Date
CN101562533A true CN101562533A (zh) 2009-10-21

Family

ID=40679472

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2008201752509U Expired - Fee Related CN201518488U (zh) 2008-04-15 2008-11-07 服务器负载均衡器及其系统
CNA2008101755484A Pending CN101562533A (zh) 2008-04-15 2008-11-07 用于服务器负载均衡器的基于标号的目标主机配置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2008201752509U Expired - Fee Related CN201518488U (zh) 2008-04-15 2008-11-07 服务器负载均衡器及其系统

Country Status (3)

Country Link
US (1) US20090259736A1 (zh)
EP (1) EP2110743A1 (zh)
CN (2) CN201518488U (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102664937A (zh) * 2012-04-09 2012-09-12 威盛电子股份有限公司 云端运算图形服务器及云端运算图形服务方法
CN104519088A (zh) * 2013-09-27 2015-04-15 方正宽带网络服务股份有限公司 一种缓存系统的实现方法及缓存系统
CN105610907A (zh) * 2015-12-18 2016-05-25 华夏银行股份有限公司 服务器访问方法及装置
CN106688210A (zh) * 2014-08-05 2017-05-17 阿姆多克斯软件系统有限公司 用于扩充利用网络功能虚拟化协调器(nfv‑o)的物理系统的系统、方法和计算机程序
CN107332710A (zh) * 2017-07-30 2017-11-07 深圳有麦科技有限公司 基于api的热部署分布式容灾方法及其系统
CN108234208A (zh) * 2017-12-29 2018-06-29 三盟科技股份有限公司 基于业务的资源管理的可视化负载均衡部署方法及系统
CN108712508A (zh) * 2018-06-06 2018-10-26 亚信科技(中国)有限公司 一种负载均衡方法及装置
CN108809730A (zh) * 2018-06-25 2018-11-13 阿里巴巴集团控股有限公司 一种机房控制切流的方法和装置
CN109257439A (zh) * 2018-10-26 2019-01-22 京信通信系统(中国)有限公司 分布式文件保存系统、文件上传方法和装置

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5543666B2 (ja) * 2010-04-30 2014-07-09 インターデイジタル パテント ホールディングス インコーポレイテッド ネットワーク通信における軽量プロトコルおよびエージェント
US20110307541A1 (en) * 2010-06-10 2011-12-15 Microsoft Corporation Server load balancing and draining in enhanced communication systems
US8595366B2 (en) * 2011-05-05 2013-11-26 Qualcomm Incorporated Method and system for dynamically creating and servicing master-slave pairs within and across switch fabrics of a portable computing device
US9069617B2 (en) 2011-09-27 2015-06-30 Oracle International Corporation System and method for intelligent GUI navigation and property sheets in a traffic director environment
US9137171B2 (en) 2011-12-19 2015-09-15 Cisco Technology, Inc. System and method for resource management for operator services and internet
US9408177B2 (en) 2011-12-19 2016-08-02 Cisco Technology, Inc. System and method for resource management for operator services and internet
US9210728B2 (en) * 2011-12-19 2015-12-08 Cisco Technology, Inc. System and method for resource management for operator services and internet
US9680925B2 (en) * 2012-01-09 2017-06-13 At&T Intellectual Property I, L. P. Methods and apparatus to route message traffic using tiered affinity-based message routing
CA2871044A1 (en) 2012-04-27 2013-10-31 Level 3 Communications, Llc Load balancing of network communications
US8565793B1 (en) 2012-05-15 2013-10-22 Cisco Technology, Inc. System and method for scoped paging in multi-radio heterogeneous networks
US9661522B2 (en) 2012-07-09 2017-05-23 Cisco Technology, Inc. System and method associated with a service flow router
US9100301B2 (en) * 2012-09-05 2015-08-04 At&T Intellectual Property I, L.P. Systems, methods, and articles of manufacture to manage alarm configurations of servers
WO2014040279A1 (zh) * 2012-09-14 2014-03-20 华为技术有限公司 信息处理方法和负载均衡设备
US20140181112A1 (en) * 2012-12-26 2014-06-26 Hon Hai Precision Industry Co., Ltd. Control device and file distribution method
US20140222910A1 (en) * 2013-02-05 2014-08-07 Samsung Electronics Co., Ltd. Content delivery system with destination management mechanism and method of operation thereof
EP3005659B1 (en) 2013-05-28 2019-07-10 Convida Wireless, LLC Load balancing in the internet of things
US10133798B2 (en) 2014-06-18 2018-11-20 Alfresco Software, Inc. Content transformations using a transformation node cluster
US9705986B2 (en) 2014-06-18 2017-07-11 Alfresco Software, Inc. Elastic scalability of a content transformation cluster
US10594660B2 (en) * 2014-06-26 2020-03-17 Hewlett-Packard Development Company, Lp. Selecting proxies
CN104168207A (zh) * 2014-08-21 2014-11-26 北京奇艺世纪科技有限公司 负载调节方法及系统
US9882976B1 (en) 2015-06-16 2018-01-30 Amazon Technologies, Inc. Supporting heterogeneous environments during code deployment
US10148503B1 (en) * 2015-12-29 2018-12-04 EMC IP Holding Company LLC Mechanism for dynamic delivery of network configuration states to protocol heads
EP3639224B1 (en) 2017-06-16 2023-04-19 Barco N.V. Method and system for streaming data over a network
US10873617B2 (en) 2017-07-28 2020-12-22 Barco N.V. Method and system for streaming data over a network
CN110650171B (zh) * 2018-06-27 2022-05-31 视联动力信息技术股份有限公司 一种视联网业务调度系统及方法
US20200028713A1 (en) * 2018-07-16 2020-01-23 Dwight L. Stewart Computer system having controller configured to create data tunnel based on device information
US20190253357A1 (en) * 2018-10-15 2019-08-15 Intel Corporation Load balancing based on packet processing loads
CN110308996B (zh) * 2019-07-09 2022-11-04 北京首汽智行科技有限公司 一种用户url请求的匹配方法
US11080114B2 (en) * 2019-11-26 2021-08-03 International Business Machines Corporation Controlling interaction with a scalable application
CN111049901B (zh) * 2019-12-11 2022-12-02 深圳市优必选科技股份有限公司 一种负载均衡方法、负载均衡系统及注册服务器
CN111125336A (zh) * 2019-12-28 2020-05-08 上海智臻智能网络科技股份有限公司 信息提示方法、装置、设备及介质
CN111538750A (zh) * 2020-06-24 2020-08-14 深圳壹账通智能科技有限公司 一种信息还原方法、装置、计算机系统及可读存储介质
CN113867775A (zh) * 2020-06-30 2021-12-31 中兴通讯股份有限公司 接入请求的分发方法、服务器、可读介质、集群系统
CN114064573A (zh) * 2020-08-07 2022-02-18 伊姆西Ip控股有限责任公司 用于数据项推荐的方法、电子设备和存储介质
CN112465677A (zh) * 2020-11-25 2021-03-09 南京鳌鱼科技有限公司 一种面向在线教育的教学平台
CN114650293B (zh) * 2020-12-17 2024-02-23 中移(苏州)软件技术有限公司 一种流量分流的方法、装置、终端和计算机存储介质
US11356524B1 (en) 2020-12-18 2022-06-07 International Business Machines Corporation Coordinating requests actioned at a scalable application
CN113938422B (zh) * 2021-10-12 2023-02-24 上海淇玥信息技术有限公司 一种流量分配方法、装置和电子设备
CN114338691B (zh) * 2021-12-31 2023-05-23 唯品会(广州)软件有限公司 一种负载均衡管理的方法及装置
CN114500545B (zh) * 2022-01-24 2024-07-26 杭州博盾习言科技有限公司 适用于容器的网络负载均衡方法、装置及电子设备
CN114928615B (zh) * 2022-05-19 2023-10-24 网宿科技股份有限公司 负载均衡方法、装置、设备及可读存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995607A (en) * 1998-10-14 1999-11-30 Siemens Information And Communication Networks, Inc. Enhanced telephony trunk routing
ATE377796T1 (de) * 2000-03-27 2007-11-15 Seiko Epson Corp System um geräte, die mit einem netzwerk verbunden sind, zu verwalten
US6898204B2 (en) * 2000-04-07 2005-05-24 Broadcom Corporation Method of determining a collision between a plurality of transmitting stations in a frame-based communications network
EP1344123A4 (en) * 2000-12-18 2007-04-25 Wireless Valley Comm Inc GRAPHIC AND TEXTUAL DEMARCATION OF LOCATION AND INTERPRETATION OF MEASUREMENTS
CA2343263A1 (en) * 2001-04-05 2002-10-05 Alexis Smirnov Privacy framework
US20030033463A1 (en) * 2001-08-10 2003-02-13 Garnett Paul J. Computer system storage
US20030126464A1 (en) * 2001-12-04 2003-07-03 Mcdaniel Patrick D. Method and system for determining and enforcing security policy in a communication session
US7321926B1 (en) * 2002-02-11 2008-01-22 Extreme Networks Method of and system for allocating resources to resource requests
WO2004019181A2 (en) * 2002-08-24 2004-03-04 Ingrian Networks, Inc. Secure content switching
US7480723B2 (en) * 2003-04-08 2009-01-20 3Com Corporation Method and system for providing directory based services
US20040210663A1 (en) * 2003-04-15 2004-10-21 Paul Phillips Object-aware transport-layer network processing engine
US7912954B1 (en) * 2003-06-27 2011-03-22 Oesterreicher Richard T System and method for digital media server load balancing
FI20040577A0 (fi) * 2004-04-23 2004-04-23 Nokia Corp Tiedon toimittaminen tietoliikennejärjestelmän resurssista
GB0409949D0 (en) * 2004-05-04 2004-06-09 Nokia Corp A communciation system for handling subscriber requests
US7613680B2 (en) * 2005-05-06 2009-11-03 Hitachi, Ltd. Computer system and the computer control method
US8032557B1 (en) * 2008-03-28 2011-10-04 Emc Corporation Model driven compliance management system and method

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102664937A (zh) * 2012-04-09 2012-09-12 威盛电子股份有限公司 云端运算图形服务器及云端运算图形服务方法
CN104519088A (zh) * 2013-09-27 2015-04-15 方正宽带网络服务股份有限公司 一种缓存系统的实现方法及缓存系统
CN106688210A (zh) * 2014-08-05 2017-05-17 阿姆多克斯软件系统有限公司 用于扩充利用网络功能虚拟化协调器(nfv‑o)的物理系统的系统、方法和计算机程序
CN106688210B (zh) * 2014-08-05 2020-06-26 阿姆多克斯软件系统有限公司 用于扩充利用网络功能虚拟化协调器(nfv-o)的物理系统的系统、方法和计算机程序
CN105610907A (zh) * 2015-12-18 2016-05-25 华夏银行股份有限公司 服务器访问方法及装置
CN107332710A (zh) * 2017-07-30 2017-11-07 深圳有麦科技有限公司 基于api的热部署分布式容灾方法及其系统
CN108234208A (zh) * 2017-12-29 2018-06-29 三盟科技股份有限公司 基于业务的资源管理的可视化负载均衡部署方法及系统
CN108712508A (zh) * 2018-06-06 2018-10-26 亚信科技(中国)有限公司 一种负载均衡方法及装置
CN108809730A (zh) * 2018-06-25 2018-11-13 阿里巴巴集团控股有限公司 一种机房控制切流的方法和装置
CN109257439A (zh) * 2018-10-26 2019-01-22 京信通信系统(中国)有限公司 分布式文件保存系统、文件上传方法和装置
CN109257439B (zh) * 2018-10-26 2021-11-23 京信网络系统股份有限公司 分布式文件保存系统、文件上传方法和装置

Also Published As

Publication number Publication date
CN201518488U (zh) 2010-06-30
EP2110743A1 (en) 2009-10-21
US20090259736A1 (en) 2009-10-15

Similar Documents

Publication Publication Date Title
CN201518488U (zh) 服务器负载均衡器及其系统
US10219290B2 (en) Method, device, and system for content delivery network-based mobile terminal traffic processing
EP2510453B1 (en) Website performance optimization and internet traffic processing
CN108027805B (zh) 数据网络中的负载分发
Hoang et al. A dynamic edge caching framework for mobile 5G networks
US9560125B2 (en) System and method for segregating layer seven control and data traffic
US9338515B2 (en) Real-time and secured picture/video upload via a content delivery network
US20090327460A1 (en) Application Request Routing and Load Balancing
JP2018506936A (ja) ネットワークにおいてコンテンツを配信するエンドツーエンドソリューションのための方法及びシステム
EP1244262B1 (en) Redirection of client requests
US11159642B2 (en) Site and page specific resource prioritization
CN107222561A (zh) 一种传输层反向代理方法
US11520605B1 (en) Dynamically reordering plugin execution order at an API gateway of a microservices application
US11954539B1 (en) Webhooks use for a microservice architecture application
US11128733B2 (en) Server-side resource prioritization
US11115326B2 (en) Port-based multi-tenancy router to manage wireless network
US10015086B2 (en) Multi GTM based routing to avoid latencies
US20200136864A1 (en) Over-The-Top Access to Distributed Local Resources
WO2023246488A1 (zh) 内容提供方法及装置
CN111190664A (zh) 一种生成页面的方法和系统
KR20200080416A (ko) 모바일 엣지 컴퓨팅을 위한 데이터처리장치
CN111866100A (zh) 一种控制数据传输速率的方法、装置和系统
US10958580B2 (en) System and method of performing load balancing over an overlay network
JP2015165632A (ja) 情報転送装置、情報転送方法およびプログラム
US20220086731A1 (en) Port-based multitenancy router to manage wireless network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20091021