工业以太网交换技术解决了现场总线网络的性能局限,每个以太网设备都能够独享高带宽,从而缓解了带宽不足和网络瓶颈的问题,为未来更丰富更强大的自动化应用打下坚实的基础。本文主要探讨交换技术的基本原理。
交换是按照通信两端传输信息的需要,用设备自动完成的方法,把需要传输的信息送到符合要求的对象上的技术统称。广义的交换机就是一种在通信系统中完成信息交换功能的设备。
在网络系统中,交换概念的提出是对于共享工作模式的改进。HUB集线器就是一种共享设备,HUB本身不能识别目的地址,当一局域网内的A设备给B设备传输数据时,数据包在以HUB为架构的网络上是以广播的方式传输的,由每一台设备通过验证数据包头的地址信息来确定是否接收。也就是说,在这种工作方式下,同一时刻网络上只能传输一组数据帧的通讯,如果发生碰撞还得重试。这种方式就是共享网络带宽。
交换机根据数据帧的MAC(MediaAccessControl)地址进行数据帧的转发操作。交换机转发数据帧时,遵循以下规则:
如果数据帧的目的MAC地址是广播地址或者组播地址,则向交换机(除源端口外)所有端口转发;
如果数据帧的目的MAC地址是单播地址,但是这个地址并不在交换机的地址表内,那么也会向交换机(除源端口外)所有端口转发;
如果数据帧的目的MAC地址在交换机的地址表内,那么根据地址表转发到相应的端口;
如果数据帧的目的MAC地址与数据帧的源地址在同一个端口上,它就会丢弃这个数据帧,交换也不会发生。
交换机拥有一条很高带宽的背部总线和内部交换矩阵。交换机的所有端口都挂接在这条背部总线上,通过交换机地址表,交换机只允许必要的网络流量通过交换机。通过交换机的过滤和转发,可以有效的隔离广播风暴,减少误包和错包的出现,避免共享冲突。
交换机的交换地址表中,一条表项主要由一个MAC地址和该地址所位于的交换机端口号组成。整张地址表的生成采用动态自学习的方法,既当交换机收到一个数据帧以后,将数据帧的源地址和输入端口记录在交换地址表中。每一条地址表项都有一个时间标记,用来指示该表项存储的时间周期。如果在一定时间范围内地址表项仍然没有被引用,它就会从地址表中被移走。因此,交换地址表中所维护的一直是最有效和最精确的地址-端口信息。
交换机在同一时刻可进行多个端口对之间的数据传输。每一端口都可视为独立的网段,连接在其上的网络设备独自享有全部的带宽,无须同其他设备竞争使用。