Gateway, Router, Modem, Bridge, Hub, Switch傻傻分不清(4)

847 阅读6分钟

这是我参与8月更文挑战的第26天,活动详情查看:8月更文挑战

交换机Switch

交换机分为二层,三层和四层,对应的是OSI的层级,最核心的功能是在局域网内进行高速的数据帧转发,其中二层交换机也被称为多端口高度集成的网桥。

二层交换机

  • 根据数据帧中的MAC地址进行高速转发,是数据链路层的设备;

  • 交换机同样没有隔离广播域,但和网桥一样,把冲突域缩小到了每个端口,而交换机的端口一般只连接一台host,这样便可实现在一个子网内的高速数据交换;

  • 交换机的工作机制:

    • 收到数据帧后解析其中的源MAC和目标MAC地址,并将源MAC地址登记到端口映射表;
    • 如果目标MAC地址在端口映射表中,则直接把数据帧发向该端口;
    • 如果目标MAC不在表中,则在所有端口中进行广播,收到对端响应后,则更新映射表,之后再向该MAC地址发送数据时就不需要再广播了;
  • 交换机能实现高达Gbps交换速率的原因:

    • 拥有一条高带宽的背部总线和内部交换矩阵。所有的端口都挂接在这条背部总线上,通过内部交换矩阵高速地将数据包传送到目的端口;
    • 端到端直连,实现全双工的工作模式;
    • 不需要解析高层协议,只需要解析帧头就可实现数据交换;
    • 更大缓存容量,以适应更大的数据流;
  • 很大程度上讲,交换机是基于网桥的设计理念,增加了更多端口,且每个端口只连接一台主机,是端到端的桥接;

  • 交换机的性能取决于背部总线的带宽,端口数量,MAC表大小,硬件芯片的性能,缓存大小,以及双工模式等等;

  • 基于以上的特点,交换机适合中型及大型网络的高速数据转发的场景;

三层交换机

  • 三层交换机就是在二层交换机的基础上,增加了路由模块,通过识别数据包中的IP地址进行路由,所以工作在第三层,是网络层设备;

  • 三层交换机工作机制:

    • 交换机收到数据包后,解析IP地址,如果在同一子网,则通过ARP查询目标MAC,然后直接通过MAC转发,和层二交换机工作机制一致;
    • 如果发现不在同一网段,则将ARP发给交换机中的路由模块,由路由模块去目标子网查询MAC地址,同时对该业务流进行标记;
    • 查询到目标MAC地址和端口后,路由模块储存一张映射表,含有源IP,源MAC,源端口,目标IP,目标MAC,目标端口,以及业务流标记,从而打通源IP地址和目的IP地址之间的一条通路;
    • 有了这条通路,该业务流后续的数据包,就没有必要再走层三路由,而是直接将通过MAC进行端口转发,实现一次路由,多次交换;
  • 它和路由器的核心区别是:

    • 路由器会将所有数据包进行拆解,识别IP地址后,再进行转发,导致速率降低;
    • 层三交换机会在第一次转发数据时进行路由,然后更新内部映射表,记录目标MAC地址,之后的数据包便不再解析IP,直接通过MAC进行转发;
    • 但层三交换机的路由性能和功能都不如路由器本身,主要仍然应用于大型局域网内的跨子网通信;
  • Vlan虚拟局域网是三层交换机的附加场景,我们再上一篇讲到了单臂路由,而三层交换机就能独自实现VLAN的相互通信;

    • VLAN的出现是为了通过分割广播域,来减小泛洪对网络和主机的影响;
    • VLAN通过将一台物理交换机,进行逻辑分割,将不同端口分割成多个逻辑上独立的交换机;
    • 不同VLAN之间不能直接通信,广播消息只能在同一个VLAN内部发送;
    • 不同VLAN具有不同的VLAN ID,并且会在每个数据包打上vlan tag来区别;
    • 不同VLAN会分配不同的网段,互相必须通过路由才能通信;

image.png

  • 层三交换机不是简单的叠加路由模块,而是使用经过高速优化的路由软件,适配高速背部总线的硬件来实现高速交换;

  • 基于以上特点,层三交换机适合于企业多部门大型局域网络内的数据高速转发场景;

层四交换机

  • 顾名思义,这是运行在第四层传输层的交换设备,不仅能读取IP,还能读取TCP和UDP消息,使其在决定路由时能够区分应用;

image.png

  • 层四交换机的端口映射表不仅包含连接host的MAC地址,IP地址,还包括socket id;

  • 层四交换机的基础是根据TCP/UDP数据包header中的端口号来区分不同应用协议类型,比如HTTS默认端口是443,DNS默认是53,FTP默认是21,并且可以识别自定义的端口号对应的应用类型;

  • 层四交换机更专注于实际业务需求,相比于层二MAC地址的连接和层三指定IP的连接,层四交换机根据主机不同的业务需求,请求连接的不同端口来动态地交换数据,把端到端通信,提升到了需求到应用地通信;

  • 虚拟IP技术与负载均衡:

    • 层四交换机的能力使得负载均衡可以通过硬件来实现,且效率更高;
    • 交换机连接多个提供不同服务的server群,每个server群共享一个虚拟IP,客户端发起请求会路由到这个虚拟IP;
    • 交换机收到请求后,根据端口确定服务类型,再负载均衡算法,从server群中选择最合适的服务器,并将虚拟IP更换为该服务器的真实IP,将请求转发至目标服务器,并建立两者的连接;
    • 标记该业务流,之后的数据包不再需要识别,而是根据MAC和端口映射直接转发,直到交换机发现会话为止;
  • 基于应用的优先级管理,因为层四交换机可以根据端口来识别应用类型,即可以对不同应用数据进行优先级设置,在高数传的情况下实现不同QOS;

感谢阅读,如有不准确和错误之处请留言指正,我会立即修正,感谢!




总结不易,请勿私自转载,否则别怪老大爷不客气

欢迎喜欢技术的小伙伴和我交流,微信1296386616