CN102255971B - 分布式服务器之间的动态负载再分发 - Google Patents

分布式服务器之间的动态负载再分发 Download PDF

Info

Publication number
CN102255971B
CN102255971B CN201110221871.2A CN201110221871A CN102255971B CN 102255971 B CN102255971 B CN 102255971B CN 201110221871 A CN201110221871 A CN 201110221871A CN 102255971 B CN102255971 B CN 102255971B
Authority
CN
China
Prior art keywords
server
authentication agent
affine
escape way
agent server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110221871.2A
Other languages
English (en)
Other versions
CN102255971A (zh
Inventor
O·J·安德森
S·M·帕特里克
N·奥斯科夫
K·E·雷夫金
G·B·劳
B·斯瓦米纳坦
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN102255971A publication Critical patent/CN102255971A/zh
Application granted granted Critical
Publication of CN102255971B publication Critical patent/CN102255971B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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
    • 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/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

各个实施例涉及在多个认证服务器之间再分发认证请求以及使用安全通道仿射服务来集中式地管理分布式服务器之间的认证仿射。计算机系统例示被配置成管理安全通道连接的安全通道管理服务。安全通道管理服务从当前所部署的认证服务器接收状态输入。认证服务器可被配置为将用于传输到认证服务器的认证请求排队。计算机系统基于接收到的状态输入来确定要将安全通道中的至少一个重新映射到不同的认证服务器。计算机系统还重新映射所确定的安全通道以便在认证服务器之间分发未来认证请求。在一些情况下,将认证代理服务器的当前状态嵌入认证服务器所传送的通信中,以便使用所嵌入的状态信息来管理安全通道连接。

Description

分布式服务器之间的动态负载再分发
技术领域
本发明涉及分布式服务器之间的动态负载再分发。
背景技术
计算机已变成在工作、家庭、移动设备中以及许多其他地方高度集成。计算机可快速且有效地处理大量信息。被设计成在计算机系统上运行的软件应用程序允许用户执行包括商业应用程序、学校作业、娱乐等等在内的各种各样的功能。软件应用程序通常被设计成执行特定任务,诸如用于草拟文档的文字处理器应用程序或者用于发送、接收和组织电子邮件的电子邮件程序。
在许多情况下,软件应用程序被设计为与其他软件应用程序或其他计算机系统交互。通常,为了与其他计算机系统交互,引入了确保应用程序用户被授权连接到另一个计算机系统的认证方案。许多不同类型的认证正在使用中并且新方法正不断地涌现。一种类型的认证是NT LAN管理器或NTLM。
NTLM通常被用在其中软件应用程序和/或用户(即,消费者)正远程连接到其他计算机系统的情形中。这些消费者通常建立到远程计算机系统或到代理服务器的安全通道,该代理服务器建立到远程计算机系统的安全通信。可在消费者和代理服务器之一之间建立仿射映射。然而,仿射映射可随时间改变并且消费者可开始连接到不同的代理服务器。在一些情况下,这可导致不成比例数量的消费者连接到给定代理服务器。
发明内容
此处描述的各实施例涉及在多个认证服务器之间再分发认证请求,以及使用安全通道仿射服务来集中式地管理分布式服务器之间的认证仿射。在一个实施例中,计算机系统例示被配置成管理安全通道连接的安全通道管理服务。安全通道管理服务被配置成从当前所部署的认证代理服务器接收状态输入。认证代理服务器可被配置为将用于传输到认证服务器的认证请求排队。计算机系统基于接收到的状态输入来确定安全通道中的至少一个要重新映射到不同的认证代理服务器。计算机系统还重新映射所确定的安全通道以便在认证代理服务器之间分发未来认证请求。
在另一个实施例中,安全通道仿射服务接收各个不同认证服务器处的认证需求的指示。安全通道仿射服务确定认证服务器的认证仿射要根据接收到的认证需求的指示来更改。安全通道仿射服务还基于接收到的认证需求的指示来动态地改变认证服务器的认证仿射。
在再一个实施例中,计算机系统从当前所部署的认证代理服务器的至少之一接收被嵌入通信中的状态输入。认证代理服务器可被配置为将用于传输到其他认证服务器的认证请求排队。状态输入可包括以下的至少一个:消费者的总数、当前通过域中的认证代理服务器来认证的消费者的数量、代理服务器的总数、代理服务器的当前处理容量、以及消费者服务器和认证代理服务器之间的仿射映射。计算机系统将从各种可用认证服务器选择的选择权呈现给用户,其中基于接收到的嵌入状态输入来标识可用认证服务器。计算机系统还基于用户的选择来重新映射安全通道以在多个认证代理服务器之间分发未来认证请求。
提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的附加特征和优点将在以下描述中阐述,且其一部分根据本描述将是显而易见的,或可通过对此处的原理的实践来获悉。本发明的特征和优点可通过在所附权利要求书中特别指出的工具和组合来实现和获得。本发明的特征将通过以下描述和所附权利要求书变得更加显而易见,或可通过对下文中所述的本发明的实践来获悉。
附图说明
为了进一步阐明本发明的各实施例的以上和其他优点和特征,将参考附图来呈现本发明的各实施例的更具体的描述。可以理解,这些附图只描绘本发明的典型实施例,因此将不被认为是对其范围的限制。本发明将通过使用附图用附加特征和细节来描述和解释,附图中:
图1示出了其中本发明的各实施例可操作的系统体系结构,包括在多个认证服务器之间再分发认证请求以及使用安全通道仿射服务来集中式地管理分布式服务器之间的认证仿射。
图2示出了用于在多个认证服务器之间再分发认证请求的示例方法的流程图。
图3示出了用于使用安全通道仿射服务来集中式管理分布式服务器之间的认证仿射的示例方法的流程图。
图4示出了其中将认证请求再分发给其他认证代理服务器的本发明的一个实施例。
具体实施方式
此处描述的各个实施例涉及在多个认证服务器之间再分发认证请求并涉及使用安全通道仿射服务来集中式地管理分布式服务器之间的认证仿射。在一个实施例中,计算机系统例示被配置成管理安全通道连接的安全通道管理服务。安全通道管理服务被配置成从当前所部署的认证代理服务器接收状态输入。认证代理服务器可被配置为将对传输到认证服务器的认证请求排队。计算机系统基于接收到的状态输入来确定安全通道中的至少一个要重新映射到不同的认证代理服务器。计算机系统还重新映射所确定的安全通道以便在认证代理服务器之间分发未来认证请求。
在另一个实施例中,安全通道仿射服务接收各个不同的认证服务器处的认证需求的指示。安全通道仿射服务确定认证服务器的认证仿射要根据接收到的认证需求的指示来更改。安全通道仿射服务还基于接收到的认证需求的指示来动态地改变认证服务器的认证仿射。
在再一个实施例中,计算机系统从当前所部署的认证代理服务器中的至少一个接收被嵌入通信中的状态输入。认证代理服务器可被配置为将用于传输到其他认证服务器的认证请求排队。状态输入可包括以下的至少一个:消费者的总数、当前通过域中的认证代理服务器来认证的消费者的数量、代理服务器的总数、代理服务器的当前处理容量、以及消费者服务器和认证代理服务器之间的仿射映射。计算机系统将从各种可用认证服务器选择的选择权呈现给用户,其中基于接收到的嵌入状态输入来标识可用认证服务器。计算机系统还基于用户的选择来映射或重新映射安全通道以在多个认证代理服务器之间分发未来认证请求。
下面的讨论现在引用了可执行的多个方法和方法动作。值得注意的是,虽然可按一定次序讨论或在流程图中按特定次序发生而示出方法动作,但是,没有特定次序是一定需要的,除非特别声明,或者是必需的,因为在一个动作被执行之前该动作取决于另一动作被完成。
本发明的各实施例可包括或利用包括诸如例如,一个或多个处理器和系统存储器之类的计算机硬件的专用或通用计算机,如以下更详细讨论的。本发明范围内的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这些计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质。承载计算机可执行指令的计算机可读介质是传输介质。因而,作为示例而非限制,本发明的各实施例可包括至少两种完全不同的计算机可读介质:计算机存储介质和传输介质。
计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他介质。
“网络”被定义为允许在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链接。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可包括可用于承载计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的网络和/或数据链接。上述的组合也应被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输介质自动传输到计算机存储介质(或者相反)。例如,通过网络或数据链接接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如,“NIC”)内的RAM中,然后最终被传输到计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在同样(或甚至主要)利用传输介质的计算机系统组件中。
计算机可执行指令包括例如,使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
本领域的技术人员将理解,本发明可在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、虚拟计算机、基于云的计算系统、移动电话、PDA、寻呼机、路由器、交换机等。本发明也可在其中通过网络链接(或者通过硬连线数据链接、无线数据链接,或者通过硬连线和无线数据链接的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实践。在分布式系统环境中,程序模块可位于本地和远程存储器存储设备中。
图1示出了其中可采用本发明的原理的计算机体系结构100。系统体系结构100包括各种不同的计算机系统。如图1所示,这些计算机系统可包括多个不同的消费者计算机系统以及多个不同的认证代理服务器。可以理解,虽然示出五个消费者计算机系统和三个代理服务器,但是这些数字是任意的且实质上可使用任意数目或类型的计算机系统。如此处所使用的消费者计算系统(例如,115A-E)可指终端用户或使用服务的其他计算机系统。这些服务可由供应商服务器(130A-C)提供。为了访问由供应商服务器提供的服务,消费者可通过认证代理服务器(120A-C)路由。
在一些情况下,认证代理服务器可被配置成提供除认证和代理服务之外的服务。例如,代理服务器可以是域控制器。消费者计算机系统(例如,115A)还可以是域控制器。诸如计量、加密和病毒检查之类的其他服务也可由代理服务器和/或消费者服务器提供。
认证代理服务器可被配置成从各个消费者处接收认证请求(例如,116)并将那些请求路由到供应商服务器。认证代理服务器可向供应商服务器认证消费者,该供应商服务器可远离代理服务器或在其附近本地。可使用安全通道111来安全地传输消费者和认证代理服务器之间的通信、以及代理服务器和供应商服务器之间的通信。这些通道可实现加密、各种隧穿技术、虚拟专用网(VPN)或建立计算机系统之间的安全通信的任何其他方法。
在一些实施例中,可存在许许多多消费者计算机系统。由此,安全通道管理服务105可用于向能够处理认证请求的认证代理服务器路由这些请求。在一些情况下,一个认证代理可有不成比例数量的消费者向其发送认证请求。因此,每一个认证代理服务器可将指示每一个代理服务器的当前状态的状态输入122发送给安全通道管理服务105。
状态输入可指示当前未来请求的数量、在给定时间段内被处理的请求的数量、总处理容量、当前网络使用、当前开放的安全通道的数量、当前可用处理容量、配置设置、和其他参数。在一些情况下,状态还可包括服务器所配置的限制,其中用户已基于硬件特征或其他功能约束来选择具有更高或更低容量的特定计算机。使用这些状态输入,管理服务105随后可实现重新映射模块106以在消费者和认证代理之间或在认证代理和供应商之间重新映射各种安全通道111,以便使用最适合处理消费者的认证请求的那些代理。这些和其他概念将在以下参考图2的方法200更详细地解释。
考虑到以上描述的系统和体系结构,参考图2和3的流程图将更好地理解可依照所公开的主题实现的方法。为了解释简明起见,这些方法被示出和描述为一系列框。然而,应该理解和了解,所要求保护的主题不受框的次序的限制,因为一些框可按不同的次序进行和/或与此处所描绘和描述的其他框同时进行。此外,并非全部所示出的框都是实现以下所描述的方法所必需的。
图2示出了用于在多个认证服务器之间再分发认证请求的方法200的流程图。现在将频繁参考图1的环境100和图4的环境400的组件和数据来描述方法200。
方法200包括例示被配置成管理一个或多个安全通道连接的安全通道管理服务的动作,其中安全通道管理服务被配置成从一个或多个当前所部署的认证代理服务器接收状态输入(动作210)。例如,计算机系统可例示管理安全通道连接111的安全通道管理服务105。安全通道管理服务可从各个不同的认证代理服务器(例如,120A-C)接收状态输入122。安全通道管理服务105可被配置成基于状态输入中所指示的信息来重新映射安全通道连接。例如,如果一个认证代理服务器不能或不可能处理其待决或未来认证请求,则重新映射模块106可将一个或多个安全通道连接重新映射到不同的认证代理服务器。例如,如果服务器被确定为基本上接近于性能阈值,则可重新映射安全通道。
在一些实施例中,应当注意的是,在未使用认证代理服务器的情况下,安全通道管理服务105可被配置成直接管理消费者和供应商之间的安全通道111。此外,在使用多个不同层的代理服务器(例如,消费者和供应商之间的两个、三个或更多个代理服务器)的情况下,安全通道管理服务105可被配置成在管理消费者和供应商之间使用的代理服务器中的每一个之间的安全通道。另外,安全通道管理服务105可被配置成管理认证代理服务器和供应商服务器之间的安全通道。
方法200包括从当前所部署的认证代理服务器中的至少一个接收至少一个状态输入的动作,认证代理服务器被配置为将用于传输到一个或多个认证服务器的认证请求排队(动作220)。例如,安全通道管理服务105可从认证代理服务器B(120B)接收状态输入122。认证代理服务器可被配置为将队列121中的认证请求116排队。可将认证请求排队,直到各自的认证代理服务器能够处理该请求。在一些实施例中,由于每个代理处管理服务对负载的周期性评估,可从代理接收被安全通道管理服务接收到的状态输入。因此,在这些情况下,可基于自动执行的周期性评估来重新映射安全通道。
在一些情况下,认证代理服务器120C可被配置为将从消费者E(115E)处接收到的用于通过安全通道111传输给供应商服务器C(130C)的认证请求排队,该安全通道111在代理120C和供应商服务器130C之间建立。可由消费者服务器或计算机系统生成认证请求,请求消费者服务器上的认证。对认证的请求可以是请求对由消费者服务器所提供的服务的访问的先兆。因而,一旦向消费者服务器认证用户,该用户就可请求并接收来自消费者服务器的服务。
如上所提及的,在一些实施例中,认证代理服务器120A-C和消费者服务器115A-E在域内。可使用中央服务(例如,安全通道管理服务105)来管理该域。在一些情况下,安全通道管理服务105的单个实例可管理若干不同的域。管理服务本身可被配置成在域之外运行。因而,管理服务105可独立于域中的计算机系统并独立于该计算机系统来运行。管理服务可与域内的任何或所有计算机系统通信,包括从每个机器接收通信并向其发送通信。管理服务还可被配置成重新映射或以其他方式重新配置或改变安全通道连接111。这些改变包括建立新连接、终止现有连接、以及修改各种不同的现有连接。
方法200还包括基于接收到的状态输入来确定安全通道中的一个或多个要重新映射到不同的认证代理服务器的动作(动作230)。例如,安全通道管理服务405可基于接收到的状态输入422来确定安全通道411中的一个或多个要重新映射到不同的认证代理服务器。因而,如图4所示,消费者A、B和C(分别是415A-C)可能(最初)已建立到认证代理服务器A(420A)的安全通道连接。然而,在重新映射模块406已基于接收到的状态输入422执行了重新映射之后,可使用所重新映射的安全通道411R来将消费者B和C(415B和415C)重新映射到认证代理服务器B(420B)。在这种情况下,先前的安全通道411F不再存在并且认证代理服务器A不再处理来自消费者B和C的请求。
状态输入可包括许多不同类型的信息,重新映射(即,所重新映射的安全通道)可基于这些状态输入。至少在一些实施例中,管理服务405的管理员或其他用户可选择要在状态输入中提供哪些信息。在一些情况下,状态输入422可包括消费者的总数和/或当前通过域中的认证代理服务器来认证的消费者的数量。在一些情况下,状态输入可包括代理服务器的总数和/或代理服务器的当前处理容量。
再进一步,状态输入可包括消费者服务器和认证代理服务器之间的仿射映射。这个仿射映射可指示当前设定消费者与哪些代理服务器一起工作(即,消费者被配置成通过哪些代理服务器来认证)。本领域技术人员可以理解,作为此处列出的那些类型的附加或替换,在状态输入中可包括许多其他类型的信息。此外,可以理解,可从消费者服务器或认证代理服务器、或两者、或从被配置成维持当前仿射映射的另一个实体或服务接收当前仿射映射。
在一些实施例中,可重新映射安全通道而无需从认证代理服务器接收任何状态输入。例如,安全通道管理服务可基于预定重新映射方法来分发或重新映射消费者和认证代理之间的安全通道。这些预定重新映射方法可包括“哑分条”(dumb striping),它可将相等(或接近相等)数量的安全通道分发给每一个认证代理,从而确保每一个认证代理具有相等负载,而不管每一个代理当前正在处理多少通道。
在一些实施例中,可将认证代理服务器的当前状态嵌入认证代理服务器所传输的通信中。因而,代替将当前状态作为状态输入122中的单独通信发送,可将每一个代理服务器的当前状态包括为发送给消费者服务器(115A-E)和供应商服务器(130A-C)中的任何一个或两者的通信的一部分。代理服务器的当前状态的该指示可用于动态地调节映射以确保每一个代理服务器上的合适负载。在一些情况下,可在连续的基础上动态地执行要重新映射哪些安全通道的判定。还可动态地执行重新映射,以使安全通道管理服务持续接收经更新的状态信息并基于经更新的状态信息来持续地重新映射安全通道映射。
如上所述,在可将认证代理服务器的当前状态嵌入认证代理服务器所传输的通信中的情况下,消费者和代理(或供应商)可直接协商他们的需要和容量以便于确定优化状态而无需实现安全通道管理服务105。在这些情况下,消费者可查询一组代理服务器(或直接查询供应商(即,无需通过代理))来获得他们的可用容量,然后消费者可基于各种重新映射算法来选择最好的代理。这些选择或重新映射算法可包括1)选择具有最大可用容量的代理服务器(或供应商),或2)选择具有将容纳消费者期望负载的最小容量的代理服务器。
在一些情况下,以预定间隔执行将哪些安全通道重新映射到不同的认证代理服务器的判定。因此,每X(可变的)秒、分钟、天等,安全通道管理服务可查看认证代理服务器的当前状态并重新映射安全通道。该预定间隔可由用户配置并可按用户所需而改变。另外地或替换地,可在接收警告之后执行要重新映射哪些安全通道的判定。例如,安全通道管理服务可接收认证代理服务器中的至少一个已达到处理容量阈值的指示。
因而,例如,如图4所示,认证代理服务器A(420A)可在状态输入422中指示它已达到处理容量阈值。可由用户、管理员或认证代理服务器本身设置该阈值。在一些情况下,处理阈值可被配置成改变,诸如当它正在处理另一任务时,用于当前任务的其阈值容量可在它正在处理该另一个任务时更低。因而,该阈值处理容量可按用户所配置地动态变化。在确定代理服务器A已达到处理容量阈值之后,重新映射模块406可将先前安全通道411F从认证代理服务器A重新映射到认证代理服务器B(420B),从而导致经重新映射的安全通道411R。
返回到图2,方法200包括重新映射所确定的一个或多个安全通道以在多个认证代理服务器之间分发未来认证请求的动作(动作240)。例如,重新映射模块106可重新映射所确定的安全通道(例如,411R)以在认证代理服务器(120A-C)之间分发未来认证请求。可优化该重新映射以最小化对认证代理用户的打断。因而,丢弃先前的安全通道411F并且重新建立那些消费者的连接。重新映射可考虑哪些安全通道重新映射将打断最少量的消费者。在一些实施例中,重新映射可考虑供应商服务器(130A-C)的当前状态。因此,基于哪些供应商服务器可用于处理来自代理的请求,可将消费者连接到或重新映射到不同的认证代理。
现在转到图3,图3示出了用于使用安全通道仿射服务来集中式管理分布式服务器之间的认证仿射的方法300的流程图。现在将频繁参考图1的环境100和图4的环境400的组件和数据来描述方法300。
方法300包括在安全通道仿射服务处接收多个不同的认证服务器处的认证需求的指示的动作(动作310)。例如,安全通道仿射服务(例如,安全通道管理服务106)可接收指示认证代理服务器120A-C中的一个或多个处的认证需求的状态输入122。安全通道仿射服务可被配置成确定消费者的仿射映射以及管理那些映射。因而,例如,如果消费者C(115C)具有到认证代理服务器B(120B)的仿射映射,则仿射映射指示从消费者C发送的任何认证请求将被发送给代理服务器B。安全通道仿射服务可被配置成基于从认证代理接收到的状态信息来改变仿射映射。
方法300包括安全通道仿射服务确定要根据接收到的认证需求的指示来更改认证服务器的一个或多个认证仿射的动作(动作320)。例如,安全通道仿射服务可确定要基于认证的当前需求级别来更改认证仿射。因而,认证代理服务器A(420A)可指示正在从消费者A、B和C(415A-C)接收极高级别的认证需求。在这种情况下,可更改消费者的仿射映射以使用其他代理服务器来从服务器A卸掉负载。
方法300包括安全通道仿射服务基于接收到的认证需求的指示来动态地改变认证服务器中的至少一个的认证仿射的动作(动作330)。例如,安全通道仿射服务可基于代理服务器A具有较高级别的需求的指示来动态地改变认证代理服务器A的认证仿射。改变关于消费者B和C的仿射可确保将未来认证请求发送给除代理服务器A外的代理服务器(例如,发送给代理服务器B)。
在一些情况下,多个不同的安全通道仿射服务可同时运行以管理不同的地理区域。另外地或替换地,多个安全通道仿射服务可同时运行以管理可能位于不同地理区域的不同代理服务器组。在一些情况下,可改变仿射而无需知道任何认证服务器的当前处理容量。在这些情况下,基于从认证代理处接收到的状态信息来改变仿射。替换地,可(只)基于供应商服务器的当前状态(例如,供应商服务器的处理器负载、存储器的利用率、网络响应时间和其他因素)来重新映射仿射。
因此,提供了在多个不同的认证服务器之间再分发认证请求以及使用安全通道仿射服务来集中地管理分布式服务器之间的认证仿射的方法、系统和计算机程序产品。可持续地、动态地和自动地执行重新映射,并且可以最少打断当前用户的方式来执行该重新映射。
本发明可被具体化为其他具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。因此,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变被权利要求书的范围所涵盖。

Claims (21)

1.在包括多个计算系统的计算机联网环境中,一种用于在包括处理器和存储器的计算机系统中在多个认证服务器之间再分发认证请求的计算机实现的方法,所述方法包括:
实例化被配置成管理一个或多个安全通道连接的安全通道管理服务的动作,其中所述安全通道管理服务被配置成从一个或多个当前所部署的认证代理服务器接收状态输入;
从所述认证代理服务器中的每个接收认证需求的指示,所述认证需求的指示包括状态输入,所述认证代理服务器被配置为将用于传输到一个或多个认证服务器的认证请求排队;
基于接收到的包括状态输入的认证需求的指示来确定要将所述安全通道中的一个或多个重新映射到不同的认证代理服务器的动作;以及
重新映射所确定的一个或多个安全通道以在所述多个认证代理服务器之间分发未来认证请求的动作,其中基于所接收的认证需求的指示动态地改变所述认证代理服务器的至少一个的认证仿射,并且根据经改变的认证仿射来分发未来认证请求,其中所述认证仿射指示当前设定消费者与哪些认证代理服务器一起工作。
2.如权利要求1所述的方法,其特征在于,所述认证请求由消费者服务器生成,请求在认证服务器上的认证。
3.如权利要求1所述的方法,其特征在于,所述认证代理服务器被配置成将接收到的用于经由在认证代理服务器和供应商服务器之间建立的安全通道传输到供应商服务器的认证请求排队。
4.如权利要求2所述的方法,其特征在于,所述认证代理服务器和所述消费者服务器在域内。
5.如权利要求4所述的方法,其特征在于,所述安全通道管理服务被配置成在所述域之外运行。
6.如权利要求3所述的方法,其特征在于,基于所述供应商服务器的当前状态来重新映射所述安全通道。
7.如权利要求4所述的方法,其特征在于,所述状态输入包括消费者的总数和当前通过所述域中的认证代理服务器来认证的消费者的数量中的至少一个。
8.如权利要求1所述的方法,其特征在于,所述状态输入包括认证代理服务器的总数和所述认证代理服务器的当前处理容量中的至少一个。
9.如权利要求2所述的方法,其特征在于,所述状态输入包括所述消费者服务器和所述认证代理服务器之间的仿射映射。
10.如权利要求1所述的方法,其特征在于,在持续的基础上动态地执行基于接收到的状态输入来确定所述安全通道中的一个或多个要被重新映射到不同的认证代理服务器的动作。
11.如权利要求1所述的方法,其特征在于,以预定间隔执行基于接收到的状态输入来确定所述安全通道中的一个或多个要被重新映射到不同的认证代理服务器的动作。
12.如权利要求1所述的方法,其特征在于,在接收到警告之后,执行基于接收到的状态输入来确定所述安全通道中的一个或多个要被重新映射到不同的认证代理服务器的动作。
13.如权利要求12所述的方法,其特征在于,接收到的警告包括所述认证代理服务器中的至少一个已达到处理容量阈值的指示。
14.如权利要求1所述的方法,其特征在于,优化重新映射所确定的一个或多个安全通道以在所述多个认证代理服务器之间分发未来认证请求的动作从而最小化对认证代理用户的打断。
15.如权利要求1所述的方法,其特征在于,还包括将所述认证代理服务器的当前状态嵌入所述认证代理服务器所传送的通信中的动作。
16.一种用于使用安全通道仿射服务来集中式地管理分布式服务器之间的认证仿射的方法,所述方法包括:
在安全通道仿射服务处接收多个不同的认证服务器处的认证需求的指示的动作;
所述安全通道仿射服务确定所述认证服务器的一个或多个认证仿射要根据接收到的认证需求的指示来更改的动作;以及
所述安全通道仿射服务基于接收到的认证需求的指示来动态地改变所述认证服务器中的至少一个的认证仿射的动作并且根据经改变的认证仿射来分发未来认证请求,其中所述认证仿射指示当前设定消费者与哪些认证服务器一起工作。
17.如权利要求16所述的方法,其特征在于,多个安全通道仿射服务同时运行以管理不同的地理区域。
18.如权利要求16所述的方法,其特征在于,多个安全通道仿射服务同时运行以管理不同组的服务器。
19.如权利要求16所述的方法,其特征在于,所述认证仿射根据预定重新映射方法改变而无需知道任何认证服务器的当前处理容量。
20.一种用于在多个认证服务器之间再分发认证请求的方法,所述方法包括:
从当前所部署的认证代理服务器中的至少一个接收被嵌入通信中的至少一个状态输入的动作,所述认证代理服务器被配置为将用于传输到一个或多个认证服务器的认证请求排队,所述状态输入包括以下的至少一个:消费者的总数、当前通过域中的所述认证代理服务器来认证的消费者的数量、认证代理服务器的总数、所述认证代理服务器的当前处理容量、以及消费者服务器和所述认证代理服务器之间的仿射映射;
基于接收到的嵌入状态输入来确定要将安全通道中的一个或多个重新映射到不同的认证服务器的动作;以及
根据多个不同的重新映射算法之一重新映射所确定的一个或多个安全通道以在所述多个认证代理服务器之间分发未来认证请求的动作,其中基于所接收的状态输入动态地改变所述认证代理服务器的至少一个的认证仿射,并且根据经改变的认证仿射来分发未来认证请求,其中所述认证仿射指示当前设定消费者与哪些认证代理服务器一起工作。
21.一种用于在多个认证服务器之间再分发认证请求的系统,所述系统包括:
用于从当前所部署的认证代理服务器中的至少一个接收被嵌入通信中的至少一个状态输入的装置,所述认证代理服务器被配置为将用于传输到一个或多个认证服务器的认证请求排队,所述状态输入包括以下的至少一个:消费者的总数、当前通过域中的所述认证代理服务器来认证的消费者的数量、认证代理服务器的总数、所述认证代理服务器的当前处理容量、以及消费者服务器和所述认证代理服务器之间的仿射映射;
用于基于接收到的嵌入状态输入来确定要将安全通道中的一个或多个重新映射到不同的认证服务器的装置;以及
用于根据多个不同的重新映射算法之一重新映射所确定的一个或多个安全通道以在所述多个认证代理服务器之间分发未来认证请求的装置,其中基于所接收的状态输入动态地改变所述认证代理服务器的至少一个的认证仿射,并且根据经改变的认证仿射来分发未来认证请求,其中所述认证仿射指示当前设定消费者与哪些认证代理服务器一起工作。
CN201110221871.2A 2010-07-30 2011-07-29 分布式服务器之间的动态负载再分发 Active CN102255971B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/847,363 2010-07-30
US12/847,363 US8402530B2 (en) 2010-07-30 2010-07-30 Dynamic load redistribution among distributed servers

Publications (2)

Publication Number Publication Date
CN102255971A CN102255971A (zh) 2011-11-23
CN102255971B true CN102255971B (zh) 2015-09-16

Family

ID=44982961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110221871.2A Active CN102255971B (zh) 2010-07-30 2011-07-29 分布式服务器之间的动态负载再分发

Country Status (3)

Country Link
US (1) US8402530B2 (zh)
CN (1) CN102255971B (zh)
HK (1) HK1163953A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489685B2 (en) 2009-07-17 2013-07-16 Aryaka Networks, Inc. Application acceleration as a service system and method
US8402530B2 (en) * 2010-07-30 2013-03-19 Microsoft Corporation Dynamic load redistribution among distributed servers
US9692732B2 (en) * 2011-11-29 2017-06-27 Amazon Technologies, Inc. Network connection automation
CN103595736B (zh) * 2012-08-14 2019-02-15 杭州海康威视系统技术有限公司 视频监控系统中的访问请求处理方法和装置
US20160371353A1 (en) * 2013-06-28 2016-12-22 Qatar Foundation A method and system for processing data
US9143512B2 (en) 2013-10-04 2015-09-22 At&T Intellectual Property I, L.P. Communication devices, computer readable storage devices, and methods for secure multi-path communication
CN104660409B (zh) * 2013-11-25 2018-10-23 北京神州泰岳软件股份有限公司 集群环境下系统登录的方法和认证服务器集群
US9455960B2 (en) 2014-03-14 2016-09-27 Soha Systems, Inc. Secure application delivery system with dynamic stitching of network connections in the cloud
US10395225B2 (en) * 2014-09-30 2019-08-27 Lg Cns Co., Ltd. Distributed processing system for processing transportation fees and operating method thereof
TWI580224B (zh) * 2015-06-24 2017-04-21 財團法人工業技術研究院 延後認證用戶設備的方法、控制器及網路系統
CN107135274A (zh) * 2017-06-20 2017-09-05 郑州云海信息技术有限公司 一种分布式集群系统的存储管理方法及装置
CN109063484A (zh) * 2018-07-27 2018-12-21 郑州云海信息技术有限公司 一种bmc上用户信息的修改方法、修改系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309139A (zh) * 2007-05-15 2008-11-19 盛大计算机(上海)有限公司 通行证认证系统
CN101601014A (zh) * 2006-12-12 2009-12-09 Lsi公司 利用存储负载信息来平衡集群虚拟机

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6460141B1 (en) * 1998-10-28 2002-10-01 Rsa Security Inc. Security and access management system for web-enabled and non-web-enabled applications and content on a computer network
US6658473B1 (en) * 2000-02-25 2003-12-02 Sun Microsystems, Inc. Method and apparatus for distributing load in a computer environment
US7054931B1 (en) * 2000-08-31 2006-05-30 Nec Corporation System and method for intelligent load distribution to minimize response time for web content access
US7711847B2 (en) * 2002-04-26 2010-05-04 Sony Computer Entertainment America Inc. Managing users in a multi-user network game environment
US7072960B2 (en) * 2002-06-10 2006-07-04 Hewlett-Packard Development Company, L.P. Generating automated mappings of service demands to server capacities in a distributed computer system
US6874031B2 (en) * 2002-10-07 2005-03-29 Qualcomm Inc. Method and apparatus for sharing authentication session state in a global distributed network
US20060005237A1 (en) * 2003-01-30 2006-01-05 Hiroshi Kobata Securing computer network communication using a proxy server
JP2005275690A (ja) * 2004-03-24 2005-10-06 Vodafone Kk 認証代行方法及び配信管理装置並びに認証代行方法のプログラム
US7657940B2 (en) 2004-10-28 2010-02-02 Cisco Technology, Inc. System for SSL re-encryption after load balance
US7823196B1 (en) * 2005-02-03 2010-10-26 Sonicwall, Inc. Method and an apparatus to perform dynamic secure re-routing of data flows for public services
CA2624623A1 (en) 2005-10-11 2007-04-26 Citrix Systems, Inc. Systems and methods for facilitating distributed authentication
JP4961146B2 (ja) * 2006-02-20 2012-06-27 株式会社日立製作所 負荷分散方法およびシステム
US20070214265A1 (en) * 2006-03-07 2007-09-13 Sbc Knowledge Ventures Lp Scalable captive portal redirect
JP4882546B2 (ja) * 2006-06-28 2012-02-22 富士ゼロックス株式会社 情報処理システムおよび制御プログラム
WO2008014004A2 (en) 2006-07-28 2008-01-31 Brown University Load-balanced distributed authentication structures
JP4952125B2 (ja) 2006-08-04 2012-06-13 富士通株式会社 負荷分散装置
US8312103B2 (en) * 2006-08-31 2012-11-13 Itron, Inc. Periodic balanced communication node and server assignment
CA2571891C (en) 2006-12-21 2015-11-24 Bce Inc. Device authentication and secure channel management for peer-to-peer initiated communications
WO2008129597A1 (ja) * 2007-04-04 2008-10-30 Fujitsu Limited 負荷分散システム、ノード装置、負荷分散装置、負荷分散制御プログラム、負荷分散プログラム及び負荷分散方法
AU2007202006A1 (en) * 2007-04-30 2008-11-20 Ubowireless Pty Limited Wireless Broadband Network Management
US8176495B2 (en) * 2007-09-16 2012-05-08 Microsoft Corporation Client affinity in distributed load balancing systems
US9749404B2 (en) * 2008-04-17 2017-08-29 Radware, Ltd. Method and system for load balancing over a cluster of authentication, authorization and accounting (AAA) servers
US8095935B2 (en) * 2008-06-26 2012-01-10 Microsoft Corporation Adapting message delivery assignments with hashing and mapping techniques
US8447881B2 (en) * 2008-09-02 2013-05-21 Microsoft Corporation Load balancing for services
JP2010238051A (ja) * 2009-03-31 2010-10-21 Fujitsu Ltd 負荷分散プログラム及び負荷分散装置
US8140652B2 (en) * 2009-09-25 2012-03-20 International Business Machines Corporation Energy-efficient server location determination for configuration changes
US8402530B2 (en) * 2010-07-30 2013-03-19 Microsoft Corporation Dynamic load redistribution among distributed servers
US8910177B2 (en) * 2011-04-14 2014-12-09 Advanced Micro Devices, Inc. Dynamic mapping of logical cores

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101601014A (zh) * 2006-12-12 2009-12-09 Lsi公司 利用存储负载信息来平衡集群虚拟机
CN101309139A (zh) * 2007-05-15 2008-11-19 盛大计算机(上海)有限公司 通行证认证系统

Also Published As

Publication number Publication date
CN102255971A (zh) 2011-11-23
US20120030749A1 (en) 2012-02-02
HK1163953A1 (zh) 2012-09-14
US8402530B2 (en) 2013-03-19

Similar Documents

Publication Publication Date Title
CN102255971B (zh) 分布式服务器之间的动态负载再分发
US10609031B2 (en) Private consolidated cloud service architecture
CN101657804B (zh) 可扩展和可编程多承租人服务体系结构
CN103262063B (zh) 用于在内容导向网络中创建和管理虚拟专用组的方法和设备
CN105210327A (zh) 提供设备即服务
US9753786B2 (en) Client server communication system
CN105378659A (zh) 使客户端设备能够访问远程桌面的方法和系统
US8001378B2 (en) Method and system for protecting data of a mobile agent within a network system
US10686765B2 (en) Data access levels
WO2013028636A1 (en) Systems and methods for managing a virtual infrastructure
WO2022001683A1 (en) Database access control service in networks
CN103020543B (zh) 一种虚拟磁盘映像加密管理系统及方法
US11005925B2 (en) Load balancing with power of random choices
US12010229B2 (en) Durability enforcement of cryptographic keys in a key management system
US10341324B2 (en) Sponsored trust relationship management between multiple racks
US20230119304A1 (en) Post Quantum Secure Ingress/Egress Network Communication
CN116746114A (zh) 安全数据移动
EP3609128A1 (en) Communication system, provider node, communication node and method for providing a virtual network function to a customer node
US9760412B2 (en) Client server communication system
US20230188531A1 (en) Authorization of service requests in a multi-cluster system
US20210382807A1 (en) Machine learning based application sizing engine for intelligent infrastructure orchestration
JP2024501168A (ja) セキュアなメモリ共有方法
JP2023549598A (ja) 秘密鍵管理
JP2023532810A (ja) 暗号化データオブジェクトの配布
CN109614779A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1163953

Country of ref document: HK

ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150723

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150723

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant