以太网交换机的特点:
首先介绍一下网桥:
网桥对收到的mac的目的地址进行转发和过滤,当网桥收到一个帧的时候,并不是向所有的接口都转发此帧,而是根据此帧的目的Mac地址,查找网桥中的地址表,然后确定将该帧转发到哪一个接口,或者是将他丢弃;
以太网交换机相当于一个多接口的网桥(通常有十几个接口);
相互通信的主机都是独占传输媒体,无碰撞的传输数据;

以太网交换机的自学习算法:(重要)

以太网交换机通过维护一个交换表来实现自学习功能;
- 首先,开始的时候交换表是空的;
- 假设此时A主机对B主机发送了MAC 帧,交换机接收到A发送的MAC帧之后,通过检查他的源地址和目的地址;(以下附上MAC帧的格式)后,

得到直到这个帧来自了哪个用户,并且用户A是从接口1发送进来的,那么交换机反向追根溯源,很容易就可以直到用户A从接口1发送数据,因此将映射添加到交换表中; - 但是在接收到由A发送到B的MAC帧的地址之后,虽然交换机可以通过反向追根溯源找到发送用户的接口;,但是由于是要发送出去到B接口,所以无法找到接受方用户B对应的接口是哪个,也无法知道用户B到底有没有在接口上;因此需要通过广播的方式向除了A之外的所有接口都发送这个MAC帧,假如用户B在接口上,那么B就会接收帧,而其他的接口对应的用户由于接收到的MAC帧的目的地址与自身的地址不符合,因此不会接收这个帧;通过这样的方式,B确实收到了A发送的帧;但是由于B没有发送数据(因为交换表只能通过发送方发送的MAC帧追根溯源来确定发送方和接口的对应关系),所以交换机仍然不知道用户B和接口的对应关系;只有当B也向某个用户发送MAC帧的时候,会将B和对应的接口加入到交换表中;一旦加入到交换表之后,假如A又向B发送了数据,这下由于交换表中有B用户对应的接口,所以直接通过查表的方式可以直接找到B并交付,就不再需要广播了;
- 存在的问题:当用户B由于某种原因不再响应或者和接口断开了,这时A又向B发送了数据呢?
对于这种情况,可再在交换表中维护一项“有效时间”,用户和接口建立映射之后,这个映射会持续一段时间,一旦某一个用户超过这个有效时间而没有任何响应,那么就判定这个用户已经“消失”,其他用户向该用户发送的消息并不会直接丢弃,而是向高层报告再进行其他处理;