计网学习笔记五 wireless && mobile networks

科技资讯 投稿 5600 0 评论

计网学习笔记五 wireless && mobile networks

强烈推荐一本书:《802.11 Wireless Networks: The Definitive Guide》,2nd Edition by Matthew S. Gast;这本书有效地帮助了这节课的复盘。

无线局域网的组成

无线网络在近些年来一直是个非常流行的东西。现在的移动用户数量已经大大超过了有线用户数量,比例大于5:1。

实现无线网络的挑战性

wireless和mobility两个点上。

    wireless无线:如何使用无线链路进行通信

  • mobility移动性:如何处理改变网络连接点的移动用户,即用户可以随时改变接入节点(mobile的节点链路不一定是无线的,有线网络也有着随时拔线插线的问题,这也是一个移动性问题)

组成无线网络的元素

    wireless hosts无线终端:
    
      包括笔记本电脑、手机
    • 负责运行应用程序
    • 可以是固定的,亦可以是移动的
  • base station基站:

      例子有cell towers, 802.11 AP
  • 一头连到有线网络,一头负责无线终端的中继
  • 家里的AP就相当于一个小基站
  • 中国有铁塔公司,专门负责基站铁塔建造
  • wireless link无线链路:

      用来连接移动终端和基站
  • 有很多区别,局域网(WLAN和广域网(4、5G)
  • 可以通过多跳来中继,不用拉电缆
  • 各种无线标准

    两种应用模式

      传统的infrastructure mode

      • 使用基站做无线通信
      • 可以随时handoff(快速切换)
    • ad-hoc mode:

        无线自组织网络,不用AP,就直接互联;(p2p连接,无基站)
    • 军用,如舰队,因为使用infrastructure mode要有舰船做通信舰,被打掉通信就无了;还有军用无人机队协同作战也是采用ad-hoc mode。

    无线链路特点(Link)

    无线链路因为其无线信号传播的性质,和有线链路有几个不同之处:信号易衰减多路传播自干扰,以及不同源干扰

    信号衰减

    衰减的量化指标 和 噪声指标相应的的量化关系

    路径损耗(Path loss)。这个损耗的指标用一个叫自由空间损耗FSPL)的值来衡量,它是一个“增益负值”,可以表示信号总发送功率和接收功率之间的比值关系,单位为分贝。
    $$
    FSPL = P_L = 10\lg(\frac{P_{recv}}{P_{tran}}=10\lg(\frac{4\pi{d2}}{\lambda{2}} = 20\lg{d} + 20\lg{f} + 32.44
    $$
    可以看看这篇文章,写了有关FSPL的推导:802.11协议精读15:链路模型(基于Free-Space Path Loss)。上图即为自由空间损耗模型。

    在传送和接收之间的某处插入的不希望有的信号。在计网课上并没有详细阐述噪声的类型,但给出了信噪比SNR)和误码率BER)之间的量化关系。

    下图展示了SNR和BER在不同调制编码方式(物理层)下的关系:

      在同一调解方式下,SNR越高,则BER越低;
    • 即使在同一SNR下,随着调解深度增加,BER也会跟着升高。

    所以我们要对SNR和BER做出一定的权衡。

    • 给定了SNR,可以选择一个调制编码方式(物理层)来选取相对的BER(越先进即越深的调制编码越容易受干扰,因为一个信号中带的bit较多)

    这里有一篇文章值得看一看:无线通信中的SNR、SINAD和SINR

    自干扰

    其它发射源干扰

    如果在同一时间有其他设备与你一起共享无线网络频段(如2.4 GHz的信道叠加,就会产生一定的干扰;除此之外,一些无线设备(如蓝牙鼠标、键盘,甚至USB3.0等也会干扰你的信号。

    无线网络特点(Network)

    把目光从无线链路放到无线网络上,无线网络也有一些总体的特点:

      broadcast的:任何在邻近的接收端都能收到信号,以及对发送端造成干扰;

    • 发送端发送的信号并不总是以接收端接收到为结束;

    • Hidden terminal problem)

    WiFi--IEEE 802.11 WLAN

    IEEE 802.11的标准并不等同于Wi-Fi。

    也就是说,IEEE 802.11侧重无线局域网理论层面,包括物理层、MAC层相关技术标准制定;Wi-Fi联盟侧重产品层面,对符合IEEE 802.11标准要求的产品制定规范以达到设备兼容的目的。

    IEEE802.11 WLAN的组成结构

      Station(STA: device with IEEE 802.11 conformant MAC and physical layer
    • Access Point (AP: Provides access to the distribution system via the wireless medium
    • Basic Service Set (BSS:A single cell coordinated by one access point (base station
    • Extended Service Set (ESS:Multiple BSSs interconnected by Distribution System (DS
      • DS can be a switch, wired network, or wireless network
      • An ESS appears as a single logical LAN
      • Portals (routers provide access to Internet
    • Distribution System (DS: A system used to interconnect a set of BSSs and integrated LANs to create an ESS

    PS:IBSS为 Independent Basic Service Set,可以说是在ad-hoc mode下的BSS。WDS为wireless distribution system。

    Host连接到WLAN的过程

      802.11b的频段在2.4GHz-2.485GHz 之间,共划分为了11个信道,AP管理员可以选择一个干扰比较少的信道来提升通信效率;
    1. 需要进行无线通信的host必须与AP进行连接,在连接前host会扫描信道,侦听包含AP名称(SSID和 MAC的信标帧(beacon frame)(即扫描有啥WIFI可以连接);
    2. host选择一个AP进行连接,连接可能需要经过认证(authentication );
    3. host将通常使用 DHCP 来获取 AP 子网中的 IP 地址。

    来看看其中的一些过程以及产生的问题:

    Host侦听SSID和建立连接

    Passive Scanning(左图):AP们会不断地往周围发出信标帧,间隔为100ms;Host扫描(本地网卡在每一个信道上进行轮换扫描)接收到后,发出一个选择AP的request帧,AP们收到request帧后,被选择的对应AP返回一个response帧给Host,连接建立;

    Active Scanning(右图):首先Host会在不同的channel上周期性广播一个probe-request帧(这个帧有两种格式,见链接),然后等待AP们收到该帧后返回的probe-response帧(带着各个的SSID);Host接收到后,发出一个选择AP的request帧,AP们收到request帧后,被选择的对应AP返回一个response帧给Host,连接建立;

    还有一个好回答!能学到东西:有关WIFI中的扫描SSID的问题?

    多址接入产生的问题

    hidden terminal问题。

    这个问题会让A和C在发送的时候都会认为当前信道空闲,导致数据在B处产生了collision。

    IEEE 802.11 RTS/CTS 协议!

      A要发送数据了!先往B发送一个RTS(Request to Send )帧;
    1. RTS帧在传播出去的过程中,起到了通知A附近的STA“我在发送,勿扰”的作用;
    2. B接收到了RTS,给A返回一个CTS(Clear to Send)帧;
    3. CTS帧在传播出去的过程中,起到了通知B附近的STA“我要接收数据了,勿扰”的作用(尤其是C,让它不要再往B发送数据,表示信道繁忙);
    4. A发送数据,B接收到后返回ACK,传输完成。

    隐藏终端是由于监听到的信道空闲而不是真的空闲,故引发冲突。而暴露终端是由于监听到的信道忙而不是真的忙,故其可以传输而不传输。

    802.11协议结构

    PS:最下面一层是物理层即编码方式的选择。

    帧间间隙

    帧间间隙的概念:

    "等待" 一个相应的帧间间隔,比如发送数据之前至少要等待DIFS时间,发送ACK之前需要等待SIFS时间。这种机制可以有效地避免传输冲突。而不同类型的traffic需要不同的优先级,我们可以根据优先级来分配帧间间隙,那么有哪些帧间间隙?对应各类优先级?

      SIFS (Short Inter_Frame_Space:短帧间间隙,发送ACK,、LLC(链路层控制)的控制信息数据包、轮询回应、CTS……时使用,基本都为控制信号;
    • PIFS(point coordination function IFS:点协调帧间间隙,被中心控制器使用(中心节点),发送轮询信息时使用;
    • DIFS(Distributed coordination function IFS):分布式帧间间隙,用于所有普通异步通信信息(就是最普通的发信息啦)

    两种MAC类型

    PCF和DCF(也就是两个MAC子层)。其中DCF是指分布式协调功能,分布式控制,用于传输异步数据;PCF是指点协调功能,集中式控制,用于发送实时数据,优先级仅次于控制帧。

    IEEE 802.11 defines two MAC sub-layers:

      Distributed Coordination Function (DCF – DCF uses CSMA/CA as access method as wireless LAN can't implement CSMA/CD. It only offers asynchronous service.
    1. Point Coordination Function (PCF – PCF is implemented on top of DCF and mostly used for time-service transmission. It uses a centralized, contention-free polling access method. It offers both asynchronous and time-bounded service.

    在当前的802.11协议中,除了初始定义的DCF和PCF工作模式外,在802.11e中还定义了EDCA,HCCA(DCF被扩展为EDCA模式,PCF模式被扩展为HCCA模式)。

    DCF 分布式协调MAC

    CSMA/CA机制

    Carrier Sense Multiple Access with Collision Avoidance)。

    “避免”冲突的出现。来看一个时序图:

      如果当前信道idle,先等待DIFS;
    1. 然后进行backoff过程,backoff采用的是BEB机制;
    2. backoff数值减至0而expired后,STA2发送数据帧;
    3. STA2成功发完数据,AP校验完确定接收后,等待SIFS向STA2发送ACK;
    4. STA2接收到ACK,传输完成,开始下一次DIFS;这时STA1的backoff值是继承上次没减完的值,这是为了保证公平性。

    如果没有收到ACK,则如图:总共等待EIFS时间后重新开始信道竞争。(EIFS=SIFS+ACK+DIFS时间

    PCF 点协调MAC

    无竞争媒介接入。在802.11中,coordinators须为AP,所以PCF只能在infrastructure mode中使用(但不是全程使用,由于PCF是以DCF作为基础扩展的,所以 infrastructure mode中往往是PCF和DCF交替提供服务);当PCF使用起来的时候,媒介上的时间段被划分为contention-free周期(PCF控制访问)和contention周期(DCF控制访问)。

      无线网络配置好由coordinator控制的具有time-sensitive的多个STA;
    1. coordinator“抓住”媒介,“锁住”全部的异步通信量,以轮询方式对STAs进行轮询;
    2. 收到轮询时,STA可以等待SIFS后进行data响应;
    3. 如果coordinator收到响应,就再等待PIFS后发出下一个轮询;
    4. 如果在预期的周转时间内没有收到响应,coordinator将发出下一个轮询;
    5. 重复步骤直到当前周期结束,开始下一周期;

    PS:新的标准中PCF已经被废弃。

    结合文章802.11协议精读2:DCF与CSMA/CA和802.11协议精读4:PCF工作模式来看,还有一个问题的回答802.11协议中为什么DCF比PCF应用更广泛?能很好地理解。

    802.11帧结构的特别地方

    看到这个帧结构时是不是会觉得莫名奇怪?先撇开其它不谈,为什么802.11帧会有四个地址?

    那dest的地址字段不用填了?明明在802.3的LAN中就只有两个地址字段(src和dest)……而802.3中的bridge和switch对host来说是透明的,也不见得要填它们的MAC啊……虽然第三讲中有“当主机想要向外网通信时,需要用寻找的MAC是第一跳路由器的MAC”,但对于WLAN来说,还是讲得不清不楚啊!自己动手,丰衣足食!

      Transmitter Address (TA
    • Receiver Address (RA
    • Source Address (SA
    • Destination Address (DA

    查阅帧结构发现:

      Address 1 to 4 – These are 6 bytes long fields which contain standard IEEE 802 MAC addresses (48 bit each. The meaning of each address depends on the DS bits in the frame control field.

    DS位又和分布式系统有关……

      To DS: It is a 1 bit long field which when set indicates that destination frame is for DS(distribution system.
    • From DS: It is a 1 bit long field which when set indicates frame coming from DS.
    Function ToDS FromDS Address 1 (receiver Address 2 (transmitter Address 3 Address 4
    IBSS 0 0 DA SA BSSID Not used
    To AP (infra. 1 0 BSSID SA DA Not used
    From AP (infra. 0 1 DA BSSID SA Not used
    WDS (bridge 1 1 RA TA DA SA

    可以说,在802.11中,transmitter并不一定就是帧的creator,同样,receiver并不一定就是最终解包的processor。根据功能的不同,地址字段的填写也不同。课上的情况其实就是二和三行的情况,Address3填写的是路由器的MAC地址,这一点和“当主机想要向外网通信时,需要用寻找的MAC是第一跳路由器的MAC”是相同的。(下图为二三行分别对应情形)

    保持移动性

    而在链路层中,移动性的实现需要交换机来协助完成:交换机需要记住host是在哪个AP!记忆行为就通过交换机的自学习机制来实现。

    802.11中的高级功能

    rate adaptation和power management

    Rate adaptation

    在IEEE上的有关 rate adaptation 的算法论文综述:Rate adaptation algorithms for IEEE 802.11 networks: A survey and comparison

    Power management

    蜂窝网络

    在前面我们知道了一台host是如何接入WiFi的,但大多数WiFi的覆盖范围只有10~100m左右,当我们在户外的时候无法访问WiFi时,该如何接入无线Internet呢?

    蜂窝网络的组成

    接入方式

    多个移动设备接入基站时,无线射频的划分有两种方式:组合FDMA/TDMA,以及CDMA。2G就是采用了组合FDMA/TDMA的对空接口,下面是自顶向上的阐述:

    2G(voice网络结构

    3G (voice+data网络结构

    最后来一个移动通信的演化图^^

    编程笔记 » 计网学习笔记五 wireless && mobile networks

    赞同 (27) or 分享 (0)
    游客 发表我的评论   换个身份
    取消评论

    表情
    (0)个小伙伴在吐槽