开发者学堂课程【计算机网络基础:交换机相关知识】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/450/detail/5553
交换机相关知识
目录
一. 交换机设备 1
二.交换机工作原理 1
三.交换机MAC地址表 2
四.换机数据交换方式 4
一.交换机设备:
下图是一个具有24个RJ-45端口交换机,它一般用于小型局域网的连接。
例如在一个机房,如果需要50台计算机,就需要使用三台24口的交换机进行级联,将三台交换机通过高速的这种级联端口进行相连。而其他的一般端口用来连接接入网络的 PC 机。
二.交换机工作原理
1.交换机是工作在 OSI 参考模型中的数据链路层中的。它的主要功能是 MAC 地址的学习、通信的过滤、避免回路等。
2.每个交换机内部都维护一张表,这个表称 为 Mac 地址表,它记录了交换机上每一个端口所连接主机的 MAC 地址信息。
3.交换机收到一个数据帧后,能够识别出数据帧的结构,根据数据帧中的目的地址,将这个帧转发到对应的端口上去,而不是广播到其他的这个端口。
如图描述了 PC1发送数据包给 PC3。它需要查找 MAC 地址表的这样一个过程,交换机会监测到它的 E0/2端口发送来的数据帧。会根据数据帧中的目标地址就是 M3 去查找 Mac 地址表。获得了 M3 所对应的这个端口 E0/6,之后就会将数据直接从 E0/6端口发送给对端 PC3。
由此可以看出,整个数据帧的转换过程只有 E0/6 和 E0/2 是相关的,和其他端口是无关的。所以通讯的关键在于数据传输过程中查找的 MA C 地址表。
三.交换机 MAC 地址表
交换机本身具有 MAC 地址的学习的功能。交换机就是通过识别数据帧的源 MAC 地址,学习 到 Mac 地址和源端口的对应关系,主要过程
当第一次使用交换机的时候,交换机的 Mac 地址表是空表,没有任何记录的。此时交换机会将源 MAC 地址与源端口建立映射,写入MAC 地址表中
例子:PC1(MAC地址M1)想要发送数据帧给 PC2(MAC 地址 M2),其 MAC 地址学习过程如下:
当前 PC1 它的 MAC 地址是 M1,想要发送数据曾给 PC2,它的 MAC 地址是 M2,交换机会收到 PC1发来的数据帧,然后将接收数据帧的端口 E0/2 与 PC1 的 MAC 地址 M1 记录到 MAC 地址表中。搜索发现目的 MAC 并没有在当前的 MAC 地址表中,所以它会从其他的端口 E0/4 E0/6 E0/7 转发这个数据帧。
若当 PC2,PC3,PC4 收到这个数据帧之后,PC3,PC4 发现不是发送给自己的,通过 MAC 地址可以判断它是丢弃数据包,当 PC2 发现这个数据包是发给自己的,自然他会给一个确认的数据包,那么这个数据包就会含带 PC2 的 MAC 地址,也就是 M2。这个数据包会从交换机的 E0/4端口返回到交换机,交换机会在收到数据包后记录 M4 与 E0/4 这个端口的对应关系,把它记录到 MAC 地址表中去。
四.换机数据交换方式
1.交换机检测发送到每一个交换机端口的数据帧,通过数据帧中相关信息(源主机的 MAC 地址,目的主机 的 MAC 地址),在交换机的内部建立一张 MAC 地址与端口映射表。
2.交换机根据收到数据帧的源 MAC 地址,查找 MAC 地址表,如果找到该映射项(对应的端口号),则更新映射的生存期:如果没有找到,则建立该地址同交换机端口的映射,并将其写入 MAC 地址表中
3.如果数据帧中的目的 MAC 地址在 MAC 地址表中找到,则判断该数据帧属于广播帧还是单播帧:如果是广播帧,则向所有端口(除接收该数据帧的端口外)转发该数据帧;如果是单播帧,则查找已有 MAC 地址表,根据 MAC 地址表中存在对应的映射,按照该映射项进行数据转发
4.如果数据帧中的目的 MAC 地址不在 MAC 地址表,则向所有端口转发。一旦收到接收者返回的信息,便记住该 MAC 地址与端口的映射,并将数据帧通过该端口转发出去