那么三层交换是怎样实现的呢?三层交换的技术细节非常复杂,不可能一下子讲清楚,不过您可以简单地将三层交换机理解为由一台路由器和一台二层交换机构成,如图4所示。
两台处于不同子网的主机通信,必须要通过路由器进行路由。在图4中,主机A向主机B发送的第1个数据包必须要经过三层交换机中的路由处理器进行路由才能到达主机B,但是当以后的数据包再发向主机B时,就不必再经过路由处理器处理了,因为三层交换机有“记忆”路由的功能。
三层交换机的路由记忆功能是由路由缓存来实现的。当一个数据包发往三层交换机时,三层交换机首先在它的缓存列表里进行检查,看看路由缓存里有没有记录,如果有记录就直接调取缓存的记录进行路由,而不再经过路由处理器进行处理,这样的数据包的路由速度就大大提高了。如果三层交换机在路由缓存中没有发现记录,再将数据包发往路由处理器进行处理,处理之后再转发数据包。

图4
三层交换机的缓存机制与CPU的缓存机制是非常相似的。大家都有这样的印象,开机后第一次运行某个大型软件时会非常慢,但是当关闭这个软件之后再次运行这个软件,就会发现运行速度大大加快了,比如本来打开Word需要5~6秒,关闭后再打开Word,就会发现只需要1~2秒就可以打开了。原因在于CPU内部有一级缓存和二级缓存,会暂时储存最近使用的数据,所以再次启动会比第一次启动快得多。
具有“路由器的功能、交换机的性能”
的三层交换机虽然同时具有二层交换和三层路由的特性,但是三层交换机与路由器在结构和性能上还是存在很大区别的。在结构上,三层交换机更接近于二层交换机,只是针对三层路由进行了专门设计。之所以称为“三层交换机”而不称为“交换路由器”,
原因就在于此;在交换性能上,路由器比三层交换机的交换性能要弱很多。
|