交换机知识详解之概念和原理

交换 switching 是按照通信两端传输信息的需要,用人工或设备自动完成的方法,把要传输的信息送到符合要求的相应路由上的技术统称。广义的交换机switch就是一种在通信系统中完成信息交换功能的设备。

  交换和交换机最早起源于电话通讯系统(PSTN),我们现在还能在老电影中看到这样的场面:首长(主叫用户)拿起话筒来一阵猛摇,局端是一排插满线头的机器,戴着耳麦的话务小姐接到连接要求后,把线头插在相应的出口,为两个用户端建立起连接,直到通话结束。这个过程就是通过人工方式建立起来的交换。当然现在我们早已普及了程控交换机,交换的过程都是自动完成。

  在计算机网络系统中,交换概念的提出是对于共享工作模式的改进。我们以前介绍过的HUB集线器就是一种共享设备,HUB本身不能识别目的地址,当同一局域网内的A主机给B主机传输数据时,数据包在以HUB为架构的网络上是以广播方式传输的,由每一台终端通过验证数据包头的地址信息来确定是否接收。也就是说,在这种工作方式下,同一时刻网络上只能传输一组数据帧的通讯,如果发生碰撞还得重试。这种方式就是共享网络带宽。

  交换机拥有一条很高带宽的背部总线和内部交换矩阵。交换机的所有的端口都挂接在这条背部总线上,控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的MAC(网卡的硬件地址)的NIC(网卡)挂接在哪个端口上,通过内部交换矩阵迅速将数据包传送到目的端口,目的MAC若不存在才广播到所有的端口,接收端口回应后交换机会学习新的地址,并把它添加入内部地址表中。

  使用交换机也可以把网络分段,通过对照地址表,交换机只允许必要的网络流量通过交换机。通过交换机的过滤和转发,可以有效的隔离广播风暴,减少误包和错包的出现,避免共享冲突。

  交换机在同一时刻可进行多个端口对之间的数据传输。每一端口都可视为独立的网段,连接在其上的网络设备独自享有全部的带宽,无须同其他设备竞争使用。当节点A向节点D发送数据时,节点B可同时向节点C发送数据,而且这两个传输都享有网络的全部带宽,都有着自己的虚拟连接。假使这里使用的是10Mbps的以太网交换机,那么该交换机这时的总流通量就等于2×10Mbps20Mbps,而使用10Mbps的共享式HUB时,一个HUB的总流通量也不会超出10Mbps

  总之,交换机是一种基于MAC地址识别,能完成封装转发数据包功能的网络设备。交换机可以学习”MAC地址,并把其存放在内部地址表中,通过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达目的地址。
北大青鸟网上报名
北大青鸟招生简章