全局负载均衡

安全咨询 0 703

全局负载均衡(Global Server Load Balance, GSLB)

全局负载均衡是指对分别放置在不同的地理位置的服务器群间作负载均衡。


服务器负载均衡是指对本地的服务器群做负载均衡。主要用于在多个区域拥有自己服务器的站点,为了使全球用户只以一个IP地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度。


服务器群选择

对于全局负载均衡而言,其核心就是服务器群的选择。对于某个特定的客户,应该将其定向到哪一个服务群?应该使用什么标准来进行这种选择?一般情况下,主要考虑两个因素:临近程度和负载大小。


临近机制主要考察服务器群与用户之间的物理距离。选择地理位置最接近用户的服务器集群,可以减少服务响应到达用户所经过的中转次数,从而降低中转节点对服务质量的影响。


常见的有两种方式,一种是静态配置,例如根据静态的IP地址配置表进行IP地址到服务器群的映射。另一种方式是动态的检测,例如实时地探测到目标IP的距离(可以采用到达目标IP经过的跳数作为度量单位),然后比较探测结果进行选择。


负载机制比较各个服务器群的负载,确定由哪一个服务器群来响应请求。在全局负载均衡中,考察的是服务器群的负载,而不是单个服务器的负载,因此,需要更多地考虑普遍的问题,比如,需要考虑站点的最大连接数、站点的平均响应时间、服务质量等。


常见的GSLB实现方式有三种:DNS轮询、HTTP重定向、IP欺骗(又称三角传输)。这三种实现方式都是在用户通过域名来访问目标服务器时,由GSLB设备进行智能决策,将用户引导到一个最佳的服务IP。


基于 DNS 的 GSLB


原理

用户访问某个网站时,需要首先通过域名解析服务(DNS)获得网站的IP。域名解析通常不是一次性完成的,常常需要查询若干不同的域名服务器才能找到对应的IP。


如下图所示,用户首先在本地配置一个本地DNS服务器地址,本地DNS服务器收到DNS请求后若不能解析,会将请求转发给更高一级的DNS服务器直到找到域名对应的IP或确定域名不存在。

于加入了GSLB的情况,一个GSLB设备(可能是一个4层交换机)会最终代替DNS服务器完成域名解析。


下图展示两种流程的不同:

QQ截图20230312131448.png

假如GSLB之后的流程:

QQ截图20230312131559.png


基于 DNS 的 GSLB 优缺点

优点是:实现简单、实施容易、成本低。


缺点是:当GSLB设备采用“用户就近访问”的原则作为选择最优服务器的策略时,会存在判断不准的现象。


原因是在这种策略下,GSLB设备是根据用户IP地址和内容服务器IP地址比较来判断其就近性的,但由于DNS响应是通过本地DNS服务器到达用户的,GSLB设备实际上只能得到用户的本地DNS服务器地址,若用户指定的DNS服务器IP不能正确代表用户的实际位置,就会出现判断不准的现象。


服务器群选择策略

上文中介绍的三种方案,解决了如何将用户引导到指定服务器群的问题,而在此之前首先需要使用某种方式选出最适合用户的服务器群,也就是GSLB在选择服务器群时所采用的策略。接下来介绍一些常用的GSLB策略。


地理区域或用户自定义区域:将若干条IP地址前缀划分一个区域位。根据用户本地DNS的IP地址,将特定IP范围的用户优先分配到某个通过健康检查的站点。

IP地址权重:可以为DNS应答中的每个IP地址分配权重,权重决定与其他候选IP相比分配到该IP的流量比例。

往返时间(Round Trip Time, RTT):RTT策略是基于区域之外最常用的策略。有两种模式的RTT测量:Active RTT测量与Passive RTT测量。在实际部署中,由于网络限制和性能原因,Active RTT往往无法使用,Passive RTT更实用一些。

Active RTT 测量:当GSLB Controller收到来自LDNS的DNS请求时,GSLB Controller会通知所有站点负载均衡设备对该LDNS进行RTT测量。根据采集到的RTT值,GSLB Controller会选择RTT值最小的站点的VIP返回给LDNS。由于Active RTT采用DNS Query或ICMP进行RTT测量,在有些网络中可能会被安全策略所过滤而无法工作。Active RTT测量会产生额外的DNS Query或ICMP流量,在有些网络中用户不希望有太多类似的非用户流量。

Passive RTT测量:Passive RTT测量指从内容站点收到一个用户发出连接请求(发送TCN SYN)到接收到用户的确认(收到TCP ACK)所经历的时间。而不是简单的PING的响应时间,可以更精确的衡量访问最快的站点。Passive RTT测量不会主动去进行测量,也不会产生额外的数据流量,而是在用户向返回的VIP建立连接时进行采集。Passive RTT的测量值真正反映了用户的上网感受,在运营商网络中也不会产生额外流量。也不会受到其他运营商或网络的安全策略的影响。



也许您对下面的内容还感兴趣:

留言0

评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。