网站首页/网络技术列表/内容

3层交换与路由的区别

网络技术2022-06-02阅读
网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。 当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。

传统的交换与路由区别

三层交换机在对第一个数据流进行路由后,它将会产生一个MAC地址与IP地址的映射表,当同样的数据流再次通过时,将根据此表直接从二层通过而不是再次路由,从而消除了路由器进行路由选择而造成网络的延迟,提高了数据包转发的效率。

假设两个使用IP协议的机器通过第三层交换机进行通信的过程,。。。若两个机器不在同一子网内,如发送机器A要与目的机器C通信,发送机器A要向“缺省网关”发出ARP包,而“缺省网关”的IP地址已经在系统软件中设置。这个IP地址实际上对应第三层交换机的第三层交换模块。所以当发送机器A对“缺省网关”的IP地址广播出一个ARP请求时,若第三层交换模块在以往的通信过程中已得到目的机器C的MAC地址,则向发送机器A回复C的MAC地址;否则第三层交换模块根据路由信息向目的机器广播一个ARP请求,目的机器C得到此ARP请示后向第三层交换模块回复其MAC地址,第三层交换模块保存此地址并回复给发送机器A。以后,当再进行A与C之间数据包转发进,将用最终的目的机器的MAC地址封装,数据转发过程全部交给第二层交换处理,信息得以高速交换。既所谓的一次选路,多次交换。

问题一:第二段说“则向发送机器A回复C的MAC地址”,我用ethereal抓包看过,L3交换机回的是自己的IP(默认网关)对应的MAC,而且从道理上讲,L3交换机也不可能回C的MAC给A啊,因为1,A和C不在一个网段,A保存C的MAC也没有意义;2,A发出去的ARP请求中没有C的IP, L3交换机怎么可能知道A想和C通信呢?

这么说来这段话说的不对?可是为啥流行着么广泛呢?是我的理解有误?抓包也有误?

问题二:如果把默认网关看成一个黑盒子,只从A和C来抓包,能否判断出来默认网关是router还是L3交换机么?

问题三:文档1说“三层交换机在对第一个数据流进行路由后,它将会产生一个MAC地址与IP地址的映射表”,请问这个表是什么表?难道是目的IP和下一跳 IP对应的MAC的对应关系?没见过这样的表啊,路由器上有arp表和路由表,交换机上有MAC表,L3交换机上有mac表,arp表,路由表。可是L3 交换机上没有见过文档1说的这种表啊?

问题四:“一次选路,多次交换”怎么理解?文档1说“当同样的数据流再次通过时,将根据此表直接从二层通过而不是再次路由”,我的理解是L3收到同样的数据流后,查看目的IP,然后查到下一跳IP对应的MAC以及接口,然后转出去。

可是这样的话,如果在L3交换机上我修改了下一跳,这个表怎么知道刷新呢?

另眼看的观点区别

我的观点:

问题1:上面这段话是有错误的,交换机永远不可能用主机C的MAC来回应主机A,而是用自己的和A机所在网段的虚接口的MAC来回应。 也就是说三层交换并没有改变数据的发送以及接收流程。

问题2:如果把默认网关看成黑盒子,那么的确无法判断是三层交换还是三层路由。

问题3/4:你说的这个表联系上下文应该指的是一个供硬件转发使用的转发表,三层交换的路由过程基本上是靠硬件完成的,当第一个包被转发后,系统会形成一个单独的转发表,后续的转发由特殊的ASIC硬件查询这个表来完成,不在走软件查询的路由过程,从而提高转发速度,但是这并没有从本质上改变数据转发的流程,这个就是”一次路由,多次交换“。

我认为的三层交换和三层路由的区别:

1、三层交换机能够提供比路由器大的多的转发速率,而路由器的转发速率相对较低。
2、三层交换机通常仅支持IP协议的告诉转发,路由器通常支持多种协议。
3、三层交换机的接口比较单一,且数目众多。路由器有丰富的接口类型,但是一般单一类型的接口数目较少。
4、三层交换机能够连接的网络类型较单一。路由器可以实现多种异种网络的互联。

另外,我认为交换机和路由器在转发上没有本质的区别,无非一个偏硬件,一个偏软件。况且现在的高速路由器也借鉴了交换机的技术,也实现了部分的硬件转发,从而也就有了“快速转发,”“极速转发”等等术语。

【相关文章】



网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。

相关阅读