月度归档:2019年07月

《计算机网络:自顶向下方法》笔记(6):无线网络和移动网络

Published / by sickworm / Leave a Comment

无线网络和移动网络

无线网络的分类根据:1. 分组是否跨越多个无线跳,2. 是否有基站这样的基础设施

  • 单跳 + 有基础设施:普通的室内 Wifi,3G,4G 网络
  • 单跳 + 无基础设施:蓝牙,具有自组织模式的 802.11
  • 多跳 + 有基础设施:无线网状网络。结点为了与某基站通信,需要通过其他无线结点做中继。
  • 多跳 + 无基础设施:移动自组织网络(MANET),车载自组织网络(VANET)。

无线链路的网络特征:信号强度递减,其他信号源干扰,多路径传播。

CDMA,码分多址,对每一个数据比特都进行编码,如 1 编码为(1,1,-1,1,1,1,-1,-1)(实际要长得多),0编码相反。编码后发送到无线链路,每个比特发送都需要 1 比特时隙时间。当无干扰时,接收方通过编码序列(1,1,-1,1,1,1,-1,-1)可以得到原数据比特。当有干扰时,CMDA 认为链路信号是叠加的,不同设备使用不同的编码,信号叠加后,如果编码是精心挑选的,接收方仍可通过编码序列恢复算法恢复特定设备的原数据比特。

WiFi,也称 IEEE 802.11 无线 LAN,从 90 年代研发的许多无线 LAN 标准和技术中胜出。现有几套相关标准:b,a,g。

  • 802.11b,2.4GHz,85MHz 频段,最大速率 11Mbps
  • 802.11a,5GHz,700Mhz 频段,最大速率 54Mbps
  • 802.11g,2.4Ghz,85MHz 频段,最大速率 54Mbps
  • 802.11n,多输出多输入(MIMO),可达几百 Mbps
  • 其他,如 802.11i,使用更安全的加密算法 AES 设计加密协议

这三个标准都是用相同的媒体访问协议 CSMA/CA,使用相同的帧格式,都具有降低传输速率以到达更远距离的能力,都允许“基础设施模式”和“自组织模式”两种模式。但物理层有重要区别。

802.11b 频段和 2.4G 电话与微波炉一样;802.11a 频率高,所以传输距离短,受多径传播影响更大。g 是 b 的速率升级版,向后兼容。

802.11b/g 定义了 11 个部分重叠的信道,仅当 2 个信道间隔 4 个信道以上时才无重叠。

802.11 要求每个 AP 周期性地发送信标帧(beacon frame),包含 AP SSID 和 MAC 地址。设备接收到信标帧后,一般选最高信号强度用于关联。

802.11 的链路层协议,CSMA/CA,带碰撞避免(CA)的载波侦听多路访问,每个站点在传输之前侦听信道,一侦听到该信道则抑制传输。因为无线设备实现碰撞检测因物理特性原因效果不好。

以太网使用碰撞检测;802.11 使用碰撞避免,并使用确认重传(ARQ)来保证较高误比特率下的效率。

802.11 帧:

帧控制 2 | 持续期 2 | 地址1 6 | 地址2 6 | 地址3 6 | 序号控制 2 | 地址 4 | 有效载荷 0~2312 | CRC 4

地址 2:传输该帧的站点的 MAC 地址

地址 1:要接收该帧的站点的 MAC 地址

地址 3:当设备和路由器中间隔着 AP 时,用于定位目的 MAC 地址

当设备移动时,会从一个 BSS 移动到另一个 BSS。如果 BSS 属于同一个子网(此时接入点 AP 是交换机),则 IP 地址不变,TCP 连接保持连接。如果不属于同一个子网(此时接入点 AP 是路由器)

802.11 还有几个特性:

  1. 速率适应:当结点离基站近时,信噪比高,使用高速率;远时信噪比低,发送失败率高,此时用低速率。速率变化的条件是一个结点连续发送两个帧而没有收到确认,则降低速率;如果连续 10 个帧收到确认,则提高速率。策略和 TCP 相似。

  2. 功率管理:结点想要休眠时,会发送帧通知接入点,接入点会缓存休眠结点的所有帧,以后再传输。结点会在信标帧发送前唤醒自己(250us 就能唤醒,而信标帧 100ms 发送一次),然后接入点会在信标帧发送的同时把缓存的帧一并发过来。结点无发送接收帧的情况下,99% 时间都在休眠。

蓝牙,802.15.1 无线个人区域网络(WPAN),2.4 GHz,时隙长度 625us,79 个信道。时隙之间以一个已知的伪随机方式变更信道,称为跳频扩展频谱(FHSS)。速度可达 4Mbps。蓝牙是自组织网络,会建立可多达 8 个设备的皮可网(piconet),其中一个被指定为主设备,其余为从设备。主设备控制皮客网,时钟以主设备为准,奇数时隙中发送,从设备收到后在下一个时隙会回复主设备。蓝牙还可以有多达 255 个寄放设备。

ZigBee,802.14.5,比蓝牙更低功耗,低速率,低成本。ZigBee 定义了 20kbps,40kbps,100kbps,250kbps 的信道速率。

蜂窝因特网,称为 GSM,1G 是模拟 FDMA 系统,专门用于语音通信,2G 是 FDM/TDM,扩展了对数据(因特网)的支持(2.5 G)。3G 4G 提高速率。

移动 IP,是指移动结点在切换不同的接入点时,通讯保持连接无需断开的解决方案。每个移动结点都有一个归属网络(home network),归属网络中执行移动管理功能的实体叫归属代理(home agent)。移动结点当前所在的网络叫外部网络(foreign network),或被访网络(visited network)。与该结点通信的实体叫通信者(correspondent)

外部代理的作用就是为移动结点创建一个转交地址(Care-Of Address,COA),COA 用于将数据报通过外部代理重新路由选择到移动结点。即封装一层转发过去。

版权所有,转载请注明出处:
https://sickworm.com/?p=1741

《计算机网络:自顶向下方法》笔记(5):链路层

Published / by sickworm / Leave a Comment

链路层

链路层协议的任何设备称为结点(node)

沿着通信路径连接相邻结点的通信信道称为链路(link)

链路层协议功能:

  • 成帧(framing)。把数据报(segment)封装成帧。

  • 链路接入。媒体访问控制(Medium Access Control,MAC)用于协调多个结点共享单个广播链路时候的帧传输。

  • 可靠交付。通过确认和重传保证无差错移动每个网络层的数据报。对于差错率低的链路,如光线,同轴电缆等,则不提供可靠交付,由上层保证可靠交付。

  • 差错检测和纠正。(通过校验和)

链路层使用更复杂的 CRC 差错检测是因为其使用了专门的硬件实现。

有两种网络链路:点对点(point-to-point link)链路和广播链路(boardcast link)。

点对点链路使用点对点协议(point-to-point protocol, PPP)和高级数据链路控制协议(high-level data link control, HDLC)。

广播链路涉及协调多个发送和接收结点对一个共享广播信道的访问,也就是多路访问问题(multiple access problem)。对应的协议叫多路访问协议(multiple access protocol)。

多路访问协议可分为三大类:信道划分协议(channel partitioning protocol),随机接入协议(random access protocol),轮流协议(taking-turns protocol)。

信道划分协议:
时分多路复用(Time Devision Multiple,TDM)将时间平均分为多个片,每个信道一个片。优点是公平,简单,缺点是只有一个分组时速度仍然是 R/N,造成资源浪费。
频分多路复用(Frequency Devision Multiple,FDM),把频率分片,优缺点和 TDM 一样。
码分多址(Code Division Mupltiple Access,CDMA),不同节点分配不同的精心选择的编码,使得不同结点可以同时传输。

随机接入协议:
节点总是以全速 R 进行发送,当发生碰撞时,结点会反复等待一个随机时延然后重发,直到无碰撞通过为止。

轮流协议:
轮询协议(polling protocol),其中一个结点指定为主结点,主节点以循环方式轮询(poll)每个结点。优点避免碰撞和随机时延,缺点引入了轮询时延。
令牌传递协议(token-passing protocol)。一个称为令牌(token)的小点的特殊帧在结点之前以某种固定次序进行交换。当结点需要发送帧时,才会持有该令牌,否则会立刻传递给下一个。优点是效率高,缺点是不能兼容单点故障。

—- 20190713 —-

MAC 地址与硬件设备绑定,不会发生变化。

主机和路由器接口除了 IP 地址还有 MAC 地址的原因是:

  • 局域网是为任意网络层协议涉及的,不仅用于 IP 和因特网。

  • IP 是变化的,则 IP 地址必须存在 RAM,且在上电时初始化

  • 保持各层独立。

ARP(地址解析协议,Address Resolution Protocol),IP 转 MAC 地址的转换协议。每台主机或路由器在其内存中具有一个 ARP 表(ARP table),这张表包含 IP 地址到 MAC 地址的映射关系。因为涉及 IP,所以这是一个网络层协议。

如果表中没有对应 IP 地址的记录,则发送一个 ARP 分组(ARP packet)来查询。ARP packet 的目标地址是 MAC 广播地址 FF-FF-FF-FF-FF-FF。子网的所有其他适配器都会收到。如果查询的 IP 地址和自己的 IP 地址匹配,则回复一个相应 ARP packet。

网络层跨网传输时,数据报会首先发送到路由器对应的 MAC 地址,再由路由器转发出去。

以太网是目前为止最流行的有线局域网技术,其他技术还有 FDDI 和 ATM。

以太网一开始在 70 年代是通过同轴电缆总线来互相连接,到了 90 年代后期进化为集线器,使用星行拓扑结构;21 世纪早期进化为交换机(switch)。交换机是“无碰撞的”,是储存转发分组的交换机。

以太网帧结构:

前同步码(8) | 目的地址(6) | 源地址(6) | 类型(2) | 数据(46~1500) | CRC(4)

前同步码用于唤醒适配器,并与发送方时钟同步,是固定的值。前 7 字节 10101010,最后 1 字节 10101011。类型字段用于记录网络层协议。

以太坊是无连接的。

交换机两个功能:过滤(filtering)决定是否要转发这个帧,转发(forwarding)决定帧应该被导向到哪个接口。过滤和转发通过交换机表(switch table)完成。

交换机表内容包含:mac 地址,输出接口,表项建立的时间

当一个帧到达交换机,交换机会查找该帧的目的地址对应的表项。这可能有三种情况:

  1. 没有对应项,此时向所有接口转发(即广播)该帧,后续处理属于自学习功能。

  2. 有表项,但输出接口和收到的接口一致。此时丢弃。

  3. 有表项,且接口不一致。此时转发。

自学习:交换机表一开始可能是空的,但经过一定时间后,交换机可以自行建立出一个可行的交换机表。

交换机可以消除碰撞,兼容不同链路,并且使安全性管理功能称为可能。

交换机和路由器比较:交换机即插即用,性能好,但是是扁平的,单局域网的,不能阻止广播风暴;路由器是分层次的,允许以丰富的拓扑结构构建因特网,但速度慢一些。

虚拟局域网(Virtual Local Network,VLAN)可以提供交换机局域网没有的,流量隔离,不同局域网共享一个交换机,管理用户的功能。

版权所有,转载请注明出处:
https://sickworm.com/?p=1735