0.什么是交换机?
局域网交换机是一种基于MAC地址识别,完成转发数据帧功能的一种网络连接设备。工作在数据链路层,根据进入端口数据帧的MAC地址进行数据帧的过滤,转发。将多台数据终端设备连接在一起,构成星状结构的网络。
1. 二层交换机
二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。
二层交换机工作流程:
(1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的; (2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口; (3) 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上; (4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。
|
不断的循环这个过程,对于全网的MAC地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。
二层交换机按照所接收到数据包的目的MAC地址来进行转发,对于网络层或者高层协议来说是透明的。它不处理网络层的IP地址,不处理高层协议的诸如TCP、UDP的端口地址,它只需要数据包的物理地址即MAC地址,数据交换是靠硬件来实现的,其速度相当快,这是二层交换的一个显著的优点。但是,它不能处理不同IP子网之间的数据交换。传统的路由器可以处理大量的跨越IP子网的数据包,但是它的转发效率比二层低,因此要想利用二层转发效率高这一优点,又要处理三层IP数据包,三层交换技术就诞生了。
2.三层交换机: 二层交换技术+三层转发技术。
三层交换(也称多层交换技术,或IP交换技术)是相对于传统交换概念而提出的。三层交换技术是在网络模型中的第三层实现了数据包的高速转发。简单地说,三层交换技术就是:二层交换技术+三层转发技术。 三层交换机就是具有部分路由器功能的交换机(无nat)。
三层交换机的目的:
- 加快大型局域网内部的数据交换,所具有的路由功能也是为这目的服务的,能够做到一次路由,多次转发。对于数据包转发等规律性的过程由硬件高速实现,而像路由信息更新、路由表维护、路由计算、路由确定等功能,由软件实现。
- 三层交换技术就是二层交换技术+三层转发技术。
- 三层交换技术的出现,解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。
三层交换机工作流程: a.交换机在判断出目的IP不是自己的时候是不是一定就去查看路由表呢 ? 不是,这个就是交换机的关键所在了,交换机此时不会查看路由表,不会查看arp表,不会查看mac地址表;交换机看自己集成在ASIC硬件转发卡中的硬件转发表 b. ASIC硬件转发卡中的硬件转发表都包含了什么内容呢? 当第一个包过来的时候,发现硬件转发表并没有什么表项,所以此时必须将数据包交由路由进程处理,一旦交由cpu处理,必然会消耗cpu资源,此时会查看路由表,然后发现此IP地址个自己是直连的,此时就去查看arp找出此地址对应的mac地址,就可以转发出去了在决定转发出去过程中,交换机至少会做三件事情,一,修改IP包头的ttl值;二,修改原mac地址,改成自己出接口mac地址;三,建立交换机硬件转发表,包括目的IP地址,目的IP地址(下一跳)对应的mac地址,mac地址对应的vlan,以及对应的端口(这个每个厂家有自己的理解)这样当一下包过来的时候,交换机就会查看硬件转发表直接转发而不会在经过路由表的查询了,也即是交换机的一次路由,多次交换机原理。
|
华为和思科 mac表查看命令:
3.二层交换机和三层交换机特点
二层交换机用于小型的局域网络,在小型局域网中,广播包影响不大,二层交换机的快速交换功能、多个接入端口和低廉价格为小型网络用户提供了很完善的解决方案。而三层交换机的最重要的功能是加快大型局域网络内部的数据的快速转发,加入路由功能也是为这个目的服务的。如果把大型网络按照部门,地域等等因素划分成一个个小局域网,这将导致大量的网际互访,单纯的使用二层交换机不能实现网际互访;如单纯的使用路由器,由于接口数量有限和路由转发速度慢,将限制网络的速度和网络规模,采用具有路由功能的快速转发的三层交换机就成为首选。
来源:CSDN
作者:初心@_@
链接:https://blog.csdn.net/weixin_42767604/article/details/104318740