软件大小:
软件语言:
浏览人数:376人
软件类型:
授权方式:
用户评分:
更新时间:2022-12-21
软件分类:Mac系统
运行环境:
上一节介绍了集线器,一种工作在物理层的简单网络设备。 由于集线器采用广播方式中继转发物理信号,传输效率受到很大制约。
精准转发
为了解决集线器效率低下的尴尬,我们需要设计更先进的网络设备。 新设备根据其目标 MAC 地址将以太网帧精确转发到正确的端口:
注意:这里的端口是指转发设备的,也可以叫网口。
如上图所示,中间节点是一个转发设备,内部维护着主机MAC地址和对应端口的映射表,现在连接了三台主机。 这样,当转发设备收到主机A发送给主机C的数据时,根据目的MAC地址查找映射表,就可以准确地将数据转发到对应的端口3。
现在,传输方式变得更有针对性——数据帧被精确转发到正确的端口二层交换机系统mac地址,其他端口不再接收冗余数据:
不仅如此,主机A和B在通信的同时,其他计算机也可以通信,互不干扰。 转发设备的每个端口都是一个独立的冲突域,带宽也是独立的。
集线器的弊端统统避免!
转变
能够根据以太网帧的目的地址转发数据的网络设备是以太网交换机( ):
交换机看起来就像集线器。 当然,大多数网络设备都是一个装满端口的盒子,关键在于内部结构。
让我们看看实际的开关是什么样子的:
综上所述,以太网交换机属于二层网络设备,具有以下特点:
Mac地址学习
交换机完美解决了集线器的不足,但是新的问题又出现了,如何获取映射表呢?
最原始的方式就是维护一个静态的映射表。 当有新设备连接时,在映射表中增加一条记录; 当设备被移除时二层交换机系统mac地址,相应的记录从映射表中删除。 但是,纯手工的操作方式有些烦人。
幸运的是,在计算机领域,可以实现各种自动化——通过算法自动学习映射表。 我们先看看大概的思路:
在初始状态下,映射表是空的。 现在主机A向主机B发送一个数据帧,由于映射表中没有地址B的记录二层交换机系统mac地址,所以交换机将该数据帧广播到所有其他端口。
由于交换机从Fa0/1端口收到数据帧,所以知道A连接在Fa0/1端口,数据帧的源地址就是A的地址! 此时,交换机可以将A的地址和端口Fa0/1作为一条记录添加到映射表中。 交换机学习A的地址!
然后,主机B回复一个数据帧给A,由于地址A的记录已经存在于映射表中,交换机将数据帧准确转发到端口Fa0/1。 同样,交换机学习主机 B 的地址。
当主机C开始发送数据时,交换机也学习到了它的地址,学习过程就完成了!
这就是MAC地址自动学习的基本原理。
【小菜学网】系列文章首发于公众号【小菜学编程】,敬请关注: