我们引入这样的一个模型。
路由器可以连接多个网络,在路由器的这一端,我们用交换机集线器连接了很多节点。
这些节点共同组成了一个局域网。
而路由器的另外两个端口又分别连接了其他的网络。MAC地址这个概念是数据链路层才拥有的东西,物理层是没有MAC地址这个概念的。我们知道集线器它工作在物理层。而交换机,它的功能包含了物理层和数据链路层。那既然交换机涉及到了数据链路层,因此交换机肯定有MAC地址。
那同样的道理,路由器需要实现物理层、数据链路层甚至网络层的功能,所以对于路由器而言。它涉及到了数据链路层的功能,因此它也会有MAC地址。所以在网络当中不只是这种终端节点,拥有MAC地址。其实,交换机和路由器也拥有MAC地址,甚至交换机路由器这两种设备,它们会包含多个MAC地址。比如一个交换机,可能是这么设计的,每一个网线接口的背后都会有一个网络适配器,而我们知道每一个网络适配器都会有一个MAC地址。所以如果交换机,它有多个网线接口,那么每个网线接口都会对应一个MAC地址。路由器也是一样的道理,当然有些情况下可能多个网线接口会共用一个MAC地址。
不过这儿我们就暂且先不展开。总之这儿想强调的是交换机有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节点会收到这个单播帧。
接下来如果A要给F发送一个单播帧,那么同样的在这个帧里边。也要写明这是A发给F的。那么这个针帧同样的也需要先交给交换机,那么交换机经过检查发现,数据的接收方F它连接的是右边这个端口,所以它会从这个端口把数据帧转发出去,
接下来对于集线器来说。他不会去判断数据帧的接收方MAC地址到底是多少,他只会无脑的把自己收到的这些曼彻斯特编码,这些物理层的信号,无脑的转发给自己连接的各个端口。
因此A发给F的这个数据帧会被E会被F会被G都给收到。但是只有F这个结点会接收这个帧。因为这三个结点收到帧之后都会检查接收方是不是自己,如果跟自己没关系,那么就直接把这个帧给丢弃。这是A给F发送单播帧。
接下来看E给A发送单播帧,那E发送的帧先传给集线器,集线器会无脑的,把这个它收到的这些物理层的信号全部转发出去,
所以F和G这两个节点肯定也会收到E给A发送的单播帧。那么这个帧从集线器的左边这儿转发给交换机之后。交换机,它会检查接收方是谁,接收方是A节点,那么交换机就会把这个帧这个单播帧从这个端口转发出来。
所以A结点会收到帧,并且把帧给接收下来。这是E给A发送。
接下来假设E给F发送一个单播帧。那么这个帧。到集线器这儿无脑的转发出去,F会收到G也会收到。但是只有F节点会把这个帧接收下来。另外这个交换机也会收到E给F发的这个帧。但是检查接收方的地址F它连接的端口刚好就是数据进来的这个端口,所以交换机并不会把收到的这个帧重新转发回去,没有必要,
那当然,也不会转发到其他端口,所以E给F发送的帧就是FG能收到,
然后F会接收这个帧。这是单播帧,接下来看两个广播帧的例子,
我们说662n4收发协数验,如果把接收方的地址也就是目的地址全部写为一的话,那么表示这个帧是要广播给局域网内的每一个节点的。现在假设A节点发送了一个广播帧,这个广播帧的目的地址全部为一。那么,这个广播帧首先到了交换机这个地方,交换机检查发现,它是一个广播帧,
那接下来它会把这个广播帧转发到,其他所有的端口,也就是上面这条路会转发这个广播帧,B节点,C节点D节点还有集线器这边都会收到这个广播帧
那那对于集线器来说。他会无脑的把这些物理层的比特信号再一次的转发,转发给与它相连的所有的结点,
所以A结点发送的广播帧会被BCD、EFG还有路由器R,会被所有的这些节点所接收。那值得注意的是,当路由器接收到一个广播帧之后,它并不会把这个广播帧转发到其他的网络。
所以我们说只有同一个局域网内的各个节点才属于同一个广播域,也就说A节点发送的广播帧只能传播到同一个局域网内的各个节点。一旦到路由器这一块,路由器就不会再转发到其他的局域网了。
就是这个意思,那了解了这些之后,我们来看2020年的35题,
问我们在这个网络当中冲突域和广播域的个数分别是多少个?那冲突域我们之前介绍过,如果两个节点同时发送数据的时候会导致冲突,
冲突域:如果两个节点同时发送数据,会导致冲突,则二者处于同一个“冲突域”
广播域:如果一个节点发送广播帧,可以被另一个节点接收,则二者处于同一个“广播域”
那么二者就处于同一个冲突域。那我们知道,只要集线器相连接的结点就肯定只能半双工通信。也就是说连接同一个集线器的两个结点肯定是属于同一个冲突域。这是冲突域的概念。而广播域的概念就是说如果一个节点发送广播帧,可以被另一个节点所接收。那么,二者处于同一个广播域。那通过刚才的学习,我们知道这个以太网交换机,它会把广播帧转发到所有的端口。而路由器收到广播帧之后,它就不会再继续转发广播帧,那显然冲突域和广播域的个数分别是四和二。如下图所示,这两台电脑连接了同一个集线器,它俩属于同一个冲突域。这儿是一个冲突域①,这儿是一个冲突域②,这儿是一个冲突域③,总共有四个冲突域
那交换机是可以隔离冲突域的,因为交换机这边收到一个数据之后,它不会无脑的把它转发到另一个端口,它会先检查自己收到的这个数据帧有没有必要去转发。所以有了交换机的存在。当左边这台电脑。在发送数据的时候,其实右边这台电脑也可以发送数据,二者是不会冲突的。
所以我们说交换机隔离了冲突域。那接下来再来分析广播域有几个,我们看如果这个节点发送一个广播帧。那么这个广播帧首先到集线器这儿,集线器无脑的转发,这个节点会收到,除此之外,这个广播帧也会发到交换机这个地方。
那交换机检查发现,这是一个广播帧,所以它会把它转发到其他连接的端口,那么通过下面这一台集线器又会转发给这两个节点,而对于路由器来说,当它收到这个广播帧的时候,它不会继续转发广播帧
所以左边这个部分应该属于同一个广播域。那相应的,右边这个部分也属于同一个广播域,因此广播域的数量就是两个,这个题目选择c选项。
因此我们可以得到这样的结论,
以太网交换机,它可以隔离冲突域,但是不隔离广播域。
而路由器这种设备,它既隔离冲突域,也隔离广播域。
集线器这种设备,它既不隔离冲突域,也不隔离广播域。
这是三种设备的特性。