【计算机网络】lab3 802.11 (无线网络帧)

🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀计算机网络_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光

目录

1. 前言

2. 实验目的

3. 实验步骤

3.1 步骤1:获取跟踪

3.2 分析踪迹

4. 802.11物理层

5. 802.11链路层  

6. 802.11管理

7. 总结 


1. 前言

本系列重点针对山东大学-软件学院-计算机网络实验的任务。

希望通过实验,一方面加强大家对理论知识的认识,另一方面提升大家的动手能力。

也希望我的博客能够给学弟学妹们的学习提供一些帮助。

2. 实验目的

        探究802.11的物理层、链路层和管理功能。它被广泛用于将移动设备无线连接到互联网。

        Wireshark:本实验使用Wireshark软件工具来捕获和检查数据包跟踪。数据包跟踪是对网络上某个位置的流量的记录,就好像对通过特定线路的所有位拍了快照一样。数据包跟踪记录每个数据包的时间戳,以及组成数据包的位,从低层报头到高层内容。Wireshark可以在大多数操作系统上运行,包括Windows、Mac和Linux。它提供了一个图形用户界面,显示数据包的顺序以及解释为协议报头和数据的位的含义。它根据包的类型对包进行颜色编码,并有多种方法来过滤和分析包,让您调查网络协议的行为。Wireshark广泛用于排除网络故障

3. 实验步骤

3.1 步骤1:获取跟踪

        我们提供了一个跟踪,您可以通过启动Wireshark并从文件菜单中选择打开来使用它。在Windows/Mac上,您可以找到跟踪文件并直接打开它来启动带有跟踪的Wireshark。您现在可以进行第2步;本节的其余部分是信息性的。与其他实验不同,出于几个原因,可能很难收集到您自己的痕迹。主要问题是Windows缺乏驱动程序支持来收集大多数无线网卡的802.11帧。当我们以前捕获流量时,操作系统使它看起来像是通过有线以太网来的(即使它实际上是通过无线网络来的),并丢弃任何没有更高层数据有效负载(如确认)的802.11帧。在某些系统上,通常是Mac和Linux,可以告诉操作系统直接收集802.11帧,而不进行这种转换。这就是所谓的“监控模式”。如果您的系统支持,无线接口的Wireshark捕获选项将允许您选择监控模式,并将捕获流量的格式设置为“802.11 plus radiotap header”而不是以太网。下面是一个例子。如果无法选择监视器模式,那么您的系统可能无法捕获802.11。

        第二个困难是,当接口在监控模式下捕获无线流量时,通常无法正常使用。这意味着您至少需要两台计算机:一台计算机发送测试流量,另一台监视计算机捕捉无线活动的痕迹。

        最后,请注意,在监控模式下捕捉踪迹将记录附近的所有无线活动。由于802.11无线设备无处不在,您的跟踪很可能会捕获来自附近其他计算机的不需要的流量。这种行为使得很难干净地观察你自己的流量。

我用的是Window系统,因此不具备收集802.11帧的能力。因此,只能使用官方给的802.11数据包,下载这个数据包进行分析。

数据包下载链接如下: http://gaia.cs.umass.edu/wireshark-labs/wireshark-traces.zip解压缩后

直接双击打开Wireshark_802_11.pcap,如下图:

3.2 分析踪迹

        首先,我们来看看802.11帧的格式。有许多不同种类的802.11帧将在跟踪中被捕获;查看帧的格式。如上图,有Beacon、Data、Acknowledgement等类型。选择一个数据包进行分析,这里选择了Beacon帧。

检查帧中记录的协议层是否符合这些协议。看看中间的面板。

  • 帧是由Wireshark添加的记录,包含有关帧的时间和长度的信息;它不捕捉“通过空中”发送的比特。

  • Radiotap也是Wireshark创建的记录,用于捕获物理层参数,如信号强度和调制。暂时跳过此记录;我们以后会调查的。

  • IEEE 802.11是802.11数据帧的比特。这是我们正在寻找的记录,应该是通过header(物理层信息)解析出来的信息。显示的与信号强度相关的信息。例如信噪比、信道、速率等。

这个实验我们最重要的就是分析802.11帧的数据内容:

        展开数据帧的IEEE 802.11记录,检查各个报头字段的详细信息。可以使用“+”扩展器或图标来扩展此块;它在我们的图中被放大显示。Wireshark中的字段包括:

 ①帧控制字段:编码帧的类型和子类型,例如,数据,以及各种标志。

展开帧控制字段:所有 802.11 帧都以帧控制字段开始,子字段和标志的详细信息决定了消息其余部分的格式。

•Version,当前版本的值为 0。

•类型和子类型指定帧的类型,例如,Data 或 Ack。

•到 DS。如果帧通过 AP 从计算机发送到有线网络,则设置此标志。

•从 DS 发送。如果帧通过 AP 从有线网络发送到计算机,则设置此标志。

•更多的片段。设置此消息中是否有更多帧。

•重试。设置帧是否为重传。

•电源管理。设置发送方是否在传输后进入省电休眠状态。

•更多数据。设置发送方是否有更多帧要发送。

•保护。设置帧是否使用 WEP/WPA2 加密

•秩序。设置接收者是否必须保持帧的顺序

     

持续时间:告诉计算机在无线介质上需要多少时间来处理作为交换一部分的附加数据包。

BSS标识符、源地址和目的地址:其顺序取决于数据帧的具体内容 。这些地址字段标识谁发送了数据包,谁应该接收它。BSS 标识符是无线接入点的地址。

片段和序列号:如果需要,这些 字段为重新组装和重新传输的帧编号 。序列号 随着每次新的传输而增加。

帧校验序列:出现在最后。

  

4. 802.11物理层

        现在,我们对802.11数据帧有了一些了解,我们将从物理层开始,更深入地了解无线系统的不同部分。在最底层,发送和接收消息都与接收信号的频带、调制和信噪比有关。我们可以使用Radiotap报头中的信息来查看所有这些因素!

问题1: What is the channel frequency? To find the frequency, expand the Radiotap header of any frame and look for the Channel frequency.

  

如图所示,信道频率为2437,可以用信道频率区分不同信道,也就是信道复用


        为了观察调制,我们可以观察数据速率值;为了观察SNR,我们可以观察SSI信号值(结合SSI噪声值)。SSI信号值通常被称为RSSI(接收信号强度指示)。这些字段将随着不同的帧而变化。要查看它们,首先我们必须在主显示中添加新的列。通过进入编辑——首选项——外观——列,以添加RSSI和Rate并来观察他们。

  

然后就可以看到:  

我们可以看到各种不同的速率,也就是说,无线速率与有线以太网不同,有线以太网的帧以固定速率发送(经过以太网类型的协商),而无线速率根据计算机的条件和能力而变化。

问题2: What rates are used? Give an ordered list of rates from lowest to highest. Hint: you can click the Rate column to sort by that value.

回答:排序后可清楚看到有0、1、5、6、9、11、12、18、24、36、48、54这些速率被使用。802.11a 标准规定 6、12 与 24 Mbps 是必要的(required)数据率。  

还可以看到各种RSSI值。RSSI值可以用来表示接收到的信号强度的级别。通常情况下,RSSI值以负数形式表示,通常以dbm(分贝毫瓦)为单位,数值越大表示信号强度越弱。在dBm的尺度上,每增加3dBm,信号强度大约翻倍。例如,-70 dBm的信号强度比-73 dBm的信号强度大约要高一倍,而-67 dBm的信号强度则比-70 dBm的信号强度大约要高一倍。


问题3: What is the range of RSSI and hence variation in SNRs in the trace? Give this as the strongest and weakest RSSI and the dB difference between them.

  • RSSI变化范围为-94~-21dBm,差值为73

  

  

  • SNR变化范围为6~79dB,差值为73  

5. 802.11链路层  

补充知识:不同帧的类型

      

在统计菜单下,选择对话和WLAN(对于无线局域网,即802.11)。这将弹出一个如下图所示的窗口,其中列出了每对正在通信的计算机。您可以通过单击数据包或字节列标题,按大小对此列表进行排序。该视图将帮助我们进一步探索跟踪,首先是链路层活动的摘要。

  

问题1: What is the BSS ID used by the most active wireless conversations? A BSS ID value identifies an AP, so this BSS ID identifies the most active AP, presumably the AP we are monitoring. To help find it, you can sort on the source or destination address by clicking on the column heading. We can also look to see the amounts we have of different types of traffic. 802.11 frames are either Data, Control, or Management frames. These frames are distinguished by the value in the Type subfield of the Frame Control field. You can inspect different packets to see the values for different types of frames.  

根据packets列进行排序,可得到最活跃的无线会话,如下图所示。其BSS ID为:00:16:36:83:32:40

        通过在顶部面板中帧列表上方的过滤器框中输入表达式“wlan.fc.type==2 ”,过滤以仅查看数据帧。单击Type子字段会在底部的状态显示中告诉我们,Wireshark知道这个字段的名称是wlan.fc.type。因此,过滤类型值为2的数据帧的表达式是“wlan.fc.type=="data frame " "或“wlan.fc.type==2”。当您将这个表达式输入到您的过滤器框中时,显示应该如下图所示。应用此过滤器后,底部的状态行将告诉您显示了多少跟踪数据包。这将告诉您跟踪中有多少数据帧。根据子类型子字段的值,可能有几种不同类型的数据帧,如信息列中所示。您可以点击此列标题,按帧类型进行排序,以查看哪些类型是流行的。   

问题2: How many Data frames are in the trace, and what is the most common subtype of Data frame?

      

可以知道最常见的子类型为8,数据帧的数量为777。

问题3: How many Control frames are in the trace, and what is the most common subtype?

    

如图所示,控制帧的数量为616,最常见的子类型为13

问题4: How many Management frames are in the trace, and what is the most common subtype?    

如图所示,管理帧的数量为960,最常见的子类型为8

问题5: List in the order they are sent the IEEE 802.11 fields in an Acknowledgement frame and their lengths in bytes. Do not break down the Frame Control field into subfields, as we have already looked at these details.

帧控制持续时间接收器地址帧检验序列
2264

问题6: Give an estimate of the retransmission rate as the number of retransmissions over the number of original transmissions. Show your calculation.

    

如下图所示,原始数据帧数量616,重传数据帧250,重传率250/616=0.405

问题7: What fraction of the frames sent to the AP signal that the client is powering down?

  • wlan.fc.tods==1表示筛选从目标(客户端)发送给发送方(AP)的帧
  • wlan.fc.pwrmgt==1表示找到所有表示睡眠的帧,因此有119个客户端关机  

6. 802.11管理

除了数据和确认帧之外,我们还将查看几种类型的管理帧,这些帧用于将计算机连接到 AP,以便它可以发送和接收消息。

1、信标帧
在跟踪中选择一个信标帧,其 BSSID是步骤 4中的主 AP的信标帧。信标帧由 AP 定期发送,向附近的计算机通告它的存在和能力。该帧的 IEEE 802.11 记录将类似于我们上面回顾的数据帧的记录,使用不同的类型和子类型代码来指示它是信标帧。然而,该帧的有效载荷将有所不同:它是 IEEE 802.11 无线局域网管理帧记录。您将看到,在一些固定参数之后,它有一系列标记的参数,列出了 AP 的功能,其中包括 AP 的 SSID 名称(与 BSS ID 一起使用的文本字符串)、它支持的数据速率以及它运行的信道。

问题1: What is the SSID of the main AP? This is one of the tagged parameters in the Beacon frame.

主AP的BSSID为Cisco-Li_f7:1d:51,SSID如图:  

问题2: How often are Beacon frames sent for the main AP? You may find the Beacon interval given in the Beacon frame itself, or change the Time display to be show the interval since the last frame. (Under View, select Time Display Format, and “Seconds Since Previous Displayed Packet”.)

如下图所示,时间间隔为0.102400s

  

问题3: What data rates does the main AP support? The rates are listed under tagged parameters.

支持数据速率6,9,12,18,24,36,48,54  

问题4: What rate is the Beacon frame transmission? The answer to this question will be found on the Radiotap header, or more conveniently displayed in the column you added in an earlier step.

如图所示,信标帧传输速率为1Mb/s

    

问题5: What are the Type and Subtype values of Association Request / Association Response frames?

类型均为0,子类型Association request为0, Association response为1  

问题6: What are the Type and Subtype values for the Probe Request / Probe Response frames?

类型均为0,子类型Probe request为4, Probe response为5    

7. 总结 

本文到这里就结束啦~~
如果觉得对你有帮助,辛苦友友点个赞哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/177.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大语言模型训练的数据集从哪里来?

继续上篇文章的内容说说大语言模型预训练的数据集从哪里来以及为什么互联网上的数据已经被耗尽这个说法并不专业,再谈谈大语言模型预训练数据集的优化思路。 1. GPT2使用的数据集是WebText,该数据集大概40GB,由OpenAI创建,主要内…

Unity Burst详解

【简介】 Burst是Unity的编译优化技术,优化了从C#代码编译成Native代码的过程,经过编译优化后代码有更高的运行效率。 在Unity中使用Burst很简单,在方法或类前加上[BurstCompile]特性即可。在构建时编译代码的步骤,Burst编译器会…

【经典神经网络架构解析篇】【1】LeNet网络详解:模型结构解析、优点、实现代码

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…

数据结构之双向链表

目录 双向链表的基本概念和结构 初始化 尾插 头插 尾删 头删 查找 在指定位置之后插入 删除指定位置节点 判空 销毁 完整代码 测试代码 双向链表的基本概念和结构 双向链表(Doubly Linked List)‌是一种链式存储结构,每个节点除…

[程序设计]—代理模式

[程序设计]—代理模式👳 本文章记录学习于——52.面向切面:AOP-场景模拟_哔哩哔哩_bilibili 最近闲来无事,在学习Spring的源码: 后面慢慢更新源码系列blog,希望多多关注🙏🙏 目前已经总结的b…

网易云音乐登录两部手机:IP属地归属何方?

在数字化生活日益普及的今天,音乐平台成为了我们日常娱乐不可或缺的一部分。网易云音乐,作为众多音乐爱好者的首选,其丰富的音乐资源和个性化的推荐算法深受用户喜爱。然而,随着多设备登录成为常态,一个问题也随之浮现…

spark汇总

目录 描述运行模式1. Windows模式代码示例 2. Local模式3. Standalone模式 RDD描述特性RDD创建代码示例(并行化创建)代码示例(读取外部数据)代码示例(读取目录下的所有文件) 算子DAGSparkSQLSparkStreaming…

SQL多表联查、自定义函数(字符串分割split)、xml格式输出

记录一个报表的统计,大概内容如下: 多表联查涉及的报表有:房间表、买家表、合同表、交易表、费用表、修改记录表 注意:本项目数据库使用的是sqlserver(mssql),非mysql。 难点1:业主信息&#…

实用操作系统学习笔记

第1章 操作系统概述 操作系统基本概念 【基础知识】 操作系统:控制和管理整个计算机系统的硬件和软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合。操作系统是计算机系统中最基本的…

硬件设计-齐纳管

目录 摘要 详情 齐纳管的工作电流、 摘要 齐纳管(Zener Diode)是一种特殊的二极管,它能够在特定的反向电压下保持电流稳定。正常情况下,二极管只允许正向电流通过,而阻止反向电流流过。而齐纳管在一定的反向电压下可…

linux网络 | https前置知识 | 数据加密与解密、数据摘要

前言:本节内容讲述https的相关内容。 https博主会着重讲解https如何让一个请求和一个响应能够安全的进行交互。 https博主将用两篇文章进行讲解。本篇是两篇中第一篇。会把http的安全问题引出来, 然后说一下https的基本解决方法。 下面废话不多说, 开始我…

小目标检测难点分析和解决策略

目录 一、背景 二、检测难点 三、主流改进方法 3.1 基于改进数据增强的小目标检测算法 3.1.1 监督数据增强方法 3.1.2 无监督数据增强方法 3.2. 基于改进特征提取的小目标检测算法 3.2.1. 扩张卷积 3.2.2. 特征增强 3.2.3. 多尺度特征提取 3.2.4. 注意力机制 3.3 基…

Java 继承

目录 1. 继承概述 2. 继承好处 3. 继承格式 4. 继承规定 5. debug 调试 6. 方法重写 6.1 概述 6.2 规定 7. super 关键字 7.1 概述 7.2 使用 7.3 在构造器中使用 8. 子类对象实例化的全过程 9. 练习 1. 继承概述 举例:Person 类中有name&#xff0c…

CES Asia 2025科技盛宴,AI智能体成焦点

2025第七届亚洲消费电子技术展(CES Asia赛逸展)将在北京拉开帷幕,AI智能体有望成为展会的核心亮点。 深圳市人工智能行业协会发文表示全力支持CES Asia 2025(赛逸展),称其为人工智能领域的创新发展提供了强…

HTMLHTML5革命:构建现代网页的终极指南 - 0. 课程目录设计

结构清晰,层层递进 课程从基础知识(如HTML学前必知)开始,逐步深入到高级应用(如PWA配置和WebApp优化)。每个模块都有明确的目标,适合零基础学员逐步掌握HTML。 覆盖范围广 这套课程涵盖了HTM…

大型语言模型(LLM)中的tokens是什么

大型语言模型(LLM)中的tokens是什么 在大型语言模型(LLM)中,tokens是文本处理的基本单位,它可以是一个单词、一个字符、一个标点符号,或者是一个特殊的标记。以下是关于tokens的详细介绍及举例: 一、tokens的定义和作用 定义:tokens是将文本分割成的一个个有意义的…

嵌入式C语言:二维数组

目录 一、二维数组的定义 二、内存布局 2.1. 内存布局特点 2.2. 内存布局示例 2.2.1. 数组元素地址 2.2.2. 内存布局图(简化表示) 2.3. 初始化对内存布局的影响 三、访问二维数组元素 3.1. 常规下标访问方式 3.2. 通过指针访问 3.2.1. 指向数…

Java进阶-在Ubuntu上部署SpringBoot应用

随着云计算和容器化技术的普及,Linux 服务器已成为部署 Web 应用程序的主流平台之一。Java 作为一种跨平台的编程语言,具有广泛的应用场景。本文将详细介绍如何在 Ubuntu 服务器上部署 Java 应用,包括环境准备、应用发布、配置反向代理&#…

node-sass@4.14.1报错的最终解决方案分享

输入npm i全安装文件所需的依赖的时候,博主是使用sass去书写的,使用的是node-sass4.14.1和sass-loader7.3.1的版本的,安装的时候老是出现错误, node-sass4.14.1版本不再被支持的原因 node-sass 是一个基于 LibSass 的 Node.js 绑…

Java设计模式 —— 【行为型模式】命令模式(Command Pattern) 详解

文章目录 模式介绍优缺点适用场景结构案例实现注意事项 模式介绍 有时候需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是什么。此时希望用一种松耦合的方式来设计程序,使得请求发送者和请求接收者能够消除彼此…