ip cef 快速交换和进程交换
2011-06-10 11:33:25| 分类: 默认分类 | 标签:net |举报|字号 订阅
当路由器对第一个packet进行发往目标地址的处理的时候,先查看路由表和选择出口接口,然后获取组成frame的信息(比如ARP表的查询)并进行封装,然后传输.之前获取的这些路由和数据链路信息将被保存在快速交换的cache中.接下来,
当有要到达和第一个包相同的目标地址的包的时候,就可以不进行路由表和ARP表的查询,直接对packet进行交换。快速交换降低了CPU的占用和处理时间,并意味着去往某个目标地址的packet都从相同的路由器接口被路由出去.
当有到达同一网络不同主机的packet,路由器可能会吧这些packet通过另外一条链路进行路由.因此,路由器能做的最好的就是给予目标地址的均衡负载
所谓基于基于packet的均衡负载,是说假如有2条到达目标地址的路径,那么第一个packet将通过第一条链路到达目标设备,第二个packet将通过第二条链路到达目标设备,第三个packet又将通过第一条链路到达目标设备等等,以次类推.(这里考虑的是等价的均衡负载)
Cisco路由器工作在Process Switching(进程交换)模式的时候就采用基于packet的均衡负载进程交换,是指每次对packet的交换,都要查询路由表,选择出口接口和查询数据链路信息,因为每次的路由决策都是独立的.
要在某个接口打开 进程交换模式 ,使用 no ip route-cache 命令
路由器最原始的转发方式,我们形象的称为一次路由,一次转发。就是说,每个数据包在到达路由器的时候,都会查看路由表。这样无疑是很慢的。所以就有了一次路由,多次转发的技术,就是基于缓存的转发技术。由于多层交换技术的出现,在多层交换机上使用的思科快速转发技术,就是CEF,被运用到了路由器上,原理我就不说了,自己去看书。由于你要做负载均衡的实验,如果不把思科快速转发模式关掉,不把基于缓存的路由模式关闭(默认是开启的),那么,到达同一目的地的数据包在经过一次路由以后,就会从同一接口转发掉(只有第一个数据包会查看路由表)
测试负载均衡的时候,不要在有带有快速交换接口的路由器上执行ping,也不要ping这样的路由器。因为做负载均衡的时候,路由器生成的分组将以进程交换(更具体一些,就是一次路由,一次转发)而不是快速交换的方式被转发,如果你在带有快速交换接口的路由器上执行ping,或者ping这样的路由器,这可能导致你的数据被使用快速转发的形式而转发的结果。、