|
在一个典型的大业务流量的ISP环境中,Cisco12012千兆交换路由器是网络的核心,它提供和支持到Cisco7500系列或者其他支流路由器的连接。在网络核心中,骨干路由器上的CEF交换提供了高性能和可扩展性,用来对付网络规模的不断加大和稳定增长的数据流量。CEF是一种分散式交换机制,它随着接口卡数量和安装在路由器中带宽的变化而线性地变化。
CEF组件
为了实现CEF的交换功能,CEF将普通路由器中存储在路由高速缓存中的信息转而存储到几种为CEF专门设计的数据结构中。为了有效地进行数据包转发,这种数据结构要保证能进行优化的查询。CEF的2种主要组件是: ● 转发数据库(FIB) ● 邻接表
转发数据库
CEF利用转发数据库(FIB)来进行基于IP目的地前缀的交换决策。从概念上讲,FIB类似于一个路由表或信息库,它维护着一个包含IP路由表转发信息的镜像。当网络中路由或拓扑结构发生了变
化时,IP路由表就被更新,而这些变化也将反映在FIB中。基于IP路由表中的信息,FIB维护着下一跳的地址信息。
因为FIB条目和路由表条目之间有一一对应的关系,所以FIB中包含了所有已知的路由,这样就不用维护路由高速缓存了,而先前的交换方法(比如快速交换和最优交换)都要维护路由高速缓存。
邻接表(Adjacency Table)
如果网络中的网络节点只通过一跳就可以穿越链路层而彼此到达对方,那么它们是邻接的。除了FIB外,CEF还利用邻接表来提供第二层的寻址信息。邻接表为所有FIB条目维护第二层的下一网段地址。
邻接的发现
当路由器发现存在邻接时就增加在邻接表中,每次生成一个邻接条目(就像ARP协议一样),CEF会为那个邻接节点预先计算一个链路层头标信息,并把这个头标信息存储在邻接表中。当决定路由时,它就会指向下一跳以及相应的邻接条目。随后,在对数据包进行CEF交换时,用预先生成的头标信息来对数据包进行封装。 QQread.com 推出各大专业服务器评测 Linux服务器的安全性能 SUN服务器 HP服务器 DELL服务器 IBM服务器 联想服务器 浪潮服务器 曙光服务器 同方服务器 华硕服务器 宝德服务器
分解邻接
一个路由表中也许存在多条到达目标网络的路径,例如:当路由器被配置成允许冗余路径和允许负载平衡时。对于每一个被分解的转发路径,邻接条目会被附加一个头标信息指示出那条路径的下一跳地址。这种机制可以用来在多条路径上实现负载平衡。
需要作特殊处理的邻接类型
另外,因为邻接条目和下一跳地址相关联,所以一些特殊的邻接类型可以被用来加速交换过程。前缀被定义后,当存在以下被缓存的邻接条目存在时,前缀需要作特殊处理。 表1 需要被作特殊处理的邻接类型 邻接类型接收到这些邻接类型时如何处理 空邻接一个以Null0接口为目标地址的包会被抛弃,在访问过滤器时,这可以被用作一种有效的机制。 邻接归纳当路由器直接和几台主机相连时,FIB表中维持的是这个子网的前缀,而不是各个主机的前缀。这个子网前缀是一个邻接的归纳。当要转发某个数据包到某个具体主机时,邻接数据库使用这个被归纳的邻接。 转出邻接当遇到某些作特殊处理的功能或者CEF不支持的功能时,路由器将采用更高级别的交换方法处理数据包。 丢弃邻接数据包被丢弃。这种邻接类型仅仅在Cisco12000系列路由器上出现。 释放邻接数据包被释放,但是前缀仍然有效。
没有被分解的邻接
当链路层头标信息被附加到数据包上时,FIB需要头标指出下一跳的地址。如果FIB表中建立了一个邻接,但是并没有找到第二层的寻址信息,比如没有通过ARP发现第二层的寻址信息,这个邻接就被认为是不完整的。这个数据包就会交给路由模块处理,邻接关系由ARP来决定。
CEF所支持的媒介
当前CEF支持ATM/AAL5snap, ATM/AAL5mux, ATM/AAL5nlpid, 帧中继, 以太网, FDDI, PPP, HDLC, 和隧道。
CEF*作模式
CEF的*作模式有2种,即集中CEF模式和分散CEF模式。可以通过其中的任意一种来启用CEF,同一时刻用户只能使用其一种模式。
集中CEF模式
当启用集中CEF模式时,CEF的FIB和邻接表驻留在路由处理器中,路由处理器来执行快速转发。对于CEF交换来说,当线路卡不可用时,或者需要使用的功能与分散CEF交换不兼容时,就可以使用集中CEF模式。
分布CEF模式
当启用分布式CEF(dCEF)时,线路卡(例如VIP线路卡或者GSR线路卡)维护着一个与FIB和邻接表相同的拷贝。线路卡在端口适配器之间执行快速转发,这样,在进行交换*作时就无须RSP的参与了。
上一篇:思科中国公司开放新型SAN设计试验室
下一篇:在Cisco1700系列上实现PPPOE+NAT
|