【计算机网络】-介质访问控制子层-无线LAN

802.11体系结构和协议栈

802.11网络使用模式:

有架构模式(Infrastructure mode)
无线客户端连接接入点AP,叫做有架构模式

自组织模式(Ad hoc mode)
没有AP点,只是客户端与客户端相互连接,这叫做自组织模式,但是这是未来的趋势

802.11 协议栈

802.11物理层

网卡兼容多个物理层,如802.11 a/b/g

802.11 MAC子层协议

802.11没有像以太网那样采用CSMA/CD原因

1.无线电几乎都是半双工的。无线电介质中像以太网那样的冲突检测机制根本不起作用。802.11试图避免冲突,802.11采用CSMA/CA协议
2.不同站的传输范围可能有所不同。会出现隐藏站和暴露站问题

带冲突避免的CSMA(CSMA/CA)

1.通过侦听,确定在一个很短的时间内没有信号;然后倒计数空闲时间槽,当有帧在发送时暂停该计数器;当计数器递减到0,该站就发送自己的帧
2.若帧发送成功,目标站立即发送一个短确认
3.若没收到确认,则可推断出传输发生了错误。这种情况下,发送方要加倍后退选择的时间槽数,再重新试图发送
4.如此反复,连续像以太网那样依指数后退,直到发送成功或达到重传的最大次数

CSMA/CA机制下发送帧

1.首先对于站A来说,站A先朝站D发送,之后站D回复给站A一个ack帧,告诉它收到了,在这段时间内别的站都不能发送
2.之后对于站B和站C,他们从开始发送都一直在监听着信道,终于当A和D之间的相互发送结束之后,他们准备发送了,两个站都先倒计数空闲时间槽,当有帧在发送时暂停该计数器;当计数器递减到0,该站就发送自己的帧,通过这样C开始发送,B只能又开始监听等待空闲
3.当C和D之间相互发送完,B再倒计数空闲时间槽,当有帧在发送时就暂停该计数器;当计数器递减到0,站B就发送自己的帧,显然B这次Backoff之后,可以发送了,结果它发送,然后D回复给它ack帧结束.

总结:
1.CSMA/CA插入退避槽以避免冲突
2.MAC对无线错误使用ACKs/重传

802.11支持两种操作模式

DCF(分布式协调功能)

1.没有使用任何的中心控制手段
2.使用CSMA/CA (带冲突避免CSMA)这个协议中既用到了物理的监听手段也用到了虚拟的监听手段。CSMA/CA支持两种操作方法。

  • 第一种模式是,当一个站想要发送数据,它首先先监听信道,如果信道现在是空闲状态的话,它就开始发送,但是它在发送的过程中不会监听信道,而是直接送出整个帧,但是这可能会导致对于接受方收到的是由于被干扰而损坏的帧,如果信道恰巧不是那么闲着,那么发送方就推迟到信道空闲开始发送,假如发生冲突的话,那么冲突的站就等待一段随机时间之后再重新传送。
  • 第二种模式采用了虚拟信道监听方法
    例子:


    前提条件:
    1.A希望朝B发送数据,C位于A的无线范围内
    2.D在B的范围内,但是不在A的范围内

过程:
对于A和B的角度:
1.A决定向B发送一个数据,协议开始工作,首先A超B发送一个RTS帧,这个帧的目的请求一个给B发送帧的许可,换句话说也就是问问B,我要给你发一个东西,我能不能发
2.B收到这个这个请求帧RTS帧之后,它可能决定给予许可,告诉A你发吧,B发送一个CTS帧给A
3.A在征得B允许之后,也就是收到RTS之后,就开始发送出数据了,并开启一个ACK计时器,这个ACK计时器是干什么的呢,是确定B是否按时成功接收了数据并回复了ACK帧,如果B成功接收数据并回复了ACK帧,那么终止协议交换过程,如果超时了那么一切从头再来。

对于C和D的角度:
1.由于C也在A的范围内,因而它也是可以收到A发送出来的RTS帧的,但是它知道目的地址不是它,所以不会回复CTS,但是它知道甭管咋说,有人要发送数据了,为了全局考虑,它虽好闭嘴,就不要再发送任何信息了,直到人家传输完成之后,它怎么知道人家啥时候传输完成呢?这是由于它可以从RTS帧中推算出人家要传送多长时间,它是如何保持安静的呢?有一种信号叫做NAV(网络分配向量),它不被发送出去,它是一种内部的提醒信号,用来保持一段时间的安静。
2.D没有收听到RTS,但是它在B的范围内,所以它收到了CTS,所以在B发送CTS之后,它也声明了NAV信号,表示闭嘴。

3.所有802.11必须支持DCF

PCF(点协调功能)
1.使用AP点控制自己覆盖范围内的一切活动
2.PCF是可选的,802.11可以选择支持,也可以选择不支持

概念总结:

1.为了减少究竟哪个站在发送的模糊不清,802.11定义信道侦听包括物理侦听和虚拟侦听
2.网络分配向量(NAV),有了虚拟侦听,每个站可保留的一个信道何时要用的逻辑记录,这通过跟踪NAV获得的,每个帧携带一个NAV字段,说明这个帧所属的一系列数据将传输多长时间
3.可选RTS/CTS机制使用NAV来防止隐藏站在同一时间发送(几乎没有价值的设计)。该机制如下所示
4.注意:NAV信号是不传输的,只是由站内部使用,提醒自己保留一定时间内的安静
5.使用NAV(网络分配向量)和可选RTS/CTS(通常不使用)的虚拟信道感知避免了隐藏终端

MAC的一些机制

不同的退避时段支持服务质量,短时间间隔用于首选访问,例如控制、VoIP
MAC还具有其他机制,例如,节能

802.11帧结构

1.帧具有由“帧控制”指定的不同类型
2.数据帧有3个地址要通过ap
3.802.11标准定义了三种不同类型的帧用于通信,包括数据帧、控制帧、管理帧

【计算机网络】-介质访问控制子层-无线LAN的更多相关文章

  1. 介质访问控制子层-Medium Access Control Sublayer:多路访问协议、以太网、无线局域网

    第四章 介质访问控制子层-Medium Access Control Sub-layer 4.1介质访问控制子层概述 MAC子层不属于之前提到的OSI或TCP/IP架构的任何一层,这也是为什么这一层被 ...

  2. 【计算机网络】-介质访问子层-(信道划分介质访问控制&随机访问介质访问控制)

    [计算机网络]-介质访问子层-概述 介质访问控制子层功能 解决信道争用的协议,即用于多路访问信道上确定下一个使用者的协议 是数据链路层协议的一部分 介质访问控制子层位置 位于数据链路层的底部! 信道分 ...

  3. 计算机网络之介质访问控制(静态划分信道、FDM、TDM、STDM、WDM、CDM)、(动态划分信道、ALOHA、CSMA、CSMA/CD、CSMA/CA)、令牌传递协议

    文章转自:https://blog.csdn.net/weixin_43914604/article/details/104935912 学习课程:<2019王道考研计算机网络> 学习目的 ...

  4. 计算机网络-链路层(4)WiFi:802. 11无线LAN

    有几套有关无线LAN 的802. 11标准,包括802.11b.802.11a和802.11g. 802.11g是至今为止最为流行的技术.一些双模式(802.11a/g)和三模式(802.11a/b/ ...

  5. s4-介质访问控制子层-1 MAC子层

    数据链路层被分成了两个子层:MAC和LLC MAC子层要解决什么问题? 介质访问控制(Madia Access Control) 数据通信方式 单播(unicast):One - to - One ...

  6. 介质共享型局域网中的介质访问控制(MAC)协议需要具体解决的3个问题,CSMA/CD介质访问控制的基本思想

    1,在某一时刻,那个节点可以发送数据 2,发送时是否会出现冲突 3,出现冲突时如何处理 CSMA/CD介质访问控制的基本思想:先监听,再发送.边发送,边监听,如发生冲突,则等待一段时间后再次发送

  7. WIFI:802.11无线LAN

    IEEE 802.11 无线LAN(也称WiFi) IEEE是什么 电气和电子工程师协会(IEEE,全称是Institute of Electrical and Electronics Enginee ...

  8. 计算机网络课程优秀备考PPT之第四章介质访问控制层(四)

    为了记录自己从2016.9~2017.1的<计算机网络>助教生涯,也为了及时梳理和整写笔记! 前期博客是, 计算机网络课程优秀备考PPT之第一章概述(一) 计算机网络课程优秀备考PPT之第 ...

  9. H3C 802.11无线网络的介质访问控制

随机推荐

  1. jQuery的replaceWith()函数用法详解

    replaceWith,替换元素 replaceWith() 方法将选择的元素的内容替换为其他内容. 我们先在先看一个实例 <!DOCTYPE html> <html> < ...

  2. C++回调函数、静态函数、成员函数踩过的坑。

    C++回调函数.静态函数.成员函数踩过的坑. 明确一点即回调函数需要是静态函数.原因: 普通的C++成员函数都隐含了一个this指针作为参数,这样使得回调函数的参数和成员函数参数个数不匹配. 若不想使 ...

  3. 快速乘(O(1))

    inline long long multi(long long x,long long y,long long mod) { long long tmp=(x*y-(long long)((long ...

  4. Java读取根据HTML模板生成HTML页面

    首先,我们需要一个html模板: <html> <head> <title>###title###</title> <meta http-equi ...

  5. TCP套接字选项SO_LINGER与TCP_LINGER2

    概述 本文对两个LINGER相关的套接字选项进行源码层面的分析,以更明确其各自的作用和区别: man page SO_LINGER,该选项是socket层面的选项,通过struct linger结构来 ...

  6. Linux常用指令grep(搜索过滤)

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达 ...

  7. LeetCode 137. 只出现一次的数字 II(Single Number II)

    题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: ...

  8. Python 图形界面元素

    from tkinter import * import os def button_click1(): try: filePath = r'D:\CloudMusic' os.system(&quo ...

  9. HearthBuddy卡组

    偶数萨 手打两天已上传说,各位加油  欧洲牧羊人 ### 火元素换艾雅# 职业:萨满祭司# 模式:狂野模式## 2x (2) 图腾魔像        # 2x (2) 大漩涡传送门   # 2x (2 ...

  10. cad二次开发中DBText对象的外框GeometricExtents有问题?

    CAD2007版本 acDoc.Editor.WriteMessage( string.Format("[{0:F1},{1:F1},{2:F1}] - [{3:F1},{4:F1},{5: ...