交换机(三层)转发原理

2023-11-13

1. 三层交换机转发原理

在这里插入图片描述
    如图所示,假如主机A想访问主机B,首先主机A会将自己的IP地址和子网掩码做与操作,得出网路地址(如:Host-A的IP地址100.1.1.2与自身掩码255.255.255.0做与操作后,得到的网络号是100.1.1.0)。然后判断目的IP地址(即Host-B的IP地址)与自己的网络地址是不是在同一个子网。因为图中主机A和主机B不在同一子网内,所以需要进行三层转发。

1、主机A发送ARP广播获取网关MAC地址

    主机A想访问主机B,首先要有主机B的MAC地址,由于主机A和主机B不在同一子网,所以主机A首先会向缺省网关发送ARP广播报文来获取网关的MAC地址。ARP报文格式如下:
在这里插入图片描述
2、交换机形成主机A的MAC表项,并用网关MAC地址回应主机A的ARP请求

    交换机收到ARP广播报文后,首先学习ARP报文Ethernet头部的源MAC地址,交换机芯片将自动记录主机A的MAC地址(00e0-d26b-8121)、接收该ARP报文的交换机接口号(E1/0/0)及此接口所属的VLAN(VLAN 10)等信息,并形成一条MAC表项放入交换机MAC表中。同时,交换机也会通过软件把主机A的IP、MAC、上连到交换机的接口等信息保存到交换机的硬件转发表里(三层硬件表项,MAC表是没有IP的)。

    由于主机A发送的ARP广播报文中的目的IP地址(100.1.1.1)就是交换机上接收该ARP广播报文的接口(E1/0/1)所属VLAN(VLAN 10)的IP地址,所以交换机将使用vlan10的MAC地址回复主机A的ARP请求。ARP回复报文如下:
在这里插入图片描述
3、主机A把网关MAC当作主机B的MAC访问主机B

    主机A收到网关的ARP回应报文后,会把网关的MAC地址当成是主机B的MAC地址,这样主机A发送数据给主机B时就会使用网关MAC作为目的MAC来封装数据侦,侦格式如下:
在这里插入图片描述
4、交换机查找硬件转发表/路由表进行三层转发

    交换机收到主机A发来的数据报文后,仍然会首先学习数据报文Ethernet头部的源MAC地址,然后根据Ethernet头部的目的MAC查找交换机的MAC表,此时发现目的MAC地址就是本地VLAN的MAC地址,这种情况下交换机会把该报文上送到交换芯片的三层引擎处理。三层引擎将首先查找硬件转发表。

    ⑴ 如果硬件转发表中有匹配项,则根据报文目的IP地址作相应处理:

     ① 目的IP地址就是本地的IP地址,则交相应模块处理。

     ② 目的IP是其他设备IP地址,本地只是转发,则根据硬件转发表项使用出接口MAC替换报文的源MAC地址,用下一跳MAC替换报文的目的MAC地址,同时TTL值减1,继续转发。(此处与二层的区别在于需要对报文进行源、目的MAC进行替换)

    ⑵ 如果不匹配则查找路由表,有匹配项则按照上面(2)中的操作进行,同时把相应的目的IP、下一跳MAC、出接口等信息存储到硬件转发表项中,下次就不需要查路由表了,这就是所谓的一次路由多次交换。

    ⑶ 如果路由表也没有匹配项,则丢弃报文。

    此处,由于主机A数据报文的目的IP是主机B的地址,并且主机B和交换机直连,交换机的硬件转发表/路由表已经有主机B的路由表项,所以交换机将主机A发来的报文中的源、目的MAC地址作替换,同时TTL值减1,然后发给主机B。经过MAC替换后的报文格式如下:
在这里插入图片描述
    这样主机A就把数据报文发到了不同网段的主机B。同时交换机上也保存了关于主机A和主机B的硬件转发表项,以后主机A和主机B互访,以及其他网段主机访问主机A或主机B交换机就可以根据硬件转发表项直接转发,而不需要查找路由表。
    

2. 二层交换机和三层交换机的区别

在这里插入图片描述
在这里插入图片描述
    1. 工作层级不同:二层交换机工作在数据链路层,三层交换机工作在网络层,三层交换机不仅实现了数据包的高速转发,还可以根据不同网络状况达到最优网络性能。

    2. 原理不同:二层交换机的原理是当交换机从某个端口收到一个数据包,它会先读取包中的源MAC地址,再去读取包中的目的MAC地址,并在地址表中查找对应的端口,如表中有和目的MAC地址对应的端口,就把数据包直接复制到这个端口上。三层交换机的原理比较简单,就是一次路由多次交换,通俗来说就是第一次进行源到目的的路由,三层交换机会将此数据转到二层,那么下次无论是目的到源还是源到目的都可以进行快速交换。

    3. 功能不同:二层交换机基于MAC地址访问,只做数据的转发,并且不能配置IP地址,而三层交换机将二层交换技术和三层转发功能结合在一起,也就是说三层交换机在二层交换机的基础上增加了路由功能,可配置不同vlan的IP地址,vlan之间可通过三层路由实现不同vlan之间通讯。

    4. 应用不同:二层交换机主要用于网络接入层和汇聚层,而三层交换机主要用于网络核心层,但是也存在少部分三层交换机用于汇聚层的现象。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

交换机(三层)转发原理 的相关文章

  • 网管实战(6):忘记交换机密码的处理(HUAWEI S5735)

    今天拿到一台华为S5735的交换机 有密码进不去 网上找资料进入了 记录下来以备后查 利用交换机的BootROM提供了清除Console口密码的功能 在用户使用Console口登录的时候跳过密码检查 进入交换机后修改Console口密码 然
  • 网络基础学习----交换机,VLAN之间通信,链路聚合,路由器,协议等

    一 知识点总结 1 交换机 原理 交换机有一张Mac地址表 当收到一个数据帧的时候会识别MAC地址并查找Mac地址表中对应的接口进行转发 MAC地址表具有自动学习的功能 二层交换机 三层交换机 二层交换机没有路由功能 三层交换机可以具有部分
  • 组网学习之什么是链路冗余(二)

    为什么要有链路冗余 一 设计冗余的目的 提高可靠性 通信时一条路不通走另一条路即冗余链路 采用具有冗余的核心层 分布层和接入层 试图消除网络中的单点故障 二 实施冗余的注意事项 1 MAC数据库不稳定 MAC地址表中的内容不稳定性源于交换机
  • 入行网络工程师一年的心得体会

    本人与2019年毕业与天津某高校的网络工程专业 大学期间就考了一个网络工程师的软考中级职称 过了一个没啥用的英语四级 也有想过考一个华为或者思科的IE证书 但是价格对于一个学生党来说 确实代价太大了 报一个培训班1w5 考试费用零零散散加起
  • 拥塞控制原理

    拥塞控制原理 讲拥塞控制原理之前 我们需要知道 拥塞是由什么引起的 拥塞主要是因为网络层的丢包过程引起 丢包出现的原因就是因为路由器的缓存有限 但发送方的发送速率又太高 导致分组在路由器上被丢弃 现在我们假设路由器有无限制的缓存 两个主机仅
  • SpringBoot集成RabbitMQ实现消息重试机制,消息重试3次失败后写入死信队列,消息重试3次失败后入库

    yml配置 spring rabbitmq username admin password admin host localhost port 5672 virtual host publisher confirm true 发布确认 开启
  • 华为snmpv3配置

    华为snmpv3配置 snmp agent 开启SNMP协议 snmp agent community read huawei acl 2001 只读属性为huawei 匹配acl 2001 snmp agent community wri
  • HCIP笔记

    HCIP笔记 IERS OSPF协议基础 基于HCIA笔记 链路状态路由协议 OSPF的一些补充 RIP的不足 RIP是基于距离矢量算法的路由协议 RIP协议的组播地址为224 0 0 9 存在收敛速度慢 度量值不科学 扩展性差问题 互联网
  • H3C配置ssh密码认证登录

    注 在用户使用SSH登录交换机时 交换机对所要登录的用户使用密码对其进行身份验证 生成RSA和DSA密钥对 H3C rsa local key pair create H3C public key local create dsa 设置用户
  • Cisco Packet Tracer 实验:生成树配置

    实验目的 1 理解广播风暴的成因 2 掌握STP和RSTP原理及配置方法 实验内容 实验描述 学校为了开展计算机教学和网络办公 建立的一个计算机教室和一个校办公区 这两处的计算机网络通过两台交换机互联组成内部校园网 为了提高网络的可靠性 作
  • MQ可以用在哪些地方,解决什么问题?

    MQ kafka是以吞吐量高而闻名 不过其数据稳定性一般 而且无法保证消息有序性 阿里巴巴的RocketMQ基于Kafka的原理 利用Java代码打造 弥补了Kafka的缺点 继承了其高吞吐的优势 其客户端目前以Java为主 RabbitM
  • 华为eNSP--4多个路由器连接配置(静态路由)

    R1路由器的配置 Huawei int e0 0 0 Huawei Ethernet0 0 0 ip add 192 168 1 10 24 Huawei Ethernet0 0 0 int e0 0 1 Huawei Ethernet0
  • 华为S9306交换机版本升级及补丁安装步骤

    文章目录 背景介绍 升级前的准备 开启S9306 FTP服务 WIN7 10远程登陆FTP交换机查看配置是否成功 备份S9306交换机配置及版本文件 正式升级新版本操作步骤 第一步 上传升级过渡版本 第二步 设置交换机升级版本为启动运行版本
  • 计算机网络.第五节课.笔记.以太网、CSMA/CD、VLAN

    MAC地址 长度48位 即物理地址 硬件地址 全1为数据链路层广播地址 无效MAC帧 IEEE802 3 帧长度不是整数个字节 检验序列 FCS 查出差错 数据字段长度太大或太小 MAC帧格式 目的地址 6Byte 源地址 6Byte 类型
  • VLAN(虚拟局域网)的用法与配置

    一 交换机的作用 区别集线器 HUB HUB为物理层设备 只能直接转发电流 交换机为数据链路层设备 可以将电流与二进制转换 实现了以下功能 1 无限的传输距离 2 彻底解决了冲突 所有接口可以同时收发数据 3 二层单薄 物理寻址 在一个交换
  • 白话学习防火墙3 之防火墙工作模式(适用于IPS、IDS、WAF等其他安全设备)

    说白了 透明模式就是当交换机使 路由模式就是当路由使 混杂就是杂交物种 即当作路由使 又当作交换机使 透明模式 透明模式一般用于网络建设完 网络功能基本已经实现的情况下 用户需要加装防火墙以实现安全区域隔离的要求 早期也称之为桥模式 桥这个
  • 计算机网络(互联网组成、计算机通信方式、电路、报文、分组交换、主要性能指标)

    互联网的组成 边缘部分 由主机组成 这部分是用户直接使用的 核心部分 由网络和路由器组成 边缘部分 计算机之间通信 主机A和主机B进行通信 实际上是指 主机A的某个进程和主机B上的另一个进程进行通信 或简称为 计算机之间通信 计算机的进程
  • 路由器与交换机的基本工作原理

    本文介绍路由器与交换机的基本工作原理 在介绍这之前先来看一下OSI七层工作模型 现在开始解释路由器的作用及其基本工作原理 路由器的作用 1 异种网络互连 比如具有异种子网协议的网络互连 2 子网协议转换 不同子网间包括局域网和广域网之间的协
  • 华为华三思科 配置arp IP地址和mac地址绑定

    华为
  • 交换机与路由器工作原理

    前言 这篇博客的主要目的是为了聊一下路由器和交换机 以及它们各自的工作原理和对应的两张表 交换机 1 简单介绍交换机 这里的交换机主要讲的是 二层交换机 它工作在OSI七层模型中的第二层 也就是数据链路层 因此就不得不说一下数据链路层的功能

随机推荐

  • 使用计算机结束时断开终端的连接属于什么,计算机结束时断开终端的连接属于什么...

    计算机结束时断开终端的连接属于外部终端的物理安全 终端安全管理 endpoint security management 是一种保护网络安全的策略式方法 它需要终端设备在得到访问网络资源的许可之前遵从特定的标准 推荐学习 web前端视频教程
  • 【数模】插值算法

    插值算法的介绍 插值的作用 当现有的数据是极少的 不足以支撑分析的进行时 用于 模拟产生 一些新的但又比较靠谱的值来满足需求 插值函数 插值 插值法的概念 插值法的分类 插值多项式 P x 为次数不超过n的代数多项式 即 数模中也常见 但不
  • ARM——体系架构

    1 ARM简介 ARM是Advanced RISC Machines的缩写 它是一家微处理器行业的知名企业 该企业设计了大量高性能 廉价 耗能低的RISC 精简指令集 处理器 公司的特点是只设计芯片 而不生产 它将技术授权给世界上许多著名的
  • Centos下使用脚本快速安装GO语言环境

    Centos使用shell脚本快速安装go环境并安装spaceVim IDE 脚本如下 bin bash env git install echo 安装依赖中 sudo yum y install make autoconf automak
  • Tomcat配置context.xml问题

    关于Tomcat的配置文件问题 请参考Apache Tomcat官网Document菜单 根据版本号选择恰当的Reference 我使用的环境 netbeans 内嵌 Tomcat 8 0 1
  • 彻底删除VMware虚拟机

    您是否和我一样被VMware气到了呢 您是否再也不想理VMware了呢 您是否不想再在自己电脑上看到VMware这几个英文字母了呢 来吧 跟着我的步骤 一起和VMware说拜拜吧 一 在卸载VMware虚拟机之前 要先把与VMware相关的
  • 工业上的数控机床所属计算机应用的什么领域,以下哪一项不是企业初步战略方案包括的内容?()。...

    摘要 弹簧振子的振幅增加一倍 下业初则 步战工业机器人最重要的核心能力 社会学是指一门科学 略方即它以解释的方式来理解社会行动 略方据此 通过社会行为的过程及其结果 对社会行为作出因果解释 因此 社会学的研究对象是 研究的方法是 弹簧振子的
  • 西门子S7 模拟器使用教程

    一 S7协议概述 S7协议是西门子S7系列PLC通信的核心协议 它是一种位于传输层之上的通信协议 其物理层 数据链路层可以是MPI总线 PROFIBUS总线或者工业以太网 S7以太网协议本身也是TCP IP协议簇的一员 S7协议在OSI中的
  • PCB中过孔和通孔焊盘的区别

    在PCB设计中 过孔VIA和焊盘PAD都可以实现相似的功能 它们都能插入元件管脚 特别是对于直插 DIP 封装的的器件来说 几乎是一样的 但是 在PCB制造中 它们的处理方法是不一样的 1 VIA的孔在设计中表明多少 钻孔就是多少 然后还要
  • 接口继承_1

    摘自Jeffrey的CLR via CSharp 接口方法默认是virtual and sealed 意思是接口方法默认是没有继承的 这一点在你需要多态时需要注意 Base b new Base Derived d new Derived
  • 修改Windows Server 2012远程桌面连接端口并连接

    目录 文章目录 目录 一 修改注册表 二 添加防火墙放行端口 三 控制面板设置允许被远程连接 四 重启远程桌面服务 五 进行远程连接 一 修改注册表 步骤1 打开注册表 方法一 win键 R调出命令运行输入框 输入 regedit exe
  • 网络安全-常见面试题(Web、渗透测试、密码学、Linux等)

    目录 WEB安全 OWASP Top 10 2017 Injection 注入攻击 Broken Authentication 失效的身份认证 Sensitive Data Exposure 敏感数据泄露 XXE XML 外部实体 Brok
  • C#开发-----百变方块游戏

    转载请标明是引用于 http blog csdn net chenyujing1234 例子代码 http www rayfile com zh cn files b6ed0bc0 8e9e 11e1 8178 0015c55db73d n
  • Web前端开发精品课HTML CSS JavaScript基础教程HTML部分知识点总结

    内容来自莫振杰Web前端开发精品课HTML CSS JavaScript基础教程章节总结 第1章 HTML简介 1 前端技术简介 1 从Web1 0到Web2 0 网页制作已经变成前端开发了 对于前端开发来说 你要学的并不是什么 网页三剑客
  • 宿主机无法ping通docker容器IP解决

    背景 安装docker后 发现启动容器的端口8082 映射到宿主机的端口80访问主机没有反应 此时进入容器查看日志 发现并没有请求打进来 现象 正在连接 localhost localhost 1 80 已连接 已发出 HTTP 请求 正在
  • python3 Flask 简单入门

    flask是python里面最轻便的框架 这里演示了访问主页 登陆成功 登陆失败的页面显示 在编写URL处理函数时 除了配置URL外 从HTTP请求拿到用户数据也是非常重要的 Web框架都提供了自己的API来实现这些功能 Flask通过re
  • android游戏开发基础

    学习android已经差不多接近一年了 以前一直做的android应用 现在准备搞android游戏开发 觉得以前都没能把做应用的经验总结下来 现在决定要把游戏这块的记录下来 声明我也是初学者 首先得有一定的数学与物理基础 其次得具有一定的
  • ICLR 2022 超越Focal Loss PolyLoss用1行代码+1个超参完成超车

    pytorch版 有两种 交叉熵版和Poly1FocalLossloss GitHub abhuse polyloss pytorch Polyloss Pytorch Implementation 分类版 PolyLoss polylos
  • java-jdbc-db2

    0 得到结果集的一种方式 查询得到结果集的另一种方式 Statement stmt con createStatement String sql select value from restart ResultSet rs stmt exe
  • 交换机(三层)转发原理

    1 三层交换机转发原理 如图所示 假如主机A想访问主机B 首先主机A会将自己的IP地址和子网掩码做与操作 得出网路地址 如 Host A的IP地址100 1 1 2与自身掩码255 255 255 0做与操作后 得到的网络号是100 1 1