扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
网络是信息化建设的一个基础平台,成功的信息化离不开一个好的网络。
在人们的眼中,对“好网络”往往有几个基本标准,那就是看它能否在为企业提供办公数据、语音、视讯业务综合传输的同时,保证视频会议等关键业务的服务质量;能否体现出高可靠性,设备和链路都不存在单点故障;能否实现良好的可扩展性,并随着业务的不断扩展,网络可以实现平滑扩展;能否方便地实施运维管理,尽量采用简便、成熟的技术,方便大多数技术人员维护。
数据流量不均,管理捉襟见肘
但是,还有一点是非常重要的,那就是看它能否为避免资源浪费和保证关键业务的服务质量,使数据流量在广域网链路中实现负载分担,并且能够让网络专线承载某些业务。这一点更加重要,往往在网络规划和实施过程中,不被人们所关注,以至在对网络的运维管理中显得捉襟见肘。
一般的大型企业网络,通常会有总部、区域中心和地区公司三级之分。企业网络的总部,通常会设置在企业的总部,下属若干个区域中心,各个区域中心下连若干家不等的地区公司,形成一个三级树状冗余网络拓扑结构。
在网络连接方式上,往往会有这样一种做法:总部路由器分别通过不同运营商的不同带宽专线连接到区域核心,区域核心路由器同样通过不同运营商公司专线连接各地区公司。如图1所示,假设电信运营商分别为A和B,总部到区域中心采用电信运营商A的20M专线,采用电信运营商B的10M专线;区域核心同样采用两家电信运营商专线以4M~8M不等的带宽连接各地区公司。
由于从地区公司到企业总部都有业务流量,电信运营商A和B专线网络需要同时分担业务流量,并且互为备份。专线A承载ERP、Web等流量比较大,但是时延不敏感业务;专线B承载视频、语音等流量不是很大,但对时延要求比较敏感的业务,要求上下流量对称,如图2所示。
对于网络流量控制方式可以有多种选择,但是流量工程、策略路由、修正后的IGP(内部网关协议)和BGP(边界网关协议)是在网络实施中,几种常见的方式。
图1 大型企业三级树状冗余网络拓扑结构图
“可控的交通系统”
流量工程指的是在复杂的网络环境中,控制不同的业务流走不同的路径,关键的业务走可靠的路径并保证服务质量,并且在某段网络拥塞的情况下,动态调整路由,整个网络如同一个“可控的城市交通系统”。
流量工程理念在上世纪90年代末提出,最初起源于互联网。其原理是在MPLS环境中,充分利用标签交换系统来为不同的业务流着色,通过LDP来传递LSP中间链路网络状态,不同颜色的业务流,根据不同的网络中间状态,动态地在网络中间传递,并且LSP能够传递RSVP网络控制信令,因此可以实现端到端的QoS或Diff-Service服务。
应该说,流量工程早就该进入主流应用阶段了。但可惜的是,国内电信部门互联网采用流量工程的寥寥无几,行业和企业网中应用更是一片空白。究其原因,实际网络环境达不到其要求的理想环境,实施复杂。
策略路由力不从心
在大型企业中,应用系统众多,包括ERP、CRM、视频、Web浏览、E-mail收发、语音等,对于广域网的两条链路,如果不想让OSPF或ISIS选路时只确定一条路由,而使另外一条路由空闲,可以采用策略路由将部分业务分流到一条广域网专线上,再将另外一些业务分流到另外一条广域网专线上。
策略路由实现方案是在总部核心路由器A、B局域网端口、区域中心核心路由器C、D局域网端口、地区公司路由器E、F局域网端口设置策略路由,指定某些业务网段流量上行时经过哪些链路,在主链路故障的情况下,路由会自动迂回到另外一条链路。
策略路由控制流量灵活方便,但需要从地区公司接入路由器、区域中心、核心路由器都进行配置,分别根据不同的业务流进行控制,实施配置工作量大,误操作可能会出现环路,对于MSTP专线,不能感知远端链路状态故障,可操作性不强。
对于大型企业网络来讲,策略路由显然力不从心。
IGP“修正主义”
IGP(内部网关协议)处于主流应用的OSPF/ISIS,只能选择一条算法最优的路由,并不能感知到路由中某段网络是否拥塞。也就是说,在冗余网络结构中,即使有一条高带宽的路由已经很拥塞,而另一条次优的路径还处于空闲状态,要实现流量在不同链路负载均衡,需要从某节点路由器到某网段有多条等值路由,然后路由器采用逐包或逐流方式,将流量在不同路由上进行负载分担。
具体而言,由于区域中心同总部核心间分别采用20M和10M带宽路由,因此IGP本身无法解决流量负载分担问题。
IGP的缺陷固然有其历史原因,就如IPv4有很多不足之处一样。但是,后来人们没有忘记思考和创新,纠正其缺点,不断完善之,使之能够感知到链路拥塞状态,作为其功能的扩展。
BGP优选“10条路”
BGP(边界网关协议)是从互联网中历练出来的老江湖,原来是专门用来为大型网络自治域之间选路用的。
在Internet上BGP的功能是将全球范围的互联网切分成很多个自治域,各自治域内存在域内细节路由,为了减少路由数量,域间传递域内聚合后的粗块路由,域间会存在复杂冗余连接,因此如何控制域间路由负载分担和流量对称,成为BGP需要解决的问题。
那么,BGP选路的原则是什么呢?它有“10条路”可优选:首先丢弃下一跳不可达的路由;优选最大衡重的路由;优选最高本地优先级的路由;优选本路由器始发的路由;优选经过AS(AS-path)最少的路由;优选起点类型最低的路由;优选MED值最低的路由;优选从外部BGP学来的路由;优选AS内部最短路径可到达的路由;优选BGP ID最低路由器发布的路由。
在大型企业里,为了提高路由的稳定性,减少路由震荡,采用BGP承载用户路由,整个企业网汇聚层以上路由器都运行BGP协议,BGP和IGP是分不开的。IGP负责承载AS内部路由器回环和端口链路网段路由,确保BGP路由中下一跳属性的可达性。
BGP控制路由的特点是在地区公司路由器上,在业务路由引入到BGP当初,设置某些业务网段的BGP本地优先级较高,另外一些业务网段本地优先级较低。由于地区公司设置两台路由器,在另外一台路由器上设置业务网段本地优先级恰好相反,以此来达到流量在地区公司和区域核心之间负载分担并且互为备份。
单域好?还是多域好?
对于区域核心和总部核心之间路由控制,有单域和多域之分。
就单域来讲,对于总部和区域属于同一个自治域情况,需要根据不同的业务网段路由,设置不同的本地优先级。为了有效地识别不同业务网段,需要通过BGP标记属性来区分,而非具体网段路由。因此在地区公司将路由引入到BGP时,同时设置社区属性,不同的社区属性表示不同的业务网段。
就多域来讲,总部核心路由器和区域核心路由器之间属于等值的外部BGP,本地优先级属性值不会传给等值的外部BGP,但社区值回传递到相邻AS,因此总部到区域的下行路由,可以根据不同的社区属性在总部AS内设置不同本地优先级,以此来达到控制路由的目的。
单域或多域BGP实现流量控制方案各有所长。单域实施运维比较简单,但路由策略控制需要RR逐级改变下一跳,相对于多域显得比较复杂,因此适合于网络规模不是很大,路由策略要求不多场合。多域方案控制灵活方便,扩展性强,但运维略显复杂,因此适合在网络规模很大,策略要求较多的场合。
路由策略具体实现方案,根据具体情况而定,没有严格的方案,最适合的是最好的。另外,除采用BGP策略外,还可以结合IGP来实现,IGP负责BGP下一跳回环地址可达,如果广域网带宽等值,并且不严格要求路由走向的前提下,可以通过IGP选路来自动实现流量负载分担。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。