网络通信 频道

CISCO的快速转发

集中CEF模式

当启用集中CEF模式时,CEF的FIB和邻接表驻留在路由处理器中,路由处理器来执行快速转发。对于CEF交换来说,当线路卡不可用时,或者需要使用的功能与分散CEF交换不兼容时,就可以使用集中CEF模式。

分布CEF模式

当启用分布式CEF(dCEF)时,线路卡(例如VIP线路卡或者GSR线路卡)维护着一个与FIB和邻接表相同的拷贝。线路卡在端口适配器之间执行快速转发,这样,在进行交换操作时就无须RSP的参与了。
dCEF使用一个“内部过程通信”(Inter Process Communication,IPC)机制,在路由处理模块和线路卡上,保证FIB和邻接表的同步。


在Cisco12000系列路由器中,线路卡负责执行CEF交换。在其他路由器中,或许您使用的不是同一种类型的线路卡,有可能某个接口卡不支持CEF交换。当某个不支持CEF交换的线路卡收到数据包时,她将数据包转发给更高的交换层(比如路由处理模块)或者把数据包转发给下一跳处理。这种机制允许旧的接口模块和新的接口模块并存。

笔记
1Cisco12000系列千兆交换路由器上只运行dCEF模式。
2一个VIP卡上不允许同时运行分布式CEF交换和分布式快速交换。
3Cisco7200系列路由器不支持分布式CEF交换。

附加的新功能

在配置集中模式CEF和分布模式CEF时,您还可以配置以下功能:
● 分布式CEF支持访问控制列表
● 分布式CEF支持帧中继包
● 分布式CEF支持数据包分片
● 支持基于每一个包或者每一个目标的负载平衡
● 支持网络计费,可以收集数据包的个数和字节数
● 分布式CEF支持跨隧道的交换

配置任务

这部分描述配置CEF的必要选项和可选选项。第一个任务是必要的,其他都是可选的。
●启用和禁用CEF或者dCEF
●为CEF配置负载平衡
●为CEF配置网络计费
●为CEF配置跨隧道交换

启用和禁用CEF或者dCEF

如果用户的Cisco路由器中有接口处理器支持CEF时,就可以启用CEF。
为了启用或禁用CEF,可以在全局配置模式下利用下面的命令进行配置。
任务命令
启用标准CEF模式ip cef switch
禁用标准CEF模式no ip cef switch

当您想让线路卡执行快速转发时,则启用dCEF,这样,路由处理模块就可以处理路由协议或者负责交换从旧的接口模块(不支持CEF交换的模块)过来的数据包。

笔记
在Cisco12000系列路由器上,dCEF模式是缺省启用的。所以启用dCEF的命令(ip cef switch)在Cisco12000系列路由器上是没有意义的,在配置清单上也不会列出dCEF模式被启用。

为了启用或禁止dCEF操作,可以在全局配置模式下利用下面的命令进行配置。
任务命令
启用dCEF模式ip cef distributed switch
禁用dCEF模式 no ip cef distributed switch

当用户按全局模式启用CEF或dCEF时,所有支持CEF的接口都被默认地启用了。如果您想在某个特定的接口上关闭CEF或者dCEF,您可以按照下面的做法:

有时候,在某个接口配置了一项功能,而CEF或dCEF并不支持该功能,这时您就可能需要在这个特定的接口上禁止CEF或dCEF。例如,策略路由和CEF就不能一起使用。您可能想让一个接口支持策略路由,而让其他的接口支持CEF。在这种情况下,可以按全局模式启用CEF,而在那个打算配置策略路由的接口上禁用CEF。这样,除了那一个接口外,在其他所有接口上都启用了快速转发。

为了在某个接口上禁用CEF或dCEF,可以在接口配置模式下,使用下面的命令实现:
任务命令
在接口上禁用CEFno ip route-cache cef

当禁用了CEF或dCEF后,Cisco IOS自动使用下一个最快的交换路径来交换数据包。对于dCEF而言,下一个最快的交换路径是在路由处理模块上使用CEF。
如果您在某个接口上禁用了CEF或dCEF操作,尔后又想重新启用它,那么在接口配置模式下,可以使用:ip route-cache cef命令实现。

笔记
在Cisco12000系列路由器上,您不可以在某个接口上禁用dCEF模式。

为CEF配置负载平衡

负载平衡要依据数据包的源和目的地信息组合来进行。为了把数据传送到一个目的地,Cisco可以把数据分配到多条路径中,从而优化资源的使用。您可以基于目的地或者基于数据包来配置负载平衡。负载平衡决策机制是在数据发出的接口上做出的,所以当您必须在出口上配置负载平衡。

配置负载平衡任务列表
这部分描述怎样去配置不同类型的负载平衡:
• 配置基于目的地的负载平衡
• 配置基于数据包的负载平衡

配置基于目的地的负载平衡

基于目的地的负载平衡允许路由器将使用多条路径来均衡负载。对于某一源/目标主机,数据包转发采用同一路径,即使有多个路径可用,也将这样处理。对于到达不同目的地的数据包则可以采用不同的路径。当启用CEF时,基于目的地的负载平衡功能缺省被启用。大多数情况下,都采用这种负载平衡方法。
因为基于目的地的负载平衡是依赖于对数据流的统计来分布信息的,所以随着“源/目的地对”个数的增加,负载平衡会变得更加有效。
您可以采用基于目的地负载平衡的办法,来确保针对某个给定的“源/目标主机对”的数据包以一定的次序到达。因为基于某个确定的“源/目标主机对”的数据包会在同一条链路上被路由。

启用基于目的地的负载平衡

由于启用CEF时,也就缺省启用了基于目的地的负载平衡功能,所以为了使用基于目的地的负载平衡功能,您不需要再执行其他附加操作。

禁用基于目的地的负载平衡

特别的,当您想启用基于数据包的负载平衡功能时,您必须先禁用基于目的地的负载平衡功能。
为了禁用基于目的地的负载平衡功能,可以在接口配置模式下,使用下面的命令进行:
任务命令
禁用基于目的地的负载平衡功能no ip load-sharing per-destination

配置基于数据包的负载平衡

使用基于数据包的负载平衡,路由器可以在路径上连续发送数据包,而不用考虑具体的主机或用户情况。这种负载平衡机制采用轮转办法来确定每个数据包采用哪条路径到达目的地。基于数据包的负载平衡可以保证在多条链路上进行负载平衡。

利用数据包进行负载平衡是一个好办法,但是对于给定的“源/目标主机对”的数据包也许会因此采用不同的路径到达目的地。这个机制会引起数据包的重新排序。所以这种类型的负载平衡方法对有些类型的数据流可能就不适应(比如通过IP进行语音传送),因为这种类型的传送要求数据包按照顺序依次到达目的地。

使用基于数据包的负载平衡有助于确保每个单个“源/目的地对”的路径都不会超载。如果有大量的、通过并行链路的针对某个“源头/目标主机对” 的数据,假如按目的地进行负载平衡,将会使那个链路超载,而其他链路上的数据流却很少。启用基于数据包的负载平衡后,数据包可以交替地利用不同的路径到达同一个繁忙的目的地。

要启用基于数据包的负载平衡功能,可以在接口配置模式下,使用下面的命令进行:
任务命令
启用基于数据包的负载平衡ip load-sharing per-packet

笔记
如果您想针对某个特定目的地启用基于数据包的负载平衡,必须在所有可以向该目的地转发数据包的接口上都启用基于数据包的负载平衡的功能。

为CEF配置网络记账功能

您可能需要收集统计信息,以便更好地理解和使用CEF模式的功能。例如您可能想收集这样的信息: 被交换到某个目的地的数据包的个数和字节数,或者通过某个目的地交换的数据包的个数。

您执行以下可选选项为CEF配置网络记帐功能:
●为CEF启用网络记帐功能
●查看网络记帐信息

启用CEF的网络记帐功能

要启用CEF的记帐功能,可以在全局配置模式中,使用下面的命令进行:

任务命令
启用收集被快速转发到某个目的地的数据包个数和字节数ip cef accounting per-prefix

启用收集通过某个目的地被快速转发的数据包的个数ip cef accounting non-recursive


当您在全局配置模式中为CEF启用网络记账功能后,相应的路由处理器会收集记账信息。当用户为dCEF启用网络记账功能后,线路卡上会收集记帐信息。

查看网络记帐信息

您可以查看被收集的记账信息。为此在EXEC模式下,使用下面的命令进行:

任务命令
查看收集的记帐信息show ip cef

为CEF配置跨隧道的交换

CEF支持跨隧道的交换,例如GRE隧道。当你启用CEF或者dCEF模式时,跨隧道的交换会被自动启用,所以您无需再执行任何附加操作来启用跨隧道的交换。

 

转载地址:http://www.net130.com/CMS/Pub/Tech/tech_instance/213625.htm

0
相关文章