电脑技术学习

三层交换机和路由器的区别

dn001

  三层交换机和路由器都工作在网络的第三层,根据ip地址进行数据包的转发(或交换),原理上没有太大的区别, 这两个名词趋向于统一,所谓交换路由器和路由交换机指的是同一样东西。我们可以认为三层交换机就是一个多端口的路由器。
  
  但假如从二者的历史的发展的角度去寻找,我们还是能够找出一些差别的:
  
  路由器的历史比较久远一些,80年代中期思科就推出了业界第一台路由器。路由器的推出是为了解决远程的、 不同网段的互连互通,所谓“路由”就是根据网络上数据包(如IP Packet)的目的地址(如IP地址)查表, 以决定并将该数据包转发到通往目的地的“下一跳”。由于路由算法比较复杂, 早期的路由器一般都是基于CPU以“单跳时钟”指令计算的方式来处理和转发数据包,这种方式转发数据包的效率是比较低的。 但我们不要忘了,在当时,远程广域的互连互通是第一位的,而需要并用得起路由器的是大企业大机构(如银行)。一方面, 承载数据的广域网链路速度比较低(低于1个E1=2Mbps,如PSTN、ISDN、DDN、Frame Relay等),另一方面当时的应用以UNIX主机计算为主,所以网络传输的速度并不是大问题。
  
  总结起来,传统的路由器有3个特点:
  
  1、基于CPU的单步时钟处理机制
  2、能够处理复杂的路由算法和协议
  3、主要用于广域网的低速数据链路
  
  进入90年代,PC机的飞速发展,导致以太网和TCP/IP协议的迅速崛起和广泛应用,企业内部网络越来越庞大, Internet已经成为最大的广域网,企业的远程互连互通已经越来越从自建(租)的专网转向Internet。 这些变化直接导致了交换机的出现,路由器的升级换代,以及路由器和交换机的融合。
  
  最早的以太网交换机于95年前后问世,其前身是网桥。网桥工作在网络的第二层,它的作用之一是隔离网络广播风暴。我们知道, 以太网上主机之间通讯链路的建立很大程度上依靠于一种广播包,严格来说广播包只负责建立和维系通讯而不传送有效的数据, 当网络上主机数量增大时广播包会以指数级增长,占用太多带宽,降低网络效率(权威的说法,一个以太网段的主机数量不要超过30台, 超过时就应该用网桥加以隔离)。网桥很像一个有着左膀和右臂的人, 它根据以太网上数据帧(Frame)的目的MAC地址决定是否将帧在左右手之间交换。广播包是没有目的地址的(意味着给所有人), 所以被隔断。我们可以把交换机理解成一个多端口的网桥,连接在它的每一个端口上的主机或网段独享带宽,各端口之间的交换相对独立, 提高了网络效率。交换机工作在网络第二层,算法相对简单,很快就有芯片厂家将其固化, 生产出交换机的核心ASIC芯片,推出硬件的线速度交换机。
  
  总结起来,传统的交换机有3个特点:
  
  1、基于ASIC硬件,线速度交换
  2、工作在网络第二层,主要是以太网
  3、主要用于局域网的快速数据交换
  
  随着企业内部网络的进一步扩到,主机增加到成百上千台,网络第三层的广播风暴成为了问题(权威的说法: 一个TCP/IP网段上的主机数量不要超过300台)。传统的交换机工作在网络第二层,不能隔离三层的广播。 一个的解决办法是在交换机上做VLAN隔离,再将VLAN上汇聚到上级路由器上,由路由器实现不同网段(3层网段)之间的路由转发。 这就是最初的路由+交换模型,典型的产品是CISCO的Catalyst 5500路由交换机。
  
  路由+交换是一个过渡产品, 今天的三层交换机在体系结构上已有很大的改观,路由和交换通过ASIC充分揉合,第一个包经过路由算法确定路径后, 后续的数据包交由交换引擎实现线速度交换。当然,把所有的路由算法都固化还很困难, 这就是今天的三层交换机要么不能100%实现线速交换,要么只能支持有限的简单的路由协议的原因。
  
  传统的路由器随着Internet的发展也继续保持其生命力。复杂的协议(如BGP、MPLS), 新的功能和应用(如VPN、Security)都离不开软件和CPU的计算,但路由器在体系结构上也进行了非常大的改进, 并融合了越来越多的固件和ASIC。
  
  路由和交换的发展透析着IT产业软件和硬件的演变,并将随着人们对功能和性能的不懈追求而继续演变下去。