网络交换机(英語: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工作站。这样一来,非TCP/IP节点的带宽便会受到负面的影响,就算同样的TCP/IP节点,如果他们的子网跟发送那个广播封包的工作站的子网相同,那么他们也会无缘无故地收到一些与他们毫不相干的网络广播,整个网络的效率因此会大打折扣。
工作方式
当一台交换机安装配置好之后,其工作过程如下:
- 收到某网段(设为A)MAC地址为X的计算机发给MAC地址为Y的计算机的数据包。交换机从而记下了MAC地址X在网段A。这称为学习(learning)。
- 交换机还不知道MAC地址Y在哪个网段上,于是向除了A以外的所有网段转发该数据包。这称为泛洪(flooding)。
- MAC地址Y的计算机收到该数据包,向MAC地址X发出确认包。交换机收到该包后,从而记录下MAC地址Y所在的网段。
- 交换机向MAC地址X转发确认包。这称为转发(forwarding)。
- 交换机收到一个数据包,查表后发现该数据包的来源地址与目的地址属于同一网段。交换机将不处理该数据包。这称为过滤(filtering)。
- 交换机内部的MAC地址-网段查询表的每条记录采用时间戳记录最后一次访问的时间。早于某个阈值(用户可配置)的记录被清除。这称为老化(aging)。
对于全交换(full-switch)局域网,交换机每个端口只连接一台设备,因此不会发生碰撞。交换机也不需要做过滤。
工作在OSI不同层级的交换技术
现代商业交换机主要使用以太网接口。提供多端口的二层桥接是以太网交换机的核心功能,而很多交换机也提供其他层级的服务,这种不仅仅提供了桥接功能的交换机也被称为多层交换机。多层交换机可以在许多层级上学习拓扑结构,也可以在一层或多层上进行转发。
一层
一层网络设备传输数据而不控制任何流量,比如集线器。任何进入端口数据包会被转发到除进入端口之外的其他所有端口。具体而言,即每个比特或码元被转发时是原封不动的。由于每个数据包被分发到所有端口,其冲突会影响到整个网络,进而限制了它的整体的能力。
到21世纪初,集线器和低端交换机的价格差异很小。[1]对于特定应用,集线器在一段时间内还是能够发挥作用的,比如给数据包分析器提供网络流量的副本。网络分流器还有交换机的端口镜像也可以实现同样功能。
二层
二层交换机依据硬件地址(MAC地址)在数据链路层(第二层)传送网络帧。
二层交换机对于路由器和主机是“透明的”,主要遵从802.1d 标准。该标准规定交换机通过观察每个端口的数据帧获得源MAC 地址,交换机在内部的高速缓存中建立MAC 地址与連接埠的映射表。当交换机接受的数据帧的目的地址在该映射表中被查到,交换机便将该数据帧送往对应的連接埠。如果它查不到,便将该数据帧广播到该連接埠所属虚拟局域网(VLAN)的所有連接埠,如果有回应数据包,交换机便将在映射表中增加新的对应关系。当交换机初次加入网络中时,由于映射表是空的,所以,所有的数据帧将发往虚拟局域网内的全部連接埠直到交换机“学习”到各个MAC 地址为止。这样看来,交换机刚刚启动时与传统的共享式集线器作用相似的,直到映射表建立起来后,才能真正发挥它的性能。这种方式改变了共享式乙太网抢行的方式,如同在不同的行驶方向上铺架了立交桥,去往不同方向的车可以同时通行,因此大大提高了流量。从VLAN的角度来看,由于只有子网内部的节点竞争带宽,所以性能得到提高。主机1 访问主机2 同时,主机3 可以访问主机4 。当各个部门具有自己独立的服务器时,这一优势更加明显。但是这种环境正发生巨大的变化,因为服务器趋向于集中管理,另外,这一模式也不适合Internet的应用。不同VLAN之间的通讯需要通过路由器来完成,另外为了实现不同的网段之间通讯也需要路由器进行互连。
三层
三层交换机则可以处理第三层网络层协议,用于连接不同网段,通过对缺省网关的查询学习来建立两个网段之间的直接连接。
三层交换机可以实现路由器的全部或部分功能,但只能用于同一类型的局域网子网之间的互连。这样,三层交换机可以像二层交换机那样通过MAC地址标识数据包,也可以像传统路由器那样在两个局域网子网之间进行功能较弱的路由转发,它的路由转发不是通过软件来维护的路由表,而是通过专用的ASIC芯片处理这些转发;
四层
四层交换机可以处理第四层传输层协议,可以将会话与一个具体的IP地址绑定,以实现虚拟IP [2] ;
七层
更加智慧的交换器,可以充分利用頻宽资源来过滤,识别和处理应用层数据转換的交换设备。
分类
形状尺寸
交換器有多種形式,包括獨立的桌上型設備,通常用於家庭或辦公環境中,安裝在配線櫃之外。機架式交換器,則適合安裝在設備機架或機櫃中。DIN導軌安裝的交換器,常用於工業環境。以及小型安裝交換器,安裝在電纜管道、地板盒或通信塔中,例如在光纖到辦公室的基礎設施中。
機架式交換器可能是獨立設備、可堆疊交換器,或具有可更換線卡的大型機箱單元。
工作溫度
依照乙太網交換器經由為適應不同工作溫度所做的耐受設計及出廠合規測試,分為商業等級乙太網路交換器與工業等級乙太網路交換器。商業等級乙太網路交換器通常適用0℃~70℃,工規乙太網交換器適用-40℃~70℃。商規乙太網交換器常用的場所在於辦公室或有空調的室內空間,而工規乙太網路交換器因為常配備於室外溫差更大且無空調的安裝空間中,因此其機器結構內的散熱設計更為重要。
網管型與非網管型
依照是否可透過內建網管軟體區分為網管型交換器與非網管型交換器。網管型交換器適合用在透過中控主機可由人員作遠端做網路設備開啟與關閉需求的架構中,通常用於有較高管理需求的網路架構核心端。而非網管交換器無內建網路軟體配置,安裝簡單,隨插即用,所以適合放在較邊緣,無需做精細管理的網路區域中。
配置选项
流量监控
带宽
网络交换机带宽分为:10Mb/s、100Mb/s、1Gb/s、2.5Gb/s、10Gb/s、40Gb/s、100Gb/s。
Mbps换算MB/s:1Mbps=0.125MB/s。
参考文献
- ^ Matthew Glidden. Switches and Hubs. About This Particular Macintosh blog. October 2001 [June 9, 2011]. (原始内容存档于2019-01-06).
- ^ 二层、三层、四层交换机的区别. 太平洋电脑网. 2004-06-08 [2014-11-18]. (原始内容存档于2014-02-28).
参见