【计算机网络】单播帧和广播帧在一个局域网内部的传播过程

ops/2024/10/31 0:58:59/

https://i-blog.csdnimg.cn/direct/cf2717d2dbc14aba852c54468cb7874f.png" width="1200" />

我们引入这样的一个模型。

路由器可以连接多个网络,在路由器的这一端,我们用交换机集线器连接了很多节点。

https://i-blog.csdnimg.cn/direct/5b966402f3234dbd929437777818b2aa.png" width="950" />

这些节点共同组成了一个局域网。

而路由器的另外两个端口又分别连接了其他的网络。MAC地址这个概念是数据链路层才拥有的东西,物理层是没有MAC地址这个概念的。我们知道集线器它工作在物理层。而交换机,它的功能包含了物理层和数据链路层。那既然交换机涉及到了数据链路层,因此交换机肯定有MAC地址

那同样的道理,路由器需要实现物理层、数据链路层甚至网络层的功能,所以对于路由器而言。它涉及到了数据链路层的功能,因此它也会有MAC地址。所以在网络当中不只是这种终端节点,拥有MAC地址。其实,交换机和路由器也拥有MAC地址,甚至交换机路由器这两种设备,它们会包含多个MAC地址。比如一个交换机,可能是这么设计的,每一个网线接口的背后都会有一个网络适配器,而我们知道每一个网络适配器都会有一个MAC地址。所以如果交换机,它有多个网线接口,那么每个网线接口都会对应一个MAC地址。路由器也是一样的道理,当然有些情况下可能多个网线接口会共用一个MAC地址。

https://i-blog.csdnimg.cn/direct/6881d0ef0b584890aaaf9267f5591d3d.png" width="891" />

不过这儿我们就暂且先不展开。总之这儿想强调的是交换机有MAC地址,路由器有MAC地址。还有这些终端节点有MAC地址,但是集线器没有MAC地址。接下来我们看一个单播帧如何传输。

单播帧:
A -> C 仅C能收到并接收帧
A -> F  E、F、G 能收到,仅F会接收帧
E -> A  F、G、A 能收到,仅A会接收帧
E -> F  F、G能收到,仅F会接收帧

假设现在A节点要给C节点发送一个单波帧。那么,根据刚才学习的这个以太网帧的结构,662n4收发协数验。A节点在构造一个帧的时候,最开始的六个字节需要写明接收方,也就是C节点的MAC地址。紧接着,后面的六个比特需要写明发送方,也就是A节点自己的MAC地址。用这样的方式构造一个MAC帧之后,这个MAC帧首先会发送给交换机,交换机会检查这个MAC帧的接收方的地址,那根据接收方的MAC地址,这个MAC帧会被转发到相应的端口。所以A给C发送一个单播帧,这个动作的背后只有C节点会收到这个单播帧。

https://i-blog.csdnimg.cn/direct/c92a6d0b3e394b6fa81cff33c394960c.png" width="1054" />

接下来如果A要给F发送一个单播帧,那么同样的在这个帧里边。也要写明这是A发给F的。那么这个针帧同样的也需要先交给交换机,那么交换机经过检查发现,数据的接收方F它连接的是右边这个端口,所以它会从这个端口把数据帧转发出去,

https://i-blog.csdnimg.cn/direct/6807495f51954478a5593ed465d097ed.png" width="959" />

接下来对于集线器来说。他不会去判断数据帧的接收方MAC地址到底是多少,他只会无脑的把自己收到的这些曼彻斯特编码,这些物理层的信号,无脑的转发给自己连接的各个端口。

https://i-blog.csdnimg.cn/direct/4bb419bd699249baaeec27105c84f211.png" width="426" />

因此A发给F的这个数据帧会被E会被F会被G都给收到。但是只有F这个结点会接收这个帧。因为这三个结点收到帧之后都会检查接收方是不是自己,如果跟自己没关系,那么就直接把这个帧给丢弃。这是A给F发送单播帧。

接下来看E给A发送单播帧,那E发送的帧先传给集线器,集线器会无脑的,把这个它收到的这些物理层的信号全部转发出去,

https://i-blog.csdnimg.cn/direct/2eafbd6879974203b55d3cabaf78041f.png" width="635" />

所以F和G这两个节点肯定也会收到E给A发送的单播帧。那么这个帧从集线器的左边这儿转发给交换机之后。交换机,它会检查接收方是谁,接收方是A节点,那么交换机就会把这个帧这个单播帧从这个端口转发出来。

https://i-blog.csdnimg.cn/direct/8899cd36e3f14ed29da2ebe021a70d61.png" width="1111" />

所以A结点会收到帧,并且把帧给接收下来。这是E给A发送。

接下来假设E给F发送一个单播帧。那么这个帧。到集线器这儿无脑的转发出去,F会收到G也会收到。但是只有F节点会把这个帧接收下来。另外这个交换机也会收到E给F发的这个帧。但是检查接收方的地址F它连接的端口刚好就是数据进来的这个端口,所以交换机并不会把收到的这个帧重新转发回去,没有必要,

https://i-blog.csdnimg.cn/direct/839476f63f894351b0fd3a3525f751a5.png" width="644" />

那当然,也不会转发到其他端口,所以E给F发送的帧就是FG能收到,

然后F会接收这个帧。这是单播帧,接下来看两个广播帧的例子,

https://i-blog.csdnimg.cn/direct/e4cf17625b194bd48252216e3fea8116.png" width="698" />

我们说662n4收发协数验,如果把接收方的地址也就是目的地址全部写为一的话,那么表示这个帧是要广播给局域网内的每一个节点的。现在假设A节点发送了一个广播帧,这个广播帧的目的地址全部为一。那么,这个广播帧首先到了交换机这个地方,交换机检查发现,它是一个广播帧,

那接下来它会把这个广播帧转发到,其他所有的端口,也就是上面这条路会转发这个广播帧,B节点,C节点D节点还有集线器这边都会收到这个广播帧

https://i-blog.csdnimg.cn/direct/98b42876d1d4497a9cf4740d0eea42cc.png" width="959" />

那那对于集线器来说。他会无脑的把这些物理层的比特信号再一次的转发,转发给与它相连的所有的结点,

https://i-blog.csdnimg.cn/direct/8221b3431e0345d18f96d7c3d7607fa5.png" width="922" />

所以A结点发送的广播帧会被BCD、EFG还有路由器R,会被所有的这些节点所接收。那值得注意的是,当路由器接收到一个广播帧之后,它并不会把这个广播帧转发到其他的网络

https://i-blog.csdnimg.cn/direct/3cb5f5163920494f9c2cedc7f9c8c76c.png" width="822" />

所以我们说只有同一个局域网内的各个节点才属于同一个广播域,也就说A节点发送的广播帧只能传播到同一个局域网内的各个节点。一旦到路由器这一块,路由器就不会再转发到其他的局域网了。

https://i-blog.csdnimg.cn/direct/4ac90bba14a54e4a9ac46cccaba99847.png" width="931" />

就是这个意思,那了解了这些之后,我们来看2020年的35题,

https://i-blog.csdnimg.cn/direct/437ed7a15c2d467e8d81672d6c1fb555.png" width="1087" />

问我们在这个网络当中冲突域和广播域的个数分别是多少个?那冲突域我们之前介绍过,如果两个节点同时发送数据的时候会导致冲突,

冲突域:如果两个节点同时发送数据,会导致冲突,则二者处于同一个“冲突域”
广播域:如果一个节点发送广播帧,可以被另一个节点接收,则二者处于同一个“广播域”

那么二者就处于同一个冲突域。那我们知道,只要集线器相连接的结点就肯定只能半双工通信。也就是说连接同一个集线器的两个结点肯定是属于同一个冲突域。这是冲突域的概念。而广播域的概念就是说如果一个节点发送广播帧,可以被另一个节点所接收。那么,二者处于同一个广播域。那通过刚才的学习,我们知道这个以太网交换机,它会把广播帧转发到所有的端口。而路由器收到广播帧之后,它就不会再继续转发广播帧,那显然冲突域和广播域的个数分别是四和二。如下图所示,这两台电脑连接了同一个集线器,它俩属于同一个冲突域。这儿是一个冲突域①,这儿是一个冲突域②,这儿是一个冲突域③,总共有四个冲突域https://i-blog.csdnimg.cn/direct/08fbd0feb76345d58b3040a821f3c5e0.png" width="1200" />

https://i-blog.csdnimg.cn/direct/a2a54d3393c14ab6b92684c0615d601f.png" width="1200" />

那交换机是可以隔离冲突域的,因为交换机这边收到一个数据之后,它不会无脑的把它转发到另一个端口,它会先检查自己收到的这个数据帧有没有必要去转发。所以有了交换机的存在。当左边这台电脑。在发送数据的时候,其实右边这台电脑也可以发送数据,二者是不会冲突的。

https://i-blog.csdnimg.cn/direct/7c9b4267f42d4a6a8a45d1c43a62094e.png" width="928" />

所以我们说交换机隔离了冲突域。那接下来再来分析广播域有几个,我们看如果这个节点发送一个广播帧。那么这个广播帧首先到集线器这儿,集线器无脑的转发,这个节点会收到,除此之外,这个广播帧也会发到交换机这个地方。

那交换机检查发现,这是一个广播帧,所以它会把它转发到其他连接的端口,那么通过下面这一台集线器又会转发给这两个节点,而对于路由器来说,当它收到这个广播帧的时候,它不会继续转发广播帧

https://i-blog.csdnimg.cn/direct/d94702d3e89e4c59b979406a751e557c.png" width="1024" />所以左边这个部分应该属于同一个广播域。那相应的,右边这个部分也属于同一个广播域,因此广播域的数量就是两个,这个题目选择c选项。

因此我们可以得到这样的结论,

以太网交换机,它可以隔离冲突域,但是不隔离广播域。

https://i-blog.csdnimg.cn/direct/93e7e910cd024670bdfb33080c34f0e5.png" width="480" />

而路由器这种设备,它既隔离冲突域,也隔离广播域。

https://i-blog.csdnimg.cn/direct/11c479ef05b14a1ebe9d3f6244d8dd6e.png" width="331" />

集线器这种设备,它既不隔离冲突域,也不隔离广播域。https://i-blog.csdnimg.cn/direct/040bb01bbe2f432e9f09ef3d42f44349.png" width="383" />

这是三种设备的特性。


http://www.ppmy.cn/ops/129738.html

相关文章

第二十一章 Vue组件通信之prop校验及单向数据流

目录 一、什么是Prop 1.1. Prop传递数据代码示例图 1.2. 演示代码App.vue 1.3. 演示代码UserInfo.vue 二、props 校验 2.1. props校验简单写法 2.1.1. 演示代码App.vue 2.1.2. 演示代码BaseProgress.vue 2.2. props校验完整写法 2.2.1. 演示代码BaseProgress.vue 2.…

环形运输距离Conveyor Belts

Conveyor Belts 题面翻译 传送带 题目描述 传送带 $ m_n $ 是一个大小为 $ n \times n $ 的矩阵,其中 $ n $ 是一个偶数。矩阵由顺时针移动的同心带组成。 换句话说,当 n 2 n2 n2 时,传送带矩阵就是一个 2 2 2 \times 2 22 的矩阵&a…

【FFmpeg】调整音频文件的音量

1、调整音量的命令 1)音量调整为当前音量的十倍 ffmpeg -i inputfile -vol 1000 outputfile 2)音量调整为当前音量的一半 ffmpeg -i input.wav -filter:a "volume=0.5" output.wav3)静音 ffmpeg -i input.wav -filter:a "volume=0" output.wav4)…

ubuntu 硬盘扩容

在 Linux 中,可以使用以下命令查看磁盘的使用情况和信息: 查看磁盘使用情况: df -h这个命令会显示所有文件系统的使用情况,以人类可读的格式(例如 GB 或 MB)。 查看磁盘分区和设备信息: lsblk这…

HarmonyOS开发 - 本地持久化之实现LocalStorage支持多实例

用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。数据存储形式为键值对,键的类型为字符串型,值的存储数据类型包括数字型、字符型、布尔型以及这3种类型的数组类型。 在上一篇中&…

Node.js:模块 包

Node.js:模块 & 包 模块module对象 包npm安装包配置文件镜像源 分类 模块 模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组合、分解和更换的单元。 简单来说,就是把一个…

openpnp - 解决“底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题“

文章目录 openpnp - 解决"底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题"概述笔记问题现象1问题现象2原因分析现在底部相机和吸嘴的位置偏差记录修正底部相机位置现在再看看NT1在底部相机中的位置开机归零,看看是否能通过所有校…

【开源免费】基于SpringBoot+Vue.JS校园美食分享平台 (JAVA毕业设计)

本文项目编号 T 033 ,文末自助获取源码 \color{red}{T033,文末自助获取源码} T033,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…