数据链路层协议
(2)带填充位的首尾标志法
发送方数据链路层若在数据中遇到5 个连续的1时,自动在其后填充一个0到输 出位流中。
图4.2
带填充位的首尾标志法
2.流量控制:发送速率和接收速率 进行控制,使收发一致 3.差错控制:接收端对帧进行校验;
发送端设置定时器,超过时间则重发帧
4.链路管理
发送端和接收端之间通过交换控制信息, 来建立、维护和释放数据链路,这就是链路管理。
图4.15 用户拨号上网示意图
4.5.1 PPP的工作原理
1.PPP的内容 PPP本身是一个协议族 (1)链路控制协议(Link Control Protocol,LCP)
图4.16 PPP的工作过程
① 配置确认帧(Configure_Ack) ② 配置否认帧(Configure-Nac) ③ 配置拒绝帧(Configure-Reject)
1.3种类型的站:主站,次站,复合 站。主站负责控制整个数据链路
图4.11 三种类型的站和两种结构
2.两种链路结构:平衡型和非平衡型
下图为主站和次站叠合组成
图4.12 对称结构
3.3种操作模式
(1)NRM :正常响应 点对多点 (2)ARM :异步响应 对称结构和点对点链路 (3)ABM :异步平衡 复合站结构
(2)网络控制协议(Network Control Protocol,NCP) 和高层协商链路的数据格式与类型,对 IP报头进行压缩。
2.PPP的帧格式
图4.17 PPP帧格式
(1)PPP增加了2字节的协议字段,表 4.2所示是协议字段的取值。
表4.2
协议字段的取值
(2)PPP可以把IP数据报封装到串行链 路上去,PPP既能够支持异步链路,也 能够支持面向位的同步链路,而且规定 最大接收单元为1 500字节。 (3)PPP的链路控制协议(LCP)在 RFC1661中规定了11种具体代码,使通 信双方可以采用一致的代码进行通信。
5.控制字段(C)
控制字段(C)共占8位,可构成各种 命令和响应用来完成传输控制功能。
4.4.4 HDLC协议的主要内容
1.信息帧 发送数据,控制字段的1为”0”。 2.监控帧 控制字段的1,2 为”10”,监控数据链路传 送应答信息 3.无编号帧 控制字段的1,2 为”11”,传送命令和其他 控制信息,控制链路的建立,拆除并处理系 统错误等。与用户无关,并优先传送
第4章 数据链路层协议
4.1 数据链路层的功能与协议
4.2 流量控制方法
4.3 差错控制方法 4.4 高级数据链路控制(HDLC)协议 4.5 因特网中的点对点协议(PPP)
4.1
数据链路层的功能与协议
数据链路层基于物理层的服务,为网络层提供透 明的、正确有效的传输链路。链路层有四大功能: 1.成帧和传输
物理层以比特为单位进行数据传输,数据链路层 则把数据组织成一定大小的数据帧,以帧为单位发送、 接收、校验和应答。 不同网络其帧的格式或长度不同,将比特流分为帧的 方法基本相同,常用的方法有: 带填充字符的首尾界符法、带填充位的首尾标志 法。
(1)带填充字符的首尾界符法
图4.1 带填充字符的首尾界符法
图4.5 滑动窗口
4.3 差错控制方法
差错控制是检测和纠正传输错误i的机制,链路层采用 3种协议来实现可靠传输:肯定应答(ACK),否定 应答(NCK),超时重传
4.3.1
自动请求重发(ARQ)协议
3种ARQ技术: 1.停止等待ARQ协议
发送站必须要有记时器,时间长度大于传输时延
图4.6 停等ARQ协议
2.后退N帧ARQ协议
图4.7 后退N帧与选择性
3.选择性ARQ协议 后退N帧ARQ协议的接收窗口为1,选 择性ARQ协议的接收窗口大于1,允 许不按顺序接收。只选择性重发错误
帧和丢失帧
4.3.2 差错控方法——循环冗余校验 码(CRC)
差错控制的两种方法: 每一帧数据上附加冗余位,使接收方能自动纠错。 每一帧数据上附加冗余位,接收方知道有差错,
图4.3 服务原语的表示方式
4.2 流量控制方法
网络输入增大,输出减小称为拥塞。输出 为0称为死锁。 流量控制的作用就是防止拥塞状态的出现、 避免死锁、合理分配网络资源。
为了实现流量控制,网络中间结点和 接收站要设置缓冲区。把数据分帧可以减少
重传的数据量
1.停止等待协议(Stop and Wait)
通过请求重发消除差错。
1.CRC中的多项式 CRC方法又称为多项式编码。 2.CRC的工作原理
图4.8 CRC的结构
3.举例验证
图4.9 CRC计算过程
4.4 高级数据链路控制(HDLC)协议 4.4.1 面向字符和面向位的链路控
制协议
图4.10 IBM公司的二进制同步通信控制(BSC)协议
4.4.2 HDLC协议的基本概念
4.4.3 HDLC协议的帧格式
图4.13 HDLC的帧格式
1.标志字段(F)
帧的开始和结束
2.地址字段(A)
地址字段用来表示命令帧或响应帧的 地址。命令帧的地址为对方地址;响应帧 的地址为自己的地址
3.信息字段(I)
信息字段用于传输用户数据。长度有
限制
4.帧校验字段(FCS)
帧校验字段(FCS)共16位,采用循 环冗余校验方法,用来检查所接收的信息 是否在传输过程中发生了差错。
(4)PPP的首尾标志与HDLC协议相同, 都是01111110。 (5)PPP的地址段实际是无用的,被设 置为11111111,这是因为从用户点到ISP 的路由器使用的是临时地址,不用物理 地址。
(6)PPP的控制段(C)设置为 00000011,注意这里说明最低两位是11, 与HDLC协议比较,说明发送和接收窗 口N(S)、N(R)都没有使用,恰恰相当于 HDLC协议的无编号帧,但是,“不能 保证”并不等于很不可靠,这是由于以 下原因。
前提为传输没有错误。发送数据的流量由接收方控 制。链路的帧计数长度越小,链路的利用率越高, 反之则低,不宜使用停等协议。
图4.4 停止等待协议
2.滑动窗口协议
采用滑动窗口协议则可以无需等待应 答而允许连续发送多个帧,大大提高了链 路利用率。 帧编号即为窗口,发送方的叫发送窗口, 表示可以连续发送多少帧。接收方的叫接 收窗口。
表4.1
无编号帧命令编码表
续表
(1)SARM/SABM帧 (2)DISC(拆除链路)帧 (3)UA(无序号确认响应)帧 (4)FRMR(帧拒绝响应)帧/CMDR (命令拒绝响应)帧
4.链路操作过程
(1)链路建立 (2)数据传输 (3)链路拆除
图4.14 无编号帧使用举例
4.5 因特网中的点对点协议(PPP)
① 现代的线缆特别是宽带接入线缆,技术 质量大大提高,出现错误的几率很小,若 采用HDLC协议反而增大开销,降低效率。 ② 即使在链路层使用了高级链路控制协议, 也不能保证数据在网络层不会因网络拥塞 而被丢弃,更不能排除因其他原因而发生 差错,最后的可靠性仍需传输层保证。
③ PPP帧本身具有帧校验序列,若发现错 误则丢弃重传,这就初步保证了IP数据报 的正确性。
(7)在信息段中采用硬件实现字符填充, 在信息段里若发现了与“01111110”相同 的比特序列时,发送方就使之变换为两 个字节的“01111101”(7DH)和 “01011101”(5DH)。