计网第三章.数据链路层—交换机工作原理和虚拟局域网

以下来自湖科大计算机网络公开课笔记

一、交换机工作原理
1.1 集线器和交换机区别

早期用集线器构建以太网,其实还是跟一根总线一样单播也会把数据发给所有主机,依然会发生碰撞,它只是物理层面扩展了网络,下图HUB即集线器,下图中用集线器将三个系的网络连通在一块:
在这里插入图片描述
交换机SWITCH:

单播不会都发给每个主机,交换机会把数据帧发给目的主机,就像点对点通信一样——交换机收到帧后会在帧交换表中查找帧的目的MAC地址所对应的接口号,然后通过该接口转发帧。——广播的话集线器和交换机倒是区别不大

帧交换表是通过自学习算法逐渐建立起来的
在这里插入图片描述
交换机收到多个帧之后会将它们缓存起来,逐个转发给目的主机,不会产生碰撞

集线器已经被淘汰。

交换机和集线器都是解决不同主机MAC地址的区分,而路由器是不同网络之间寻址,是IP地址

1.2 以太网交换机自学习和转发帧的流程

在这里插入图片描述
下面的例子中,为了简化问题并将重点放在交换机自学习上,各主机的MAC地址用一个大写字母简要表示,并且假设各主机已经知道网络中其它各主机的MAC地址(即无需再进行ARP)

两个交换机,每个交换机各连了三个主机:
在这里插入图片描述
假设主机A要给主机B发送信息,这个时候交换机1将主机A的MAC地址和对应的接口号登记在帧交换表中,这个就是交换机的自学习过程

然后将该帧转发给B,发现表里没有B的MAC地址,也就不知道B在哪个接口,然后进行盲目转发——也叫泛洪,给全部端口都发过去
在这里插入图片描述
B收到后根据该帧的目的MAC地址就知道是发给自己的,然后接收

C就是丢弃

4号端口去另一个交换机那了,那边交换机2也会盲目转发
在这里插入图片描述
后面B要给A发消息就是明确转发了,因为帧交换表里记录了A对应的接口

跟ARP高速缓存表一样,帧交换表每条记录都有自己的有效时间,到期自动删除,MAC地址和交换机接口对应关系不是永久性的

补充:
PDU(protocol data unit)协议数据单元,是计算机网络体结构中对等实体间逻辑通信的对象。以太网交换机进行转发决策时使用的PDU就是MAC,MAC又叫硬件地址或物理地址

1.3 交换机生成树协议STP
问题的引出

如何提高以太网的可靠性,下面每个交换机都连接了一些主机,为了方便,分别只画了一台。如果交换机A和B之间的链路出现了故障:
在这里插入图片描述
则交换机B上连接的所有主机都不能与A和C上的主机通信了!
在这里插入图片描述
我们可以在A和C之间添加冗余链路来增强以太网的可靠性:
在这里插入图片描述
但是这样带来了新问题——形成网络环路

网络环路会带来一些问题,比如**广播风暴
广播的时候,每个交换机收到信息后都要再进行转发,这样让其他交换机那边连的主机也能收到信息,比如H1发出广播由B广播给所有交换机,A收到进行转发,C收到进行转发,B又会收到A和C的,如此循环往复——消耗大量网络资源,使得网络无法正常转发其他数据帧;主机收到重复的广播帧,也会大量消耗主机资源;而且造成交换机的
帧交换表震荡(漂移)**

帧交换表震荡:因为数据是H1发出的(源MAC地址是H1的),那么交换机B那里的帧交换列表一开始记录的MAC地址和端口号就是H1——1,而后面C又转发,B收到了,这数据还是来自H1,所以又得改成H1——2,同样的A那边也发来了,又改成3,反反复复修改!

在这里插入图片描述

生成树协议STP

所以以太网交换机使用生成树协议Spanning Tree Protocol,STP,可以在增加冗余链路来提高网络可靠性的同时又避免网络环路带来的各种问题

STP使得无论交换机之间采用什么样的物理连接,交换机都能够自动计算并构建一个逻辑上没有环路的网络,其逻辑拓扑结构必须是树形的(无逻辑环路)

其实就是通过阻塞一些交换机的接口来实现的

如下图中五个交换机,没有画出各自连接的主机:
在这里插入图片描述

如果各个交换机的各个接口都处于正常状态,那肯定会形成网络环路**,各交换机之间根据生成树协议中规定的生成树算法**,交互一些参数后,就可以判断出自己应该阻塞哪些接口,这样就形成了如最右图所示的没有环路的网络:
在这里插入图片描述
如果某个链路出现故障,那相关交换机又把原先阻塞的接口恢复为正常状态,如下图:
在这里插入图片描述

二、虚拟局域网
2.1 大广播域出现广播风暴

(前面交换机那一节讲过广播风暴的意思)

使用一个或多个以太网交换机互连起来的交换式以太网,其所有站点都属于同一个广播域

交换式以太网规模扩大,广播域也越来越大:
在这里插入图片描述
在上图这种大规模广播域中,生成树协议起不到很好作用,因此广播风暴又容易出现了,因为一旦发送ARP广播请求来获取目的主机的MAC地址,整个广播域上的主机和交换机都会受到,交换机也都会转发。

偶尔的广播还能接受,而很多协议都需要广播,网络中会频繁出现广播信息。

我们可以用路由器将大的广播域划分成小的广播域
在这里插入图片描述
因为路由器默认情况下不对广播数据包进行转发,所以上图中间的路由器router就将大广播域分成了两个小的广播域。但是路由器的成本较高,如果局域网内部都用路由器来隔离广播域是不现实的——只使用交换机实现隔离广播域

2.1虚拟局域网VLAN

虚拟局域网应运而生,virtual local area network,VLAN是一种能将局域网内的设备划分成与物理位置无关的逻辑组的技术这些逻辑组具有某些共同的需求

如图:1,2,3楼分别有一个局域网,可以用一个交换机将它们互连成一个更大的局域网,原来的每个局域网成为现在这个局域网的一个网段。网络中的所有主机处于同一个广播域,某个主机发送的广播,其它主机都可以收到:
在这里插入图片描述
如果我们使用VLAN技术,将这些主机分成两个VLAN,两个虚拟局域网——这样VLAN1的广播数据包就不会传到VLAN2,反之亦然
在这里插入图片描述
即,同一个VLAN内可以进行广播通信,不同VLAN间不能进行广播通信——广播就是在一个局域网内的通信,跨局域网那得经过路由器了

被交换机连起来的那就是一个大局域网,虚拟局域网就是说在这个大局域网分成逻辑上的多个局域网

2.3 VLAN实现机制

虚拟局域网VLAN机制是在交换机上实现的,需要交换机实现两大功能

1.能处理带有VLAN标记的帧,即IEEE 802.1Q帧;

2.交换机的各端口可以支持不同的端口类型,不同端口类型的端口对帧的处理方式有所不同

2.3.1 802.1Q帧
在这里插入图片描述
VLAN标记4个字节,32位,其中最后12比特称为VLAN标识符VID,它唯一地标志了以太网帧属于哪一个VLAN
在这里插入图片描述

2.3.2 交换机的端口类型
三种端口类型:Acess Trunk Hybrid——不过思科交换机没有Hybrid端口
在这里插入图片描述
后面都将缺省VLAN ID称为PVID,交换机的每个端口有且仅有一个VLANID

(一)Acess端口

机制与举例如下。

主机A发送广播帧,该帧从交换机的端口1进入,端口1的类型是Acess,会对未打标签的MAC帧打4个字节标签,标签中12比特的VID值和端口1的PVID一样,因为VID = =端口2、3、4的 PVID = = 1,所以另外三个端口都会对该帧进行转发。交换机中的字母A表示Acess端口。
在这里插入图片描述
Acess端口去了标签化后,主机收到的才是没有标签的原汁原味的MAC帧
再举一个例子:
我们的应用需求是将主机A和B划分到虚拟局域网VLAN2,将C和D划分到VLAN3,而VLAN2的广播帧不会传送到VLAN3,反之亦然。我们可以修改对应的端口PVID的值,
在这里插入图片描述
那么从A口进入的广播信号,由于3,4的PVID和广播帧中的PVID不同,所以去标签后并不会转发,而端口B会转发,这样就实现了在局域网内部广播通信。

(二)Trunk端口

Trunk端口一般用于交换机之间与交换机与路由器之间的互连,Trunk端口可以属于多个VLAN,也就是说,Trunk端口可以接收和发送多个VLAN的帧。用户可以设置其PVID值,默认情况下PVID值为1。如下图有两个交换机,将CDGH的Access端口对应的PVID值改为2,而左边保留默认值1,这样就分成了VLAN1和VLAN2,而两个路由器之间的端口5改为Trunk类型PVIDA值保留默认的1。 交换机里的字母A是指Acess端口,T是指Trunk端口。

在这里插入图片描述
在这里插入图片描述
上面交换机的端口5会对数据帧去标签,然后转发,而下面交换机的端口5收到后又会给数据帧打标签(Trunk端口的PVID不用一致,会去标签再打标签)

标签里的VID值也是下面端口5的PVID值 = 1,所以E、F能收到广播帧,这样左边的A、B、E、F形成了一个虚拟局域网VLAN1

把下面交换机的端口5的PVID改成2,就可以使得A、B、G、H也形成一个VLAN

(三)Hybrid端口

绝大部分功能与Trunk端口相同,主要是发送端口处理方法不同。
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值