800 likes | 991 Views
介质访问控制子层. Chapter 4. 概述. 点到点连接的网络 使用广播信道的网络 广播信道---多路访问信道---随机访问信道 核心问题:谁可以使用信道? 解决问题协议位于 MAC (介质访问控制)子层. 信道分配问题. LANs 和 MANs 的静态信道分配 LANs 和 MANs 的动态信道分配. 静态信道分配. 静态 FDM 性能差 论证 单一信道平均延迟时间 T :信道容量为 Cbps , 帧平均长度 1/ , 则信道服务率每秒 C 帧,而 帧到达速率 帧 /s ,根据排队论可以计算 T=1/( C - )
E N D
介质访问控制子层 Chapter 4
概述 • 点到点连接的网络 • 使用广播信道的网络 • 广播信道---多路访问信道---随机访问信道 • 核心问题:谁可以使用信道? • 解决问题协议位于MAC(介质访问控制)子层
信道分配问题 • LANs 和 MANs的静态信道分配 • LANs 和 MANs的动态信道分配
静态信道分配 • 静态FDM • 性能差 • 论证 单一信道平均延迟时间T:信道容量为Cbps,帧平均长度1/,则信道服务率每秒C帧,而帧到达速率帧/s,根据排队论可以计算T=1/(C- ) N分的FDM信道平均时延TFDM:1/[ (C/N)- (/N)]=NT 静态TDM与FDM类似 结论:静态TDM和FDM不能适应突发流量(分多少份?),性能差
LANs 和 MANs的动态信道分配 研究信道分配问题的基本假设 1)站模式:N个独立 站 ,t时间内生成t帧 2)单信道:所有 站 共享一个信道 3)冲突假设:任意时间点如果信道存在多个帧,这些帧会冲突。冲突时间可以检测,并且是帧错误的唯一来源 4A)连续时间:任意时刻都可以开始传输帧 4B)离散时间:时间被分成离散的时槽,帧传输总是从时槽起点开始,一个时槽内可以包含0或多个帧 5A)载波检测:.站在使用信道之前可以检测信道是否被使用 5B)无载波检测:站在使用信道之前没有能力检测信道
多路访问协议 • ALOHA • Carrier Sense Multiple Access (CSMA)Protocols • 无冲突的协议 • 有限竞争协议 • Wavelength Division Multiple Access Protocols • Wireless LAN Protocols
纯ALOHA-1 基本假设:站模式 单信道 冲突假设 连续时间 载波检测 ALOHA思想:站有数据要发送的时候就发送。 。。。会产生冲突! 在LAN中,站发送数据之后,通过监听信道来判断数据是否成功发送,没有成功则。。。重发 竞争系统
纯 ALOHA-2 纯ALOHA中,帧传输完全是在任意时间进行的
纯 ALOHA-3 • ALOHA协议无冲突传输一帧的概率? • 无冲突传输一帧意味着在帧的存续期间,不存在其它帧与该帧有任意比特长度的重叠 为了无冲突的传输阴影帧,需要在t0到t0+2t的时间段内都没有其它帧开始传输
纯 ALOHA-4 假设每个帧时, 站 产生帧的数量服从参数为G的泊松分布,则一个帧时生成0帧的概率是e-G。如果任意的两个帧时,站产生帧的数量依旧服从泊松分布,则在两个帧时生成0帧的概率是e-2G 也就是说,无冲突发送一帧的概率约是e-2G 注意到错误仅由冲突产生,所以只要不冲突就可以看作有效的数据传输,这样在一个帧时内,站 尝试发送G帧,而结果只有G× e-2G帧被顺利接收,所以系统在一个帧时内的吞吐量S= G× e-2G 以G为自变量求S的极值,可得G=0.5时,S最大,为0.184
纯 ALOHA-5 ALOHA系统中吞吐量与帧流量的关系
分槽ALOHA 基本思想:所有站总是在同一个时间点上尝试发送数据 方法:把连续的时间分割为时槽,每个时槽的长度是1帧 效果:冲突被限制在一个帧时中,成功发送一帧的概率是纯ALOHA的两倍,提高了效率 问题:每帧成功传输的平均次数E,与每帧时站所产生帧的数量G,存在指数关系E=eG。这意味着信道负载的微小增长会极大地降低信道地性能。 应用:基于有线电视网络地Internet接入在用户共享介质时,在链路层使用了分槽ALOHA。 这意味着即使物理层给我们提供了74M可用带宽,我们实际用的也不过25M左右。
载波检测多路访问协议 • 从随心所欲到遵守规则 • 站 监听是否存在载波,并采取相应的动作。 • 1-持续CSMA • 信道空闲则发送数据,繁忙则等待空闲后(一直监听信道)发送数据 • 可能会发生冲突 • 非持续CSMA • 信道空闲则发送数据,繁忙则等待一段随机时间后再次监听信道 • p-持续CSMA • 分槽系统,信道空闲则以概率p发送数据,以概率1-p延迟到下一个时槽,知道发送数据成功;繁忙则等待一段随机时间后再次监听信道
Persistent and Nonpersistent CSMA 各种随机访问协议的信道利用率与负载之间的比较
带冲突检测的CSMA • CSMA解决什么问题? • 什么时候发送数据 • CSMA/CD解决什么问题? • 什么时候终止一帧的发送 • 有冲突发生时,立刻停止传送数据,快速终止被损坏帧 • CSMA/CD广泛应用于传统LAN • 非持续CSMA • 信道空闲则发送数据,繁忙则等待一段随机时间后再次监听信道 • CSMA/CD • 信道空闲则发送数据,发送的数据冲突则停止传输,冲突或者繁忙都会导致随机等待一段时间再重新传送
CSMA /CD CSMA/CD 有三种状态: 竞争周期, 传输周期, 空闲周期. 站在什么条件下,可以确认自己在竞争周期中胜出呢? 该问题与确定竞争周期长度相关。
竞争周期长度 • 冲突检测最小时间: • 对于发生冲突的两个站A,B,检测到冲突的最小时间是信号在两个站之间的传播时间 • 冲突的最长检测时间: • 假设两个站之间信号的传播时间为,那么冲突的最长检测时间约2 。 • CSMA/CD本质上是一个半双工系统,在发送数据的同时必须监听信道
无冲突协议 • 假设系统中站的数量确定,固定为N • 位图协议(预留协议) • 每个竞争周期N个时槽 • 每个站在属于自己的时槽声明自己要传输帧 • 已经声明的站按照顺序排队传输 • 二进制倒计数协议 • 站 逐比特 广播 该站地址的二进制比特串 • 站 监听信道把收到的比特异或,如果它广播的比特0经过异或后成为比特1,则该站停止发送数据 • 站发送完地址以后,依旧没有发现异常,则可以继续发送地址后面的数据 • 为了解决高序站优先级比低序站优先级高的问题,可以使用虚拟站号,循环使用
无冲突协议 基本的位图协议 信道利用率d/(N+d),d为数据长度
二进制倒计数协议 二进制倒计数协议. 虚线表示不再参与竞争. 信道利用率可以到100%!
有限竞争协议 • 结合冲突协议和无冲突协议,取两者之长 • 冲突协议,负载轻时延迟短 • 无冲突协议,负载重时信道效率提高 • 一种直观的解决方案是。。。根据网络当前负载选择使用不同的协议,这意味着每个站需要实现两套协议和一个单独的调度程序 • 另外一种方案:自适应树搜索协议 • 假定在某个时刻可以确定该时刻网络中有多少 站 准备好了发送数据,例如q个 • 假设q个站均匀分布 • 那么在一棵二叉树上,意味着整棵树上有q个,一半树上就可能有q/2个,那么在第i级上,可能有q/2i个,我们希望在一个小子树中恰好有一个节点发送,所以可以尝试在log2q级开始搜索 • 此时不同的子树按照无冲突方式运行,子树内的节点按照冲突协议运行
有限竞争协议 p-CSMA中,在不同站数量的情况下,一个站能够成功获得信道的概率
自适应树搜索协议 包含8个站的树,0号时槽冲突会导致树遍历
波分多路访问协议 • 结合FDM和TDM,把信道分为多个子信道,然后按需分配 • WDMA按照波长划分信道,信道一窄一宽为一组,每一组分配给一个 站 • 任意子信道都划分为时槽,通常控制信道时槽数为m,而数据信道信道数为n+1,其中1个时槽放的是状态信息。站A的状态信息可以让其它站知道A的空闲时槽 • 因为使用了TDM,该系统需要全局时钟 • 该系统支持1)恒定速率面向连接;2)变速率面向连接;3)数据报(非面向连接) • 每个站有两个发送器分别用于发送数据(固定波长)和发送控制信息(可调节波长);有两个接收器分别用于接收控制信息(固定波长)和接收数据(可调波长)
波分多路访问协议 波分多路访问 考虑CSMA方式对单一信道上的冲突提供解决方案 那么波分多路访问是否有冲突?
波分多路访问连接过程 • 目的:站A 向 站B 连接,连接后向B发送数据 • 过程: • A调台接收B的数据信道中的状态信息,寻找B的空闲控制时槽 • A调台并选择时间向B的空闲控制时槽写入连接请求 • B监听到该连接请求,如果一切正常,就在数据信道的状态信息中宣布B在下一个时槽4这个时间会把B的接收器调到A的数据频率上,并接收来自A的数据(FDM+TDM) • A调台接收B的状态信息,看到B的宣称结果,明确自己已经可以在时槽4这个时间在数据信道上向B发送数据了 • 如果B监听到了对同一个时槽的多个连接请求,会发生冲突,此时使用CSMA策略
无线LAN协议-1 无线LAN示例. (a) A发送数据. (b) B 发送数据. • 假设一个站接收同时接收到两个信号会导致冲突。(为什么假设?因为有CDMA)考虑使用CSMA • 隐藏站问题:(a)中,对于C站而言,A是隐藏的 • 暴露站问题:(b)中,对于C站而言,B是暴露的
无线LAN协议-2 MACA协议:发送方发送短帧告诉发送方周围站点自己的发送行为,接收方响应短帧告诉接收方周围站点自身的接收行为 (a) A 发送 RTS给 B. (b) B 响应 CTS 给A. • C只听到了RTS,没有听到CTS,C可以在CTS之后发送数据 • D听到了CTS,D可以在A发送数据完毕以后发送数据(CTS包含A要发送数据的长度) • E什么都听到了,所以要一直沉默 • 作为对比,D可以在A发送RTS的同时也发送RTS,此时执行CSMA策略
以太网 • 以太网电缆 • 曼彻斯特编码 • 以太网MAC子层协议 • 二元指数后推算法 • 以太网性能 • 交换式以太网 • 快速以太网 • 千兆以太网 • IEEE 802.2: 逻辑链路控制层 • 关于以太网的回顾
以太网电缆-1 最常见的几种以太网电缆
以太网电缆-2 三种以太网电缆示例 • 10Base5, (b) 10Base2, (c) 10Base-T(集线器) 计算机中的网卡在做什么?(控制器)
以太网电缆-3 电缆布线. (a)蛇形, (b)脊骨形, (c) 树形, (d)使用中继器.
曼彻斯特编码 Why? 让接收方可以在无时钟条件下无歧义地确定帧的开始和结束 • 二进制编码, (b)曼码(c)差分曼码 曼码:规定某种跳变表示1或者0; 差分曼码:以相变为条件 代价:1)带宽是(a)的两倍 2)差分曼码需要区分位周期中间的相变 应用:所有以太网使用了某种曼码;以太网没有用差分曼码。。。
以太网MAC子层协议 帧格式.(a) DIX 以太网 (b) IEEE 802.3. 是我们可以在实验课上看到的! 前导域,包含位模式,通常使用曼码用于同步和边界标志 地址域,共48位,最高位1表示组播,次高位1表示本地配置,全1表示广播(MAC地址) 类型,0x0800表示IP(大于1500表示类型) 填充,从地址域到校验和域长度小于64则填充数据部分 校验和,完成检错,使用CRC
为什么传统LAN最小是64字节 帧如果很短,则有可能在检测到冲突之前已经把帧发送完毕,因为发送期间没有冲突,发送方会认为无错传输,误判。 最短多短? 2500m最大长度,4个中继器,电信号往返一周约50us,而10Mbps以太网,1比特的传输时间约100ns,所以发送方检测到冲突需要发送约500比特,约64字节 1Gbps?2500m需要约6400字节,250m需要约640字节。
二元指数后退算法 • 时间分割为时槽,每个时槽长度64字节 • 第i次发生冲突,则冲突双方在0~2i之间选择一个随机数w,然后等待w个时槽 • 优点: • 冲突的站少的时候,随机等待的间隔可以很小 • 随着冲突站数量增加,等待的时间间隔也指数增加,但是有一个可以接受的上限
以太网的性能 10M以太网,64字节时槽的以太网效率
以太网性能的计算 • k个站传送数据,每个站在竞争时槽以概率p发送数据,一个站“抓住电缆”的概率为A= • k个站竞争时槽,当某一个站抓住电缆后,一个竞争周期结束。恰好经过j个竞争时槽完成竞争的概率为 • 可以得到每次竞争所需要的平均时槽数量约1/A,进一步可以计算平均竞争周期的时间为时槽的数量乘以每个时槽的时间2/A。 • 假设传送一帧需要P秒,则信道效率为P/(P+ 2/A);此时可以看到电缆越长, 越大,信道效率越低,所以以太网需要规定最大长度 • 使用F、B、L、C来重新表述信道效率,可得1/(1+2BLe/cF);此时可以看到在帧长度F确定的情况下,网络带宽B越大,电缆长度L越长,则以太网效率越低! • 上述结论说明以太网并不是高速大范围局域网的最优选择。
交换式以太网 交换式以太网的简单示例. 一个高速底板,多个插线卡 同一插线卡可以构成一个冲突域,也可以通过在插线卡的不同端口设置缓存,避免冲突
快速以太网802.3u 最初的快速以太网电缆 100M以太网 3类线编码方案:8B/6T,3对双绞线,每对3个符号,单向传4比特;另外一对双绞线做反向信道 5类线编码方案:4B/5B,5个波特上传4个比特,全双工 两根多模光纤:全双工,100M 100Base-T2:需要复杂的数字信号处理器
千兆以太网-1 • 只有两个站的以太网. (b)包含多个站的以太网 典型特点是点到点配置,默认为全双工模式,半双工模式用于模拟经典以太网(限制电缆长度或者增加帧长度)
千兆以太网-2 支持的电缆为光纤、STP和UTP,其中 光纤:8B/10B 4对UTP:8根铜线,一个时钟8个比特,125M时钟可以获得1Gbps 需要链路级流控
IEEE 802.2: 逻辑链路控制 • LLC的位置 (b)协议的格式 通常的协议其实并不使用LLC,毕竟IP是不可靠的,所以也没有必要在链路层可靠。不过在链路层可靠的另外一种需求来自大的延迟和小的延迟,通常认为链路层可靠性较高可以及早发现错误,减小高层提供可靠传输时发现错误的几率。 通过监测网络,发现千兆网上的IPX和一些Browse协议使用LLC层。
无线局域网 • 802.11 协议栈 • 802.11 物理层 • 802.11 MAC子层 • 802.11 帧结构 • 服务
802.11 协议栈 802.11:红外,FHSS,DSSS;1-2M 802.11a:OFDM;54M,5G频段 802.11b:HR-DSSS;11M,2.4G频段 802.11g:OFDM;54M,2.4G频段
802.11 MAC 子层协议 无线LAN不能使用CSMA/CD 使用DCF和PCF两种模式 DCF: CSMA/CA CSMA+MACAW原理 增加发送方定时器,第三方虚拟信道NAV 分片(为什么),选择重传 PCF:基站使用信标帧轮询(polling),工作站响应信标帧来获得信道
PCF和DCF可以共存 802.11规定的帧间距(规定了发送方发送一帧之后在什么时间点可以发送下一帧)P252 SIFS:短的帧间距 PIFC:PCF帧间距 DIFC:DCF帧间距 EIFC:扩展帧间距:报告坏帧
802.11 帧结构 有三类帧结构 其中数据帧结构如图 帧控:DS: distribution system; MF: more fragment; W: WEP;O: Order ; 持续时间:用于MACS/CA中的CA部分(NAV) 四个地址:根据帧控中To DS和From DS字段来确定各地址含义 当标志位全1时,Alice在WLAN1给在WLAN2的Bob发送消息时,四个地址分别是 通向Bob的下一个基站地址;Alice的基站地址; Bob的MAC地址;Alice的MAC地址 序列号:实现分片串