日志文章

2007年01月29日 11:41:13

CCNP-BSCI 002负载均衡

负载均衡(loading sharing),又名负平衡,允许路由器利用多条路径的优点,在所有可用的路径上发送报文。

均分负载可以是等价和非等价的。代价(cost)指与路由器相关的度量。

1、等价负载均衡(Equal-cost Load Sharing) 将流量均等地分布到多条度量相同的路径上。
2、非等价负载均衡(Unequal-Cost Load Sharing)将报文分布到不同度量的多条路径上。各条路径上分布的流量和路由代价成反比。代价越低的路径分配的流量越多。

并非所有的路由协议都支持两种方式。

因为静态路由没有度量,所以仅仅支持等价负载均衡

负载均衡可以有两种方式:基于目标网络和基于报文

1、顾名思义,基于目标网络的负载均衡是根据目的地址分配负载量。
例如,有网络A,B。A-B存在两条路,那么从A去往B地第一个目标的报文从第一条路走,去往B的第二个目标的报文走第二条路,去B的第三个目标的报文走第一条路……依此类推。
快速交换:CISCO路由器工作在缺省交换模式下,就是快速交换模式(Fast Swithing)。
当路由器收到一个去往其他网络的数据报文时,先查询路由选择表,找出去往目的网络该从哪个接口转发报文,然后获取该接口的二层信息(从ARP表,还可以有其他的),使报文成帧,最后封装报文并从该接口转发出去。那么在这里获取的路由信息及接口的数据链路层信息艘将存入快速转发的高速缓存表中。一旦再又发往相同目标的报文进入路由器,路由器将直接查询高速缓冲表来转发该报文,而不必再查询路由表及ARP表了。这种交换方式会让所有去往相同目的地的报文从相同接口转发出去,不再繁琐的进行表查询,大大的降低了路由器的处理时间。
2、基于报文的负载均衡。去往某一个目标网络的报文在链路A上发送,当路由器又收到去往该网络的报文后,将从第二条链路上发送,依此类推……(假定各条链路是等价的)。如果链路代价不同的话,路由器将会按照代价比例来分配各链路的流量分配。例如,在一条高代价链路上发送一个报文,可能低代价的链路上就会发送三个报文。当路由器采用非默认交换方式时,即处于过程交换模式时,将采用基于报文的均分负载。
过程交换(process swithing):和快速交换不同,路由器会对每一个进入的报文进行路由表的查询和相应的接口选择,然后查询数据链路层的信息,并逐一封装成帧。在这种工作模式下,每一个报文的转发,对于路由器来说,它们的处理过程都是独立的,并不会像快速交换那样强制去往相同目标网络的报文使用相同接口,走同样的链路。
刚才谈到,CISCO路由器默认的交换状态是快速交换。从快速交换状态切换为过程交换使用命令:
router(config-if)#no ip route-cache(记住,是接口命令!)

如何观察报文走向呢?可以在特权模式下敲入debug ip packet。该命令仅能监视过程交换的报文,而快速交换的报文是无法看到的!

优,缺点:
快速交换不能够均匀的分布流量,但减少了路由器的处理开销,交换时间较低。
过程交换虽然可以均匀的分布流量,但是较低的交换时间和CPU占用率这个优点却消失了!

类别: 思科技术 |  评论(0) |  浏览(1480) |  收藏
发表评论
看不清楚,换一张