目录
一.三层交换机的两种模式
三层交换机要执行三层信息的硬件交换,路由处理器(三层引擎)必须将有关路由选择等的三层信息下载到硬件中。以便对数据包进行处理。为完成在硬件中处理数据包的高层信息,会使用传统的MLS和基于CEF的MLS.
传统的MLS
使用传统的MLS时,交换机将流中第一个数据包转发给第三层引擎,后者将软件交换的方式对数据包进行过处理,对数据流中的第一个包进行路由处理后,第三层引擎对硬件交换组织进行编程,使之为后续的数据包选择路由。这个过程被称为“一次路由多次交换”。也就是说交换机的三层引擎只需要处理数据流中的第一个数据包,而后续的数据全部由硬件来执行转发。这样实现了三层交换的线速转发。
未知源目标,通过ARP广播,获取MAC地址
第二次就不需要,直接转发
已知源目标,直接交换。
基于CEF的MLS
与传统的MLS不同的是,CEF预先根据路由表学习路由信息后,直接储存在FIB(转发信息库)。REF预先根据ARP表生成邻接关系表,直接由硬件进行转发。传统MLS至少需要软件查询一次路由表后,建立转发条目,才能使用硬件进行转发。
工作原理:
1主机A给B发送单播数据包
2交换机查找FIB表,找到下一跳地址
3查找下一跳地址对应的邻接关系的2层封装信息
4转发
二.工作原理
第三层交换工作在OSI七层网络模型中的第三层即网络层,是利用第三层协议中的IP包头信息来对后续数据业务流进行标记,具有同一标记的业务流的后续报文被交换到第二层数据链路层,从而打通源IP地址和目标IP地址之间的一条通路。这条通路经过第二层链路层。有了这条通路,三层交换机就没有必要每次将收到的数据包进行拆包来判断路由,而是直接将数据包进行转发,将数据流进行交换。
三层交换=二层交换+三层转发
其原理是:假设两个使用IP协议的站点A、B通过第三层交换机进行通信,发送站点A在开始发送时,把自己的IP地址与B站的IP地址比较,判断B站是否与自己在同一子网内。若谜底站B与发送站A在同一子网内,则进行二层的转发。若两个站点不在同一子网内,如发送站A要与目的站B通信,发送站A要向“缺省网关”发出ARP(地址解析)封包,而“缺省网关”的IP地址其实是三层交换的的三层交换模块。当发送站A对“缺省网关”的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP 一个请求,B站得到此ARP请求后向三层交换模块回复其MAC地址,三层交换模块保存此地址并回复给发送站A,同时将B站的MAC地址发送到二层交换引擎的MAC地址表中。从此之后,当A向B发送的数据包便全部交给二层交换处理,信息得以高速交换。由于仅仅在路由过程中才需要三层处理,绝大部分数据都通过二层交换转发,因此三层交换机的速度很快,接近二层交换机的速度,同时比相同路由器的价格低很多。
三层交换机是无法取代路由器的
三层交换机只会通过mac/ip地址来转发路由
路由可以计算路由,可以实现自我计算,找到最短路由路径
三.三层交换机实践过程
三层交换机实现不同VLAN间路由:三层交换机可以配置vlanif接口,通过vlanif接口可以配置IP地址,称为不同vlan对应的网关,从而实现不同vlan间路由
一台三层交换机
两台PC机,PC1:IP192.168.10.6,子网掩码255.255.255.0网关192.168.10.1
PC2:IP192.168.20.6子网掩码255.255.255.0网关192.168.20.1
设定2台PC地址
然后进入三层交换机进行调试
还是老三样
一次性创建vlan10 和vlan20
进入接口,设置接口链路类型,将接口划分进vlan,
然后就是进入虚拟接口,设置接口的IP(网关)和子网掩码长度
打开路由表,检查下地址是否正确
我们先看下mac地址表
因为我未进行mac学习所以这里是空的
然后我让PC1pingPC2
PC2ping PC1
再次查看mac地址表
测试正常。
总结
三层交换分为二种模式
1,一次路由多次交换
2,FIB转发信息库和邻接关系表
三层交换机需要对虚拟接口设置ip和子网掩码长度