网络和现代通信技术基础 —— 数据链路层数字通信与计算机网络技术基础华北航天工业学院庄连英 制作网络和现代通信技术基础 —— 数据链路层第 4章 数据链路层本章学习目标
链路,数据链路的概念,数据链路层的功能
停止等待协议的工作原理与过程
数据链路层是如何进行差错控制的
数据链路层流量控制的意义与方法
面向比特数据链路层协议 HDLC的帧结构与帧分类
PPP链路协议的工作过程网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述链路与数据链路调制解调器调制解调器链路控制链路控制节点交换机 节点交换机链路数据链路数据传输网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述帧与报文通信媒体物理层数据链路层网络层传输层会话层表示层应用层物理层数据链路层网络层传输层会话层表示层应用层报文或分组报文帧用户 用户网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述
4.1.2 数据链路层的目的,服务及功能
1,目的数据链路层在网络实体间提供建立,维持和释放数据链路连接以及提供传输数据链路服务数据单元的功能和过程的手段;在物理连接上建立数据链路连接 。 它检测和校正物理层出现的错误,为网络层提供可靠的数据链路 。
网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述
4.1.2 数据链路层的目的,服务及功能
2,为网络层提供的服务
( 1) 数据链路连接 。
( 2) 接收数据链路服务数据单元和网络层交换数据;
( 3) 提供数据链路端点标识符;
( 4) 当把数据链路服务数据单元划分为多个数据链路协议数据单元传送时,要保证按发送方发送的顺序向接收方的网络层递交,即提供保序的服务;
( 5) 差错位检测,纠正和报告;
( 6) 流量控制;
( 7) 服务质量参数的商定 。
网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述
4.1.2 数据链路层的目的,服务及功能
3,数据链路层的功能
1、链路管理,当网络中的两个结点进行通信时,发送方必须确知接收方是否已处在准备接收状态 。
2、帧同步,数据链路层,数据传送的单位是帧。
3、流量控制,协调 发送方与接收方的工作。
4、差错控制,接收方可通过校验帧的差错编码,判断接收到的帧是否有差错。
5、透明传输,所谓透明传输就是不管所传数据是什么样的比特组合,都应能够在链路上传送。
6、寻址,在多点连接的情况下,保证每一帧都能送到正确的目的站 。
网络和现代通信技术基础 —— 数据链路层
4.2 停止等待协议网络两个节点数据链路层进行通信的模型主机 A 主机 B
链路层 链路层网络和现代通信技术基础 —— 数据链路层
4.2 停止等待协议停止等待协议的工作原理:
重传丢失
DATA0
ACK
DATA1
ACK
A B
DATA0
NAK
DATA0
A B
DATA0
DATA0
A B
超时
ACK ACK
DATA0
DATA0
A B
ACK
ACK
出错丢弃
(1)正常情况 (2)帧校验错误 (3)数据帧丢失 (4)确认帧丢失时间丢失重传超时重传网络和现代通信技术基础 —— 数据链路层
4.3 连续 ARQ协议工作原理:
连续 ARQ协议,即采用连续自动请求重传方案。发送方可以连续发送一系列信息帧,即不用等待前一帧被确认便可发送下一帧。这就需要在发送方设置一个较大的缓冲存储空间,用以存放若干待确认的信息帧。当发送方收到对某信息帧的确认帧后便可从帧缓存中将该信息帧删除,并继续发送数据帧。所以,连续
ARQ协议使得信道利用率大大提高。
网络和现代通信技术基础 —— 数据链路层
4.3 连续 ARQ协议工作原理:
0 1 2 3 4 5 6 7 2 3 4 5 6 7
0 1 × D D D D D
出错丢弃
ACK1
ACK0 ACK 2
ACK 3
计时器超时 重 传发送方接收方
2 3 4 5 6 7
网络和现代通信技术基础 —— 数据链路层
4.4 流量控制
XON/XOFF主要应用于面向字符通信中,
使用一对控制字符来实现流量控制。其中
XON采用 ASCII字符集中的控制字符 DC1,
XOFF采用 ASCII字符集中的控制字符 DC3。
在一次数据传输过程中,XOFF,XON的周期可重复多次。但这些操作对用户来说是透明的。许多异步数据通信软件包均支持
XON/XOFF协议。
XON/XOFF方案网络和现代通信技术基础 —— 数据链路层
4.4 流量控制窗口机制连续 ARQ协议发送方是不能无限制地发送数据帧的,主要因为:
( 1) 由于发送的数据帧都未被确认,需要在发送方缓存中保留副本,以备重传 。 计算机的硬件资源是有限的,
缓存容量不能无限制增加 。
( 2) 发送数据帧过多,一旦有一帧出现错误,可能有很多帧需要重传,造成很大的浪费,增加了很多不必要的开销 。
( 3) 为了对连续发送的大量数据帧进行编号,每帧的发送序号也要占用较多的比特,又增加了一定的开销 。
因此需要对此协议中连续发送的未被确认的帧数做一定的限制,这就是滑动窗口协议 。
网络和现代通信技术基础 —— 数据链路层
4.4 流量控制窗口机制发送窗口 WT=5,接收窗口 WR=1
图 ( a),刚开始发送时的情况,在发送窗口内的序号的数据帧就是可以发送的数据帧,若发送方发送完 5个帧
( 0~ 4号帧 ) 后,仍未收到任何确认信息,则停止发送,进入等待状态 。
图 ( b),接收方已正确接收 0号帧并发送确认帧,同时接收窗口向前滑动,
准备接收 1号帧;发送方收到确认信息,
发送窗口向前滑动 1个序号,5号帧落入发送窗口,可以发送 5号帧 。
图 ( c),接收方已正确接收 0~ 3号帧并发出确认帧,接收窗口继续向前滑动,准备接收 4号帧;发送方收到确认信息,发送窗口向前滑动 3个序号,6、
7,0号帧落入发送窗口,可以发送 。
网络和现代通信技术基础 —— 数据链路层面向比特的链路控制规程是采用带填充位的首尾标志将一组比特封装成帧 。 通过定义不同类型的帧格式实现链路层的功能 。 它成为链路层的主要协议,是世界上广泛采用的协议 。 其中最具代表性的为 HDLC( High-
level Data Link Control) 协议,称为高级数据链路控制规程 。
4.5 面向比特的链路控制规程 HDLC
网络和现代通信技术基础 —— 数据链路层
4.5 面向比特的链路控制规程 HDLC
HDLC的帧结构标志
F
地址
A
控制
C
信息
In fo
标志
F
帧校验序列
FC S
校验区间透明传输区间比特 8 8 8 可变 16 8
网络和现代通信技术基础 —— 数据链路层
4.5 面向比特的链路控制规程 HDLC
零比特填充法工作原理
0100111111000101
0
会误认为是 F字段
0100111110100010
10
填入 0比特
0100111111000101
0
删除 0比特数据中某一段比特组合恰好出现和 F字段一样的情况发送端在 5个连续 1之后填入 0比特在接收端将 5个连续 1
后的 0比特删除,恢复原样网络和现代通信技术基础 —— 数据链路层
HDLC定义了三种类型的帧,即信息帧、监控帧与无编号帧。
标 志
F
地 址
A
控 制
C
信 息
I n f o
标 志
F
帧 校 验 序列 F C S
比 特 8 8 8 可 变 1 6 8
1 2 3 4 5 6 7 8
0 N ( S ) P / F N ( R )
1 0 S P / F N ( R )
1 2 M P / F M
比 特 序 号信 息 帧 I
监 督 帧 S
无 编 号 帧 U
4.5 面向比特的链路控制规程 HDLC
网络和现代通信技术基础 —— 数据链路层
4.6 Internet的链路层协议用户接入 Internet的一般方法有两种。一种是用户通过电话线,拨号接入 Internet,另一种是使用专线接入。不管使用哪一种方法,在传送数据时都需要有数据链路层协议。全世界范围内使用最多的协议为非常简单的点对点协议
PPP( Point-to-Point Protocol)。早期
Internet使用非常简单的面向字符的协议 SLIP
( Serial Line Internet Protocol),但
SLIP缺点很多。
网络和现代通信技术基础 —— 数据链路层
PPP的帧格式与 HDLC帧格式很相似:
标 志
7 E
地 址
F F
控 制
0 3
协 议标 志
7 E
信 息
I P 数 据 报字 节 1 1 1 2
小 于 1 5 0 0 字 节帧 校验 F C S
2 1
标志字段为 7E( 01111110),地址字段为 FF
( 11111111),控制字段为 03( 00000011)。这三各字段是固定不变的,所有 PPP帧都应以 07EFF03开始。协议字段占两个字节,当协议字段为 0021时,
PPP帧的信息就是 IP数据报。若为 C021,则信息字段是 PPP链路控制数据。而 8021表示这是网络控制数据。
帧校验序列 FCS与 HDLC的相同。由于 PPP不是面向比特的,因此帧的长度应为整数个字节。
网络和现代通信技术基础 —— 数据链路层
PPP的工作过程可通过 PPP状态图来描述:
建 立 鉴 别通 信终 止网 络静 止协 商 选 项鉴 别 成 功
N C P 配 置通 信 结 束失 败载 波 停 止失 败检 测 到 载 波
链路,数据链路的概念,数据链路层的功能
停止等待协议的工作原理与过程
数据链路层是如何进行差错控制的
数据链路层流量控制的意义与方法
面向比特数据链路层协议 HDLC的帧结构与帧分类
PPP链路协议的工作过程网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述链路与数据链路调制解调器调制解调器链路控制链路控制节点交换机 节点交换机链路数据链路数据传输网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述帧与报文通信媒体物理层数据链路层网络层传输层会话层表示层应用层物理层数据链路层网络层传输层会话层表示层应用层报文或分组报文帧用户 用户网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述
4.1.2 数据链路层的目的,服务及功能
1,目的数据链路层在网络实体间提供建立,维持和释放数据链路连接以及提供传输数据链路服务数据单元的功能和过程的手段;在物理连接上建立数据链路连接 。 它检测和校正物理层出现的错误,为网络层提供可靠的数据链路 。
网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述
4.1.2 数据链路层的目的,服务及功能
2,为网络层提供的服务
( 1) 数据链路连接 。
( 2) 接收数据链路服务数据单元和网络层交换数据;
( 3) 提供数据链路端点标识符;
( 4) 当把数据链路服务数据单元划分为多个数据链路协议数据单元传送时,要保证按发送方发送的顺序向接收方的网络层递交,即提供保序的服务;
( 5) 差错位检测,纠正和报告;
( 6) 流量控制;
( 7) 服务质量参数的商定 。
网络和现代通信技术基础 —— 数据链路层
4.1 数据链路层概述
4.1.2 数据链路层的目的,服务及功能
3,数据链路层的功能
1、链路管理,当网络中的两个结点进行通信时,发送方必须确知接收方是否已处在准备接收状态 。
2、帧同步,数据链路层,数据传送的单位是帧。
3、流量控制,协调 发送方与接收方的工作。
4、差错控制,接收方可通过校验帧的差错编码,判断接收到的帧是否有差错。
5、透明传输,所谓透明传输就是不管所传数据是什么样的比特组合,都应能够在链路上传送。
6、寻址,在多点连接的情况下,保证每一帧都能送到正确的目的站 。
网络和现代通信技术基础 —— 数据链路层
4.2 停止等待协议网络两个节点数据链路层进行通信的模型主机 A 主机 B
链路层 链路层网络和现代通信技术基础 —— 数据链路层
4.2 停止等待协议停止等待协议的工作原理:
重传丢失
DATA0
ACK
DATA1
ACK
A B
DATA0
NAK
DATA0
A B
DATA0
DATA0
A B
超时
ACK ACK
DATA0
DATA0
A B
ACK
ACK
出错丢弃
(1)正常情况 (2)帧校验错误 (3)数据帧丢失 (4)确认帧丢失时间丢失重传超时重传网络和现代通信技术基础 —— 数据链路层
4.3 连续 ARQ协议工作原理:
连续 ARQ协议,即采用连续自动请求重传方案。发送方可以连续发送一系列信息帧,即不用等待前一帧被确认便可发送下一帧。这就需要在发送方设置一个较大的缓冲存储空间,用以存放若干待确认的信息帧。当发送方收到对某信息帧的确认帧后便可从帧缓存中将该信息帧删除,并继续发送数据帧。所以,连续
ARQ协议使得信道利用率大大提高。
网络和现代通信技术基础 —— 数据链路层
4.3 连续 ARQ协议工作原理:
0 1 2 3 4 5 6 7 2 3 4 5 6 7
0 1 × D D D D D
出错丢弃
ACK1
ACK0 ACK 2
ACK 3
计时器超时 重 传发送方接收方
2 3 4 5 6 7
网络和现代通信技术基础 —— 数据链路层
4.4 流量控制
XON/XOFF主要应用于面向字符通信中,
使用一对控制字符来实现流量控制。其中
XON采用 ASCII字符集中的控制字符 DC1,
XOFF采用 ASCII字符集中的控制字符 DC3。
在一次数据传输过程中,XOFF,XON的周期可重复多次。但这些操作对用户来说是透明的。许多异步数据通信软件包均支持
XON/XOFF协议。
XON/XOFF方案网络和现代通信技术基础 —— 数据链路层
4.4 流量控制窗口机制连续 ARQ协议发送方是不能无限制地发送数据帧的,主要因为:
( 1) 由于发送的数据帧都未被确认,需要在发送方缓存中保留副本,以备重传 。 计算机的硬件资源是有限的,
缓存容量不能无限制增加 。
( 2) 发送数据帧过多,一旦有一帧出现错误,可能有很多帧需要重传,造成很大的浪费,增加了很多不必要的开销 。
( 3) 为了对连续发送的大量数据帧进行编号,每帧的发送序号也要占用较多的比特,又增加了一定的开销 。
因此需要对此协议中连续发送的未被确认的帧数做一定的限制,这就是滑动窗口协议 。
网络和现代通信技术基础 —— 数据链路层
4.4 流量控制窗口机制发送窗口 WT=5,接收窗口 WR=1
图 ( a),刚开始发送时的情况,在发送窗口内的序号的数据帧就是可以发送的数据帧,若发送方发送完 5个帧
( 0~ 4号帧 ) 后,仍未收到任何确认信息,则停止发送,进入等待状态 。
图 ( b),接收方已正确接收 0号帧并发送确认帧,同时接收窗口向前滑动,
准备接收 1号帧;发送方收到确认信息,
发送窗口向前滑动 1个序号,5号帧落入发送窗口,可以发送 5号帧 。
图 ( c),接收方已正确接收 0~ 3号帧并发出确认帧,接收窗口继续向前滑动,准备接收 4号帧;发送方收到确认信息,发送窗口向前滑动 3个序号,6、
7,0号帧落入发送窗口,可以发送 。
网络和现代通信技术基础 —— 数据链路层面向比特的链路控制规程是采用带填充位的首尾标志将一组比特封装成帧 。 通过定义不同类型的帧格式实现链路层的功能 。 它成为链路层的主要协议,是世界上广泛采用的协议 。 其中最具代表性的为 HDLC( High-
level Data Link Control) 协议,称为高级数据链路控制规程 。
4.5 面向比特的链路控制规程 HDLC
网络和现代通信技术基础 —— 数据链路层
4.5 面向比特的链路控制规程 HDLC
HDLC的帧结构标志
F
地址
A
控制
C
信息
In fo
标志
F
帧校验序列
FC S
校验区间透明传输区间比特 8 8 8 可变 16 8
网络和现代通信技术基础 —— 数据链路层
4.5 面向比特的链路控制规程 HDLC
零比特填充法工作原理
0100111111000101
0
会误认为是 F字段
0100111110100010
10
填入 0比特
0100111111000101
0
删除 0比特数据中某一段比特组合恰好出现和 F字段一样的情况发送端在 5个连续 1之后填入 0比特在接收端将 5个连续 1
后的 0比特删除,恢复原样网络和现代通信技术基础 —— 数据链路层
HDLC定义了三种类型的帧,即信息帧、监控帧与无编号帧。
标 志
F
地 址
A
控 制
C
信 息
I n f o
标 志
F
帧 校 验 序列 F C S
比 特 8 8 8 可 变 1 6 8
1 2 3 4 5 6 7 8
0 N ( S ) P / F N ( R )
1 0 S P / F N ( R )
1 2 M P / F M
比 特 序 号信 息 帧 I
监 督 帧 S
无 编 号 帧 U
4.5 面向比特的链路控制规程 HDLC
网络和现代通信技术基础 —— 数据链路层
4.6 Internet的链路层协议用户接入 Internet的一般方法有两种。一种是用户通过电话线,拨号接入 Internet,另一种是使用专线接入。不管使用哪一种方法,在传送数据时都需要有数据链路层协议。全世界范围内使用最多的协议为非常简单的点对点协议
PPP( Point-to-Point Protocol)。早期
Internet使用非常简单的面向字符的协议 SLIP
( Serial Line Internet Protocol),但
SLIP缺点很多。
网络和现代通信技术基础 —— 数据链路层
PPP的帧格式与 HDLC帧格式很相似:
标 志
7 E
地 址
F F
控 制
0 3
协 议标 志
7 E
信 息
I P 数 据 报字 节 1 1 1 2
小 于 1 5 0 0 字 节帧 校验 F C S
2 1
标志字段为 7E( 01111110),地址字段为 FF
( 11111111),控制字段为 03( 00000011)。这三各字段是固定不变的,所有 PPP帧都应以 07EFF03开始。协议字段占两个字节,当协议字段为 0021时,
PPP帧的信息就是 IP数据报。若为 C021,则信息字段是 PPP链路控制数据。而 8021表示这是网络控制数据。
帧校验序列 FCS与 HDLC的相同。由于 PPP不是面向比特的,因此帧的长度应为整数个字节。
网络和现代通信技术基础 —— 数据链路层
PPP的工作过程可通过 PPP状态图来描述:
建 立 鉴 别通 信终 止网 络静 止协 商 选 项鉴 别 成 功
N C P 配 置通 信 结 束失 败载 波 停 止失 败检 测 到 载 波