- 交换机是什么
- 交换机有什么作用
- 交换机如何传输数据包
- 交换机和集线器、路由器的区别
交换机是什么
交换机是一种用于电(光)信号转发的网络设备,能连接多台设备形成一个局域网,简单来说就是可以把多台计算机连接起来,形成一个局域网。交换机是用于连接多台设备,让这些设备相互具备网络互通。
交换机有什么作用
简单来说交换机的作用可以把网线插入交换机的计算机汇聚成一个局域网。
交换机工作于OSI参考模型的第二层,即数据链路层,用于将数据包从局域网的一台计算机传输到局域网的另一台计算机。通过数据包交换的方式,将数据转发到目的地。
注:数据包的本质是0和1,在我们计算机内存里面是数字信号,经过网卡转成电信号发出去(不一定是电信号(高压表示1,低压表示0),如果用光纤传输会转成光信号,亮的时候表示1,暗的时候表示0,无线网卡会转成无线电波,根据波的振幅表示0和1)
交换机如何传输数据包
交换机工作过程。如图,在若主机1已知主机2的MAC地址,想要进行数据传输。
1.因为switch初始化,无MAC地址条目,但交换机会收到A的数据帧,交换机会“学习”将数据帧的源MAC地址和对应端口编号记录到MAC地址表中
2.交换机MAC表中无对应MAC条目,泛洪数据帧
3.交换机除源端口外连接的设备都会收到数据帧,但只有数据帧中目标MAC对应主机才会进行回应,发送单播数据帧,目标MAC为主机1的MAC.
4.交换机收到主机2的回应数据帧,会查看MAC地址表,发现有对应条目,将数据包从对应接口转发出去,并将主机2发送的回应包中的源MAC地址和对应端口编号记录到MAC地址表中。
5.因此双方在交换机中都有MAC条目,可以直接通信。
交集线器的工作原理
这里不得不先说一下集线器,有交换机之前,我们都是用集线器连接成一个局域网的,集线器的工作原理是把接收到的数据包直接广播给插入集线器的所有计算机,在这个局域网的计算机都能接收到这个数据包,然后判断这个数据包发送的MAC(物理地址)是否发送给自己,是给自己的就接收,不是就丢掉。当局域网很小的时候,用集线器问题不大,但是当局域网的设备比较多的时候,每个计算机发的包都广播给集线器的所有端口,网络线路就会很频繁,形成网络风暴,性能就不好了。
这个时候出现交换机,交换机可以说是在集线器的基础上优化而来,集线器是无脑的广播数据包,而交换机则更加智能化,交换机传输数据包会直接传输到指定的端口上去,不会每次都广播给所有端口。即发送给某一台计算机的数据包,这个局域网的其他计算机不会接收到(如果用集线器其他计算机也会接收到)
交换机的工作原理
那交换机是如何实现智能化传输数据包的呢?
简单说一下实现方案的思路,交换机里面保存了一张MAC的地址表,这个表会记录相连的所有设备的MAC地址以及对应的端口,即某个设备的MAC地址,以及这个设备插入交换机的端口位置。然后根据发送的数据包里面的接收方MAC地址,在这个表里面找到这一行记录,即可知道这个数据包要从交换机的哪个端口转发出去,所以就不需要广播给所有端口了。
注:交换机根据 MAC 地址表查找 MAC 地址,然后将信号发送到相应的端口。
MAC地址表如何维护
这个表是怎么记录这些对应的MAC地址和端口数据的呢?这些数据是如何来的,这个表如何维护?
刚开始把我们计算机的网线插入交换机的端口上时,这个时候交换机的地址表还没有保存这个端口存在的MAC地址记录,当我们这个计算机首次发送数据包,这个数据包经过交换机时,交换机才会保存记录,记录我们的发送方的MAC地址以及MAC地址的传入端口。
即插入交换机端口的计算机首次发送数据包时,交换机的地址表才会记录它的MAC地址以及对应端口
特殊情况
上面描述的是交换机正常情况下的传输情况,其他还有三种特殊情况
- 1.MAC地址表没有这行记录
- 2.MAC地址表有这行记录,但是对应的计算机不在这个端口上了
- 3.MAC地址表有这行记录,但是这行记录和传入的端口是同一个端口
交换机与路由器的区别
好了今天的分享内容就这些,感谢你的持续关注,我们下期再会!记得点关注哦。