zoukankan      html  css  js  c++  java
  • 常见网络设备工作原理

    一、交换机

    二层交换机

      ① 二层交换机是一种可以完成数据交换功能的网络设备,它工作在数据链路层。
      ② 交换机端口数量多被称为多端口网桥。二层交换设备识别数据帧里面的mac地址信息,根据mac地址表来进行数据转发,从而在数据链路层实现同一网段内数据的快速转发。

    交换机对数据帧的转发行为泛洪(Flooding)、转发(Forwarding)和丢失(Discarding)

      泛洪:交换机把从某一端进来的数据帧通过所有其它端口转发出去(所有端口指的是除了收到该数据帧端口以外的所有端口)。

      转发:交换机把从某一端口进来的数据帧通过指定的另一端口转发出去(“另一端口”指的是除了收到该数据帧以外的指定端口)

    什么是mac地址表?

      在交换机里面存放了mac地址与交换机端口的映射关系。其中把存放该映射关系的地方称为mac地址表也称为CAM表。

    工作流程:

     ① 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;

     ② 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口;

     ③ 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上;

     ④ 如表中找不到相应的端口则把数据包广播(泛洪)到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。

    三层交换机

      ① 和路由器相比:三层交换机接口多,转发速度快,造价成本比较低

      ② 三层交换机转发依靠硬件ASIC芯片完成。

      ③ 三层交换机就是将二层交换机和三层转发合二为一的技术,从本质上来说就是“带有路由功能的二层交换机”。

      ④ 三层交换机:二层交换技术+三层转发技术(开启了路由功能)

    工作原理:

    三层交换机充分利用了“一次路由(首次数据报由CPU处理并转发,而后建立ASIC芯片的三层转发表项)、多次交换(之后来的相同的被称之为流(Flow)的数据报,直接根据ASIC芯片中的三层转发表进行数据转发)”的原理实现了三层交换机的高速转发性能。

    参考:https://baijiahao.baidu.com/s?id=1589735136955813160&wfr=spider&for=pc

    二、路由器

      ① 路由器是连接不同的局域网、广域网的硬件设备。路由器工作在OSI/RM的网络层。路由器的主要工作是为经过的每个数据包查找出一条最优的传输途径,因此路由器中会保存着各种数据包的相关传输路径数据,即路由表供路由选择时使用。

    路由表主要分:①直连路由②静态路由③缺省路由④动态路由

    工作原理:

    为经过路由器的每个数据包寻找一条最佳的传输途径,并将该数据包有效地传送到目的站点,当路由器从某一个端口收到一个数据包时,它首先把数据链路层的数据帧头拆掉,读取目的IP地址,然后查找路由表,如果确定了下一跳地址,则向源地址返回一个ICMP包,告知该目的地址不可达,从而把数据包丢弃。

    三、防火墙

    待总结

    愿你足够勇敢足够努力,足够努力! 愿你想要的明天如约而至!
  • 相关阅读:
    css3新单位vw、vh、vmin、vmax的使用介绍
    vue中的css作用域、vue中的scoped坑点
    vue组件中的样式属性:scoped,解决在父组件中无法修改子组件样式问题
    修改elementUI组件样式无效的问题研究
    Javascript里面的时间处理:将时间戳或时间对象转成字符串格式
    详解vue父组件传递props异步数据到子组件的问题
    vue父组件异步传递prop到子组件echarts画图问题踩坑总结
    父组件中调用子组件的方法和属性
    Echarts使用dataset数据集管理数据
    Echarts的legend改变图例图标为自定义图片
  • 原文地址:https://www.cnblogs.com/liuguojun/p/12009454.html
Copyright © 2011-2022 走看看