第三章数据链路层资料
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
帧,转到 2)
5
3.2 停止等待协议
❖ 由收方控制发方的数据流量是计算机网络中流量控制的一个基本方法
A
B
A
B
时
送主机B
间
送主机B
送主机B
送主机B
不需要数据链路层协议的数据传输
时
送主机B
间
送主机B
具有简单流量控制的数据链路层协议
6
3.2 停止等待协议
实用的停止等待协议(去掉之前的两个假设条件)
1、数据帧在链路上传输的几种情况
能在链路上传送。当所传数据中比特组合刚好与一个控制信 息一样时,要加以控制。
寻址:多点连接的情况下,必须保证每一帧都能送到正确的
目的站,收方也应当知道发方是哪一个站。
3
3.2 停止等待协议
主机A
AP1
主机B
AP2
链路层
链路
两台计算机通过一条链路进行通信的简化模型
不需要数据链路层协议的数据传输(完全理想的数据传输)
将数据帧送往缓冲区 (4)将发送缓冲区中的数据帧发送出去 (5)设置超时定时器
9
3.2 停止等待协议
(6)等待。 {等待以下3个事件中最先出现的一个} (7)若收到确认帧ACK,则:
从主机取一个新的数据帧; V(S)=1-V(S); {更新发送状态变量,变为下一个
序号} 转到(3) (8)若收到否认帧NAK,则转到(4) (9)若超时定时器时间到,则转到(4)。
丢失
tout
丢失
送 主 机
时间
送 主 应答帧丢失, 机 发方重发,出
现重复帧。为 每一帧加上发 送序号 送 主 机
(d)应答帧丢失
8
3.2 停止等待协议
2、停止等待协议的算法 1)、在发送结点:
(1)从主机收一个数据帧 (2)V(S)=0。 {发送状态变量初始化} (3)N(S)=V(S) {将发送状态变量的数值写入发送序号}
14
3.2 自动重复请求
3.2.2 回退N式ARQ
回退N式ARQ又称为连续重发请求,连续重发请求方案是 指发送方可以连续发送一系列信息帧,即不用等前一帧 被确认便可发送下一帧。这就需要在发送方设置一个 较大的缓冲存储空间(称作重发表),用以存放若干待确 认的信息帧。当发送方收到对某信息帧的确认帧后,便 可从重发表中将该信息帧删除。所以,连续式ARQ方案 的链路传输效率大大提高,但相应地需要更大的缓冲存 储空间。连续ARQ方案的实现过程如下:
➢ 假定1:数据既不会出差错也不会丢失 ➢ 假定2:接收缓冲区的容量为无限大,接收速率与发送速率绝
对相等
❖ 在这两 个假定条件下,数据链路层不需要任何协议
4
3.2 停止等待协议
具有简单流量控制的数据链路层协议
假定:链路是理想的传输信道,数据既不会出差错
也不会丢失,但收方的缓冲区的容量是有限的。
算法:由收方控制发方的数据流量
计算机网络课程
1
3.1 数据链路层的基本概念
数据链路层的基本概念 链路(物理链路):就是一条无源的点到点的物理线路段,
中间没有任何其它的交换结点。
数据链路(逻辑链路):把实现控制数据传输规程的软
件、硬件加到链路上,就形成了数据链路
数据链路层的主要功能:(在不太可靠的物理链路上实现可靠的
数据传输)
链路无差 错,用 ACK进行 流量控制
时间
(a)正常情况
出错
送 主 机
送 主 机 时间
链路不可靠, CRC校验出差 错,为此,收 方发出否认帧 NAK,要求发 方重发
送 主 机
(b)数据帧出错
7
3.2 停止等待协议
链路干扰严
重,数据帧 tout
丢失,双方 互等,死锁 出现。引入 超时定时器
时间
(cwenku.baidu.com数据帧丢失
2)、在接收结点
10
3.2 停止等待协议
(1)V(R)=0。 {接收状态变量初始化,其数值等于欲接收的 数据帧的发送序号}
(2)等待。 (3)当收到一个数据帧,就检查有无产生传输差错(如CRC)。
若检查结果正确无误,则执行后续算法; 否则转到(8)
(4)若N(S)=V(R),则执行后续算法;{收到发送序号正确的数据帧} 否则丢弃此数据帧,然后转到(7)。
11
3.2 停止等待协议
(5)将收到的数据帧中的数据送交主机。 (6)V(R)=1-V(R);{更新接收状态变量,准
备接收下一个数据帧 (7)发送确认帧ACK,并转到(2)。 (8)发送否认帧NAK,并转到(2)。 几点需要注意的地方: (1)收发两端各设置一个本地状态变量(仅占1个比
特)。
12
3.2 停止等待协议
链路管理:即数据链路的建立、维持和释放。 帧同步:收方应当能从收到的比特流中准确地区分出一帧的开始和
结束在什么地方。(数据按帧传送,可在出错时仅重传错帧。)
流量控制:发方发送数据的速率必须使收方来得及接收。当收方来
不及接收时,就必须及时控制发方发送数据的速率。
差错控制:计算机通信中,要求有极低的比特差错率,一旦有错时,
一般采用检错重发来解决,即收方可以检测出收到的帧中有差错(但
2
3.1 数据链路层的基本概念
并不知道哪几个比特错了),于是就让发主重复发送这一帧。 常采用CRC方法。
将数据和控制信息分开:传送时数据和控制信息在同一
帧中,故一定要有相应的措施使收方能将它们区分开来。
透明传输 :即不管所传数据是什么样的比特组合,都应当
(2)每发送一个数据帧,都必须将发送状态变量V(S) 的值(0或1)写到数据帧的发送序号N(S)上。但只 有收到一个确认帧ACK后,才更新发送状态变量V(S) 一次(将1变成0或0变成1)并发送新的数据帧。
(3)在接收端,每接收到一个重复帧,就要将发方在数 据帧上设置的发送序号N(S)与本地的接收状态变量 V(R)相比较。若二者相等就表明是新的数据帧,否 则为重复帧。
(4)在接收端,若收到一个重复帧,则丢弃之(不做任 何处理),且接收状态变量不变,但此时仍须向发送 端发送一个确认帧ACK。
13
3.2 停止等待协议
(5)发送端在发送完数据帧时,必须在其发送 缓冲区中保留此数据帧的副本,这样才能在出 差错时进行重发,只有在收到对方发来的确认 帧ACK时,方可清除此副本。 由于发送端对出错的数据帧进行重发是自动进 行的,所以这种差错控制体制常简称为自动请 求重发ARQ。
在发送结点:
在接收结点:
1) 从主机取一个帧,将该帧送到 发送缓存
1) 等待,若收到由发送结点发过来 的帧,将其放入接收缓存区
2) 将缓存中的帧发送出去,等待。
3) 收到由接收结点发过来的确认 信息后,从主机取下一个新的
2) 将接收将缓存中的帧上交主机, 向发送结点发一确认信息,
3) 转到 1)