目前,大多数的三层交换机均能够同时支持精确匹配表项和最长匹配表项,一般来说精确匹配表项对应于软件中的ARP表,最长匹配表项对应于软件中的直连路由和非直连路由 。
3.3.2 三层表项的出口信息在4.2节描述的交换机三层转发流程中,曾经提到,硬件三层表项由目的IP(或网段)、目的IP(或下一跳IP)对应MAC、出口VLAN、出端口组成,采用这样表项的三层交换芯片一般直接通过查找三层转发表项就能够完成转发 。这种处理机制流程简单、转发效率高,但是也使得CPU软件对硬件表项的配置控制比较复杂,因为每当IP地址对应的MAC和物理端口出现变化,就必须对三层转发表项进行更新 。而在交换机上二层信息变化的可能性是比较大的,特别是交换机支持链路聚合、生成树等冗余机制,所以在某些应用环境中CPU不得不经常的对三层转发表进行更新,一旦更新出现问题(特别是出端口错误)必然对转发造成严重的不利影响 。
不过,并不是所有三层交换机的硬件三层表项都带有出端口信息,部分交换芯片使用的硬件表项只包括目的IP(或网段)、目的IP(或下一跳IP)对应MAC、出口VLAN,从转发流程上来说有以下变化:根据报文的目的IP查找三层转发表后,只得到了目的IP(或下一跳IP)对应的MAC和出口VLAN;然后继续根据MAC+VID去查找MAC地址表,并最终获得出端口信息,如果查找MAC表失败的话会在出口VLAN进行广播 。这样的处理机制虽然增加了芯片处理复杂度,但是流程更加清晰合理,CPU的处理也更加简单,因为物理出口的变化只需要反映在MAC地址表中就可以了,硬件三层表项无需频繁更新 。
这两种处理方式的交换芯片各有优势,不同厂商会根据成本、可靠性、产品定位等各方面因素来进行选择,这也使得不同型号的三层交换机在同一应用环境中可能有不同的表现 。
推荐阅读
- 一文读懂常用开源许可证
- 抽水马桶是如何工作的?一文看懂虹吸原理
- Nginx高级篇:从原理到实战,彻底搞懂Nginx
- 交换机划分 VLAN 配置
- 根据交换机的工作原理可知,交换机可以多个端口对之间的数据传输
- 一文讲弄懂什么是vlan、三层交换机、网关、子网掩码
- 路由交换技术—VLAN原理及配置
- 交换机与路由器的区别
- 8分钟带你深入浅出搞懂Nginx
- 一文教您如何实现持续集成服务器环境搭建