Chinaunix首页 | 论坛 | 博客
  • 博客访问: 23877
  • 博文数量: 16
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 135
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-30 16:58
文章分类
文章存档

2008年(16)

我的朋友
最近访客

分类: 系统运维

2008-05-30 17:07:51

1. 多链路接入背景介绍
保证Internet接入的稳定性对于一个企业来说是非常重要的。现在绝大多数的公司采用一条Internet接入,也就是说使用一个ISP的链路。显然,一个ISP无法保证它提供的Internet链路的持续可用性,从而可能导致公司Internet接入的中断,而一个公司的Internet接入的中断则意味着高昂的业务损失。
通常单链路用户系统结构设计图如下:

这样的结构存在以下问题:
单链路接入单点故障
在系统原有系统结构中,采用单条链路接入,DNS服务器对于同一个域名均解析为同一个地址。在该种网络结构之中,即使主机系统、网络系统的规划完全的排除了应用瓶颈和单点故障,但还存在一个非常明显的单点故障,就是网络接入部分的方案不够强壮:一旦网络接入部分出现中断就直接意味着所有应用中断。

运营商之间互访
随着国内最大的Internet接入提供商Chinanet被拆分为北方China Netcom 和南方China Telecom之后,两方资源的互访受到了很大程度的影响。其出现的根本原因为南北网络的互通互联节点拥塞,造成用户丢包、延迟较大,从而导致访问缓慢,甚至对于一些应用根本无法访问。

双链路解决方案的产生以及其衍生的问题
随着Internet应用的不断发展,只有一个链路连接公共网络将导致单点失败和网络极其脆弱,企业为了保证公司各个部门之间、供应商和客户之间可靠的Internet访问,都逐步采用多个接入链路(多宿主)接入Internet。
多链路通常指同时使用不同ISP提供的多条Internet接入链路。由于多链路解决方案能够提供更好的可用性和性能,它正在被越来越多的企业所采用。可用性的提高来自于多条链路的使用,而性能提高则是因为同时使用多条链路增加了带宽。

多链路方案能够提高企业业务的可用性和性能,但这种方案也面临着特殊的问题和挑战
(1)首先就是IP地址管理的问题,在图一所示的网络中,可能会采用两种IP地址管理方式:
·内部网络使用同一个子网地址。
采用这种方式需要两个ISP之间相互配合协作,来在Internet网络上发布到达该网段的正确路由信息。
对第一种方式来说,两个ISP之间必须相互配合协作,来在Internet网络上发布到达该网段的正确路由信息,并且还要保证两条链路的双向同时使用。尤其对于流入流量来说,如果不能保证链路的同时使用,多宿主解决方案的部分优点就无法实现。

·每个ISP分配给内部网络不同的地址段。
这种方式下,内部网络要同时使用两个地址段的IP地址。
对于第二种方式(目前使用较多的解决方式),在这种方式下,内部网络同时使用两个ISP提供的地址,一部分内部用户(A组)使用ISP1提供的地址,另一部分内部用户(B组)使用ISP2提供的地址。问题在于流出的流量处理,当ISP1的链路中断时,A组的用户将无法接入Internet。更进一步,如果指使用B组的地址,则ISP2的链路无法用于流入的流量,因为Internet上只有ISP1是流入该网络的唯一路径。

(2)流量分配的问题。通常租用某些ISP(比如Cernet)的链路需要按流入流出流量收费,而其他很多运营商的链路则采用包月的方式收费。因此如果过多的流量从按流量收费的链路经过,必然增加企业的整体成本,但若将所有流量都放在另一条链路上,一方面可能造成访问速度变慢,另一方面其他的链路也不能得到有效的利用。
理想的方式是,进出的流量如果跟按流量收费的ISP有关,则流量走其链路,如果进出流量与其无关,则走另一条链路。

除去以上的问题,多宿主网络的一些优势还没有完全实现,例如:
·现在的一些多宿主网络解决方案仅仅是“共享”式,而不是真正的负载均衡。
·没有就近性的流入流量路径判断,使外部的用户能最快的访问企业的对外服务。
·对流出的流量没有实现根据最快到达要目标资源的访问策略。
·对于链路的健康状况也不能实时监测,也解决不了链路容灾,也就是当某一条链路出现故障后,将其流量导向另外链路的策略。

2. Array多链路流量管理解决方案
针对企业普遍多链路网络环境的问题,Array Networks提出了基于APV的多链路流量管理解决方案:
在内部交换机和连接ISP的路由器之间,跨接一台APV智能交换机,所有的地址处理和Internet链路流量管理全部由它来完成。
对流出流量,可以进行智能地址管理,APV使用了称为SmartNAT的算法:当选定某一个ISP传送流出流量时,APV将选择该ISP提供的地址进行NAT地址转换;为了优化流出的流量,APV还为流出的流量实施最快响应时间运算,内部主机要访问某外部服务时,可选择更有效的ISP路径。
对流入流量,APV集成的SmartDNS功能能够完成流入流量的负载均衡;使用与流出流量相同的最短响应时间判断机制,选择最佳的流入流量传输路径,进行最优的地址解析。

图中多宿主网络通过ISP1和ISP2接入Internet。每个ISP都分配给该网络一个IP地址网段,假设:
ISP1分配的地址段为100.10.1.0/24
ISP2分配的地址段为200.20.1.0/24

同样,Internet的路由通过ISP1访问100.10.1.0/24,通过ISP2访问200.20.1.0/24。网络中的主机和服务器都属于私有网段192.168.1.0/24。
Array Networks的解决方案就是在内部交换机和连接ISP的路由器之间,跨接一台APV智能交换机,所有的地址处理和Internet链路优化全部由APV智能交换机来完成。
如图所示,APV智能交换机的外侧端口1上绑定IP地址100.10.1.2/24,外侧端口2上绑定IP地址200.20.1.2/24,内侧端口上绑定IP地址192.168.1.1/24。

2.1 流出(Outbound)流量管理
APV主要采用以下方式来处理流出流量。
SmartNAT
对于流出流量的智能地址管理,APV使用了称为SmartNAT的算法。当选定一个路由器(某一个ISP)传送流出流量时,APV将选择该ISP提供的地址进行NAT。在上图中,如果APV选择ISP1作为流出流量的路径,则它将把内部的主机地址192.168.1.A/24翻译为100.10.1.10/24,并作为流出数据包的源地址。同样,如果APV选择ISP2作为流出流量的路径,则它将把内部的主机地址192.168.1.A/24翻译为200.20.1.10/24,并作为流出数据包的源地址。

采用SmartNAT时,APV支持的负载均衡算法包括:
Round Robin
APV顺序的选择多个出口链路作为每个数据流的流出路径。

Weighting Round Robing
APV为每个出口链路设定一个加权值,并根据加权值顺序的选择多个出口链路作为每个数据流的流出路径,权值大的链路被选择的次数多。通过此算法,企业可以在多条带宽不同的链路间合理分配流量,带宽高的链路权值大,因此承载的流量就高。

Dynamic Detect Method
为了优化流出的流量,APV还为流出的流量实施最快响应时间运算。如果内部主机要访问某一Internet站点,可能通过一个ISP的路径比通过其他ISP的路径有效。因此,APV可以提供最短响应时间算法,为流出到某一个站点的流量选择最佳的ISP路径,保证所需内容最快到达目的地,提高服务的品质。

2.2 其它重要功能设置:
ISP链路网关健康检查
APV在多宿主网络中的一个主要作用是检测ISP链路的可用性,即健康状况。因此,APV提供了通过ARP的方法检查ISP链路网关状态的功能,从而保证多条数据链路的正常,提高服务质量。
路径健康检查
访问Internet的可靠性不仅仅是由ISP网关路由器提供的链路状况决定的,而是由整个数据流经的路径决定。因此,APV提供了路径健康检查的功能,从而保证整条数据路径的正常,提高服务质量。例如用户可以设置透过某ISP的路由器同时去检查ISP上游的某个网络设备状态。只有当所有这些网络设备都无法检测通过时,APV才会认为该链路已经DOWN掉,然后APV可以重新为流量选择路径,传递到其它可用链路,从而继续保持客户连接,避免出现停机影响。
策略路由
APV可以设置基于用户数据包源IP/Port、目标IP/Port的策略路由,通过该功能可以对特殊的流入流出流量进行规划,比如某个部门的应用系统需要比较高的数据传输带宽,而企业的多条Internet链路的带宽存在不均衡性,管理员可以选择一条带宽更高的链路承载这个部门的数据流量。

2.3 流入(Inbound)流量管理
APV不仅需要管理流出的流量,还必须管理来自Internet的访问,即流入(InBound)流量。假设下图中的Server是Web服务器,Internet主机名为llb.arraynetworks.net,地址为私有IP:192.168.1.100/24。

SmartDNS
APV上集成的SmartDNS功能能够完成流入流量的负载均衡。

如图所示,在DNS服务器上注册两笔NS记录,指向APV:
llb.arraynetworks.net 100.10.1.10
llb.arraynetworks.net 200.20.1.10

而在APV上设置静态的地址翻译:
192.168.1.100 100.10.1.10
192.168.2.100 200.20.1.10

采用SmartDNS时,APV支持的负载均衡算法包括:
·Round Robin
APV顺序的将多个ISP的IP地址作为每次用户解析请求的返回值。

·Weighting Round Robing
APV为每个ISP的IP地址设定一个加权值,并根据加权值顺序的选择多个ISP的IP地址作为每次用户解析请求的返回值,权值大的ISP的IP地址被选择的次数多。通过此算法,用户可以在多条带宽不同的链路间合理分配流量,带宽高的链路权值大,因此承载的流量就高。

·Least Connection
APV将连接数最小的ISP链路的IP地址作为每次用户解析请求的返回值。

·Proximity/Region
APV还提供基于每个数据流的源IP地址的路由选择算法。APV会检查每个用户解析请求的源IP地址是否属于预先设定的一个地址范围(Region),若是,则选择与Region对应的Pool中选择某一个ISP的IP地址作为该次用户解析请求的返回值。通过此算法,用户可以设定源IP地址属于网通范围的,通过网通的链路流入,属于电信地址范围的通过电信的链路流入。

3. 链路优化管理功能与安全特性
3.1. QoS功能
通过Array QoS功能,企业可以更有效的利用现有网络资源,并保障关键业务的运行,而无需无限扩展他们的网络基础设施。QoS提供了以下的业务利益:
·管理员可以更有效的从业务的角度管理网络链路资源;
·保障对时间敏感和关键的应用对网络资源的需要,同时也尽量满足其他应用的网络资源需求;
·提供关键应用的用户体验;
·通过使现有网络资源的更有效利用,显著降低了企业在网络上面投入的成本。

Array APV可以提供对TCP,UDP和ICMP的业务数据量的队列机制和包过滤策略。
队列机制(Queuing mechanism)
队列表示一个网络数据包的排队,新的数据包将放在队列的尾部,而在队列头部的数据包将优先处理。一个队列需要和一个端口的流入或流出方向绑定。所有队列可以按树型结构组织,根队列可以包含多个子队列。通过为每个队列定义带宽限制和优先级,可以分配不同的带宽资源给不同的业务。
包过滤策略(Packet filtering policy)
通过包过滤策略,可以把特定的网络数据量放入一个队列。包过滤的策略可以基于源IP/Port,目的IP/Port和协议定义。通过包过滤策略,企业可以部署面向应用的,或者面向链路的QoS控制策略。

通过队列机制和包过滤策略,Array QoS可以支持带宽限制和优先级转发。
带宽管理(Bandwidth Management)
带宽管理是在每个队列上定义带宽限制策略,可以满足特定应用对带宽的需求。同时,为了更灵活的带宽控制能力,客户可以定义子队列可以从根队列借用带宽,这样,即使子队列的带宽使用达到上限,仍然有一定的灵活性以满足突发流量的要求。
优先级转发(Priority Control)
优先级转发是在每个队列上定义不同的优先级。优先级转发特别适合于网络拥塞的情况:当网络拥塞时,网络丢包率增加,会对一些关键应用造成影响。通过优先级转发的,高优先级队列的数据包将得到优先处理,而相对低优先级的队列的数据包有可能被丢弃。因此给予关键应用更高优先级的队列,可以有效保障重要的网络应用的可用性。

3.2. Array SpeedStack™技术
Array Networks正是基于SpeedStack核心技术来构建其产品的。Array的SpeedStack技术由三部分组成:一个TCP/IP栈、HTTP分析器和一个代理引擎。这种独特的架构让Array及第三方的开发人员可以在数据流的多个环节来实现垂直应用程序与SpeedStack的关联。
SpeedStack技术可以在保持高性能的基础上关联更多的垂直功能――四层或七层的SLB、反向代理缓存、全局服务器负载均衡、SSL加速、压缩,等等,而这一切都得益于消除了不必要的重复工作。在Array Networks解决方案中,TCP/IP栈在数据包进入系统时首先对其进行处理。TCP/IP栈通过高效的包处理来实现高性能,在处理流程的初期及时检测出有害或已损坏的数据包并将它们丢弃。TCP/IP栈的工作完成后,数据包就被交给了HTTP分析器,它以独特的方式对HTTP包头进行分解,使其它组件不必再重复相同的工作。分析引擎本身已经进行了优化,能够完成精确的HTTP处理,性能出色。

3.3. 安全防护功能
Array的解决方案具备内在的安全特性,这些特性是专门为避免遭受攻击和为服务器和网络设备提供保护而特别设计的。
Array APV内建基于状态检测的的防火墙-Webwall,最高可配置1000条策略。对比其他基于ACL的防火墙产品,Array APV的Webwall具有独特的加速算法,使得ACL条目的增加不会影响整个系统的性能。基于Array APV强大的处理性能(每秒可支持1,000,000并发连接),Webwall可抵御DOS、SYNC Flood、Buffer Overflow Attacks、Parser Evasion Attacks、Directory Traversal Attacks等恶意攻击。Array APV是基于Full Proxy设计的产品,来自Client端的任何连接请求都不会直接发到后台服务器,从而保证了整个系统的高安全性。

3.4.Cluster技术
传统的四层设备,仅支持二台设备工作在HA方式下,支持Active/Active、Active/Standby工作方式,因此四层设备可靠性,可扩展性,网络吞吐量都受到限制。
Array在给企业网络提供高容错性,高可靠性的前提是,Array设备本身的容错性和高可靠性。Array支持Cluster的工作模式,提供1+1 和N+1 的冗余配置模式,能工作在Active/Standby或Active/Active方式。Array容错性,高可靠性,高吞吐量同时给企业网络提供更强大的容错性。

3.5.链路状态报表
企业要想应用QoS策略在网络链路上,首先需要了解每个链路的使用情况,因此通过Array APV提供的链路状态报表,可以很直观的了解相关信息。
APV可以提供以下链路状态报表:
A graph which shows total cocurrent connections: TCP/UDP/ICMP (conn/sec)
A graph which shows total TCP connections: inbound/outbound (conn/sec)
A graph which shows total connections: TCP/UDP/ICMP (conn/sec)
A table which contains link status
A table which contains throughput statistics of this link
A graph which shows response time
A graph which shows cocurrent connections: TCP/UDP/ICMP (conn/sec)
A graph which shows TCP connections: inbound/outbound (conn/sec)
A graph which shows connections: TCP/UDP/ICMP (conn/sec)
A graph which shows throughput: packets/bytes in/out

一些图表的示例如下:

4. 链路负载均衡对企业的价值
通过Array的链路负载均衡解决方案对于企业网络优化具有以下优点:
· 充分利用各种链路资源:
如何充分利用各种链路资源,使其能够更好的为整个企业网应用服务,是企业网资源能否充分利用的关键。通过Array多链路流量管理解决方案,能够充分应用企业网多条专线链路,使每一种应用都有最合适的应用传输链路,在实现智能判断、智能传输的基础上,最大化的利用各种链路资源。

·提高信息发布的质量:
企业网络应用中的信息发布系统是企业的窗口,在很大程度上说明了企业网的先进程度和技术水平。通过Array多链路流量管理解决方案的应用,能够充分利用多条链路资源,并对流量进行优化,结合Array其他应用加速功能,智能判断应用类型,并进行全面深入的应用处理,提高信息发布系统的质量和管理水平。

·提高企业网络的灵活性和扩展性:
企业网网络应用将随着企业业务的丰富而不断演变。Array多链路流量管理解决方案能够凭借Array产品的多种智能化的功能实现,全面协助企业网应用的演变。在企业网的特定应用时期,通过Array产品All-In-One架构的应用,灵活进行功能扩展,最大化的保证了企业网络的灵活性和扩展性。

·降低系统维护难度和成本:
凭借多种人性化管理维护方式和Array单台产品模块化的功能实现,Array多链路流量管理解决方案能够极大的降低系统的维护难度和成本。结合Array专业本地化厂家技术支持和研发队伍,能够为企业网应用提供最优质的专业技术保障。

Array APV系列产品能够完全满足和实现企业网络对链路负载均衡和性能增强功能的要求。通过应用在产品设计、性能参数和功能上均处于领先地位的APV系列产品,能够在保证满足企业网络充分利用多链路资源的同时,提供最优的性能价格比和扩展能力。

阅读(666) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~