802.11g组帧方式以及物理层收发过程简介

2024-05-10 23:48

本文主要是介绍802.11g组帧方式以及物理层收发过程简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章来源http://blog.csdn.net/CTO_51/article/details/8426771

从网络逻辑结构上来看,802.11g只定义了物理层及介质访问控制(MAC)子层。MAC层提供对共享无线介质的竞争使用和无竞争使用,具有无线介质访问、网络连接、数据验证和保密等功能。


        物理层为数据链路层提供物理连接,实现比特流的透明传输,所传数据单位为比特(bit)。物理层定义了通信设备与接口硬件的机械、电器功能和过程的特性,用以建立、维持和释放物理连接。物理层由三部分组成:物理层管理层、物理层收敛过程子层(PLCP)和物理介质依赖子层(PMD) 。


        802.11g的物理帧结构分为前导信号(Preamble),信头(header)和负载(payload)。Preamble:主要用于确定移动台和接入点之间何时发送和接收数据,传输进行时告知其他移动台以免冲突,同时传送同步信号及帧间隔。前导信号完成,接收方才开始接收数据。Header:在Preamble之后,用来传输一些重要的数据比如负载长度、传输速率、服务等信息。Payload:由于数据率及要传送字节的数量不同,负载的包长变化很大,可以十分短也可以十分长。在一帧信号的传输过程中,Preamble和Header所占的传输时间越多,Payload用的传输时间就越少,传输的效率越低。


        综合上述三种调制技术的特点,802.11g采用了OFDM等关键技术来保障其优越性,分别对Preamble、header、payload进行调制,这种帧结构称为OFDM/OFDM方式。另外,802.11g草案标准规定了可选项与必选项,为了保障与11b兼容也可以采用CCK/OFDM和CCK/PBCC的可选调制方式。

1.   OFDM调制为必选项保障传输速率达到54Mbps 。

2.   采用CCK调制作为必选保障后向兼容性 。

3.   CCK/PBCC与CCK/OFDM作为可选项 。


OFDM/OFDM:前导、信头和负载都使用OFDM进行调制传输,其传输率可达54Mbps。OFDM一个特点是它有短的前导信号,相比CCK调制信号的帧头是72s,然而OFDM调制信号的帧头是16s。帧头是一个信号的重要组成部分,帧头占有时间的减少,提高了信号传送数据的能力。OFDM允许较短的信头给更多的时间用于传输数据,具有较高的传输效率。因此,对于11Mbps的传输速率,CCK调制是一个好的选择,但要继续提升速率必须使用OFDM调制技术。它的最高传输速率可达54Mbps。802.11g协议中OFDM/OFDM方式也可以和WIFI共存,不过他需要使用RTS/CTS协议来解决冲突问题。


CCK/OFDM:是一种混合调制方式,是802.11g的可选项。其信头和前导信号用补码键控(CCK)调制方式传输,OFDM技术传送负载。由于,OFDM技术和CCK技术是分离的。因此,在PREAMBLE和PAYLOAD间要有CCK和OFDM的转换。

802.11g使用CCK/OFDM技术来保障和802.11b共存。802.11b不能解调OFDM格式的数据,所以难免会发生数据传输冲突,802.11g使用CCK技术传输信头和前导信号就可以使802.11b兼容,使其可以接受802.11g的信头从而避免冲突。这样保障了与802.11b WIFI设备的后向兼容性,但由于Preamble/header使用CCK调制,开销增大,传输 速率比OFDM/OFDM方式有所下降。


CCK/PBCC和CCK/OFDM一样,PBCC也是混合波形,包头使用CCK调制而负载使用PBCC调制方式,这样是它可以工作在高的速率上而且可以与802.11b兼容。PBCC调制技术最高数据传输速率是33M,所以它比OFDM或CCK/OFDM的传送速率低。


物理层数据的接收

物理层包括两个部分:

物理层汇聚过程(Physical Layer Convergence Procedure)子层:直接与MAC接触。起到承上启下的功能。

物理媒体依赖(Phsical Medium Dependent)子层:直接与无线信道接触。将数据通过天线传输以及接收。当然上述的CCA功能显然位于物理层中。

每一次数据的发送都会选择一个特定的调制方式和编码速率,对于一个接收机来说,它必须知道探测到的信号到底是信号还是噪声,这个数据帧到底持续多长这些信息,它才能够成功的接收一个数据帧。物理层的帧通常会以一个训练序列也作为PLCP前导(Preamble),这个前导码会告知接收机帧的到来这个前导码之后是PLCP帧头,这个帧头包含调制方式,编码速率,帧长度等等关于数据帧的信息,通常情况下,一个工作站是无法同时进行收发功能的,所以一个工作站只会处于一下三个状态之一:监听信道,发送从MAC层传来的数据帧,或者接收一个数据帧。

当站点监测信道时,它通过使用特定的检波(解调)方式检出已知模式前导码,如果监测出来,接收机就试图对PLCP头进行解码,如果成功解码将随后对PLCP头里duration时间内所到来的射频波进行解调,在这个过程结束之前,接收机将把所有到来的信号看作是属于当前的数据帧,并对他们进行解调。最后将所解调出来的bits传送到MAC层进行CRC校验看数据帧是否已经成功接收。


这篇关于802.11g组帧方式以及物理层收发过程简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/977906

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte

Mybatis的分页实现方式

《Mybatis的分页实现方式》MyBatis的分页实现方式主要有以下几种,每种方式适用于不同的场景,且在性能、灵活性和代码侵入性上有所差异,对Mybatis的分页实现方式感兴趣的朋友一起看看吧... 目录​1. 原生 SQL 分页(物理分页)​​2. RowBounds 分页(逻辑分页)​​3. Page

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流