二三层交换机区别

来源:互联网 发布:怎么让mac运行exe 编辑:程序博客网 时间:2024/06/06 09:48

二层交换机不具备路由功能。三层交换机具备。

二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:

(1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;

(2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口;

(3) 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上;

(4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。不断的循环这个过程,对于全网的MAC地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。

三层交换机的工作过程。

组网比较简单

使用IP的设备A------------------------三层交换机------------------------使用IP的设备B

比如A要给B发送数据,已知目的IP,那么A就用子网掩码取得网络地址,判断目的IP是否与自己在同一网段。


如果在同一网段,但不知道转发数据所需的MAC地址,A就发送一个ARP请求,B返回其MAC地址,A用此MAC封装数据包并发送给交换机,交换机起用二层交换模块,查找MAC地址表,将数据包转发到相应的端口。


如果目的IP地址显示不是同一网段的,那么A要实现和B的通讯,在流缓存条目中没有对应MAC地址条目,就将第一个正常数据包发送向一个缺省网关,这个缺省网关一般在操作系统中已经设好,对应第三层路由模块,所以可见对于不是同一子网的数据,最先在MAC表中放的是缺省网关的MAC地址;然后就由三层模块接收到此数据包,查询路由表以确定到达B的路由,将构造一个新的帧头,其中以缺省网关的MAC地址为源MAC地址,以主机B的MAC地址为目的MAC地址。


通过一定的识别触发机制,确立主机A与B的MAC地址及转发端口的对应关系,并记录进流缓存条目表,以后的A到B的数据,就直接交由二层交换模块完成。这就通常所说的一次路由多次转发。


原文地址:

http://wenku.baidu.com/link?url=YX8YlcqdUsuSYEOLBcafxgRXCTfrYVPHkGlID5XF_zMhTYxxDWysOX

GI5ZlvokKcheSyk7BEC4bw2nDkh_Zvm8fWFx_NmaH9M4lVN3X8YV3

0 0