Android网络之WIFI技术网络模型概述

文章目录

    • 术语
    • 1、WLAN与WIFI
    • 2、802.11 WIFI无线网络标准演进
    • 3、WIFI5、WIFI6和WIFI7的最高速率对比
    • 4、WIFI网络中的各个角色(元件)
      • 1)网络拓扑架构图
    • 5、802.11权威指南
      • 1)OSI与TCP/IP
      • 2)IEEE 802.11协议簇介绍
      • 3)802.11
        • 1、Preface
        • 2、网络协议如何落地到软件实现?
        • 3、802.11通信认证框架
      • 4)802.11 MAC
    • 6、利用AI分析复杂且枯燥的协议帧

术语

WLAN :Wireless Local area network
WIFI : Wireless Fidelity
MAC : media access control
LAN : local area networkWFD : wifi displayWPA :WIFI protected access
WEP : Wired Equivalent Privacy (WEP)
WPS : WIFI Protected Setup协议名词
MAC : media access control
LAN : local area network

1、WLAN与WIFI

WLAN是一种广义无线局域网技术,包含蓝牙、Zigbee、WIFI等
在这里插入图片描述

2、802.11 WIFI无线网络标准演进

在这里插入图片描述

3、WIFI5、WIFI6和WIFI7的最高速率对比

WIFI7应用场景:https://mp.weixin.qq.com/s/5RyX14Hnit9XWLwW84xPiQ
在这里插入图片描述

wifi-7支持802.11.ac和802.11ax吗? Wi-Fi 7(802.11be)在设计上完全支持向下兼容Wi-Fi 5(802.11ac)和Wi-Fi 6(802.11ax),这是Wi-Fi标准演进的固有特性。

4、WIFI网络中的各个角色(元件)

1、STA : station

2、AP : access point

3、DS : Distribution system

4、SSID : Service Set ID 服务集识别码 - AP的网络名称

5、BSSID : Basic Service Set ID 基础服务集识别码 - AP的MAC地址

6、BSS :Basic Service Set 基础服务机

WM : Wireless Medium 无线媒介

ESS : Extended Service Set 扩展服务集 (由多个BSS组层)

ESSID : Extended Service Set ID 扩展服务集标识

1)网络拓扑架构图

在这里插入图片描述

在这里插入图片描述

5、802.11权威指南

涉及的机构单位

IEEE : 电子电机工程协会,制定电子设备标准,包括各种不同的通信技术;

WIFI联盟 : 贸易协会、测试机构(WIFI认证)及标准制定机构所组成;

1)OSI与TCP/IP

1、OSI七层网络模型Open System Interconnection Reference Model(从上至下,从宏观上定义软件和硬件)- 大家都遵守的计算机网络模型,使得不同架构的计算机网络都能实现互连

在这里插入图片描述

在工程应用中(比如linux),将OSI简化为TCP/IP五层网络模型,比如在unix系统中根据TCP/IP协议来实现网络软件框架(可以理解为中间件,也常称为socket通信),上层调用对应的socket接口实现网络数据的发送和接收。

2、一般协议中的各层软件实现和硬件实现(不一定完全对应,尤其是数据链路层,软件实现或硬件实现 具体情况具体分析)
在这里插入图片描述

对于PHY,一定是硬件实现,软件工程师可简单了解即可

MAC 是一组用于决定如何访问介质与传送数据的规则(数据帧格式-MAC帧),即发出的数据如何给对方正确接收

2)IEEE 802.11协议簇介绍

1、IEEE802家族

IEEE802家族是由一些列局域网(Local area network,简称LAN)技术规范所组成的,802.11是其中之一。IEEE802规范的重心放在OSI模型的最下面两层,因为它们同时涵盖了物理层(physical,简称PHY)与数据链路层(data link)组件。

2、为啥IEEE802重点是定义数据链路层和物理层?与OSI模型的关联?

1)网络设备多种多样,路由器、交换机、以太网、WIFI,蜂窝网,OSI统一定义,大家都遵守OSI,既然软件和硬件有成熟的实现,那么肯定复用已有的,IEEE 802就是基于OSI来定义的,在这基础上定义差异化部分,进一步地,因为WIFI是后面才流行发展起来,基于IEEE802框架,新增WIFI部分的规范(加入一些新的网络元件和一堆新的术语),即802.11

2)那就是为什么 无论是有线网、无线网络,都可以使用socket接口来收发数据!

3)总的来说OSI与802的关联如下
在这里插入图片描述

在这里插入图片描述

3)802.11

1、Preface

1、802.11是什么?

1)无线技术很多种,其中802.11在历史发展洪流中脱颖而出,WIFI无线技术就是由802.11所描述;

2)读标准规范技术手册都是十分枯燥,掌握本质和框架,细节交给AI;

2、802.11规范了哪些内容?怎么对待802.11

1)ISO、TCP/IP、IEEE802.11、802.11都是一些理论规定,无论何种架构的计算机网络设备和软件都参照这些理论来设计(路由器、WIFI模组、基站、蜂窝网3G/4G/5G),

2)802.11规范了方方面面,从硬件到软件,整个网络的不同设备都有描述,不同设备下的不同岗位的关注重点是不同的;

3)802.11描述了很多细节,这些细节我们需要掌握?面对如此成熟的体系,中间件部分不需要我们去设计,甚至基本都不会出现问题,我们应该是从宏观上去了解(掌握基本术语、流程 都要背下来),达到能分析较为上层(应用程序)/ 底层(WIFI驱动)的异常,这些都是不同厂家自行实现的部分。

比如定位问题思路 -> 确定是哪个通信流程出了问题 -> 对应流程的数据包是否出现异常 -> 从而解决

4)只有在设计新的网络协议的情况下才要求去彻底掌握各方面的细节!比如实现自家专用的网络协议,规范中应该有很多能裁剪的流程和数据格式,那样针对某产品/某场景达到最佳实现;

3、为什么要遵守802.11规范?

1)无线设备如此之多,为了能够互相对接起来,让厂家的产品嵌入到到wifi这个生态,就必须遵循规范,数据通信流程和每个流程所对应的数据格式 差一点都不行;

2、网络协议如何落地到软件实现?

1、802.11协议在硬件层面、软件层面起到什么作用?

1)MTK/ATBM/AIC等WIFI芯片厂家设计硬件是都要根据802.11来进行硬件设计,实现的细节可以不同,接口要一致;

2)linux/windows/IOS/android等各个系统厂家都是根据802.11来进行软件设计,但实现细节可以不一样的,各个层级和接口 要符合规范,比如kernel中的inet

inet的描述
android\kernel\fusion\4.19\net\ipv4\af_inet.c
* INET		An implementation of the TCP/IP protocol suite for the LINUX*		operating system.  INET is implemented using the  BSD Socket*		interface as the means of communication with the user level.**		PF_INET protocol family socket handler.

2、因此学习某一平台下的网络设备(比如linux下的无线网络设备),当然要了解802.11,先掌握基本的术语和流程,再去研究代码实现,遇到细节再回来反查802.11规范。

3、802.11通信认证框架

在这里插入图片描述

WIFI正式传输数据之前,要先完成连接(由supplicant负责),包括找出环境中的网络、输入密码完成连接,后续才可以向对方请求数据(STA->AP)

4)802.11 MAC

MAC帧分类(纯数据格式定义,这里就不一一展开)

1)数据帧

2)控制帧

3)管理帧

6、利用AI分析复杂且枯燥的协议帧

1)我们应当掌握整体框架,细节分析交给AI,那样才是最高效的!

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

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

相关文章

游戏中的设计模式——第三篇 简单工厂模式

5. 简单工厂模式 5.1 简单工厂模式的定义 简单工厂模式的核心是定义一个创建对象的接口,将对象的创建和本身的业务逻辑分离,降低系统的耦合度,使得两个修改起来相对容易些,当以后实现改变时,只需要修改工厂类即可。 5.…

基于SVN搭建企业内部知识库系统实践

一、准备工作 CentOS 7 服务器:确保你有 root 或 sudo 权限,可以访问该服务器。Windows 客户端:你将需要在 Windows 上安装 TortoiseSVN 客户端来与 SVN 服务器交互。防火墙:确保你的防火墙已开放 3690 端口,用于 SVN…

SQL注入7----(盲注与回显)

一.前言 在我们的注入语句被带入数据库查询但却什么都没有返回的情况我们该怎么办?例如应用程序就会返回 一个"通用的"的页面,或者重定向一个通用页面(可能为网站首页)。这时,我们之前学习的SQL注入办 法就…

尚硅谷宋红康JVM全套教程(详解java虚拟机)

https://www.bilibili.com/opus/1071553679925968898 案例7:日均百万订单系统JVM参数设置 https://github.com/wei198621/jvm_by_atguigu https://github.com/xftxyz2001/atguigu-jvm/blob/main/JavaYouthdocsJVM/%E7%AC%AC1%E7%AB%A0-JVM%E4%B8%8EJava%E4%BD%…

鸿蒙NEXT开发实战:图片显示、几何图形与自定义绘制详解

探索HarmonyOS NEXT强大的图形渲染能力,从图片展示到自定义绘图 HarmonyOS NEXT作为华为自主研发的操作系统,为开发者提供了一套丰富而强大的图形渲染能力。无论是显示图片、绘制几何图形,还是实现复杂的自定义绘图,鸿蒙都提供了简…

python + Flask模块学习 2 接收用户请求并返回json数据

用到的模块还是flask,用到的类有Flask, request, jsonfiy 🙂 目录 1、GET请求 2、POST请求 1、表单格式 2、json格式 就酱,也比较简单,下一篇说简单的授权,简单来说就是比如用户付费买了服…

国内外常用的免费BUG管理工具选型

帮助用户根据自身情况做决定,比如团队规模、技术能力、是否需要移动端支持等。避免只是罗列工具,而是提供实际选择的维度。 国内外常用的免费BUG管理工具选择非常丰富,从轻量级到功能全面型都有覆盖。我将它们分为几类,并详细介绍…

JavaScript的事件循环机制

1.事件循环的理解JavaScript是单线程的,意味着它一次只能执行一个任务。而事件循环就是去协调在JavaScript环境中运行的同步任务、异步任务(微任务、宏任务)的执行顺序的一种机制。它是 JavaScript 实现单线程非阻塞异步执行的核心。2.事件循环的执行顺序同步任务—…

数据结构——栈(Java)

目录 一定义. 入栈 出栈 二.栈与线性表的关系 三.栈的实现方式 四.链表实现栈 1.结点的API设计 2.栈的API设计 2.1栈的初始化设计 2.2元素入栈 2.3元素出栈 五.括号匹配问题 完整代码展示 答案 一定义. 栈是一种基于先进后出(FILO)的数据…

科研笔记:数学建模启发的课题研究方法

借鉴数学建模的思路解决科学问题或开展课题研究,核心是将实际问题抽象为数学框架,通过定量分析、逻辑推演和验证优化,实现对问题的精准描述、解释或预测。其本质是“从现实到数学,再从数学回归现实”的迭代过程,适用于…

Agent落地到底选择LangChain 还是 LangGraph

核心概念 LangChain:一个用于构建由大型语言模型驱动的应用程序的框架。它提供了大量的组件和现成的链,旨在简化和标准化应用程序与LLM交互的过程。 LangGraph:一个用于在LangChain之上构建有状态、多参与者的 工作流 的库。它特别擅长处理具有循环、分支和复杂协调的代理(…

ChatGPT下的相关聊天提示词

问:如果我觉得一个子对话里,聊天聊得太多,在这个项目下新开一个子对话,但是不想把上次太多的信息 都复制过来,有没有什么办法关键词:项目、子对话,上下文ChatGPT:有办法的 ✅在 ChatGPT 里&…

最新PDF版本!Acrobat Pro DC 2025,解压即用版

软件介绍 Adobe Acrobat Pro DC 2025 是全球知名的 PDF 编辑神器,被称为 “最牛 PDF 工具”,能轻松解决 PDF 编辑、创建、转换等难题,本次分享的版本解压即可使用。 软件特点 然解压即可使用不用登录注册最新版本 软件使用 我们打开软件选…

XX汽集团数字化转型:全生命周期网络安全、数据合规与AI工业物联网融合实践

引言:数字化转型中的安全与效率双轮驱动作为中国汽车行业的龙头企业,XX汽集团近年来积极推进数字化转型,通过构建全生命周期网络安全体系、完善数据合规治理框架,并深度融合AI工业物联网技术,实现了生产成本显著降低和…

云原生部署_Docker入门

Docker是啥Docker是一个开源的容器化平台,可以帮助开发者将应用程序和其依赖的环境打包成一个可移植、可部署的容器。Docker的主要目标是通过容器化技术,实现应用程序的快速部署、可移植性和可扩展性,从而简化应用程序的开发、测试和部署过程…

【大数据专栏】大数据框架-Apache Druid Overview

目录 Architecture Advantages and disadvantages 从架构以及设计可以得出结论,Durid不支持ACID事务,基于时间戳列和维度列去查询,所以适合基于时间做分组和学列的查询操作。 Advantages优势: 实时数据摄取与查询 支持秒级数据摄…

云平台面试内容(一)

1. 云计算的优点、服务模型区别及云部署模式 云计算优点: 云计算具有显著的优势,包括无需自建机房和硬件投入,资源即开即用并支持弹性伸缩,按需付费使成本透明可控。企业可以在数分钟内完成全球范围的部署,缩短上线周期。同时云平台提供高可用性和安全性,多副本容灾保证数…

嵌入式 - 硬件:51单片机(2)

本节重点:1. GPIO输入模式、输出模式2. 按键工作原理(GPIO输入)3. 中断概念4. 中断源概念、中断源个数、哪几个中断源5. 外部中断、定时器中断概念6. 中断处理流程:7. 51单片机中定时器的个数?类型8. 16位定时器和8位…

C语言中奇技淫巧07-使用GCC栈保护选项检测程序栈溢出

-fstack-protector 是 GCC 和 Clang 编译器提供的一种栈保护(Stack Smashing Protection, SSP) 机制,用于检测和防御常见的缓冲区溢出攻击(特别是栈溢出)。它通过在函数的栈帧中插入特殊的“金丝雀值”(can…

.NET 8.0 Web API JWT 身份验证和基于角色的授权

在当今的数字环境中,保护 Web 应用程序的安全至关重要。随着 .NET 8.0 的不断发展,它提供了强大的工具来确保您的 API 既安全又高效。 示例代码:https://download.csdn.net/download/hefeng_aspnet/91490262 如果您喜欢此文章&#xff0c…