用于分布负载平衡的方法和分布负载平衡器系统技术方案

技术编号:12745387 阅读:57 留言:0更新日期:2016-01-21 13:24
一种分布负载平衡器,其中路由器从至少一个客户端接收封包,并且将封包流路由至多个负载平衡器节点。所述路由器暴露公共IP地址,并且所述负载平衡器节点全部将相同公共IP地址公布至所述路由器。所述路由器可实现每流哈希多路径路由技术,例如等价多路径(ECMP)路由技术,以在所述负载平衡器节点上分布所述流。因此,所述多个负载平衡器节点可为单一公共端点提供服务。所述负载平衡器节点可根据边界网关协议(BGP)公布至所述路由器。然而,负载平衡器节点可通过一个或多个邻近负载平衡器节点而不是公布自身而公布至所述路由器;所述邻近节点可响应于确定所述负载平衡器节点已失效而终止与所述路由器的所述BGP会话。

【技术实现步骤摘要】
【国外来华专利技术】用于分布负载平衡的方法和分布负载平衡器系统
本公开涉及负载平衡器系统领域。具体地说,本公开涉及用于分布负载平衡系统中的多路径路由技术的系统和方法。
技术介绍
常规负载平衡器通常为单一、专门盒,其包括多个网络接口控制器(NIC),例如八个NIC,其中NIC中的一些操控来自客户端的进入流量/到客户端的外出流量而其他NIC操控来自正在负载平衡的主机装置(例如,服务器如网络服务器)的传出流量/到主机装置的传入流量。这些常规负载平衡器上的带宽或通量通常在客户端侧上为40吉比特/秒(Gbps)而在服务器侧上为40Gbps的范围。随着基于网络的应用和基于网络的服务如云计算服务的规模和范围增加,数据中心可容纳数百或甚至数千个需要负载平衡的主机装置(例如,网络服务器)。常规负载平衡器在这类环境中可能不会较好地调整。此外,常规负载平衡器通常使用应用于从主机装置收集的数据以选择哪一个主机装置将操控连接的技术例如最大连接(或maxconns)、循环和/或最小连接(1eastconns)。另外,常规负载平衡器通常充当其在前面的主机装置的代理,且因而终止来自客户端的连接(例如,传输控制协议(TCP)连接)并且在主机装置与负载平衡器之间建立的TCP连接上将客户端流量发送至主机装置。因此,在使用这些常规负载平衡器时,主机装置和客户端不在直接TCP连接上通信。
技术实现思路
公开了实现分布负载平衡器的系统和方法,在该分布负载平衡器中,路由器从至少一个客户端接收封包并把封包流路由至多个负载平衡器节点。路由器暴露公共IP地址并且负载平衡器节点都把该相同的公共IP地址公布至路由器。路由器可以实现按每个流进行哈希的多路径路由技术(例如,等价多路径(ECMP)路由技术)来在负载平衡器节点上分布流。从而,多个负载平衡器节点可以服务于单个公共端点。负载平衡器节点可以根据边界网关协议(BGP)向路由器公布。然而,不是自身公布,一个负载平衡器节点可以通过一个或多个邻近负载平衡器节点而被公布至路由器;响应于确定该负载平衡器节点失效,邻近节点可以终止与路由器的BGP会话。附图说明图1是根据至少一些实施方案的示例性分布负载平衡系统的方框图。图2是根据至少一些实施方案的可由图1的分布负载平衡器系统实施的负载平衡法的较高水平流程图。图3示出根据至少一些实施方案的包括进入、外出和流量跟踪器部件的示例性负载平衡器节点。图4示出根据至少一些实施方案的分布负载平衡器中的路由和封包流。图5示出根据至少一些实施方案的将进入节点向边缘路由器公布。图6是根据至少一些实施方案的多路径路由方法的流程图。图7图形化示出根据至少一些实施方案的不对称封包流。图8示出根据至少一些实施方案的分布负载平衡系统中的封包流。图9A和9B提供根据至少一些实施方案的在分布负载平衡系统中建立连接时的封包流的流程图。图10A至10G示出根据至少一些实施方案的分布负载平衡系统中的封包流。图11A至11D示出根据至少一些实施方案的影响负载平衡器节点一致哈希环中的成员关系的事件的操控。图12是根据至少一些实施方案的可根据健康检查间隔由每一个负载平衡器节点执行的健康检查方法的较高水平流程图。图13示出根据至少一些实施方案的从另一个负载平衡器节点对一个负载平衡器节点进行健康检查的方法。图14图形化示出根据至少一些实施方案的一个负载平衡器节点对一个或多个其他负载平衡器节点进行健康检查。图15示出根据至少一些实施方案的负载平衡器节点对服务器节点进行健康检查。图16图形化示出根据至少一些实施方案的可由负载平衡器节点110保持的另一个节点的健康状况的视图。图17示出根据至少一些实施方案的可由每一个负载平衡器节点保持的健康信息。图18A和18B示出根据至少一些实施方案的操控负载平衡器节点失效。图19A和19B图形化示出根据至少一些实施方案的连接发布技术。图20是根据至少一些实施方案的可由每一个负载平衡器模块执行的连接发布方法的较高水平流程图。图21是根据至少一些实施方案的将在连接发布封包中接收的活动连接信息分配至目标负载平衡器节点的方法的流程图。图22示出根据至少一些实施方案的将在连接发布封包中接收的活动连接信息分配至目标负载平衡器节点的替代方法。图23示出根据至少一些实施方案的负载平衡器节点的示例性软件堆栈架构。图24示出可在实施方案中使用的核心封包处理技术的方面。图25示出根据至少一些实施方案的处理负载平衡器节点上的数据流的示例性多核心封包处理器。图26示出根据至少一些实施方案的处理负载平衡器节点上的数据流的另一个示例性多核心封包处理器。图27示出根据至少一些实施方案的通过负载平衡器节点过程对传入封包的处理。图28示出根据至少一些实施方案的通过负载平衡器节点过程对传出封包的处理。图29示出根据至少一些实施方案的包括生产环境中的分布负载平衡器的负载平衡系统。图30示出根据至少一些实施方案的分布负载平衡器测试系统,其并入消息总线机构,所述机构使得多个分布负载平衡系统部件能够配置并执行于单一过程中或作为单一过程。图31和32示出根据至少一些实施方案的消息总线封包适配器和封包管线。图33A示出根据至少一些实施方案的示例性提供者网络环境。图33B示出根据至少一些实施方案的如图33A展示的示例性提供者网络环境中的分布负载平衡器实行方案。图34A示出根据至少一些实施方案的分布负载平衡器和服务器节点的示例性物理机架实行方案。图34B示出根据至少一些实施方案的分布负载平衡器和服务器节点的另一个示例性物理机架实行方案。图35示出根据至少一些实施方案的一个、两个或更多个分布负载平衡器实施于网络中的示例性连网环境。图36是示出可以在一些实施方案中使用的示例性计算机系统的框图。虽然在本文中通过列举若干实施方案和示意性附图的实例的方式描述了实施方案,但是本领域的技术人员应认识到,实施方案并不限于所描述的实施方案或附图。应理解,附图和对其的详细描述并非旨在将实施方案限于所公开的特定形式,而是相反,其旨在涵盖落入由所附权利要求书所界定的精神和范围内的所有修改、等同物以及替代方案。本文中使用的任何标题都仅用于组织目的,并且并不意图用于限制描述或权利要求书的范围。如贯穿本申请所用,词语“可”是以允许意义(即,意味着有可能)而不是强制意义(即,意味着必须)使用。类似地,词语“包括(include/including/includes)”表示包括但不限于。具体实施方式描述了网络环境中的分布负载平衡的方法和系统的各种实施方案。描述了可根据各种网络环境中的分布负载平衡器的实施方案来实施的分布负载平衡法和系统的实施方案。分布负载平衡器的实施方案可例如用于促进和保持外部网络如互联网上的客户端与局部网络,例如如图33A和33B示出的提供者网络1900上的目的地,通常为服务器(例如,网络服务器、应用服务器、数据服务器等)之间的封包流,例如传输控制协议(TCP)技术封包流。虽然本文主要关于处理TCP封包流来描述实施方案,但是应注意实施方案可应用于除了TCP以外的其他数据通信协议,以及除了处理封包流以外的其他应用。分布负载平衡器可用于促进和保持具体客户端与选定服务器(例如,网络服务器)之间的TCP封包流。然而,分布负载平衡器并不终止来自客户端的TCP流并且并非如在常本文档来自技高网...

【技术保护点】
一种分布负载平衡器系统,其包括:路由器,其被配置来根据所述路由器的单一公共IP地址接收来自一个或多个客户端的封包流中的封包;多个服务器节点;和多个负载平衡器节点,其每一个均被配置为所述分布负载平衡器系统中的进入服务器,其中所述进入服务器全部将相同单一公共IP地址公布至所述路由器;其中所述路由器还被配置来根据应用于所述封包流中的所述封包的来源和目的地地址信息的哈希多路径路由技术,在所述多个进入服务器中分布所述封包流;并且其中每一个进入服务器还被配置来接收来自所述路由器的一个或多个封包流中的封包,并且将所述封包分布至所述多个服务器节点中映射至所述相应封包流的一个或多个。

【技术特征摘要】
【国外来华专利技术】2013.04.16 US 13/864,1621.一种分布负载平衡器系统,包括:路由器,被配置来根据所述路由器的单一公共IP地址接收来自一个或多个客户端的封包流中的封包;多个服务器节点;和多个负载平衡器节点,每一个均被配置为所述分布负载平衡器系统中的进入服务器,其中所述进入服务器全部将相同单一公共IP地址公布至所述路由器,并且每一个进入服务器均通过一个或多个其他进入服务器被公布至所述路由器;其中所述路由器还被配置来根据应用于所述封包流中的所述封包的来源和目的地地址信息的哈希多路径路由技术,在所述多个进入服务器中分布所述封包流;并且其中每一个进入服务器被配置为:对于由所述路由器分布给所述进入服务器的每个封包流,从所述多个服务器节点之中随机选择一个服务器节点来接收所述封包流;保持所述封包流至所选择的服务器节点的映射;接收来自所述路由器的一个或多个封包流中的封包;并且将所述封包分布至所述多个服务器节点中映射至相应封包流的一个或多个。2.如权利要求1所述的分布负载平衡器系统,其中所述哈希多路径路由技术为等价多路径(ECMP)路由技术。3.如权利要求1所述的分布负载平衡器系统,其中所述一个或多个其他负载平衡器节点每一个均建立与所述路由器的边界网关协议BGP会话,以将所述负载平衡器节点公布至所述路由器。4.如权利要求3所述的分布负载平衡器系统,其中将所述负载平衡器节点公布至所述路由器的所述一个或多个其他负载平衡器节点中的每一个还被配置来:检测到被公布至所述路由器的所述负载平衡器节点停用;并且响应于所述检测,关闭将所述负载平衡器节点公布至所述路由器的所述BGP会话。5.如权利要求4所述的分布负载平衡器系统,其中所述路由器还被配置来响应于所述一个或多个其他负载平衡器节点关闭所述BGP会话,根据所述哈希多路径路由技术在所述多个进入服务器中重新分布所述封包流。6.如权利要求1所述的分布负载平衡器系统,其中封包的所述来源和目的地地址信息包括客户端IP地址、客户端端口、服务器公共...

【专利技术属性】
技术研发人员:J·C·索伦森三世D·S·劳伦斯
申请(专利权)人:亚马逊科技公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1