计算机网络第三章 数据链路层PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
=2tp
19
3.2.3 实用的停止等待协议 3. 重复帧的解决方法
给数据帧进行编号。 停止等待协议中,数据帧的编
号需要几位?
20
3.2.4 循环冗余检验
1. CRC的原理
已知一个数据块包含M位(A、C、I),发
送器产生一个包含n位的序列,这个序列称为
帧校验序列(FCS),把FCS加到数据块的后面
(1)每发送一个数据帧,都必须将发送 状态变量V(S)的值(即0或1)写到数据帧的 发送序号N(S)上。但只有收到一个确认 帧ACK后,才更新发送状态变量V(S)一次 (将1变成0或0变成1)并发送新的数据帧。
2. 如何解决“死锁现象”?
16
17wenku.baidu.com
3.2.3 实用的停止等待协议
解决死锁方法:设定超时计时器 (timeout timer)。
工作方法:若到了超时计时器所设置 的重传时间tout,而仍收不到结点B的任 何确认帧,则结点A就重传前面所发送的 这一数据帧。
18
3.2.3 实用的停止等待协议 Tout多长时间合适呢? Tout=tp+tpr+ta+tp+tpr (ta<<tpr)
(2)不需要流量控制,接收方能够以任意速率 接收数据(缓冲区足够大或者接收速率大于发送
速率)
9
10
3.2.2 具有最简单流量控制 的数据链路层协议
去掉第二个假设,保留第一个。 由接收方控制发送方的数据流,乃是计 算机网络中流量控制的一个基本方法。
11
说明:发送结点与接收结点工作过程 12
3.2.3 实用的停止等待协议
{重传数据帧}
27
在接收结点:
(1)V(R)←0。 {接收状态变量初始化,其 数值等于欲接收的数据帧的发送序号}
(2)等待。
(3)当收到一个数据帧,就检查有无产生传 输差错(如用CRC)。
若检查结果正确无误,则执行后续算法;
否则转到(8)。
28
(4)若N(S) = V(R),则执行后续算法; {收到发送序号正确的数据帧}
6
3.2 停止等待协议
什么是停止等待协议? 在数据通信过程中,发送端每发送一
帧数据都必须等待接收端给出该帧的肯定 应答后,才发送下一帧数据。
7
3.2 停止等待协议
3.2.1 完全理想化的数据传输
8
3.2.1 完全理想化的数据传输
理想化的数据传输的两个假定:
(1)链路理想化,保证不会出错,也不会丢失 数据(不需要差错控制)。
的超时重传时间tout }
{选择适当
26
(6)等待。 {等待以下3个事件中最先出现的 一个}
(7)若收到确认帧ACK,则: 从主机取一个新的数据帧; V(S)←[1 V(S)]; {更新发送状态变量,变为
下一个序号} 转到(3)。 (8)若收到否认帧NAK,则转到(4)。 {重传数
据帧} (9)若超时计时器时间到,则转到(4)。
组成一个包含有M+n位的发送帧T,使得T能
用一个已知的整数P(有n+1位)整除。
接收端把接收到的帧除以P,若没有余数
则认为没有出错。
21
3.2.4 循环冗余检验
2。求FCS和T (1)用2n × M除以已知除数P,得到余
数R,即是FCS。 (2)2n×M减去余数R,得到发送帧T。
说明:CRC的所有运算都是模2运算
否则丢弃此数据帧,然后转到(7)。 (5)将收到的数据帧中的数据部分送交主机。 (6)V(R)←[1 V(R)]。 {更新接收状态变
量,准备接收下一个数据帧} (7)发送确认帧 ACK,并转到(2)。 (8)发送否认帧 NAK,并转到(2)。
29
状态变量的概念很重要,一定要弄清 以下几点:
4+X2+X+1
25
3.2.5 实用停止等待协议的算法
在发送结点:
(1)从主机取一个数据帧。
(2)V(S)←0。 {发送状态变量初始化}
(3)N(S)←V(S); { 将 发 送 状 态 变 量的数值写入发送序号}
将数据帧送交发送缓存。
(4)将发送缓存中的数据帧发送出去。
(5)设置超时计时器。
4
3.1 数据链路层的基本概念
2. 链路层的主要作用
形成逻辑上无差错的数据链路。
(通过一些数据链路层协议,在不太可靠的物理链路上实 现可靠的传输)
其传输数据的单位是:
。
5
3.1 数据链路层的基本概念
3. 数据链路层的主要功能归纳如下: (1)链路管理 :链路的建立、维持和释放 (2)帧定界 (也帧同步) (3)流量控制 (flow control) (4)差错控制 (前向纠错、差错检测) (5)将数据和控制信息区分开 (6)透明传输 (7)寻址
22
例如:欲发送的数据块为M=1010001101,除数 P=110101,采用CRC校验求发送帧T?
23
添加的位
24
CRC能否保证100%无差错? P(X)有以下几种国际标准: CRC-16=X16+X15+X2+1 CRC-CCITT=X16+X12+X5+1 CRC-32= X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
第三章 数据链路层
3.1 数据链路层的基本概念 3.2 停止等待协议 3.3 连续ARQ协议 3.4 选择重传ARQ协议 3.5 面向比特的链路控制规程HDLC 3.6 因特网的点对点协议PPP
3
3.1 数据链路层的基本概念
1. 链路与数据链路
链路(link)就是一条无源的点到点的物理线路段,中间没 有任何其他的交换结点。(物理链路)
数据链路(data link):这是因为当需要在一条线路上传送 数据时,除了必须有一条物理线路外,还必须有一些必要通信 协议来控制这些数据的传输(逻辑链路)
两个假设都去掉(如何验证收到的数据帧出错?) 1.停止等待协议工作过程
A站的数据链路层从高层获得数据并装配成帧: 1)发送一帧信息给B后,A站处于等待状态 2)直到A收到B确认后,A再继续发下一帧。
13
14
15
3.2.3 实用的停止等待协议
有时链路上的干扰很严重,或由于其 他一些原因,结点B收不到结点A发来的 数据帧。这种情况称为帧丢失。于是就 出现了死锁现象。
19
3.2.3 实用的停止等待协议 3. 重复帧的解决方法
给数据帧进行编号。 停止等待协议中,数据帧的编
号需要几位?
20
3.2.4 循环冗余检验
1. CRC的原理
已知一个数据块包含M位(A、C、I),发
送器产生一个包含n位的序列,这个序列称为
帧校验序列(FCS),把FCS加到数据块的后面
(1)每发送一个数据帧,都必须将发送 状态变量V(S)的值(即0或1)写到数据帧的 发送序号N(S)上。但只有收到一个确认 帧ACK后,才更新发送状态变量V(S)一次 (将1变成0或0变成1)并发送新的数据帧。
2. 如何解决“死锁现象”?
16
17wenku.baidu.com
3.2.3 实用的停止等待协议
解决死锁方法:设定超时计时器 (timeout timer)。
工作方法:若到了超时计时器所设置 的重传时间tout,而仍收不到结点B的任 何确认帧,则结点A就重传前面所发送的 这一数据帧。
18
3.2.3 实用的停止等待协议 Tout多长时间合适呢? Tout=tp+tpr+ta+tp+tpr (ta<<tpr)
(2)不需要流量控制,接收方能够以任意速率 接收数据(缓冲区足够大或者接收速率大于发送
速率)
9
10
3.2.2 具有最简单流量控制 的数据链路层协议
去掉第二个假设,保留第一个。 由接收方控制发送方的数据流,乃是计 算机网络中流量控制的一个基本方法。
11
说明:发送结点与接收结点工作过程 12
3.2.3 实用的停止等待协议
{重传数据帧}
27
在接收结点:
(1)V(R)←0。 {接收状态变量初始化,其 数值等于欲接收的数据帧的发送序号}
(2)等待。
(3)当收到一个数据帧,就检查有无产生传 输差错(如用CRC)。
若检查结果正确无误,则执行后续算法;
否则转到(8)。
28
(4)若N(S) = V(R),则执行后续算法; {收到发送序号正确的数据帧}
6
3.2 停止等待协议
什么是停止等待协议? 在数据通信过程中,发送端每发送一
帧数据都必须等待接收端给出该帧的肯定 应答后,才发送下一帧数据。
7
3.2 停止等待协议
3.2.1 完全理想化的数据传输
8
3.2.1 完全理想化的数据传输
理想化的数据传输的两个假定:
(1)链路理想化,保证不会出错,也不会丢失 数据(不需要差错控制)。
的超时重传时间tout }
{选择适当
26
(6)等待。 {等待以下3个事件中最先出现的 一个}
(7)若收到确认帧ACK,则: 从主机取一个新的数据帧; V(S)←[1 V(S)]; {更新发送状态变量,变为
下一个序号} 转到(3)。 (8)若收到否认帧NAK,则转到(4)。 {重传数
据帧} (9)若超时计时器时间到,则转到(4)。
组成一个包含有M+n位的发送帧T,使得T能
用一个已知的整数P(有n+1位)整除。
接收端把接收到的帧除以P,若没有余数
则认为没有出错。
21
3.2.4 循环冗余检验
2。求FCS和T (1)用2n × M除以已知除数P,得到余
数R,即是FCS。 (2)2n×M减去余数R,得到发送帧T。
说明:CRC的所有运算都是模2运算
否则丢弃此数据帧,然后转到(7)。 (5)将收到的数据帧中的数据部分送交主机。 (6)V(R)←[1 V(R)]。 {更新接收状态变
量,准备接收下一个数据帧} (7)发送确认帧 ACK,并转到(2)。 (8)发送否认帧 NAK,并转到(2)。
29
状态变量的概念很重要,一定要弄清 以下几点:
4+X2+X+1
25
3.2.5 实用停止等待协议的算法
在发送结点:
(1)从主机取一个数据帧。
(2)V(S)←0。 {发送状态变量初始化}
(3)N(S)←V(S); { 将 发 送 状 态 变 量的数值写入发送序号}
将数据帧送交发送缓存。
(4)将发送缓存中的数据帧发送出去。
(5)设置超时计时器。
4
3.1 数据链路层的基本概念
2. 链路层的主要作用
形成逻辑上无差错的数据链路。
(通过一些数据链路层协议,在不太可靠的物理链路上实 现可靠的传输)
其传输数据的单位是:
。
5
3.1 数据链路层的基本概念
3. 数据链路层的主要功能归纳如下: (1)链路管理 :链路的建立、维持和释放 (2)帧定界 (也帧同步) (3)流量控制 (flow control) (4)差错控制 (前向纠错、差错检测) (5)将数据和控制信息区分开 (6)透明传输 (7)寻址
22
例如:欲发送的数据块为M=1010001101,除数 P=110101,采用CRC校验求发送帧T?
23
添加的位
24
CRC能否保证100%无差错? P(X)有以下几种国际标准: CRC-16=X16+X15+X2+1 CRC-CCITT=X16+X12+X5+1 CRC-32= X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
第三章 数据链路层
3.1 数据链路层的基本概念 3.2 停止等待协议 3.3 连续ARQ协议 3.4 选择重传ARQ协议 3.5 面向比特的链路控制规程HDLC 3.6 因特网的点对点协议PPP
3
3.1 数据链路层的基本概念
1. 链路与数据链路
链路(link)就是一条无源的点到点的物理线路段,中间没 有任何其他的交换结点。(物理链路)
数据链路(data link):这是因为当需要在一条线路上传送 数据时,除了必须有一条物理线路外,还必须有一些必要通信 协议来控制这些数据的传输(逻辑链路)
两个假设都去掉(如何验证收到的数据帧出错?) 1.停止等待协议工作过程
A站的数据链路层从高层获得数据并装配成帧: 1)发送一帧信息给B后,A站处于等待状态 2)直到A收到B确认后,A再继续发下一帧。
13
14
15
3.2.3 实用的停止等待协议
有时链路上的干扰很严重,或由于其 他一些原因,结点B收不到结点A发来的 数据帧。这种情况称为帧丢失。于是就 出现了死锁现象。