应用交付网络(ADN)、服务器负载均衡、链路负载均衡、多站点负载均衡、WEB加速及应用安全、本地流量管理、灾难备份、广域网传输优化、SSL VPN、ISP互访互通、远程安全接入/访问、文件存储虚拟化
北京恒泰通力信息技术有限公司
应用交换技术的负载均衡算法
应用交换技术里主要包括四项关键的技术:
l 截获和检查流量
l 服务器监控健康检查
l 负载均衡算法
l 会话保持
截获和检查流量保证只有合适的数据包才能通过;
服务器监控和健康检查随时了解服务器群的可用性状态;
负载均衡和应用交换功能通过各种策略导向到合适的服务器;
会话的保持以实现与应用系统完美结合;
F5在应用交换技术中的优势:
A、截获和检查流量
– BIG-IP 有最强的数据包截获和检查引擎去检查任何数据流量包中的任何部分,可以检测16384bytes包的深度,理论上可以检测64Kbytes的包长度
– 这使得BIG-IP 明显有别于其他的厂商的产品
B、用于定制控制的iRules工具
– 可用来定义如何根据报头和/或TCP有效负载信息来引导、保存和过滤流量。
– iRules增强了企业或服务提供商定根据业务需求定制应用流量的能力。
– 通用检查引擎和iRules分别是应用智能和业务决策来进行应用流量管理的方法和工具。
C、服务器监控和健康检查
– 服务器(Node)-Ping(ICMP)
– 服务(Port)-Connect
– 扩展的应用验证(EAV)
– 扩展的内容验证(ECV)
– 针对VOD服务器的专用健康检查机制
– 针对节点的检查频率和超时频度,e.g.10seconds响应,e.g.5seconds
D、负载均衡和应用交换功能
– Global Load Balancer提供17种负载均衡算法
– F5提供最优质的负载均衡和应用交换功能
静态算法
动态算法
智能算法
I –control
UIE + Irules
– Local Load Balancer提供12种负载均衡算法
E、持续功能
– 连续性与负载平衡是相互对立的,但它对于负载平衡又是必不可少的!
– 简单的连续性—基于源地址
– HTTP Cookie 连续性
– SSL Session ID 连续性
– 目的地址的亲合作用--caches
– standby BIG-IP实现对连续性记录的镜像
– 智能与第七层的内容交换组合
F5做为应用交换领域的领导厂商,一直保持着技术上的领先地位,F5已经有40多项技术申请了专利,其它的竞争合作伙伴都在购买F5的这些专利技术。接下来我们讨论一下负载均衡算法。
负载均衡算法,做为应用交换的四个主要技术之一,它相对其它三个技术来说,更为重要些,在应用交换领域里,主要的技术是负载均衡的算法,完整的、完善的、可控的、灵活的负载均衡算法无疑决定着负载均衡厂商在应用交换领域的地位。负载均衡算法是非常重要的功能指标。一般来说,我们将负载均衡方法归纳为两种类型:静态的负载均衡算法,动态负载均衡算法。
本地流量管理技术主要有一下几种负责均衡算法:
静态负载均衡算法包括:轮询,比率,优先权
动态负载均衡算法包括: 最少连接数,最快响应速度,观察方法,预测法,动态性能分配,动态服务器补充,服务质量,服务类型,规则模式。
静态负载均衡算法
轮询(Round Robin):顺序循环将请求一次顺序循环地连接每个服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从顺序循环队列中拿出,不参加下一次的轮询,直到其恢复正常。
在SCDN的服务中, 为了加快用户访问的回应速度, 一般利用电信的资源, 通过收集各省级ip网段划分, 通过用户访问的省级ip网段定位, 直接决定用户的最优服务省级骨干边缘节点, 在f5 networks的技术中就是topology的处理, 具体界面如下:
3DNS在配置的时候预先根据访问规则, 定义不同的ip网段或省级用户分类访问相应的data center 或pool.
在3DNS接到访问的解析请求时, 通过对topology的比对, 判断应该回应的data center 或pool 地址.
Topology在不同的CDN 环境中得到了很多应用, 在功能, 稳定性和性能上都有非常优异的表现
在SCDN的模型中有一个非常特别的性能问题, 就是GSLB产品在添加多条规则后的性能下降问题; 压力测试的试验表明, 在300条规则和3000条规则的不同情况下, 每秒解析的次数的性能下降有10倍以上, 特别时在实际应用当中, 可能存在更多的规则, 那性能的下降就非常难以预料了, 因此引入的user define regions 技术可以极大的缓解性能压力.
使用的方法就是将多个ip 网段规定成user define regions, 然后的规则不是针对ip 网段, 而是针对不同的regions, 在实际使用中针对3000条规则的性能上升可以达到15~20倍左右.
RTT原理
RTT 的全称是round trip time , 就是指由各省级骨干边缘节点到各省local DNS的访问发起到接受回应的时间, 不同的各省local DNS的RTT时间的收集对比, 可以产生实际的网络就近性对比表格,
具体访问流程:
1. local DNS 向3DNS发起解析请求
2. 3DNS 接收到local DNS的请求后, 通过加密通道通知省级骨干边缘节点内的bigip 有一个local DNS需要进行RTT的测试
3. 省级骨干边缘节点内的bigip接到RTT测试请求, 并向local DNS发起访问
4. local DNS 回应bigip 的访问请求
5. 省级骨干边缘节点内的bigip将local DNS的回应的延迟时间等相关信息返回给3DNS
6. 3DNS 经过接受各省级骨干边缘节点内的bigip的回应, 存储并判断后将最优的地址返回给local DNS
省级骨干边缘节点内的bigip可以选择多种测试方法判断对local DNS的RTT时间, 包括:
DNS_Dot: 向local DNS发起一个包含”.”的测试, 也就是root, 希望得到一个root列表清单
DNS_REV: 向local DNS发起”PTR”的测试, 希望得到相应的domain 名称
UDP:发起一个UDP的包, 看是否回应
TCP:发起一个TCP的包看是否回应
ICMP:发起一个ICMP 的ping 包, 看是否回应
如果你有不通的出口时, 这项记录就会有相应的数值,假设你有三条出口链路, 那么对应每个本地的DNS就会有三条记录,RTT 会把延时最短的一个解析给本地的DNS,这样本地的用户就能得到一个相对他/她最快的站点,从而实现了服务的持续、稳定、可靠、可用。