cisco 下CEF(简介)[转载]
cisco 下CEF(简介)
转自:http://blog.51cto.com/chengmingshu/803358
CEF(Cisco Express Forwarding,Cisco特快交换)技术是思科公司推出的一种全新的路由交换方案,它具有良好的交换性能,增强的交换体系结构和极高的包转发速率。
1.CE
F特快交换基本原理 (1)CEF转发过程
3层包从TCAM开始查找;进行最长匹配,得到邻居信息,改写原有二层数据帧(下一跳MAC地址)并转发。
CEF表是从路由表得来,邻居表是使用ARP解析得来的。

CEF多层交换的过程:

ARP抑制:在未获得目的MAC地址并且进行ARP解析时,除非ARP解析完成并且在邻居表体现出来外,在解析期间,所有发往目的主机的包,将被丢弃.
(2)CEF部件
CEF是一种高级的第三层交换技术,它主要是为高性能、高伸缩性的第三层IP骨干网交换设计的。为优化包转发的路由查找机制,CEF定义了两个主要部件:转发信息库(Forwarding Information base)和邻接表(Adjacency Table)。
1)转发信息库(FIB)是路由器决定目标交换的查找表,FIB的条目与IP路由表条目之间有一一对应的关系,即FIB是IP路由表中包含的路由信息的一个镜像。由于FIB包含了所有必需的路由信息,因此就不用再维护路由高速缓存了。当网络拓扑或路由发生变化时,IP路由表被更新,FIB的内容随之发生变化。
2)CEF利用邻接表提供数据包的MAC层重写所需的信息。FIB中的每一项都指向邻接表里的某个下一跳中继段。若相邻节点间能通过数据链路层实现相互转发,则这些节点被列入邻接表中。 系统一旦发现邻接关系,就将其写到邻接表中,邻接序列随时都在生成,每次生成一个邻接条目,就会为那个邻接节点预先计算一个链路层头标信息,并把这个链路层头标信息存储在邻接表中,当决定路由时,它就指向下一网络段及相应的邻接条目。随后在对数据包进行CEF交换时,用它来进行封装。欲查看邻接表的有关信息,可以使用Cisco IOS的命令:show adjacency/show adjacency detail。当我们查看邻接表信息时,会发现有以下两种主要邻接类型:Host adjacency和Point to Point。Host adjacency类型通常的显示是一个IP地址,它表示邻接的下一跳IP地址;Point to Point类型的显示是“point 2point”,表示这是一条点对点电路。
2.CEF操作模式
CEF有两种模式:
(1)集中式:
允许一个路由处理模块运行特快交换,即FIB和邻接表驻留在路由处理模块中,当线路卡不可用或不具备分散CEF交换的功能时,就可使用集中CEF交换模式。
(2)分布式:
(一般记作dCEF)允许路由器的多个线路卡(VIP)分别运行特快交换功能,前提是线路是VIP线路卡或GSR线路卡。中央路由处理器完成系统管理/路由选择和转发表计算等功能,并把CEF表分布到单个线路卡;每个线路卡维护着一个FIB和邻接表的相同的拷贝。线路卡在端口适配器之间执行快速转发,这样,交换操作就无需路由交换模块的参与了。DCEF采用一种“内部过程通信”机制来保证路由处理器和接口卡之间FIB和邻接表的同步。
Cisco 12000系列路由器只运行dCEF模式,由线路卡执行交换功能。在其它路由器中,可以在同一个路由器中混合使用各种类型的接口卡,如果一个不支持CEF的接口卡收到数据包后,将把数据包转发到路由处理器来进行处理,或把该数据包转发到下一个网络段处理。 CEF在路由器上是全局激活的,但可在每个接口(或VIP的底板)上启用/禁用CEF;CEF和快速交换模式也可同时运行,但不推荐这样使用,因为会占用大量的系统维护资源。
3.CEF负载均衡
(1)基于目的地的负责均衡:
基于目的地的负载均衡允许路由器将使用多条路径来均衡负载。对于某一源/目标主机,数据包转发采用同一路径,即使有多个路径可用,也将这样处理。对于到达不同目的地的数据包则可以采用不同的路径。当启用CEF时,基于目的地的负载均衡功能缺省被启用。大多数情况下,都采用这种负载均衡方法。
因为基于目的地的负载均衡是依赖于对数据流的统计来分布信息的,所以随着“源/目的地对”个数的增加,负载均衡会变得更加有效。
(2)基于数据包的负载均衡:
当启用基于数据包的负载均衡功能时,必须先禁用基于目的地的负载均衡功能。为了禁用基于目的地的负载均衡功能,可以在接口配置模式下, no ip load-sharing per-destination
使用基于数据包的负载均衡,路由器可以在路径上连续发送数据包,而不用考虑具体的主机或用户情况。这种负载均衡机制采用轮转办法来确定每个数据包采用哪条路径到达目的地。
基于数据包的负载均衡可以保证在多条链路上进行负载均衡。

4.CEF提供了以下优点:
(1).改进的性能,CEF是小于快速切换路由缓存CPU密集型。更多的CPU处理能力,可专用于第3层服务,如服务质量(QoS)和加密。
(2).可扩展性,CEF在每个线卡提供了充分的交换容量时,分布式CEF(dCEF)模式是积极的。
(3).弹性的CEF提供了前所未有的水平在大型动态网络的一致性和稳定性的开关。
(4).虽然您可以使用CEF在任何一个网络的一部分,它是专为高性能,高弹性的第3层IP骨干交换。
cisco 下CEF(简介)[转载]的更多相关文章
- Monte Carlo方法简介(转载)
Monte Carlo方法简介(转载) 今天向大家介绍一下我现在主要做的这个东东. Monte Carlo方法又称为随机抽样技巧或统计实验方法,属于计算数学的一个分支,它是在上世纪四十年代 ...
- HttpClient 与 HtmlParser 简介 转载
转载地址:https://www.ibm.com/developerworks/cn/opensource/os-cn-crawler/ 本小结简单的介绍一下 HttpClinet 和 HtmlPar ...
- Spring 000 框架简介 (转载)
转载自:https://my.oschina.net/myriads/blog/37922 1.使用框架的意义与Spring的主要内容 随着软件结构的日益庞大,软件模块化趋势出现,软件开发也需要多人合 ...
- 来自苹果的编程语言——Swift简介转载】
关于 这篇文章简要介绍了苹果于WWDC 2014发布的编程语言——Swift. 原文作者: Lucida Blog 新浪微博 豆瓣 转载前请保留出处链接,谢谢. 前言 在这里我认为有必要提一下Brec ...
- ISO 14229 简介 转载
作者:autogeek 原文链接:http://www.cnblogs.com/autogeek/p/4458591.html 前言 由于工作中经常用到ISO-14229,因此决定对该协议做个总体介绍 ...
- PowerMock 简介--转载
原文地址:https://www.ibm.com/developerworks/cn/java/j-lo-powermock/ EasyMock 以及 Mockito 都因为可以极大地简化单元测试的书 ...
- CentOS下安装JDK7 转载
转载地址:http://www.cnblogs.com/rilley/archive/2012/02/02/2335395.html CentOS下安装JDK7 下载地址:http://www.ora ...
- QNX简介<转载>
QNX QNX是由QNX软件系统有限公司开发的实时操作系统. http://blog.csdn.net/happyhell/article/details/7087199 基本特征 * QNX是一个 ...
- linux下目录简介——/sys
Linux下/sys目录介绍 1. 概述 ramdisk 文件系统基于磁盘模拟技术,实际文件系统是ex2 ex3等.sysfs是一种基于ram文件系统和proc一样.Sysfs文件系统是一个类似 ...
随机推荐
- HTML 练习滑动
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 基于OpenStreetMap计算驾车距离(Java)
最近公司有个项目需要计算6000个点之间的驾车距离,第一时间想到的是利用Google的Distance Matrix API,但是免费Key每天只能计算2500个元素(元素 = 起点数量 * 终点数量 ...
- 6.使用桌面版AI伴侣或手机版AI伴侣实时预览编程效果
1.根据自己系统下载对应版本AI伴侣,最好解压到D盘根目录. 运行ailaunch.bat ,可以启动原本自带的2.46版AI伴侣.运行AI伴侣247.bat可以启动汉化2.47版的AI伴侣.并且默认 ...
- FPGA高速ADC接口实战——250MSPS采样率ADC9481
一.前言 最近忙于硕士毕业设计和论文,没有太多时间编写博客,现总结下之前在某个项目中用到的一个高速ADC接口设计部分.ADC这一器件经常用于无线通信.传感.测试测量等领域.目前数字系统对高速数据采集的 ...
- OKR能解决996吗?德鲁克怎么看?
最近网络上热议的“996”,不由让人想起我们的邻国日本.他们在20年前就有过一个热词“过劳死”,就是职场加班太严重导致的猝死. 最近有一本书新书<过劳时代>,说的就是日本20年前的过劳死. ...
- 二维前缀和模板题:P2004 领地选择
思路:就是使用二维前缀和的模板: 先放模板: #include<iostream> using namespace std; #define ll long long ; ll a[max ...
- 聊聊2018.2的Scriptable Build Pipeline以及构建Assetbundle
0x00 前言 在这篇文章中,我们选择了过去几周Unity官方社区交流群以及UUG社区群中比较有代表性的几个问题,总结在这里和大家进行分享.主要涵盖了Scriptable Build Pipeline ...
- IIS虚拟目录挂载文件服务器目录
要求说明: 通过网站上传文件保存到统一的文件服务器上. 服务器说明: 1.文件服务器以下称为FilesServer,IP地址为:192.168.1.213 2.Web服务器为以下称为WebServer ...
- SQL 高级查询(层次化查询,递归)
SQL 高级查询 前面我们写了一下 SQL 的极简入门,今天来说点高级查询.没看到的朋友可以点击下面链接查看. 1 小时 SQL 极速入门(一) 1 小时 SQL 极速入门(二) 1 小时 SQL 极 ...
- Android 开发学习资源汇总
下面这些资源对Android开发来说是很有帮助的! 1. 在线代码运行工具 地址:https://tool.lu/coderunner/ 说明:此工具站能在线运行C.C++.Java,基本能满足相关基 ...
