数据链路层
功能概述
结点:主机、路由
链路:网络中两个结点之间的物理通道
数据链路:网络中两个结点之间的逻辑通道
帧:链路层的协议数据单元,封装网络层数据报
功能
负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报
为网络层提供服务,无确认无连接服务,有确认无连接服务,有确认面向连接服务(有连接一定有确认)
链路管理,即连接的建立、维持、释放(用于面向连接的服务)
组帧
流量控制
差错控制(帧错/位错)
封装成帧和透明传输
封装成帧
封装成帧就是在一段数据的前后部分添加首部和尾部,这样就形成了一个帧
接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束
首部和尾部包含许多控制信息,他们的一个重要作用:帧定界(确定帧的界限)
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止
组帧的四种方式:1.字符计数法,2.字符(节)填充法,3.零比特填充法,4.违规编码法
透明传输
透明传输是指不管所传数据是什么养的比特组合,都应当能够在链路上传送
因此,链路层就看不见有什么妨碍数据传输的东西
当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使接收方不会将这样的数据误认为使某种控制信息。这样才能保证数据链路层的传输时透明的
字符计数法
字符填充法
ESC就是一个转义字符
零比特填充
违规编码法
差错控制(检错编码)
差错来源
传输中的差错都是由于噪声引起的,分为全局性和局部性噪音
全局性:由于线路本身电器特性所产生的随机噪声(热噪声),是信道固有的,随机存在的
解决办法:提高信噪比来减少或避免干扰(对传感器下手)
局部性:外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因
解决办法:通常利用编码技术来解决
差错的分类
- 位错:比特位出错,1变0,0变1
- 帧错:丢失,重复,失序
位错的差错控制
检错编码
- 奇偶校验码:奇校验-1的个数为奇数,偶校验-1的个数位偶数
- CRC循环冗余码:FCS的生成以及接收端CRC校验都是由硬件实现,处理很迅速,因此不会延误数据传输
纠错编码
- 海明校验码
差错控制(纠错编码)
海明距离:两个合法编码(码字)的对应比特取值不同的比特数称为这两个码字的海明距离(码距)。一个有效编码集中,任意两个合法编码(码字)的海明距离的最小值称为该编码集的海明距离(码距)
海明校验过程
- 确定校验码位数r
- 确定校验码和数据的位置
- 求出校验码的值
- 检错并纠错
数据/信息有m位,冗余码/校验码有r位
校验码一共有2^r种取值
2^r >= m + r + 1
确定校验码和数据的位置
校验码放在序号2^n的位置,数据按序填上
序号 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
---|---|---|---|---|---|---|---|
值|1|1|0|$x_4$ | 0 | $x_2$ | $x_1$ |
求出校验码的值
检错并纠错
流量控制与可靠传输机制
流量控制
较高的发送速度和较低的接收能力的不匹配,回造成传输出错,因此流量控制也是数据链路层的一项重要工作
数据链路层的流量控制是点对点的,而传输层的流量控制是端到端的
数据链路层流量控制手段:接收方瘦不下就不回复确认
传输层流量控制手段:接收端给发送端一个窗口公告
流量控制方法
停止等待协议:每次发送完一个帧就停止发送,等待对方确认,在收到确认后再发送下一个帧。(效率低)发送窗口大小=1,接收窗口大小=1
滑动窗口协议:分为后退N帧协议(GBN)和选择重传协议(SR)
后退N帧协议:发送窗口大小>1,接收窗口大小=1
选择重传协议:发送窗口大小>1,接收窗口大小>1
可靠传输
发送端发啥,接收端收啥
流量控制
控制发送速率,使接收方有足够的缓冲空间来接收每一个帧
滑动窗口解决
流量控制(收不下就不给确认,想发也发不了)
可靠传输(发送方自动重传)
停止-等待协议
为什么要有停止等待协议
- 除了比特位发生差错,底层信道回发生丢包问题
- 为了实现流量控制
研究停等协议的前提
虽然现在常用全双工通信方式,但为了讨论问题方便,仅考虑一方发送数据(发送方),一方接收数据(接收方)
因为是讨论可靠传输的原理,所以并不考虑数据是在哪一个层次上传送的
停止-等待就是每次发完一个分组就停止发送,等待对方确认,在收到确认后再发送下一个分组
无差错情况
每发送1个数据帧就停止等待,因此用1bit来编号就够了
ACK:确认帧
数据帧丢失或检测到帧出错
发送完一个帧后,必须保留他的副本
数据帧和确定帧必须编号
ACK丢失
ACK迟到
性能分析
简单但是信道利用率太低
信道利用率:发送方在一个发送周期内,有效的发送数据所需要的时间占整个发送周期的比例
信道吞吐率=信道利用率*发送方发送速率
信道利用率=$(L/C)/T$ L是T内发送L比特数据,C是发送方数据传输率,T是发送周期
回退N帧协议
GBN发送方必须响应的三件事
- 上层的调用
- 收到了一个ACK
- 超时事件
上层的调用
上层要发送数据时,发送方显检查发送窗口是否已满。如果未满,则产生一个帧将其发送;如果已满,发送方只需要将数据返回给上层,暗示上层窗口已满,上层等会儿再发送(实际实现,发送方可以缓存这些数据,窗口不满时再发送)
收到了一个ACK
GBN协议中,对n号帧的确认采用累积确认的方式,表明接收方已经收到n号帧和它之前的全部帧
超时事件
协议的名字为后退N帧/回退N帧,来源于出现丢失和时延过长帧时发送方的行为。
就像在停等协议中一样,如果出现超时,发送方重传所有已发送但未被确认的帧
接收方要做的事情
- 收到正确的n号帧,并且按序,那么接收方为n帧发送一个ACK,并将数据交付给上层
- 其余情况都丢弃帧,并为最近按序接收的帧重新发送ACK。接收方无需暂存任何失序帧,只要维护一个信息:expectedseqnum(下一个按序接收的帧序号)
运行中的GBN
滑动窗口长度
若采用n个比特对帧编号,那么发送窗口的尺寸WT应满足:$1 \le WT \le 2n-1$。因为发送窗口尺寸过大,就会使得接收方无法区分新帧和旧帧
重点总结
- 累积确认(偶尔捎带确认)
- 接收方只按顺序接收帧,不按序则抛弃
- 确认序列号最大的,按序到达的帧
- 发送窗口最大为 2^n-1,接收窗口大小为1
性能分析
优点:因连续发送数据帧而提高了信道利用率
缺点:在重传时必须把原来已经正确传送的数据帧重传,使传送效率降低
选择重传协议(SR)
解决GBN的缺点:设置单个确认,同时加大接收窗口,设置接收缓存,缓存乱序到达的帧
SR发送方必须响应的三件事
- 上层调用
- 收到一个ACK
- 超时事件
上层调用
从上层收到数据后,SR发送方检查下一个可用于该帧的序号。如果序号位于发送窗口内,则发送数据帧;否则像GBN一样,要么将数据缓存,要么返回给上层之后再传输
收到了一个ACK
如果收到ACK,假如该帧序号在窗口内,则SR发送方将哪个被确认的帧标记为已接收。如果该帧序号是窗口的下界(最左边第一个窗口对应的序号),则窗口向前移动到具有最小序号的未确认帧处。如果窗口移动了并且有序号在窗口内的未发送帧,则发送帧
超时事件
每个帧都有自己的定时器,一个超时事件只重传一个帧
SR接收方要做的事
- SR接收方将确认一个正确接收的帧而不管其是否按序
- 失序的帧将被缓存,并返回给发送方一个该帧的确认帧(收谁确认谁)。直到所有帧(即序号更小的帧)皆被收到为止,这时才可以将一批帧按序交付给上层,然后向前移动滑动窗口
- 如果收到了窗口序号为小于窗口下界的帧,就返回一个ACK,其他情况就忽略该帧
运行中的SR
滑动窗口长度
发送窗口最好等于接收窗口(大了会溢出,无法判断是重传还是开始的帧,小了没意义)
W发送窗口=W接收窗口=2^(n-1)
重点总结
- 对数据帧逐一确认,收到一个确认一个
- 只重传出错帧
- 接收方有缓存
- W发送窗口=W接收窗口=2^(n-1)
信道划分介质访问控制
传输数据使用的两种链路
点对点链路:两个相邻结点通过一个链路相连,没有第三者。应用:PPP协议,常用于广域网
广播式链路:所有主机共享通信介质。应用:早期的总线以太网、无线局域网,常用于局域网,典型拓扑结构:总线型、星型(逻辑总线型)
介质访问控制
采取一定的措施,使得两对结点之间的通信不会发生互相干扰的情况。主要有静态划分信道和动态分配信道
静态划分信道
信道划分介质访问控制,主要有
- 频分多路复用 FDM
- 时分多路复用 TDM
- 波分多路复用 WDM
- 码分多路复用 CDM
动态分配信道
- 轮询访问介质:令牌传递协议
- 随机访问介质控制访问:ALOHA协议、CSMA协议 、SCMA/CD协议、CSMA/CA协议
信道划分介质访问控制
将使用介质的每个设备与来自同一信道上的其他设备的通信隔离开。把时域和频域资源合理地分配给网络上的设备
多路复用技术
把多个信号组合在一条物理信道上进行传输,使得多个信号机或终端设备共享信道资源,提高信道利用率
把一条广播信道,逻辑上分成几条用于亮哥节点之间通信的互不干扰的子信道,实际就是把广播信道转变为点对点信道
频分多路复用FDM
用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带
频分复用的所有用户在同样的时间占用不同的带宽资源
充分利用传输介质带宽,系统效率较高。由于技术比较成熟,实现也比较容易
类似于并行
时分多路复用TDM
将时间划分为一段段等长的时分复用帧
每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道
类似于并发
波分多路复用VDM
波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长的光信号
由于波长不同,所以各路光线互不干扰,最后再用波长分解复用器,将各路波长分解出来
码分多路复用CDM
CDMA:码分多址是码分复用的一种方式
1个比特分为多个码片/芯片,每一个站点被指定一个唯一的m位的芯片序列,发送1时发送芯片序列(通常把0写成-1)
多个站点同时发送数据的时候,要求各个站点芯片序列相互正交,规格化内积为0
两个向量到了公共信道上,线性相加
数据分离;合并的数据和源站规格化内积
ALOHA协议
动态媒体介入控制/多点加入特点:信道并非在用户通信时固定分配给用户
随机访问介质访问控制:所有用户可随机发送信息,发送信息时占全部带宽,会产生不协调产生的冲突
纯ALOHA协议
不监听信道,不按时间槽发送,随机重发,想发就发
冲突如何检测:如果发生冲突,接收方就会检测出差错,然后不予确认,发送方在一定时间内收不到判断就发生冲突
冲突如何解决:超时后等一随机事件再重传
时隙ALOHA协议
把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送,控制想发就发的随意性
纯ALOHA比时隙ALOHA吞吐量更低,效率更低
纯ALOHA想发就发,时隙ALOHA只有在时间片段开始时才能发
CSMA协议
全名:载波监听多路访问协议CSMA(carrier sense multiple access)
CS: 载波侦听/监听,每一个站点在发送数据之前要检测一下总线上是否有吉他计算机在发送数据
当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)
当一个站检测到的信号电压摆动值超过一定门限时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突
MA: 多点接入,表示许多计算机以多节点接入的方式连接在一根总线上
协议思想:发送帧之前,监听信道
监听结果:信道空闲-发送完整帧,信道忙-推迟发送
1-坚持CSMA
对监听信道忙之后的坚持
- 如果一个主机要发送消息,那么它先监听信道
- 空闲则直接传输,不必等待
- 忙则一直监听,直到空闲马上传输
- 如果有冲突(一段时间内未收到肯定回复),则等待一个随机长的时间再监听,重复上述过程
缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免
非坚持CSMA
对于监听信道忙之后就不继续监听
- 如果一个主机要发送消息,那么先监听信道
- 空闲则直接传输,不必等待
- 忙则等待一个随机时间后再进行监听
缺点:可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低
P-坚持CSMA
对于监听信道空闲的处理
- 如果一个主机要发送消息,那么先监听信道
- 空闲则以P概率直接传输,不必等待;概率1-P等待到下一个时间槽再传输
- 忙则继续监听直到信道空闲再以P概率发送
- 若冲突则等到下一个时间槽开始监听并重复上述过程
缺点:发送冲突后还是要坚持把数据帧发送完,造成了浪费
所以CSMA/CD协议可以减少资源浪费,一冲突就能发现
1-坚持CSMA | 非坚持CSMA | P-坚持CSMA | |
---|---|---|---|
信道空闲 | 马上发 | 马上发 | P概率马上发,1-P概率下一个时隙发 |
信道忙 | 继续坚持监听 | 放弃监听,等一个随机时间再监听 | 持续监听,直到信道空闲再以P概率发送 |
CSMA/CD协议
全名:载波监听多点接入/碰撞检测CSMA/CD(carrier sense multiple access with collision detection)
CD:碰撞检测(冲突检测),边发送边监听,适配器这边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。运用于半双工网络
为什么还会出现冲突-传播时延对载波监听的影响
重传时机:
- 确定基本退避(推迟)时间为争用期 $2\tau$
- 定义参数K,它等于重传次数,但K不超过10。当K不超过10时,K等于重传次数;当K大于10时,K就不再增大而一直等于10
- 从离散的整数集合[0,1,…,2K-1]中随机取一个数r,重传所需要退避的时间就是r倍的基本退避时间 $2r\tau$
- 当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错
使用此算法可使重传需要推迟的平均时间随重传次数的增大而增大,因而减小发生碰撞的概率,有利于整个系统的稳定
最小帧问题
如果发送了一个很短的帧但发生了碰撞,并且在发送完毕才检测到了碰撞,无法停止发送,因此衍生出最小帧长
帧的传输时延至少要两倍于信号在总线中的传播时延
帧长(bit) / 数据传输速率 $\le 2\tau$
最小帧长=总线传播时延 * 数据传输速率 * 2( $ 2\tau$ * 数据传输速率)
以太网规定的最短帧长伟64B,凡是长度小于64B的都是由于冲突而异常终止的无效帧
CDMA/CA协议
全名:载波监听多接入/碰撞避免CSMA/CA(carrier sense multiple access with collision avoidance)
CD协议:总线以太网
CA协议:无限局域网
工作原理
- 发送数据前,先检测信道是否空闲
- 空闲则发出RTS(request to send), RTS包括发送端的地址,接收端的地址,下一份数据将持续发送的时间等信息。信道忙则等待
- 接收端收到RTS后,将响应CTS(clear to send)。(解决屏蔽站的问题)
- 发送端收到CTS后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据)
- 接收端收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧
- 发送方收到ACK就可以进行下一个数据帧的发送,若没有则一致重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)
CSMA/CD与CSMA/CA
相同点
- 属于CSMA思路,先听再说
- 必须要进行监听
- 发现信道空闲后才能进入接入
不同点
- 传输介质不同:CSMA/CD以太网,CSMA/CA无线局域网
- 载波检测方式不同:CSMA/CD电缆中电压变化;CSMA/CA能量检测、载波检测和能量载波混合检测
- CSMA/CD检测冲突,CSMA/CA避免冲突
轮询访问介质访问控制
信道划分介质访问控制协议
- 基于多路复用技术划分资源
- 网络负载重:共享信道效率高且公平
- 网络负载轻:共享信道效率低
随机访问MAC协议(会发生冲突)
- 用户根据意愿随机发送信息,发送信息时可独占信道带宽
- 网络负载重:产生冲突开销
- 网络负载轻:共享信道效率高,单个节点可利用信道全部带宽
轮询访问MAC协议/轮流协议/轮转访问MAC协议
既要不产生冲突,又要发送时占用全部带宽。分为轮询协议和令牌传递协议
轮询协议
主节点轮流邀请从属节点发送数据
问题:轮询开销,等待延迟,单点故障
令牌传递协议
令牌:一个特殊格式的MAC控制帧,不包含任何信息
控制信道使用,确保同一时刻只有一个节点独占信道
每个节点都可以在一定时间内(令牌持有时间)获得发送数据的权利,并不是无限制地持有令牌
应用于令牌环网(物理星型拓扑,逻辑环型拓扑)
采用令牌传送方式的网络常用于负载较重,通信量较大的网络中
问题:令牌开销,等待延迟,单点故障
局域网基本改你啊和体系结构
局域网,简称LAN,指在某一区域内有多台计算机互联成的计算机组,使用广播信道
- 覆盖的地理范围小,只在一个相对独立的局部防伪内联
- 使用专门铺设的传输介质(双绞线,同轴电缆)进行联网,数据传输速率高(10MB/s~10GB/s)
- 通信时延短,误码率低,可靠性高
- 各站伟平等关系,共享传输信道
- 采用分布式控制和广播通信,能进行广播和组播
局域网拓扑结构
总线型拓扑性能相对最好,用得最多
局域网传输介质
有线局域网:双绞线,同轴电缆,光纤
无线局域网:电磁波
拓扑结构
- CSMA/CD:总线型局域网,也用于树型网络
- 令牌总线:总线型局域网,也用于树型网络
- 令牌环:用于环形局域网,如令牌环网
局域网分类
以太网
应用最广泛的局域网,包括标准以太网(10Mbps)、快速以太网(100Mbps)、千兆以太网(1000Mbps)和10G以太网,他们都符合IEEE802.3系列标准规范
逻辑拓扑总线型,物理拓扑是星型或拓展星型,使用CSMA/CD
令牌环网
物理上采用星型拓扑结构,逻辑上是环型拓扑结构
ATM网
较新型的单元交换技术,使用53字节固定长度的单元进行交换
无线局域网
采用IEEE802.11标准
IEEE802标准
IEEE802系列标准时IEEE802 LAN和MAN标准委员会制订的局域网、城域网技术标准(1980年2月成立)
其中最广泛使用的有以太网、令牌环、无线局域网等
这一系列标准的每一个子标准都由委员会重的一个专门工作组负责
MAC子层和LLC子层
IEEE802标准所描述的局域网参考模型只对应OSI参考模型的数据链路层和物理层,它将数据链路层划分为逻辑链路层(LLC子层)和介质访问控制层(MAC子层)
以太网
以太网是由Xerox公司创建并由Xerox、Intel和DEC公司联合开发的基带总线局域网规范,是当今现有局域网采用的最通用的通信协议标准。采用CSMA/CD技术
以太网在局域网各种技术中占统治性地位:造价低廉(以太网网卡不到100块),比令牌环网,ATM网便宜;满足网络速率要求10Mb/s~10Gb/s;应用最广泛的局域网技术
以太网两个标准:
- DIX Ethernet V2:第一个局域网产品(以太网)规约
- IEEE 802.3: IEEE 802委员会802.3工作组制定的第一个IEEE的以太网标准(帧格式有一丢丢改动)
以太网提供无连接、不可靠的服务
无连接:发送方和接收方之间无握手过程
不可靠:不对发送方的数据帧编号,接收方不向发送方进行确认,差错帧直接丢弃,差错纠正由高层负责
以太网只实现无差错接收,不实现可靠传输
传输介质和拓扑结构发展
传输介质:粗同轴电缆->细同轴电缆->双绞线+集线器
拓扑结构:总线型->星型拓扑
使用集线器的以太网在逻辑上仍是一个总线网,各站共享逻辑上的总线,使用的还是CSMA/CD协议。
以太网拓扑:逻辑上总线型,物理上星型。
10BASE-T以太网
10BASE-T是传送基带信号的双绞线以太网,T表示采用双绞线,现10BASE-T 采用的是无屏蔽双绞线(UTP),传输速率是10Mb/s。
物理上采用星型拓扑,逻辑上总线型,每段双绞线最长为100m。采用曼彻斯特编码。
采用CSMA/CD介质访问控制。
适配器与MAC地址
计算机与外界有局域网的连接是通过通信适配器的。 适配器上装有处理器和存储器(包括RAM和ROM)。 ROM上有计算机硬件地址MAC地址。
在局域网中,硬件地址又称为物理地址,或MAC地址。【实际上是标识符】
MAC地址:每个适配器有一个全球唯一的48位二进制地址,前24位代表厂家(由IEEE规定),后24位厂家自己指定。
常用6个十六进制数表示,如02-60-8c-e4-b1-21。
以太网MAC帧
与IEEE 802.3的区别
- 第三个字段是长度/类型
- 当长度/类型字段值小于0x0600时,数据字段必须装入LLC子层
高速以太网
100BASE-T以太网
在双绞线上传送100Mb/s基带信号的星型拓扑以太网,仍使用IEEE802.3的CSMA/CD协议。
支持全双工和半双工,可在全双工方式下工作而无冲突。 交换机
吉比特以太网
在光纤或双绞线上传送1Gb/s信号。
支持全双工和半双工,可在全双工方式下工作而无冲突。
10吉比特
10吉比特以太网在光纤上传送10Gb/s信号。
只支持全双工,无争用问题。
IEEE 802.11无线局域网
IEEE 802.11是无线局域网通用的标准,它是由IEEE所定义的无线网络通信的标准
无线局域网分类
- 有固定基础设施的无线局域网
- 无固定基础设施的无线局域网
PPP协议和HDLC协议
广域网
WAN,Wide Area Network,通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。
广域网的通信子网主要使用分组交换技术。
广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网,它将分布在不同地区的局域网或计算机系统互连起来,达到资源共享的目的。
如因特网(Internet)是世界范围内最大的广域网。
广域网和局域网的区别
广域网覆盖数据链路层、物理层和网络层,更强调资源共享
局域网仅仅覆盖数据链路层和物理层,更强调数据传输
PPP协议的特点
点对点协议PPP(Point-to-Point Protocol)是目前使用最广泛的数据链路层协议
用户使用拨号电话接入因特网时一般都使用PPP协议
只支持全双工链路。
PPP协议应满足的要求
- 简单,对于链路层的帧,无需纠错,无需序号,无需流量控制。
- 封装成帧,帧定界符
- 透明传输,与帧定界符一样比特组合的数据应该如何处理:异步线路用字节填充,同步线路用比特填充
- 多种网络层协议,封装的IP数据报可以采用多种协议。
- 多种类型链路,串行/并行,同步/异步,电/光….
- 差错检测,差错检测
- 检测连接状态,链路是否正常工作。
- 最大传送单元,数据部分最大长度MTU。
- 网络层地址协商,知道通信双方的网络层地址。
- 数据压缩协商
PPP协议不需要满足的要求
- 纠错
- 流量控制
- 序号
- 不支持多点线路
PPP协议的三个组成部分
- 一个将IP数据报封装到串行链路(同步串行/异步串行)的方法。
- 链路控制协议LCP:建立并维护数据链路连接。 (身份验证)
- 网络控制协议NCP:PPP可支持多种网络层协议,每个不同的网络层协议都要一个相应的NCP来配置,为网络层协议建立和配置逻辑连接。
PPP协议的状态图
PPP协议的帧格式
HDLC协议
高级数据链路控制(High-Level Data Link Control或简称HDLC)
是一个在同步网上传输数据、面向比特的数据链路层协议
它是由国际标准化组织(ISO)根据IBM公司的SDLC(SynchronousData Link Control)协议扩展开发而成的
数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现
采用全双工通信
所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重份,传输可靠性高。
HDLC的站-主战、从站、复合站
主站的主要功能是发送命令(包括数据信息)帧、接收响应帧,并负责对整个链路的控制系统的初启、流程的控制、差错检测或恢复等。
从站的主要功能是接收由主站发来的命令帧,向主站发送响应帧,并且配合主站参与差错恢复等链路控制。
复合站的主要功能是既能发送,又能接收命令帧和响应帧,并且负责整个链路的控制。
三种数据操作方式:正常响应方式,异步平衡方式,异步响应方式
HDLC帧格式
信息帧(I)第1位为0,用来传输数据信息,或使用捎带技术对数据进行确认;
监督帧(S)10,用于流量控制和差错控制,执行对信息帧的确认、请求重发和请求暂停发送等功能
无编号帧(U)11,用于提供对链路的建立、拆除等多种控制功能。
PPP协议与HDLC协议区别
相同点
- HDLC、PPP只支持全双工链路
- 都可以实现透明传输
- 都可以实现差错检测,但不纠正差错
不同点
- PPP协议:面向字节,2B协议字段,无序号和确认机制,不可靠
- HDLC协议:面向比特,没有2B协议字段,有序号和确认机制,可靠