zoukankan      html  css  js  c++  java
  • 桥接、交换和路由的区别

    在我刚接触网络知识的时候,有时候总是会被一个问题所困扰,那就是桥接、交换和路由之间的区别,相信大部分初学计算机网络知识的网友朋友都会有这样的情 况。前几天就遇到了一位网友朋友提出这样的疑问,今天我就带大家来了解什么是桥接、交换和路由,并且对于三者之间的区别及应用场景做个详细的介绍。

     

    1 、什么是桥接

           桥接工作在OSI 网络参考模型的第二层数据链路层,是一种以MAC 地址来作为判断依据来将网络划分成两个不同物理段的技术,其被广泛应用于早期的计算机网络当中。

            我们都知道,以太网是一种共享网络传输介质的技术, 在这种技术下,如果一台计算机发送数据的时候,在同一物理网络介质上的计算机都需要接收,在接收后分析目的MAC 地址,如果是属于目的MAC 地址和自己的MAC 地址相同便进行封装提供给网络层,如果目的MAC 地址不是自己的MAC 地址,那么就丢弃数据包。

           桥接的工作机制是将物理网络段(也就是常说的冲突域)进行分隔,根据MAC 地址来判断连接两个物理网段的计算机的数据包发送。

    下面,我们举个例子来为各位网友讲解:在下图中的网络结构中,有两台集线器分别连接多台计算机,我们分别将A 集线器和B 集线器定为A 冲突域和冲突域。在这样的网络环境中,如果计算机A 向计算机C 发送数据包时,集线器A 会将数据包在整个网络中的全部计算机(包括集线器B )发送一遍,而不管这些数 据包是不是需要发送到另一台区域B 。

     

    1

     

           我们再将集线器A 和集线器B 分别连接到网桥的两个端口上,如果计算机A 再向计算机C发送数据包时会遇到什么样的情况呢?这时集线器A 也是同样会将数据包在 全网发送,当到达网桥后,网桥会进行数据包目的MAC 地址的分析,然后对比自己学习到的MAC 地址表,如果这个表中没有此MAC 地址,网桥便会在两个网段 上的发送数据包,同时会将计算机A 的MAC 地址记录在自己的表当中。

           经过多次这样的记录,网桥会将所有的MAC 地址记录,并划分为两个段。这时计算机A 再次发送数据包给B 的时候,因为这两台计算机同处在一个物理段位上,数 据包到达网桥时,网桥会将目的MAC 地址和自己的表进行对比,并且判断计算机A 和计算机B 在同一个段位上,便不会转发到区域B 当中,而如果不在同一个物理 段当中,网桥便会允许数据包通过网桥。

           通过以上的例子我们了解到,网桥实际上是一种控制冲突域流量的设备。网桥现在基本上已经很少用到了,除了隔离冲突域以外,网桥还可以实现不同O 类型网络的连接(令牌环网和以太网之间的连接)和网络的扩展(IEEE 的5.4.3 连接规则)等等功能。

    2 、什么是交换

           交换同样工作在OSI 网络参考模型的第二层数据链路层,也是一种以MAC 地址来作为判断依据来将网络划分成两个不同段的技术,不同的是交换将物理网段划分到每一个端口当中,简单的理解就是一种多端口的网桥,它实际上是一种桥接技术的延伸。

           在前面的了解当中,我们已经知道桥接是连接两个不同的物理网段(冲突域)的技术,交换是连接多个物理网段技术,典型的交换机通常都有多个端口,每个端口实 际上就是一个网桥,当连接到交换机端口的计算机要发送数据包时,所有的端口都会判断这个数据包是否是发给自己的,如果不是就将其丢弃,这样就将冲突域的概念扩展到每个交换机端口上。

           我们还是举例为大家说明,在下面的图中,我们可以看到计算机A 、B 分别连接到交换机的不同端口当中,当计算机A 向B 发送数据包时,假设这时A 端口并没有学习到B 端口的MAC 地址,这时,A 端口便会使用广播将数据包发送到除A 端口以外的所有端口(广播域),当其他计算机接收到数据包后会与自己的MAC 地址进 行对比,然后简单的丢弃数据包;当B 接收到数据包后,通过对比后接收数据包,并且记录源地址。通过反复这样的学习,交换机会构建一个基于所有端口的转发数据库,存储在交换机的内容可寻址存储器当中(CAM )。

     

    1

     

           在交换机学习到所有端口的信息后,计算机A 再次发送数据包给B 时,就不再广播地址,而是直接发送到转发数据库中所对应的B 端口。通过这样的学习,在交换机上实现了微分段,每个连接到交换机端口的计算机都可以独享带宽。

    3 、什么是路由

           路由工作在OSI 参考模型的第三层网络层当中,它是基于第三层的IP 地址信息来作为判断依据来将网络划分成不同段(IP 子网)的技术,与桥接和交换不同, 路由划分的是独立的逻辑网段,每个所连接的网段都具有独立的网络IP 地址信息,而不是以MAC 地址作为判断路径的依据,这样路由便有隔离广播的能力;而交换和桥接是划分物理网段,它们仅仅是将物理传输介质进行分段处理。同时路由具备路径选择的功能,会根据不同的目的IP 地址来分析到达目的地最合适的路径。

           在下图中,我们看到路由器所连接了三台交换机,这三台交换机分别被划分为三个不同的子网地址段:192.168.0.0 、192.168.1.0 、 192.168.3.0 。当计算机A 向B 发送数据包时,在不知道到达B 的路径时,交换机A 会将数据包在自己所在的段上全网广播,当到达路由器中,路由器便 不会再广播这个数据包,它根据路由协议的规则来判断到达B 应该选择将其转发到那个段上,这时便会将数据包转发到对应的IP 地址段当中,而不广播到不需要这个数据包的C 网段当中。如果路由器中没有规则定义到达目的IP 地址的路径时,它会直接丢弃这个数据包。

     

    3


           
    路由器主要有路径选择和数据转发两个基本功能,但在很多场景下,路由器一般都承担着网关的角色。在国内,我们通常都是采用PPPOE 拨号或者静态路由两种 方式实现局域网共享上网。这时,路由器主要的功能是实现局域网和广域网之间的协议转换,这同样也是网关的主要用途。

    4 、三者之间的区别

    1 )位于参考模型的层数不同

           在开放系统互联参考模型当中,网桥和交换机都是位于参考模型的第二层- 数据链路层,而路由器则位于更高一层- 网络层。

    2 )基于的路径判断条件不同

           由于位于OSI 参考模型的层数不同,所以使交换机、网关这两种设备判断路径的条件也不相同,网桥和交换机是根据端口的MAC 地址来判断数据包转发,而路由器则使用IP 地址来进行判断。

    3 )控制广播的能力不同

           网桥和交换机(三层交换机或支持VLAN 功能的除外)这两种设备是无法控制网络的广播,如果有广播数据包,就会向所有的端口转发,所以在大的网络环境当中,必须得要有路由器来控制网络广播。

    4 )智能化程度不同

           在判断数据的时候,网桥只能判断是否在同一个物理网段,交换机则可以判断数据包是属于那个端口,但是这两种设备都没有选择最优路径的能力,而路由器基于IP 地址判断路径,所以会根据IP 地址信息来判断到达目的地的最优路径。

     

  • 相关阅读:
    Study Plan The TwentySecond Day
    Study Plan The Nineteenth Day
    Study Plan The TwentySeventh Day
    Study Plan The Twentieth Day
    Study Plan The TwentyFirst Day
    python实现进程的三种方式及其区别
    yum makecache
    JSONPath 表达式的使用
    oracle执行cmd的实现方法
    php daodb插入、更新与删除数据
  • 原文地址:https://www.cnblogs.com/nickleback/p/3163535.html
Copyright © 2011-2022 走看看