哈工大计算机网络课程局域网详解之:无线局域网

哈工大计算机网络课程局域网详解之:无线局域网

文章目录

  • 哈工大计算机网络课程局域网详解之:无线局域网
    • IEEE 802.11无线局域网
    • 802.11体系结构
    • 802.11:信道与AP关联

本节介绍一下平时经常使用的一个无线局域网技术,也就是通常我们使用的wifi。

IEEE 802.11无线局域网

wifi是IEEE 802.11这样一个系列标准所定义的无线局域网。作为802.11局域网来说,实际上存在很多版本:

  • 802.11b

    • 2.4-2.5GHz免费频段(unliebensed spectrum)
    • 最高速率:11Mbps
    • 物理层采用直接序列扩频(DSSS)技术。所有主机使用相同的码片序列。
  • 802.11a

    • 5-6G频段
    • 最高速率:54Mbps
  • 802.11g

    • 2.4-2.5GHz频段
    • 最高速率:54Mbps
  • 802.11n(多天线MIMO)

    • 2.4-2.5GHz频段
    • 最高速率:600Mbps

虽然有多个802.11的无线局域网标准,但是作为802.11无线局域网在链路层解决介质访问控制时,都使用CSMA/CA多路访问控制协议。 并且,802.11无线局域网在组网过程中都支持两种类型的网络模式:

  • 基础设施模式(基站模式)

    所有的无线主机都是通过无线方式与基站通信,基站通常再利用有线的方式连接到现有的基础设施网络上去,比如Internet网络。

  • 特定网模式(自组网模式)

    在自组网模式中,网络中没有基站,都是一些无线主机,在一定区域内动态的构成区域性网络。

下表给出了802.11局域网各种标准的特性,可供参考:

在这里插入图片描述

802.11体系结构

在这里插入图片描述

上面的体系结构示意图,就是典型的802.11基础设施模型的网络结构,也是大家平时接触的无线局域网最典型的网络结构。在这个结构中,可以看到这样几部分:

  • 无线主机与基站通信

    • 基站(base station)= 访问点(access point - AP)
    • 作为基站,可以进一步的连接到集线器、交换机或路由器上,从而进一步连接到Internet网络上。
  • 在每一个基站的覆盖范围内,这些无线主机都可以跟该基站进行连接,通过基站进行通信。这个覆盖范围,通常称为一个基本服务集BSS(Basic Service Set),也称为单元(cell)。

    • 基础设施网络模式:一个基本服务集包含AP:基站和无线主机。

    • 自组网模式:一个基本服务集只包含主机。

802.11:信道与AP关联

接下来我们继续看一下,802.11无线局域网中的主机是如何与AP进行关联的,以及如何使用它所占用的频率带宽。

以802.11b标准为例,它使用的频带是2.4-2.482GHz,在这个频段中,频谱被划分为11个不同频率的信道。

  • 作为AP,每个AP在运行时在这个11个不同频率的信道中选择(或由网络管理员指定)一个频率来工作。

  • 由于在实际网络构成中,有很多距离相近的AP存在,而这些AP的频率选择并没有一个硬性的标准来约束,因此很有可能出现,相邻的两个AP之间所选择的频率相同或相邻。因此,在802.11无线局域网中,一定会存在一些干扰问题

任何一个主机,在802.11无线局域网中,要想进行通信,必须要与某个AP进行关联。 关联过程大致如下:

  • 任何一个主机都可以通过扫描这11个信道,来探测有哪些AP工作在这些信道上。事实上不管是哪个AP,只要在某一信道上工作的话,就会在相应的信道上定期发送或广播一个叫信标(beacon)帧。这个信标帧里就包含了这个AP所属的服务集标识符-SSID,以及这个AP的MAC地址。监听包含AP名称(服务集标识符-SSID)和MAC地址的信标(beacon)帧。

  • 选择一个AP关联

    因此作为某一个主机,可能在某个地点可以搜索到多个AP(比如打开Wi-Fi,可以看到有很多个Wi-Fi可以连接)。这种情况下,主机可以手动选择一个AP,也可以让系统自动选择AP(比如wifi自动连接)。当主机选定一个AP之后,就会与该AP进行关联。

  • 身份认证

    提供认证信息,比如用户名或密码,通过认证后,才能成功进行关联。

  • 典型场景:运行DHCP获取IP地址

    在现在Internet网络环境下,主机关联AP之后,通常还会利用DHCP协议来动态获取IP地址信息,完成主机的IP地址配置后,才真正地可以进行网络通信。

在主机与AP关联时,可以分为两种模式:被动扫描与主动扫描

被动扫描:

  • 各AP发送信标帧
  • 主机(H1)向选择的AP发送关联请求帧
  • AP向主机(H1发送关联响应帧)
    在这里插入图片描述

主动扫描:

  • 主机(H1)主动广播探测请求帧(Probe Request Frame)
  • AP发送探测响应帧(Probe Response Frame)
  • 主机(H1)向选择的AP发送关联请求帧
  • AP向主机(H1)发送关联响应帧

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue2基础五、工程化开发

零、文章目录 Vue2基础五、工程化开发 1、工程化开发和脚手架 (1)开发 Vue 的两种方式 核心包传统开发模式:基于 html / css / js 文件,直接引入核心包,开发 Vue。工程化开发模式:基于构建工具&#xf…

CSS Flex 笔记

1. Flexbox 术语 Flex 容器可以是<div> 等&#xff0c;对其设置属性&#xff1a;display: flex, justify-content 是沿主轴方向调整元素&#xff0c;align-items 是沿交叉轴对齐元素。 2. Cheatsheet 2.1 设置 Flex 容器&#xff0c;加粗的属性为默认值 2.1.1 align-it…

Windows 找不到文件‘chrome‘。请确定文件名是否正确后,再试一次

爱像时间&#xff0c;永恒不变而又短暂&#xff1b;爱像流水&#xff0c;浩瀚壮阔却又普普通通。 Windows 找不到文件chrome。请确定文件名是否正确后&#xff0c;再试一次 如果 Windows 提示找不到文件 "chrome"&#xff0c;可能是由于以下几种原因导致的&#xff1…

Unity下如何实现低延迟的全景RTMP|RTSP流渲染

技术背景 Unity3D可以用于创建各种类型的的应用程序&#xff0c;包括虚拟现实、培训模拟器等。以下是一些可以使用Unity3D全景播放的场景&#xff1a; 虚拟现实体验&#xff1a;全景视频可以用来创建逼真的虚拟环境&#xff0c;使用户能够感受到身临其境的感觉&#xff1b;培…

LeetCode|backtracking|review:40. 131. 93. 47. 332. | 37. Sudoku Solver

复习&#xff1a; 40. Combination Sum II [1,1,2,3]中&#xff0c;答案里有[1,1,2], 但是不能有两个[1,2,3] 131. Palindrome Partitioning 每个for都是在给定的start之后找一个palindrome。当start 93. Restore IP Addresses forloop每次loop都是在给定的start的后三个数…

干货 | 5个经典的模拟电路解析,电子人必看!

干货 | 5个经典的模拟电路解析&#xff0c;电子人必看&#xff01; 作为一个电子人&#xff0c;我们平时需要和不同的电路接触&#xff0c;但有一些电路图是经典的&#xff0c;值得我们永远记住。一、自举电路 此电路用在各种ADC之前的采样电路&#xff0c;可以让ADC实现轨到轨…

给APK签名—两种方式(flutter android 安装包)

前提&#xff1a;给未签名的apk签名&#xff0c;可以先检查下apk有没有签名 通过命令行查看&#xff1a;打开终端或命令行界面&#xff0c;导入包含APK文件的目录&#xff0c;并执行以下命令&#xff1a; keytool -printcert -jarfile your_app.apk 将 your_app.apk替换为要检查…

《2023中国开发者调查报告》探索2023中国开发者的技术创新与挑战:AIoT、云原生、国产数据库等领域的发展与前景

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

[论文阅读笔记24]Social-STGCNN: A Social Spatio-Temporal GCNN for Human Traj. Pred.

论文: 论文地址 代码: 代码地址 作者在这篇文章中直接用GNN对目标的轨迹时空特征进行建模, 并用时序CNN进行预测, 代替了训练难度较大和速度较慢的RNN类方法. 0. Abstract 行人轨迹预测是一个比较有挑战性的任务, 有着许多的应用. 一个行人的轨迹不仅是由自己决定的, 而且受…

[JavaScript游戏开发] 绘制冰宫宝藏地图、人物鼠标点击移动、障碍检测

系列文章目录 第一章 2D二维地图绘制、人物移动、障碍检测 第二章 跟随人物二维动态地图绘制、自动寻径、小地图显示(人物红点显示) 第三章 绘制冰宫宝藏地图、人物鼠标点击移动、障碍检测 文章目录 系列文章目录前言一、本章节效果图二、介绍2.1、准备地图素材2.2、封装地图上…

前端食堂技术周刊第 91 期:2023 npm 状态、TC39 会议回顾、浏览器中的 Sass、React 18 如何提高应用程序性能

美味值&#xff1a;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f; 口味&#xff1a;茶椰生花 食堂技术周刊仓库地址&#xff1a;https://github.com/Geekhyt/weekly 大家好&#xff0c;我是童欧巴。欢迎来到前端食堂技术周刊&#xff0c;我们先来看下…

Spring核心概念、IoC和DI的认识、Spring中bean的配置及实例化、bean的生命周期

初始Spring 一、Spring核心概念1.1IoC(Inversion of Contral)&#xff1a;控制反转1.2IoC代码实现1.2DI代码实现 二、bean的相关操作2.1bean的配置2.1.1bean的基础配置2.1.2bean的别名配置2.1.3bean的作用范围配置 2.2bean的实例化 - - 构造方法2.3bean的实例化 - - 实例工厂与…

【软件测试】webdriver常用API演示(Java+IDEA+chrome浏览器)

1.元素定位方法 对象的定位应该是自动化测试的核心&#xff0c;要想操作一个对象&#xff0c;首先应该识别这个对象。一个对象就是一个人一样&#xff0c;他会有各种的特征&#xff08;属性&#xff09;&#xff0c;如比我们可以通过一个人的身份证号&#xff0c;姓名&#xf…

粘包处理的方式

为什么出现粘包&#xff1a; 发送端在发送的时候由于 Nagel 算法的存在会将字节数较小的数据整合到一起发送&#xff0c;导致粘包&#xff1b;接收端不知道发送端数据的长度&#xff0c;导致接收时无法区分数据&#xff1b; 粘包处理的方式&#xff1a; 通过在数据前面加上报…

flask 实现简单的登录系统demo

你提供的代码是一个基本的Flask应用程序&#xff0c;实现了一个简单的登录系统。以下是代码的详细解释&#xff1a; 1. 导入必要的模块&#xff1a;os 用于生成密钥&#xff0c;Flask 用于创建Web应用程序。 2. 创建Flask应用程序的实例&#xff0c;并为会话管理设置一个密钥。…

如何提高自动化测试覆盖率

实施自动化测试最重要的就是要保证其可用性&#xff0c;而不少同学写了不少自动化测试用例&#xff0c;但感觉到其可用性不高。究其原因&#xff0c;不是自动化测试本身的问题&#xff0c;是实施自动化测试的时候没有考虑周全。 第一&#xff0c;不合事宜地引入自动化测试 在公…

C++ | 红黑树以及map与set的封装

目录 前言 一、红黑树 1、红黑树的基本概念 2、红黑树相关特性 3、红黑树结点的定义 4、红黑树的查找 5、红黑树的插入 6、二叉树的拷贝构造与析构 7、红黑树的检测 8、红黑树总结 二、map与set的封装 1、红黑树的结点 2、红黑树迭代器 3、set的封装 4、map的封…

一、前端高德地图注册、项目中引入、渲染标记(Marker)and覆盖物(Circle)

首先说明一下&#xff0c;下面的流程只是个人摸索and看文档梳理出来的&#xff0c;并不作为完全正确的流程。 首先&#xff0c;注册 高德开放平台 没有注册的可以点击右上角点击注册&#xff1b; 我们点个人的就ok&#xff1b; 信息完善之后我们到控制台&#xff0c;点击 应…

使用Feign出现空指针异常

说明&#xff1a;本文记录一次偶然出现的空指针异常&#xff0c;在微服务架构中&#xff0c;一个服务在调用另一个服务时&#xff0c;出现了空指针异常。 业务描述&#xff1a;在做订单超时功能时&#xff0c;大家都知道&#xff0c;可以使用RabbitMQ延迟队列&#xff0c;下单…

二、SQL-6.DCL-2).权限控制

*是数据库和表的通配符&#xff0c;出现在数据库位置上表示所有数据库&#xff0c;出现在表名位置上&#xff0c;表示所有表 %是主机名的通配符&#xff0c;表示所有主机。 e.g.所有数据库&#xff08;*&#xff09;的所有表&#xff08;*&#xff09;的所有权限&#xff08;a…