数据链路层
- 组帧
- 差错控制
- 流量控制与可靠传输机制
- 介质访问控制
- 局域网
- 广域网
- 数据链路层设备
组帧
- 字符计数法:计数字段提供的字节数包含自身所占的一个字节
- 字节填充的首尾界符法:字符SOH代表Smart of Header(首部开始),EOT代表End of Transmission(传输结束)。SOH和EOT都是ASCII码中的控制字符。SOH的十六进制编码是01,EOT是04,ESC的十六进制编码是1B。不要误认为SOH是“S”“O""H"三个字符。PPP帧用来帧定界的字段为0x7E。
- 比特填充的首尾标志法
- 字节填充的首尾界符法时,不是所有形式的帧都要开始符和帧结束符,如MAC帧不需要结束符。因为以太网传输帧的时候,各帧间还必须有一定的间隙,所有接收端只要找到帧开始定界符,可见以太网不需要使用帧结束定界符,不需要使用字节插入来保证透明传输。
差错控制
检错编码
- 垂直奇偶校验、水平奇偶校验、水平垂直奇偶校验。
- 循环冗余码(CRC)
- 掌握二进制除法
- CRC进行检错的重要特性:
- 具有r检测位的多项式能检测出所有小于或等于r的突发错误。
- 长度大于r+1的错误逃脱概率为1/2^r
- CRC有纠错功能但默认CRC为检错码。
纠错编码-海明码
- 在信息字段中插入若干位数据,用于监督码字里的哪一位数据发生了变化,具有一位纠错能力。假设信息位有k位,整个码字的长度是k+r位;每一位的数据只有2种状态,r位数据就有2^r种状态。如果每种一状态代表一个码元发生了错误,有k+r位码元,要有k+r位来表示,另外还要有一种状态表示数据正确的情况,所以检查一位错误的条件:2 ^ r >= k + r + 1.
- 编写海明码的过程:
- 确定校验位的位数
- 把数值按序写出来,M1,M2…Mn,校验码Pi(i取1,2,3…)在编码中的位置为2^(i-1),把校验位的位置写出来,按序写出数据位
- 求出出错位e1,e2,…em与M1,M2…Mn的对应关系,然后可以写出Pi与数据位的对应关系,进而求出Pi。
- 最后将Pi填入数据位,海明码就形成了。
- 校验海明码的过程
- 直接写出出错位e1,e2…em与M1,M2…Mn的对应关系,计算e1,e2…em的值。
- 求出二进制序列em,e(m-1)……e1对应十进制的值,则此十进制数就是出错的位数,取反即可得到正确的编码。
- 海明码如果要检测出d位错误,需要一个海明距为d+1的编码方案;如果要纠正d位错误,需要一个海明距为2d+1的编码方案。海明码纠错能力恒小于或等于检错能力。
- 误码率和信噪比有关:信噪比越高,失真越小,到达接收端波形变化小,自然误码率低
流量控制与可靠传输机制
流量控制
- 停止-等待流量控制:发送方发出一帧,等待应答信号到达再发送另一帧,如果接收方不应答,发送方必须一直等待。
- 滑动窗口流量控制:接受窗口大小与发送窗口无关。
滑动窗口机制
- 只有在接受窗口向前滑动时(以此同时也发送了确认),发送窗口才有可能向前滑动。
- 可靠传输机制包括停止-等待协议、后退N帧协议和选择重传协议。从滑动窗口的层次看,这三种协议只是在发送窗口和接受窗口大小上有差别。
- 当接受窗口为1时,一定可以保证帧按序接受。
停止-等待协议
- 怎么实现可靠传输:发送方发送什么,接受方就接受什么,使用_确认(发送确认帧)_和_超时重传_两种机制共同完成。
- 捎带确认和累计确认:每两个发送数据的站都是通过全双工连接的。
- 停止-等待协议:发送方传输一个帧后,必须等待对方的确认才可以发送下一帧。规定时间没有收到确认,则发送方超时,重传原始帧。
- 第一类错误是数据帧被损坏或者丢失。
- 第二类错误是确认帧被破坏或者丢失:对于接收方而要,需要有能够区别某一帧是新帧还是重复帧的能力。让发送方在每个待发的帧头部加一个编号,接收方岁每个到达的帧的编号进行识别,判断是新帧还是重复帧。
后退N帧(GBN)协议
- 基于滑动窗口流量控制技术。如果采用n个比特对帧进行编号,其发送窗口的尺寸W必须满足1<=W<=2 n-1.接受窗口尺寸为1.如果发送窗口尺寸大于2n-1,会造成接收方无法分辨新、旧数据帧。
- 基本原理:如果某个帧出错了,接收方只能简单的丢弃该帧及其所有的后续帧。发送方超时后需要重发该出错帧及其后续的所有帧。
- 减少了等待时间时系统吞吐量提高,但是错误帧会造成一定浪费,改进得到选择重传协议。
选择重传(SR)协议
- 基本思想:若一帧出错,其后续帧先存入接收方的缓存区中,如是要求发送方重传出错帧,一旦受到重传帧后,和原先存在缓冲区的其余帧一起按正确的顺序送至主机。提高信道利用率但增加了缓冲空间
- 若采用n个比特对帧进行编号,为了避免接收端向前移动窗口后新接受窗口和旧接受窗口重叠,发送窗口的最大尺寸应该不超过序列号范围的一半:W<=2^(n-1)。
- 发送窗口最好不要超过接受窗口,通常情况下是等于。
- 发送缓存和接受缓存:按序到达且没有被交付给主机的帧被放在接受缓存里面而不是接受窗口里面。那些不是时序到达的数据且没有错误的帧一定是在接受窗口里面,因为这些帧不能直接给主机,而放在接受缓存的帧是要给主机的,等缺少的帧收到后,再一起放到接受缓存。
介质访问控制
信道划分介质访问控制
多路复用技术的基本概念:当传输介质的带宽超过了传输单个信号所需的带宽,人们就通过在一条介质上同时携带多个传输信号的方法来提高传输系统的利用率,这就是所谓的多路复用,也是实现信道划分介质访问控制的途径。
- 频分多路复用:将一条信道分割成多条不同频率的信道。注意:每个子信道分配的贷款可以不同,总和不可以超过信道总带宽。防止子信道的干扰,相邻信道要加入保护带。
- 时分多路复用:同步时分复用;统计时分复用是一种动态的时间分配,同时是异步的。
- 波分多路复用:光的频分多路复用,在一根光纤中传输多种不同频率(波长)的光信号,最后用分波器将各路波长不一样的光分解出来
- 码分多路复用:又叫码分多址(CDMA),工作在物理层,不存在对数据帧进行确认。既共享信道的频率,又共享时间,是一种真正动态复用技术。抗干扰能力强、保密性强、语音质量好。
随机访问介质访问控制
动态划分信道分为随机接入和受控接入。随机接入指所有用户可以根据自己的意愿随机的发送信息,会产生碰撞,为了解决从而引入CSMA/CD等协议。受控接入就是不能随机的发送数据,一定要得到某种东西才有权发送数据
- ALOHA协议
- 纯ALOHA协议:不进行任何检测就发送数据,一段时间内没有收到确认,则等待一段随机时间后再发送数据知道发送成功。简单但是性能尤其是信道利用率不理想。
- 时分ALOHA:所有结点的时间被划为间隔相同的时隙(Slot),规定每个节点只有等到下一个时隙到来时才可发送数据。
- CSMA协议(载波侦听多路访问)
- 1-坚持CSMA:发送结点监听到信道空闲时,立即发送数据,否则继续监听。
- p-坚持CSMA:发送结点监听到信道空闲时,以概率p发送数据,以概率(1-p)延迟一段时间并重新监听
- 非坚持CSMA:当发送结点一旦监听到信道空闲时,立即发送数据,否则延迟一段随机的时间再重新监听
- CSDA/CD(带冲突监测的载波侦听多路访问协议):
- 发送站点传输的过程中仍继续监听信道,以检测是否存在冲突。如果有冲突,信道上可以检测到超过发送站点本身发送的载波信号的幅度,判断出冲突的存在,采用截断二进制指数类型退避算法来等待一个随机的时间再重发,并向总线上发一串阻塞信号,用以通知总线上其他站点。提高了总线的利用率。
- 争用期:以太网端到端的往返时延,只有经过争用期这段时间还没有检测到冲突,才能肯定这次发送不会发生后从图。
- 截断二进制指数类型退避算法:解决了站点检测到冲突后继续等待的时间问题。
- 确定基本退避时间,一般等于争用期
- 定义重传参数k,k=min[重传次数,10]
- 当整数集合{0,1,…,(2^k)-1}中随机选择一个数记为r,重传所需时延就是r倍的基本退避时间。
- 当重传次数达到十六次仍不成功,说明网络拥挤,丢弃该帧并向上层汇报。
- CSMA/CA协议:检查接收方是否发回帧的确认。
轮询访问介质访问控制
令牌传递协议
局域网
局域网基本概念和体系结构
- 局域网(Local Area Network,LAN)指一个小范围内的多台计算机或者其他通信设备,通过双绞线、同轴电缆等连接介质互连起来,以达到资源和信息共享目的的互联网络。
-
局域网最主要的特点
- 局域网为一个单位所拥有。
- 地理范围和站点数目有限
- 局域网有较高的数据率、较低的时延和较小的误码率。
-
局域网的主要优点
- 具有广播功能
- 便于系统的扩展与演变,各设备的位置可灵活的调整和改变
- 提高了系统的可靠性、可用性
- 各站为平等关系而不是主从关系
-
局域网主要技术要素
- 网络拓扑结构、传输介质与介质访问控制方法。
- 介质访问方法是最重要的技术要素,决定着局域网的技术特性。
-
局域网的主要介质访问控制方法
- CSMA/CD、令牌总线和令牌环,前两种作用于总线型网,令牌环作用于环型网
- IEEE的802标准将数据链路层拆分成两个子层:逻辑链路控制(LLC)子层和媒体接入控制(MAC)子层,与接入到传输媒体有关的内容都放在MAC子层。
以太网的工作原理
以太网使用总线拓扑结构,所有计算机都共享一条总线,信息以广播形式发送。使用CSMA/CD技术对总线进行访问控制。考虑到局域网信道质量好,以太网采取以下两项重要措施使通信更加方便
- 采用无连接的工作方式
- 不对发送的数据帧进行编号,也不要求对发送方发送确认。
以太网的MAC帧
每块网卡出厂即被赋予一个全球唯一的MAC地址,被固化在网卡的ROM中,共48bit,高24bit为厂商代码,低24bit为厂商自行分配的网卡序列号。MAC帧的DIX Ethernet V2标准格式
- 前导码:在帧前面插入8B,使接收端与发送端进行时钟同步。分为前同步码(7B)和帧开始定界符(1B)。
- 目的地址、源地址:均使用48bit(6B)的MAC地址。
- 类型:2B,指出数据与携带的数据应交给哪个协议主体处理。
- 数据:46-1500B
- 填充:0-46B
- 校验码(FCS):4B,采用循环冗余码,不但需要校验MAC帧的数据部分,还要校验目的地址、源地址和类型字段,但是_不校验前导码_。
高速以太网
-
100Base-T以太网:在双绞线上传送100Mbit/s基带信号的星形拓扑结构以太网,使用CSMA/CD协议,又叫做快速以太网。保持最短帧长不变,将一个网段的最大电缆长度减小到100m,帧间时间间隔从原来的9.6ms转到现在的0.96ms。
-
吉比特以太网(千兆以外网):载波延伸,分组突发
- 允许在1Gbit/s下全双工和半双工两种方式工作。
- 在半双工下使用CSDA/CD 协议,全双工方式不需要使用CSMA/CD协议
-
10吉比特以太网
- 保留了IEEE802.3标准规定的以太网帧格式、最小最大帧长,以便升级
- 不使用铜线而是光纤作为传输介质
- 只工作在全双工方式下
无线局域网
-
无线局域网的组成
- 有固定基础设施的无线局域网的组成
- 无固定基础设施的无线局域网的组成
-
IEEE 802.11标准中的物理层实现方法
- 跳频扩频(FHSS)
- 直接序列扩频(DSS)
- 红外线(IR)
-
IEEE 802.11标准中的MAC层
- MAC层在物理层上面,包括两个子层,依次为分布协调功能(DCF)子层和点协调功能(PCF)子层。
- CDMA/CD协议对无线局域网进行冲突检测花费过大且冲突检测到信道空闲后仍可能发生冲突,因此在无线局域网的MAC层中,使用的是带有碰撞避免功能的CSMA/CA协议,同时增加了_确认机制_。
令牌环网的工作原理
令牌是一种特殊的MAC帧,帧中有一个标志令牌(忙/闲)。令牌总是沿着物理环单向逐站发送,传送顺序与结点在环中排列顺序相同。令牌和数据排列顺序如下
- 网络空闲时,环路中只有令牌在网络中循环传递
- 令牌传送到有数据要发送的节点处,该结点就修改令牌中的一个标志位,在令牌中附加自己需要传输的数据,令牌被改成了一个数据帧
- 数据帧沿着环路传递,收到的结点一边转发数据,一边查看帧目的地址。如果目的地址和自己的相同,就复制该数据帧以便下一步处理
- 数据帧沿着环路传输,直到到达该帧的源节点,源节点接受自己发出去的数据帧便不再转发。同时源节点通过校验返回的数据帧查看数据传输的过程是否有错,如果有错就重传该帧。
- 源节点传送完数据以后,重新产生一个令牌,并传递给下一个站点,以交出发送数据帧的权限。
广域网
广域网的基本概念
由一些结点交换机以及连接这些交换机的链路组成。不称互联网为广域网,因为其不同网络的“互连”才是其最主要的特征,它们之间常采用路由器连接,而广域网只是一个单一的网络,用结点交换机连接各主机而不是用路由器连接各网络。结点交换机在单个网络中转发分组,而路由器在多个网络构成的互联网中转发分组。
PPP(点对点协议)
- 由以下三个部分组成
- 一个将IP数据报封装到串行链路的方法
- 一个链路控制协议(LCP)。用于建立、配置和测试数据链路连接,并在不需要时将他们释放
- 一套网络控制协议(NCP)。每个协议支持不同的网络层协议,用来建立和配置不同的网络层协议。
- PPP的工作状态
- 用户拨号接入ISP时,路由器的调制解调器对拨号进行确认,建议一条物理连接。
- 个人计算机向路由器发送一系列的LCP分组(封装成多个PPP帧),这些分组及其相应选择了将使用的一些PPP参数。
- 进行网络层配置,网络控制协议(NCP)给新接入的个人计算机分配一个临时的IP地址。
- 这样,个人计算机就成为因特网上的一个主机了。
- PPP是一个面向字节的协议。
- PPP不需要的功能:纠错(只负责检错)、流量控制(TCP负责)、序号(PPP是不可靠传输协议)、多点线路(PPP是点对点的)、半双工或单工(PPP只支持全双工链路)。
HDLC(高级数据链路控制)协议
- 面向比特(PPP是面向字节的)的数据链路控制字节协议
- 非平衡配置的特点是由一个主站控制整个链路的工作。
- 平衡配置的特点是链路两端的两个站都是复合站,每个复合站都可以品等的发起数据传输,而不需要得到对方复合站的允许。
数据链路层设备
网桥的概念和基本原理
随着局域网的发展,需要将多个局域网用一些中间设备连接起来,实现局域网之间的通信,这是局域网的扩展。物理层扩展局域网使用的是中继器和集线器。缺点有(1)扩大了冲突域且总的吞吐量未提高(2)不能互联使用不同以太网技术的局域网。数据链路层扩展局域网是使用网桥,网桥的特点是具有过滤帧的功能,至少有两个端口,每个端口和一个网段相连。没从一个端口接收到一个帧,就先暂存到缓存中。通过查找转发表将该帧从对应的端口发出。仅在同一个网段中通信的帧,不会被网桥转发到另一个网段中,因而不会加重整个网络的负担。
- 网桥的优点:
- 过滤通信量
- 扩大了物理范围
- 提高了可靠性
- 可互连不同物理层,不同MAC子层和不同速率的以太网。
- 网桥的缺点:
- 存储转发增加了时延
- 在MAC子层并没有流量控制功能
- 具有不同MAC子层的网段桥接在一起时时延更大
- 网桥只适合用户数不太多(不超过几百个)和通信量不太大的局域网,否则会因传播过多的广播信息产生网络拥塞,即广播风暴。
网桥的分类
- 透明网桥(选择的不是最佳路由)
- 透明是指局域网的站点并不知道所发送的帧将要经过哪几个网桥。透明网桥是即插即用的设备,不用人工配置转发表
- 网桥收到一帧后先进行自学习,查找转发表中与收到帧的源地址有无相匹配的项目。没有就在转发表中增加一个项目(源地址、进入的接口与时间),有则把原来的项目进行更新。
- 转发帧:查找转发表中与收到帧的目的地址有无相匹配的项目。没有就通过所有其他接口(进入网桥的接口除外)进行转发。
- 转发表中给出的接口是该帧进入网桥的接口,则丢弃该帧。
- 为了避免转发的帧在网络中不断地转圈,透明网桥使用一种生成树算法。使整个扩展局域网在逻辑上形成树形环路,工作起来逻辑上没有环路,但生成树一般不是最佳路由。
- 源选径网桥(选择的是最佳网桥)
- 路由选择由发送数据帧的源站负责,网桥根据数据帧的路由信息进行接收和转发。
- 源站先广播向欲通目的站发送一个发送帧。发送帧在局域网中沿着所有可能的路由传送,记录所经过的路由。发送帧到达目的站后,沿着原来的路径返回源站,源站得知这些路径后从所有可能路由中选择一个最佳路由。
- 发送帧确定最佳路由,还可以用来确定整个网络可以通过帧的最大长度。
- 透明网桥和源选径网桥中提到的最佳路由不一定是经过路由器最少的路由,也可以是发送帧往返时间最短的路由,这样才能真正的进行负载平衡。
局域网交换机及其工作原理
- 基本概念:实质上是硬件实现的多端口网桥,通常有十几个端口,每个端口直接与主机或者集线器相连,工作在全双工方式。允许多对计算机间同时通信
- 交换机总容量计算方式:端口数 x 每个端口带宽(半双工);端口数 x 每个端口带宽 x 2(全双工)。
- 两种交换方式
- 直通式交换:速度快但缺乏安全性,无法支持不同速率的端口的交换。
- 存储转发式交换:可靠性高,支持不同速率端口间的转换,缺点是延迟较大
- 无碎片转发既避免了存储转发速度慢的问题又避免了直通转发中有碎片的问题。
- 工作原理:检测从某端口进入交换机的帧的源MAC地址和目的MAC地址,与系统内部的动态查找表进行比较