H3C LB设备功能概述

  • 格式:docx
  • 大小:452.66 KB
  • 文档页数:14

1 链路负载均衡核心功能介绍

1) 出口链路健康探测

所谓健康检测,就是负载均衡设备定期对链路服务状态进行探测,收集相应信息,及时隔离工作异常的链路。健康检测的结果除标识链路能否工作外,还可以统计出链路的响应时间,作为选择链路的依据。负载均衡技术支持丰富的健康性检测方法,可以有效地探测和检查链路的运行状态。

ICMP方式:向链路上的节点发送ICMP Echo报文,若收到ICMP Reply,则链路正常。

TCP Half Open方式:向链路上节点的某端口发起TCP连接建立请求,若成功建立TCP半开连接,则链路正常。

DNS方式:向链路上的DNS服务器发送DNS请求,若收到正确的DNS应答,则链路正常。

图1负载均衡链路故障探测功能

2) Outbound方向链路负载均衡

最理想的outbound链路负载均衡算法是就近性探测,即将将数据流分发到响应最快的出链路上, Outbound链路负载均衡是以报文的目的地址为目的进行检测,Inbound链路负载均衡是以DNS请求的源地址为目的进行检测。根据检测结果计算出最优链路,并通过最优链路转发业务流量。

就近性检测根据以下几个参数进行加权计算,得出链路加权数,并根据链路加权数的大小判断链路的优劣:

链路物理带宽:即链路的可用带宽值。

链路成本:取决于每条链路的成本值,比如租用联通10M链路每月1万元,租用电信10M链路每月1.5万元,则两条链路的成本比例为2:3,两条链路成本的取值应该满足该比例。

链路延迟时间(即RTT):通过链路健康性检测获得。

路由跳数(即TTL):通过链路健康性检测获得。

ISP表项:负载均衡内置各运营商IP地址列表,outbound方向报文的目的IP地址如果与某ISP表项匹配,则将报文从匹配的ISP链路送出去。

链路静态调度算法:对每条链路轮询(加权轮询)分发数据流、根据报文的源IP/Port

Hash、选择链路中并发连接数最少、链路中最大剩余带宽等方式。

持续性(会话保持)表项:针对网上银行、电子购物等应用,某一用户的一次交易过程中的多个连接从同一个链路送出去(做NAT时保证源IP不变,否则网银或电子购物服务器会将源IP漂移的报文视为攻击),就是持续性功能。负载均衡设备会将首次出方向报文的选路结果记录下来形成持续性表项,某数据流后续报文均根据持续性表项进行转发。

图2 Outbound链路负载均衡选路示意图

负载均衡设备对出方向的每一个数据流的目的IP进行探测,选出最优链路进行分发。在实际应用中,尤其是在大型网络中如高校出口、运营商出口,其用户群访问的目的IP以数十万甚至上百万来计,如果负载均衡设备本身同时探测每个目的IP的响应时间,对负载均衡设备性能消耗较大,因此就近性探测方法一般针对小型网络或对ISP表项无法匹配的数据流。如图2所示,对出方向数据流首先进行ISP表项匹配,对于目的IP未匹配的报文可采用静态分发算法如轮询或加权轮询、动态算法如链路最小并发连接等以及就近性探测均可。

3) Inbound方向链路负载均衡

内网和外网之间存在多条链路时,通过Inbound链路负载均衡可以实现在多条链路上分担外网用户访问内网服务器的流量。Inbound链路负载均衡的典型组网如图3所示。

图3Inbound链路负载均衡组网图 Inbound链路负载均衡中,负载均衡设备作为权威名称服务器记录域名与内网服务器IP地址的映射关系。一个域名可以映射为多个IP地址,其中每个IP地址对应一条物理链路。

外网用户通过域名方式访问内网服务器时,本地DNS服务器将域名解析请求转发给权威名称服务器——负载均衡设备,负载均衡设备依次根据就近性算法、ISP表选择最佳的物理链路,并将通过该链路与外网连接的接口IP地址作为DNS域名解析结果反馈给外网用户,外网用户通过该链路访问内网服务器。这里提及的就近性算法、ISP表项匹配原理与Outbound同,只是探测的是入方向报文的源IP而已。详细的实现机制见图4。

图4 Inbound链路负载均衡实现示意图(智能DNS功能)

4) 来回路径一致

在多ISP出口的应用场景中,用户对互联网提供公众服务(如WEB、邮件系统)中,由于出口路由器一般配置静态策略居多,容易出现用户请求报文与服务器响应报文来回路径不一致的情况。如图5所示。

图5 链路负载均衡来回路径一致功能

这将会导致两个问题:

1、 用户访问业务速度极慢,请求报文从电信进来,响应报文从移动出去,并跨网回送到电信,容易受到运营商跨网转发的速度瓶颈。

2、 用户无法正常访问业务:如果运营商的设备开启URPF(反向单播逆向路径检测)功能,那么响应报文可能会被其他运营商丢弃。

为此,H3C的解决方法是特有的记录上一跳功能来保证用户的请求报文和响应报文来回路径一致。其实现原理是:负载均衡设备依据用户请求报文的五元组生成会话表,并把该会话表与入端口(物理或逻辑)对应关系记录成上一跳表项;但服务器响应报文会匹配到会话表,负载均衡设备会不再经路由查询、自动选路等处理直接将响应报文从入接口转发出去。

5) 防链路拥塞功能

在多家ISP链路情况下,无论Outbound方向采用何种负载均衡算法,都要防止链路出现流量过载。H3C负载均衡提供防链路拥塞功能来避免流量过载情况,负载均衡设备针对每条链路设置流量阈值,一般阈值略低于链路物理带宽值,当该链路的实际流量达到阈值后,后续按策略应由该链路转发的新的数据流会分发到其他低负载链路上。 2 Inbound链路负载均衡工作机制

Inbound 链路负载均衡包括以下几个基本元素:

• 集群:提供网络流量负载均衡的群体,包括 LB product、物理链路、本地 DNS 服务器。

• LB product:作为待解析域名的权威服务器,负责指导外网到内网流量的路径。

• 物理链路:运营商提供的实际链路。

• 本地 DNS 服务器:负责解析 Host 发送的 DNS 请求的本地 DNS 服务器。

Inbound 链路负载均衡的工作流程如下图所示。 图1-13 Inbound 链路负载均衡流程图

流程简述如下:

1. 外部用户进行资源访问前先进行 DNS 解析,向其本地 DNS 服务器发送 DNS 请求。

2. 本地 DNS 服务器将 DNS 请求的源 IP 地址替换为自己的 IP 地址,并转发给域名对应的权威服务器——LB product。

3. LB product 根据 DNS 请求的域名和配置的 Inbound 链路负载均衡规则进行域名解析。

4. LB product 按照域名解析的结果,将 DNS 应答发送给本地 DNS 服务器。

5. 本地 DNS 服务器将解析结果转发给用户。

6. 用户使用解析结果选择的链路,直接对 LB product 进行资源访问。

3 配置DNS重定向功能和DNS TTL

1. 在导航栏中选择“负载均衡 > 链路负载均衡 > Inbound”,进入如下图所示的页面。 图1-59 使能 DNS 重定向 Local DNS server

(1) DNS request Host LB product

DNS request (2)

DNS response (4)

DNS response (5) Scheduler (3)

Resource access (6)

2. 设置是否使能 DNS 重定向功能。只有使能了 DNS 重定向功能,Inbound 链路负载均衡才会生效。

3. 设置是否使能 ISP 选路功能。

4. 设置 DNS 应答报文中的 TTL(Time to Live,生存时间),以决定域名解析结果可以被客户端缓存的时间。

5. 单击按钮完成操作。

4 配置DNS表项

1. 配置DNS A记录

1. 在导航栏中选择“负载均衡 > 链路负载均衡 > Inbound”,进入如图 1-59 所示的页面。 2. 在“DNS 表项”中,类型单选按钮选择“A”,页面显示 DNS A 记录的信息。 (3)

单击按钮,进入新建 DNS A 记录的配置页面,如下图所示。

图1-60 新建 DNS A 记录

3. (4) 配置 DNS A 记录的参数,详细配置如下表所示。 (5) 单击按钮完成操作。 表1-24 新建 DNS A 记录的详细配置

配置项 说明

域名 供外部访问的域名

IP地址 域名对应的IP地址,即外网用户访问时终使用的IP地址

物理链路 域名对应的物理链路

ACL DNS A记录的ACL

ACL的具体规则在“安全特性 > ACL”中配置

2. 配置DNS MX记录

1. 在导航栏中选择“负载均衡 > 链路负载均衡 > Inbound”,进入如图 1-59 所示的页面。

2. 在“DNS 表项”中,类型单选按钮选择“MX”,页面显示 DNS A 记录的信息。

3. 单击按钮,进入新建 DNS MX 记录的配置页面,如下图所示。

图1-61 新建 DNS MX 记录

配置 DNS MX 记录的参数,详细配置如下表所示。

(5) 单击按钮完成操作。 表1-25 新建 DNS MX 记录的详细配置

配置项 说明

域名 供外部访问的域名

邮件服务器名称 域名对应的邮件服务器名称

优先级 该条记录的优先级,数值越小优先级越高

5 链路负载均衡应用场景分析

1) 同一家运营商,多条链路

图6 多条相同运营商链路

此种情况多为备份+带宽扩容,各链路的质量(除带宽外)大致相同,因此建议直接采用基于各条链路带宽值的加权轮询方式进行负载均衡(如图6建议按1:1:2的权值进行轮询分发),无需链路就近性探测,并建议开启会话保持功能,保证同一条数据流的后续报文从同一链路出去,以便出方向的NAT地址转换使用相同的IP地址,避免访问网银业务、电子购物等应用时被误认为攻击而导致无法正常交易。

2) 2、不同运营商,多条链路(1)

图7 多条不同运营商链路(一)

大型的网络中较多使用此方式,在实现链路备份+链路带宽扩容的同时,将对外提供的业务系统同时发布到多家运营商(每个运营商内的用户访问速度均较快),如图7所示。由于目的IP是ISP1的报文可能被轮询到ISP2的链路上,访问速度会不理想,按照outbound访问最快的原则,网络规模较小的情况,可采用就近性探测+会话保持+链路保护机制,对于规模较大的网络建议采用根据ISP地址匹配进行分流,对于目的IP与ISP表项不匹配的数据流,可采用就近性探测或按照链路带宽的加权轮询的方式,并开启基于源IP的会话保持功能。

3) 不同运营商,多条链路(2)