switchingmode有很多种,每种模式都有其特别的针对性,理解它们的不同对于我们合理的应用有着非常重要的意义。另外还有些QOS和Security技术需要特定的Switchingmode.具体分析如下: 这是一种最基本的交换模式,在这种模式下,一条数据流(flow)中的第一个包(packet)将被置入系统缓存(systembuffer)。其目的地址将会拿到由表中去查询比对,由器的处理器(CPUorProcesser)同时将进行CRC校验,检查包是否正确。然后数据包的二层MAC地址将会被重写,替换为下一跳接口的MAC地址。 这样的过程将会继续,对这条数据流(flow)中的第2个、第3个数据包……相同的操作,包括查询由表、重写MAC地址,CRC校验等。 这种方式无疑是延迟最大的,因为它要利用systembuffer以及processor去处理每个收到的包。但是我们仍然有机会使用这种交换方式,比如在进行基于每个包的负载分担时,或是debugippacket时。 快速交换要优于processswitching,它采用了routecache(由缓存)来存储关于某条数据流(flow)的特定信息,当然会包括诸如目的MAC地址,目的接口等内容。这时我们只需要对一条数据流(flow)中的第一个包做processswitching,并把信息存入cache,所有后续数据包,可以不必再中断systemprocessor去执行查询等操作,直接从cache中提取目的接口,目的MAC地址等,这样大大加速了包转发速度。 fast路由器设置地址这两种模式一般只在思科高端设备上有所应用,比如7200系列由器。或者12000系列由器。 这种模式是最值得参考的,它完全基于其它switchingmode,重点在于对流经的数据包进行计费、、网管。但不得不提的是,这种模式因为也要存储相关信息,经过统计,大致65536条数据流(flow)会耗费4MB的systembuffer. 相关命令: 思科CEF是最为高效的一种三层协议,很多人容易对CEF产生,所以我们仍然要说明它的来原。 CEF采用了基于硬件的平台,它不仅仅是将数据都存入systembuffer,而是将整个由表、拓扑表,以及所有的下一跳地址、MAC地址全部进行预存,只要由表、拓扑表中存在的条目,无论是否有数据请求发往其目的地址,都会提前预读取,预设置缓存。这样,当有新的数据请求发送时,就不需要CPU去查询目的接口,目的MAC地址等等信息,而是直接从缓存中读取,从而使转发速度得以大大提高。 【编辑推荐】 |
不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流
GMT+8, 2025-11-11 21:21 , Processed in 0.030063 second(s), 15 queries .
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.