网络交换机(英语:Network switch)是一种网络硬件,通过报文交换接收和转发数据到目标设备,它能够在计算机网络上连接不同的设备。一般也简称为交换机。
交换机是一种多端口的网桥,在数据链路层使用MAC地址转发数据。通过引入路由功能,一些交换机也可以在网络层转发数据,这种交换机一般被称为三层交换机或者多层交换机。
以太网交换机是网络交换机最常见的形式。第一个以太网交换机由Kalpana公司(1994年被思科收购)推出。在其他类型的网络中,交换机也普遍存在,如光纤通道、异步传输模式和InfiniBand。
中继器会在其所有端口转发相同的数据,让设备自行判断哪些是自己需要的数据,交换机则不然,它只会将数据转发到需要接收的设备。
交换机工作于OSI参考模型的第二层,即数据链路层。交换机内部的CPU会在每个端口成功连接时,通过将MAC地址和端口对应,形成一张MAC表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。因此交换机可用于划分数据链路层广播,即冲突域;但它不能划分网络层广播,即广播域。
交换机对数据包的转发是创建在MAC地址——物理地址基础之上的,对于IP网络协议来说,它是透明的,即交换机在转发数据包时,不知道也无须知道信源机和信宿机的IP地址,只需知其物理地址。
交换机在操作过程当中会不断的收集资料去创建它本身的一个地址表,这个表相当简单,它说明了某个MAC地址是在哪个端口上被发现的,所以当交换机收到一个TCP/IP 数据包时,它便会查看该数据包的目的MAC地址,核对自己的地址表以确认应该从哪个端口把数据包发出去。由于这个过程比较简单,加上这功能由一崭新硬件进行——ASIC,因此速度相当快。一般只需几十微秒,交换机便可决定一个IP数据包该往那里送。
如果目的地MAC地址不能在地址表中找到时,交换机会把IP 数据包“扩散”出去,即把它从每一个端口中提交去,就如交换机在处理一个收到的广播数据包时一样。二层交换机的弱点正是它处理广播数据包的手法不太有效,比方说,当一个交换机收到一个从TCP/IP工作站上发出来的广播数据包时,他便会把该数据包传到所有其他端口去,哪怕有些端口上连的是IPX或DECnet(英语:DECnet)工作站。这样一来,非TCP/IP节点的带宽便会受到负面的影响,就算同样的TCP/IP节点,如果他们的子网跟发送那个广播数据包的工作站的子网相同,那么他们也会无缘无故地收到一些与他们毫不相干的网络广播,整个网络的效率因此会大打折扣。
当一台交换机安装配置好之后,其工作过程如下:
对于全交换(full-switch)局域网,交换机每个端口只连接一台设备,因此不会发生碰撞。交换机也不需要做过滤。
现代商业交换机主要使用以太网接口。提供多端口的二层桥接是以太网交换机的核心功能,而很多交换机也提供其他层级的服务,这种不仅仅提供了桥接功能的交换机也被称为多层交换机。多层交换机可以在许多层级上学习拓扑结构,也可以在一层或多层上进行转发。
一层网络设备传输数据而不控制任何流量,比如集线器。任何进入端口数据包会被转发到除进入端口之外的其他所有端口。具体而言,即每个比特或码元被转发时是原封不动的。由于每个数据包被分发到所有端口,其冲突会影响到整个网络,进而限制了它的整体的能力。到21世纪初,集线器和低端交换机的价格差异很小。对于特定应用,集线器在一段时间内还是能够发挥作用的,比如给数据包分析器提供网络流量的副本。网络分流器还有交换机的端口镜像也可以实现同样功能。
二层交换机依据硬件地址(MAC 地址)在数据链路层(第二层)传送网络帧。二层交换机对于路由器和主机是“透明的”,主要遵从802.1d 标准。该标准规定交换机通过观察每个端口的数据帧获得源MAC 地址,交换机在内部的高速缓存中创建MAC 地址与端口的映射表。当交换机接受的数据帧的目的地址在该映射表中被查到,交换机便将该数据帧送往对应的端口。如果它查不到,便将该数据帧广播到该端口所属虚拟局域网(VLAN)的所有端口,如果有回应数据包,交换机便将在映射表中增加新的对应关系。当交换机初次加入网络中时,由于映射表是空的,所以,所有的数据帧将发往虚拟局域网内的全部端口直到交换机“学习”到各个MAC 地址为止。这样看来,交换机刚刚启动时与传统的共享式集线器作用相似的,直到映射表创建起来后,才能真正发挥它的性能。这种方式改变了共享式以太网抢行的方式,如同在不同的行驶方向上铺架了立交桥,去往不同方向的车可以同时通行,因此大大提高了流量。从VLAN的角度来看,由于只有子网内部的节点竞争带宽,所以性能得到提高。主机1 访问主机2 同时,主机3 可以访问主机4 。当各个部门具有自己独立的服务器时,这一优势更加明显。但是这种环境正发生巨大的变化,因为服务器趋向于集中管理,另外,这一模式也不适合Internet的应用。不同VLAN之间的通讯需要通过路由器来完成,另外为了实现不同的网段之间通讯也需要路由器进行互连。
三层交换机则可以处理第三层网络层协议,用于连接不同网段,通过对缺省网关的查询学习来创建两个网段之间的直接连接。
三层交换机可以实现路由器的全部或部分功能,但只能用于同一类型的局域网子网之间的互连。这样,三层交换机可以像二层交换机那样通过MAC地址标识数据包,也可以像传统路由器那样在两个局域网子网之间进行功能较弱的路由转发,它的路由转发不是通过软件来维护的路由表,而是通过专用的ASIC芯片处理这些转发;
四层交换机可以处理第四层传输层协议,可以将会话与一个具体的IP地址绑定,以实现虚拟IP ;
更加智能的交换器,可以充分利用频宽资源来过滤,识别和处理应用层数据转换的交换设备。
网络交换机带宽分为:10Mb/s、100Mb/s、1Gb/s、10Gb/s、40Gb/s、100Gb/s。
Mbps换算MB/s:1Mbps=0.128MB/s。