交换机和路由器两个设备在数据机房中都非常重要,且外观非常相似,与交换机和路由器相似的还有集线器。这三个设备虽然外观相似但是对数据的处理方式是不同的。
集线器具有多个数据接口,主要目的是将连接到它数据端口上的设备全部连通。不具备过滤数据的功能,只能判断端口上是否有接相关设备。当连接到集线器端口上的设备向它发送数据时,集线器会将该数据复制到所有端口上,连接到该集线器上的所有设备都会接收到该数据。
其工作方式和对讲机有点类似,把相同的频段比作集线器,当一个对讲机发出信号时,在该频段范围内的所有对讲机都可以接收到该信号。放到计算机上面也是一样,当N台计算机通过集线器相连接时,当与集线器相连接的某一台计算机发送数据时,便通过广播方式发送到了与该集线器相连的其他计算机上,即使这些数据并不是发送给它们的。所以集线器的安全性很低且会产生不必要的流量,对带宽造成浪费。
交换机和集线器一样也是拥有多个端口的网络设备,但比集线器要智能许多。当计算机连接至交换机的某个端口时,交换机会先获取对应设备的物理地址(MAC物理地址在设备出厂的时候由设备供应商写入设备内部。),并将该地址存储于自己地址列表中,这个地址列表相当于是我们的邮政编码。当邮件到达物流中心的时候,工作人员会根据邮政编码对邮件进行分类并转发。交换机的也是如此,如果连接交换机的两台计算机要相互通信,A计算机需要先将携带B计算机MAC地址的数据包发送到交换机,交换机在接收到数据后在自己的地址表中查找与数据包所携带的MAC地址相匹配的端口,在将数据包通过该端口发送到B计算机。数据包就只会在A计算机和B计算机之间传输,在提升安全性的同时也提高了带宽的利用率。
集线器和交换机都只能用于内部网络中的数据交换(使用私有IP),它们不能对外部网络进行数据交换(例如访问互联网,公有IP)。要对外部数据进行数据的交换需要设备可以读取对应的IP地址,而集线器和交换机并不具备读取IP地址的功能,便需要用到路由器。
要弄清楚三台设备之间的不同需要先简单介绍一下IP地址。IP地址分为公有IP地址和私有IP地址,公用IP的IP地址是由因特网信息中心(Internet NIC)负责分配给注册并提交申请的组织机构。可以通过该IP地址直接访问因特网,可以理解为大家所说的广域网。私有IP地址是用于企业内部组件局域网,不可注册。假如我们现在需要访问嘉富(www.jfopt.cn)官网,在浏览器上输入的“www.jfopt.cn”这一串英文字符是域名,对应的219.234.7.230则是公用的IP地址。一个IP地址可以对应多个域名,一个域名只能对一个IP地址。
路由器的功能是将一个数据包根据对应的IP地址从一个网络路由转发到另一个网络设备中。当路由器收到数据时,第一步会检查该数据的IP地址是否和自己的IP地址相同,如果数据的IP地址和路由器的地址相同,路由器则接受这个数据。如果数据的IP地址和路由器自己的地址不相同,路由器则会将数据转发至其他网络。可以把路由器看做是快递员,数据包是邮件,而IP地址就是寄件和收件地址,快递员收到快递时根据地址送快递的过程就是路由器路由的过程。