郑州大学计算机网络实验10 交换机工作原理与Vlan工作机制探索与分析

实验十:交换机工作原理与Vlan工作机制探索和分析

【实验目的】

1、理解交换机的逆向学习法;

2、掌握以太网帧格式和802.1q帧格式;

3、理解Vlan工作机制;

4、了解Linux下命令vconfig和brctl的使用方法。

【实验步骤与结果记录】

要求:根据实验指导书中的实验内容和步骤,认真完成实验。采取截图、拍照等形式记录自己的实验步骤和结果。(可根据需要加页)

步骤1:创建Vlan实验的虚拟网络拓扑

1.Vlan实验的虚拟网络拓扑如图所示

在Linux中,Vlan实验网络拓扑的实现如下图所示。

2.使用脚本10.1.sh,创建本实验的网络拓扑。

步骤2.:在交换机SWCSWD中,查看bridge设备Vlan10的交换表

1.在交换机SWC上,执行如下命令,查看交换机SWC中Vlan10的交换表,并观察交换表的构成。

ip netns exec SWC brctl showmacs Vlan10

如果交换表中有 is local 的值是 no 的表项,等待一小段时间再次查看。当所有非本地表项超时(默认超时时间300s)清空后,继续后面的步骤。

2.在交换机SWD上,执行如下命令,查看交换机SWD中Vlan的交换表,并观察交换表的构成。

ip netns exec SWD brctl showmacs Vlan10

如果交换表中有 is local 的值是no 的表项,等待一小段时间再次查看。当所有非本地表项超时清空后,继续后边的步骤。

步骤3:在交换机SWC上启动Wireshark,在接口trunk上启动抓包。在主机ns51A上启动Wireshark,在接口tap51A上启动抓包。

1.执行如下命令,在交换机SWC上后台启动Wireshark。

ip netns exec SWC wireshark &

2.在Wireshark窗口中选择接口trunk,启动抓包。

3.执行如下命令,在主机ns51A上后台启动Wireshark。

ip netns exec ns51A wireshark &

4.在Wireshark窗口中选择接口tap51A,启动抓包。

步骤4:在主机ns51Ans51Cns52Ans52Bns53Ans53B上开启UDP服务器,从主机ns51B上发送以太网广播。

1.打开一个终端窗口,利用Linux命令bash将本窗口模拟成主机ns51A的终端。

ip netns exec ns51A bash

2.在主机ns51A的模拟终端中,执行如下命令,在4499端口打开UDP服务程序。

nc -lvu 4499

   3.重复本步骤中1、2,在主机ns51C、ns52A、ns52B、ns53A和ns53B的4499端口打开UDP服务程序。

ip netns exec ns51C bash
ip netns exec ns52A bash
ip netns exec ns52B bash
ip netns exec ns53A bash
ip netns exec ns53B bash

4.新打开一个终端窗口,执行如下Linux命令,指明目的MAC地址为全1的广播地址,构造包含10字节数据的UDP用户数据报,从主机ns51B上发送以太网广播。

ip netns exec ns51B nping -c1 --udp  -p4499 -g50000 --data-length 10 --dest-mac ff:ff:ff:ff:ff:ff 192.168.51.255

5.观察各主机的模拟终端,记录哪些主机收到了该广播消息。

步骤5:在两个Wireshark窗口中停止抓包,保存抓包结果文件并分析本次通信,理解以太网帧格式,理解802.1q帧格式

步骤6:在交换机SWCSWD中,再次查看bridge设备Vlan10的交换表,分析交换表中的项目,理解交换机的逆向学习法。

1.在交换机SWC上,执行如下命令,查看交换机SWC中Vlan10的交换表,并观察交换表的构成。

ip netns exec SWC brctl showmacs Vlan10

查看并记录交换表中 is local 的值是 no 的表项。

2.在交换机SWD上,执行如下命令,查看交换机SWD中Vlan10的交换表,并观察交换表的构成。

ip netns exec SWD brctl showmacs Vlan10

 查看并记录交换表中 is local 的值是 no 的表项。

3.执行如下命令,查看所有命名空间中的网络接口,查找6-(1)和6-(2)中学习到的是哪个接口的MAC地址。根据课堂知识,理解交换机的逆向学习法。

ip -all netns exec ifconfig -a

de:5e:a0:24:b4:b6

交换机的逆向学习法是从原地址开始学习的。

【问题与分析】

1.在步骤4中,哪些主机收到了ns51B发送的广播报文?哪些主机不能收到该广播报文。为什么?截图说明你的分析过程。

tap51A与tap51C接收到了消息,其他几台不能接收到消息。

2.从Wireshark在tap51A接口截获的数据帧中找出ns56B发送的广播报文,分析其帧结构,截图并填写表10.1。该帧的帧长是多少字节?如果有填充字段,填充了多少字节?截图说明你的分析过程。

表10.1 以太网帧格式分析

目的地址

ff:ff:ff:ff:ff:ff

源地址

de:5e:a0:24:b4:b6

类型

0x00000800

填充(字节数)

12(字节)

帧长为52

最小帧长64-帧长52=填充12

3.从Wireshark在trunk接口截获的数据帧中找出ns51B发送的广播报文,分析其帧结构,截图并填写表10.2。该帧的帧长是多少字节?如果有填充字段,填充了多少字节?截图说明你的分析过程。

表10.2 以太网帧格式分析

目的地址

ff:ff:ff:ff:ff:ff

源地址

de:5e:a0:24:b4:b6

标签协议标识TPID

8100

优先级码点PCP

0

丢弃适当性指示符DEI

0

VLan ID

10

类型

0x00000800

填充(字节数)

8(字节)

帧长为56

最小帧长64-帧长56=填充8

4.在步骤6中,交换机SWC和SWD学习到了哪台主机的MAC地址?为什么?截图说明你分析过程。

根据地址可以找到,学习到了主机ns51B的MAC地址

de:5e:a0:24:b4:b6

内容概要:本文系统整理了《微软面试100题完整版(含解析+备考指南)2026最新求职资源》,涵盖算法编程、逻辑思维、计算机基础、系统设计工程实践、职场综合五大核心题型,共100道高频原题,均来自微软近年真实面试题库,剔除过时内容,新增AI工程应用、轻量化系统设计等2026年前沿考点。每道题目配有详细解题思路考察要点,覆盖数据结构、动态规划、位运算、网络协议、数据库事务、微服务架构、高并发设计等关键技术领域,并包含逻辑推理、工程排查、产品权衡等综合素质题目,全面适配微软海内外各岗位面试需求。此外,文章还提供分层刷题策略、地域差异化备考建议及完整资源获取路径,助力求职者高效通关初面、复面终面。; 适合人群:准备应聘微软的应届毕业生、1-5年工作经验的技术岗从业者(如软件开发、算法、测试、数据、运维等),以及计划投递微软海外岗位的求职者;尤其适合缺乏系统面试准备、希望提升解题思维工程表达能力的人群。; 使用场景及目标:①针对微软技术面试中的算法题进行专项突破,掌握最优解法代码规范;②训练逻辑思维系统设计能力,应对高阶岗位考察;③准备终面综合问题,提升职场素养岗位匹配度表达;④根据国内/海外不同考点调整复习重点,实现精准备考。; 阅读建议:此资源以真题为核心,强调解题思路而非死记硬背,建议按“分类刷题—总结模板—模拟手撕—复盘优化”流程学习,重点关注代码边界处理、复杂度优化中英文表达逻辑,结合自身背景补充项目复盘系统设计练习,全面提升面试实战能力。
一、内容概要 本资源为基于STM32标准外设库开发的通用型RS485模块化驱动代码,采用分层模块化设计,完整包含rs485.h头文件、rs485.c驱动实现文件、main.c工程调用示例三部分代码。驱动依托USART串口通信原理,搭配DE/RE控制引脚实现RS485收发模式自动切换,搭载串口中断接收环形缓冲区数据存储机制,有效解决传统串口通信丢包、数据紊乱问题。代码全部参数、硬件引脚均采用宏定义封装,无需修改底层逻辑即可快速适配不同STM32型号及硬件电路,同时兼容Modbus-RTU通信协议场景,具备高通用性、可移植性稳定性,是完整可直接编译运行的嵌入式RS485总线通信驱动方案。 二、适用人群 1、嵌入式单片机开发初学者、在校电子信息、自动化、物联网专业学生,可用于课程设计、毕业设计、实验实训; 2、从事STM32标准库项目开发的嵌入式工程师,适配老旧标准库工程迭代功能拓展; 3、需要快速实现RS485总线通信、Modbus设备通信的项目开发人员; 4、需要学习嵌入式模块化编程、串口中断、环形缓冲区数据处理技术的技术学习者。 三、使用场景及目标 使用场景:工业设备串口通信、传感器485数据采集、Modbus-RTU主从机通信、物联网下位机数据传输、嵌入式设备远距离总线通信、课程/毕设嵌入式通信功能开发等场景,适配各类基于STM32标准库的硬件项目。 使用目标:快速搭建稳定的STM32 RS485通信驱动框架,实现485总线数据的可靠发送接收;通过模块化代码解耦业务逻辑底层驱动,降低开发难度;借助环形缓冲+中断接收机制,提升大数据帧、高频通信场景下的数据稳定性;减少重复开发工作量,实现驱动代码一键移植复用,高效完成嵌入式总线通信功能开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值