Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >三层交换机报文转发过程

三层交换机报文转发过程

原创
作者头像
利又德智能感知
发布于 2022-06-13 07:14:57
发布于 2022-06-13 07:14:57
1.5K0
举报

    如图所示,假如主机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/0)所属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交换机就可以根据硬件转发表项直接转发,而不需要查找路由表。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
你所了解的三层交换机,是这样工作的
为什么我们说三层交换机的三层转发性能要比路由器的效率要高的多?有时候在很多书里会提及到现在路由器的软件做的也非常强大,几乎也能够达到限速转发的能力;但是软件能够和硬件比吗,不太可能;交换机之所以转发速度快是因为交换机使用了专门的ASIC硬件转发卡,而路由器是software-based 的转发。 我们习惯说,在二层网络环境中相同vlan之间可以通信,不同vlan之间不可以通信,如果想通信必须借助三层设备,所以说三层交换机必须要做的事情是路由转发,但是具体的工作原理是什么样的呢 ? 首先三层交换机在同一子网和
SDNLAB
2018/03/28
1.4K0
你所了解的三层交换机,是这样工作的
网工知识大扫盲——三层交换技术
今天给大家带来的是交换技术,主要是三层方向的,文中提到的示例都以锐捷设备为例,很适合大家查漏补缺,以下是目录:
网络技术联盟站
2021/04/23
2K0
二层交换机和三层交换机到底有啥区别?
网络交换机在当今网络架构中扮演着至关重要的角色,它们不仅能够接入各种终端设备,组建强大的局域网,还能实现所有设备之间的直接通信。随着网络技术的不断演进和应用场景的多样化,不同类型的交换机也得以广泛投入应用。
网络技术联盟站
2024/06/03
6590
二层交换机和三层交换机到底有啥区别?
交换机与路由器详细比较
作为计算机网络中最重要的两种数据包转发设备,交换机和路由器在功能设计方面既存在本质差别,又包含诸多相似之处,本文从两种设备的工作原理出发,详细介绍了它们之间的种种区别与联系。
我是东东东
2018/08/01
3.4K0
交换机与路由器详细比较
图解:二层与三层交换机之间到底有什么区别?
本文我们将学习和探讨OSI参考模型中二层和三层交换机的各种特性和应用,以及它们之间工作方式的区别。 这两种类型交换机的工作方式有所不同: 二层交换机可以识别数据包中的MAC地址,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。二层交换机不遵循路由算法。 三层交换机转发基于目标 IP 地址,数据包的目的地是定义的下一跳,三层交换机遵循路由算法。 二层交换机 如果二层交换机不遵循路由算法,那么它们将如何学习下一跳的 MAC 地址? 通过遵循ARP(地址解析协议)来实现。
SDNLAB
2022/05/10
5.7K1
图解:二层与三层交换机之间到底有什么区别?
【重识云原生】第四章云网络4.3.2节——VLAN技术
        VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。VLAN内的主机间可以直接通信,而VLAN间不能直接互通,从而将广播报文限制在一个VLAN内。
江中散人_Jun
2022/05/25
9730
【重识云原生】第四章云网络4.3.2节——VLAN技术
网络工程师必看 | 从动态图看VLAN技术,建议收藏!
VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。VLAN内的主机间可以直接通信,而VLAN间不能直接通信,从而将广播报文限制在一个VLAN内。
网络技术联盟站
2020/09/14
1.7K1
网络工程师必看 | 从动态图看VLAN技术,建议收藏!
深入分析三层网络交换机的原理和设计
传统路由器在网络中起到隔离网络、隔离广播、路由转发以及防火墙的作业,并且随着网络的不断发展,路由器的负荷也在迅速增长。其中一个重要原因是出于安全和管理方便等方面的考虑,VLAN(虚拟局域网)技术在网络中大量应用。VLAN技术可以逻辑隔离各个不同的网段、端口甚至主机,而各个不同VLAN间的通信都要经过路由器来完成转发。由于局域网中数据流量很大,VLAN间大量的信息交换都要通过路由器来完成转发,这时候随着数据流量的不断增长路由器就成为了网络的瓶颈。为了解决局域网络的这个瓶颈,很多企业内部、学校和小区建设局域网时都采用了三层交换机。三层交换技术将交换技术引入到网络层,三层交换机的应用也从最初网络中心的骨干层、汇聚层一直渗透到网络边缘的接入层。
利又德智能感知
2022/06/13
1.1K0
网络工程师必懂的以太网基础知识
以太网最早是指由DEC(Digital Equipment Corporation)、Intel和Xerox组成的DIX(DEC-Intel-Xerox)联盟开发并于1982年发布的标准。经过长期的发展,以太网已成为应用最为广泛的局域网,包括标准以太网(10 Mbit/s)、快速以太网(100 Mbit/s)、千兆以太网(1000 Mbit/s)和万兆以太网(10 Gbit/s)等。IEEE 802.3规范则是基于以太网的标准制定的,并与以太网标准相互兼容。
网络工程师笔记
2021/11/02
2.3K0
完全图解二层交换机、三层交换机、路由器,哪个才是王者?
在当今高度互联的数字化时代,计算机网络成为了现代社会的重要基础设施。而在构建和优化网络时,我们经常会遇到三种核心网络设备:二层交换机、三层交换机和路由器。这些设备在网络通信中扮演着不同的角色,对于数据的转发和路由起着关键作用。本文将深入探讨这三种网络设备,从它们的工作层次、功能、应用以及优缺点等方面进行全面对比,帮助读者更好地理解和选择适合自己网络需求的设备。
网络技术联盟站
2023/08/22
4.3K1
完全图解二层交换机、三层交换机、路由器,哪个才是王者?
VLAN技术_vlan的基本概念、作用和实现原理
MUX VLAN分为Principal VLAN和Subordinate VLAN,Subordinate VLAN又分为Separate VLAN和Group VLAN:
全栈程序员站长
2022/09/22
2.2K0
VLAN技术_vlan的基本概念、作用和实现原理
TCP/IP第三层--网络层
1)、主要功能:负责点到点(point-to-point)的传输(这里的“点”指主机或路由器)
黄规速
2022/04/14
1.1K0
TCP/IP第三层--网络层
VLAN基础知识_vlan的基本原理
VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。VLAN内的主机间可以直接通信,而VLAN间不能直接通信,从而将广播报文限制在一个VLAN内。
全栈程序员站长
2022/09/23
6860
VLAN基础知识_vlan的基本原理
云计算和虚拟化都要用到的核心技术 VXLAN 网络,你掌握了吗?
云计算、虚拟化相关技术的发展,传统的网络无法满足于规模大、灵活性要求高的云数据中心的要求,于是便有了 overlay 网络的概念。overlay 网络中被广泛应用的就是 vxlan 技术。首先我们了解一下随着云计算的发展,传统网络面临哪些挑战。
iMike
2020/04/21
1.2K0
云计算和虚拟化都要用到的核心技术 VXLAN 网络,你掌握了吗?
最全 VxLAN 知识详解
VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网),是由IETF定义的NVO3(Network Virtualization over Layer 3)标准技术之一,是对传统VLAN协议的一种扩展。VXLAN的特点是将L2的以太帧封装到UDP报文(即L2 over L4)中,并在L3网络中传输。 如图1-1所示,VXLAN本质上是一种隧道技术,在源网络设备与目的网络设备之间的IP网络上,建立一条逻辑隧道,将用户侧报文经过特定的封装后通过这条隧道转发。从用户的角度来看,接入网络的服务器就像是连接到了一个虚拟的二层交换机的不同端口上(可把蓝色虚框表示的数据中心VXLAN网络看成一个二层虚拟交换机),可以方便地通信。
杰哥的IT之旅
2020/11/23
1.8K1
最全 VxLAN 知识详解
一文讲懂什么是vlan、三层交换机、网关、DNS、子网掩码、MAC地址
很多朋友多次问到什么是网关、dns、子网掩码,三层交换机,它们定位的用途;确实,因为网络技术在弱电中确实应用非常广泛,我们平时在vip技术群中也是不断的讨论到网关、vlan、三层交换机或子网掩码等问题,今天我们就一起用通俗方式一次性了解清楚。
后端码匠
2020/08/21
1.1K0
一文讲懂什么是vlan、三层交换机、网关、DNS、子网掩码、MAC地址
二层交换机和三层交换机到底区别在哪?
二层交换机是一种工作在数据链路层的网络设备,主要功能是根据数据帧中的MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。二层交换机不遵循路由算法,而是通过广播和学习来实现数据帧的转发。
网络技术联盟站
2023/05/09
9680
二层交换机和三层交换机到底区别在哪?
Vxlan基础理解
本篇文章转自http://blog.csdn.net/freezgw1985/article/details/16354897
DevinGeng
2019/04/09
2K0
Vxlan基础理解
二层交换机和三层交换机到底有啥区别?如何为从二层切换到三层模式?
计算机网络中的交换机是用于在局域网(LAN)中转发数据包的重要设备。其中,二层交换机和三层交换机是两种常见的交换机类型。本文将详细介绍二层交换机和三层交换机的特点、工作原理、各自的优缺点以及在思科、华为、瞻博网络三家厂商如何从二层模式切换到三层模式。
网络技术联盟站
2023/09/06
4.4K1
二层交换机和三层交换机到底有啥区别?如何为从二层切换到三层模式?
二层、三层、四层交换机的区别!!
二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:   (1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;   (2) 再去读 取包头中的目的MAC地址,并在地址表中查找相应的端口;   (3) 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上;   (4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。   不断的循环这个过程,对于全网的MAC地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。   从二层交换机的工作原理可以推知以下三点:   (1) 由于交换机对多数端口的数据进行同时交换,这就要求具有很宽的交换总线带宽,如果二层交换机有N个端口,每个端口的带宽是M,交换机总线带宽超过N×M,那么这交换机就可以实现线速交换;   (2) 学习端口连接的机器的MAC地址,写入地址表,地址表的大小(一般两种表示方式:一为BEFFER RAM,一为MAC表项数值),地址表大小影响交换机的接入容量;   (3) 还有一个就是二层交换机一般都含有专门用于处理数据包转发的ASIC (Application specific Integrated Circuit)芯片,因此转发速度可以做到非常快。由于各个厂家采用ASIC不同,直接影响产品性能。   以上三点也是评判二三层交换机性能优劣的主要技术参数,这一点请大家在考虑设备选型时注意比较。
青果云小潘
2019/08/30
2.7K0
相关推荐
你所了解的三层交换机,是这样工作的
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档