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

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

文章目录

  • 哈工大计算机网络课程局域网详解之:无线局域网
    • 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)发送关联响应帧

在这里插入图片描述

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

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

相关文章

3ds MAX绘制茶壶

综合一下之前的内容画个茶壶 长方形,然后转化为可编辑多边形,添加节点并设置圆角,如下图 车削生成一个圆环,其实这一步也可以用一个圆柱体和两个圆角圆柱体解决 效果如下: 茶壶的底座绘制好了 接下来是茶壶的上半边 …

TypeScript -- 函数

文章目录 TypeScript -- 函数JS -- 函数的两种表现形式函数声明函数的表达式es6 箭头函数 TS -- 定义一个函数TS -- 函数声明使用接口(定义)ts 定义参数可选参数写法 -- ?的使用TS函数 -- 设置剩余参数函数重载 TypeScript – 函数 JS – 函数的两种表现形式 我们熟知js有两…

history命令:显示命令执行时间

1.修改配置文件 vim /etc/profile 添加内容 export HISTTIMEFORMAT"%Y-%m-%d %H:%M:%S " ​ #注意:在末尾的“引号”与“S”之间,加入一位空格,将日期时间和历史命令用空格相隔开来。 你也可以换一种清晰的形式,效果…

实验三 贪心算法

实验三 贪心算法 迪杰斯特拉的贪心算法实现 优先队列等 1.实验目的 1、掌握贪心算法的基本要素 :最优子结构性质和贪心选择性质 2、应用优先队列求单源顶点的最短路径Dijkstra算法,掌握贪心算法。 2.实验环境 Java 3.问题描述 给定带权有向图G (V…

背包问题求具体方案数问题--板子题

12. 背包问题求具体方案 - AcWing题库 思路:先将v[i]和w[i]先输入进去,然后我们进行倒叙dp,这个做的目的就是为了后边我们为了匹配确定路径做好准备,如果我们倒叙输入进去,我们再正序的时候就可以用推导式来进行路径输…

DevOps(四)

CD(二) 1. CDStep 1 - 上传代码Step 2 - 下载代码Step 3 - 检查代码Step 4 - 编译代码Step 5 - 上传仓库Step 6 - 下载软件Step 7 - 制作镜像Step 8 - 上传镜像Step 9 - 部署服务2. 整体预览2.1 预览1. 修改代码2. 查看sonarqube检查结果3. 查看nexus仓库4. 查看harbor仓库5.…

PTA 1052 Linked List Sorting

个人学习记录,代码难免不尽人意。 A linked list consists of a series of structures, which are not necessarily adjacent in memory. We assume that each structure contains an integer key and a Next pointer to the next structure. Now given a linked li…

PHP关于字符串的各类处理方法

判断字符串是否以指定子串开头或结尾 function startsWith($str, $prefix) {return stripos($str, $prefix) 0; }function endsWith($str, $suffix) {return substr_compare($str, $suffix, -strlen($suffix)) 0; }// 示例用法 $text "hello world"; $result st…

Hadoop简介以及集群搭建详细过程

Hadoop简介以及集群搭建详细过程 hadoop集群简介hadoop部署模式Hadoop集群安装1.集群角色规划2.服务器基础环境准备3.上传安装包hadoop安装包目录结构5.编辑hadoop配置文件6.分发安装包7.配置hadoop环境变量8.NameNode format(格式化操作) hadoop集群启动关闭-手动逐个进程启停…

【低代码专题方案】使用iPaaS平台下发数据,快捷集成MDM类型系统

01 场景背景 伴随着企业信息化建设日趋完善化、体系化,使用的应用系统越来越多,业务发展中沉淀了大量数据。主数据作为数据治理中枢,保存大量标准数据库,如何把庞大的数据下发到各个业务系统成了很棘手的问题。 传统的数据下发方…

Linux 命令 ps aux 命令解析

一、简介 PS 是 Linux 系统命令之一,在 Linux 中是查看进程的命令。查看正处于 Running 的进程。 linux 上进程有 5 种状态: 运行:正在运行或在运行队列中等待 中断:休眠中,受阻,在等待某个条件的形成或接收到信号 不…

android app控制ros机器人一

android开发app,进而通过控制ros机器人,记录开发过程 查阅资料: rosjava使用较多,已经开发好的app也有开源的案例 rosjava GitHub https://github.com/ros-autom/RobotCA https://github.com/ROS-Mobile/ROS-Mobile-Android…

Pandas时序数据分析实践—概述

时序数据,作为一种时间上有序的数据形式,无疑是我们日常生活中最常见的数据类型之一。它记录了事件、现象或者过程随时间的变化,是对于许多实际场景的忠实反映。而在众多时序数据的应用领域中,跑步训练记录莫过于是一项令人着迷的…

亲测解决Git inflate: data stream error (incorrect data check)

Git inflate: data stream error (incorrect data check) error: unable to unpack… 前提是你的repository在github等服务器或者其他路径有过历史备份/副本,不要求是最新版本的,只要有就可能恢复你做的所有工作。 执行git fsck --full检查损坏的文件 在…

《TCP IP网络编程》第十一章

第 11 章 进程间通信 11.1 进程间通信的基本概念 通过管道实现进程间通信: 进程间通信,意味着两个不同的进程中可以交换数据。下图是基于管道(PIPE)的进程间通信的模型: 可以看出,为了完成进程间通信&…

代码随想录 DAY45

class Solution { public: int climbStairs(int n) { vector<int>dp(n1,0); dp[0]1; for(int j0;j<n;j){ for(int i1;i<2;i){ if(j>i) dp[j]dp[j-i]; } } return dp[n]; } }; 这个题还是说想清楚 这个因为有1和2 阶的情况 所以i就是从1开始遍历 然后小于等于…

ConcurrentHashMap

ConcurrentHashMap 同步容器类是 Java 5 增加的一个线程安全的哈希表。对与多线程的操作&#xff0c;介于 HashMap 与 Hashtable 之间。内部采用“锁分段”机制替代 Hashtable 的独占锁。进而提高性能。 jdk8 弃用了分段锁&#xff0c;使用 cassynchronized 放弃分段锁的原因&a…

SQL基础语法 | 增删改查、分组、排序、limit

Shell命令框和Navicat联合使用 一、数据库层面 创建数据库 postgres# CREATE DATABASE runoobdb;查看数据库 postgres# \l选择数据库 postgres# \c runoobdb删除数据库 postgres# DROP DATABASE runoobdb;二、表格层面 创建表格 CREATE TABLE table_name(字段名称 字段数据类型…

【NLP】一个使用PyTorch实现图像分类的迁移学习实例

一个使用PyTorch实现图像分类的迁移学习实例 1. 导入模块2. 加载数据3. 模型处理4. 训练及验证模型5. 微调6. 其他代码 在特征提取中&#xff0c;可以在预先训练好的网络结构后修改或添加一个简单的分类器&#xff0c;然后将源任务上预先训练好的网络作为另一个目标任务的特征提…

数据决定AIGC的高度,什么又决定着数据的深度?

有人曾言&#xff0c;数据决定人工智能发展的天花板。深以为然。 随着ChatGPT等AIGC应用所展现出的强大能力&#xff0c;人们意识到通用人工智能的奇点正在来临&#xff0c;越来越多的企业开始涌入这条赛道。在AIGC浪潮席卷全球之际&#xff0c;数据的重要性也愈发被业界所认同…