《计算机网络与通信(第4章)ppt课件.ppt》由会员分享,可在线阅读,更多相关《计算机网络与通信(第4章)ppt课件.ppt(28页珍藏版)》请在三一办公上搜索。
1、第4章 数据链路控制,第4章 数据链路控制,4.1 概述4.2 数据链路控制的基本机制4.3 自动请求重传4.4 差错校验4.5 高级数据链路控制规程HDLC4.6 因特网数据链路控制协议PPP,4.1 概述,数据链路层负责在单个链路上的发送和接收结点之间传送帧,4.1 概述,数据链路层的通信对等实体之间的数据传输通道称为数据链路(Data Link),包括物理链路和必要的传输控制规程。理想的数据链路应该满足以下两个条件:不管发送方以多快的速率发送数据,接收方总能够来得及接收、处理并上交主机;传输的任何数据,既不会出现差错也不会丢失。第1个条件不满足就必须进行流量控制(Flow Control
2、)。第2个条件不满足就必须进行差错控制(Error Control)。,4.1 概述,实现流量控制的一个重要方法是滑动窗口(Sliding Window)机制。实现差错控制的一个基本方式是反馈重传纠错。自动请求重传ARQ (Automatic Repeat reQuest),ARQ综合了滑动窗口机制和确认-重传机制,进行流量控制和差错控制,实现可靠传输。媒体接入控制(Medium Access Control, MAC)。,4.2 数据链路控制的基本机制,4.2.1 滑动窗口,发送方和接收方分别设置发送窗口和接收窗口。发送窗口用来对发送方进行流量控制,落在窗口内的帧是可以连续发送的,其大小WT
3、指明在收到对方确认(ACK)之前发送方最多可以发送多少个帧。只有到达的数据帧的序号落在接收窗口之内时才可以被接收,否则将被丢弃。一般地,当接收方收到一个有序且无差错的帧后,接收窗口向前滑动,准备接收下一帧,并向发送方发送出一个ACK。当发送方收到接收方的ACK后,发送窗口才能向前滑动,滑动的长度取决于接收方确认的序号。,4.2.1 滑动窗口,发送方的滑动窗口,4.2.2 反馈重传,反馈重传机制可以采用以下措施:差错发现反馈确认信息正确认/肯定确认(Positive Acknowledgement)累计确认(Cumulative Acknowledgement)捎带确认(Piggybacking
4、)负确认(Negative AcKnowledgement, NAK)重传超时重传(Timeout Retransmission)负确认重传,4.3 自动请求重传,4.3.1 停等自动请求重传,发送方发出一个数据帧后停下来不再发送,等待接收方的ACK到达,ACK到达后才发送下一帧。发送窗口大小是WT=1,接收窗口大小也是1。处理 3 种传输差错:接收方收到了发来的数据帧,但检测出差错;发送方发出的数据帧丢失;接收方收到正确的数据帧,但发出的ACK丢失。对于差错1,即收方丢弃此帧,并可采取下面两种方式进行重传。负确认重传。超时重传。,4.3.1 停等自动请求重传,对于2和3这两种差错,可采取超时
5、重传。但对于差错3,超时重传会使接收方收到两个同样的数据帧。解决重复帧的方法是为数据帧和确认帧编上序号。停等ARQ采用超时重传的方式。停等ARQ机制的问题是可能产生严重的低效率。链路的利用率:,4.3.1 停等自动请求重传,停等ARQ传输过程示例,4.3.2 回退-N ARQ,WT1,发送方在每收到一个ACK之前不必等待,可以连续地发送窗口内的多个帧,也称为连续ARQ,提高了传输的吞吐量和传输效率。也使用超时重传机制。定时器超时仍未收到ACK,则要重传此帧,而且还必须重传此帧后面所有的已发帧,这正是这种 机制称为回退-N ARQ的原因。接收方的接收窗口WR=1,当接收方收到一个有序且无差错的帧
6、后,接受窗口向前移动,并向发送方发出一个ACK。发送窗口应满足:,4.3.2 回退-N ARQ,回退-N ARQ接收窗口,4.3.2 回退-N ARQ,回退-N ARQ传输过程示例,4.3.3 选择重传ARQ,在回退-N ARQ机制的基础上作了如下两点改进:接收窗口WR1,这样可以接收和保存正确到达的失序的帧;出现差错时只重传出错的帧,后续正确到达的帧不再重传,从而提高了信道的利用率。选择重传ARQ应该满足:,4.4 差错校验,4.4.1 奇偶校验,在发送数据后附加一个校验位,校验位的取值时的包括数据和校验位中的“1”的个数分别为奇数/偶数。奇偶校验检错能力有限,只能校验出奇数个错但不能校验出
7、偶数个错。优点是简单、易实现,在位数不长的情况下常常采用。,4.4.2 循环冗余校验,码多项式n 位长度的位串 可以用n -1次码多项式表示: 例如,位串1010001的码多项式为: 数据后面附加上冗余码:k 位的信息码后面附加上r 位的冗余码:由信息码生成冗余码用一个特定的r 次多项式G(x)去除 ,其余数为r-1次的码多项式R(x),对应的r 位的位串作为冗余码。G(x)称为生成多项式(Generator Polynomial)。除法中使用模2减(无借位减,相当于作异或(XOR)运算)。,4.4.2 循环冗余校验,生成冗余码示例,4.4.2 循环冗余校验,传输差错校验接收方将接收到的C(x
8、)除以生成多项式G(x),只要余数不为零,则表明校验出传输差错,若余数为零,则可以认为传输无误。常用的生成多项式CRC-8用于ATM信元头差错校验。CRC-16是HDLC规程中使用的。CRC-32是IEEE802.3以太网中采用的。,4.4.3 校验和,IP、ICMP、TCP和UDP中广泛使用,校验和运算的例子,4.5 高级数据链路控制规程,IBM公司同步数据链路控制(Synchronous Data Link Control, SDLC)。ISO把SDLC修改为高级数据链路控制(High Level Data Link Control, HDLC)。HDLC帧包括: 信息帧(Informat
9、ion Frame); 监督帧(Supervisory Frame); 无编号帧(Unnumbered Frame)。HDLC在计算机网络发展中曾有着重要的影响和广泛的应用。,4.6 因特网数据链路控制协议PPP,4.6.1 PPP及其帧格式,点对点协议(Point to Point Protocol, PPP): 为点对点链路上直接相连的两个结点之间,提供了一种数据传输的方式。PPP主要应用有以下两方面: 住宅用户计算机使用PPP协议通过Modem拨号进 行Internet接入。 路由器点对点连接而成Internet的主干。,4.6.1 PPP及其帧格式,PPP主要包括三个部分:将多种网络层
10、分组封装成帧的方法。建立、配置和测试数据链路连接的链路控制协议(Link Control Protocol, LCP)。网络控制协议(Network Control Protocol, NCP)。透明性:PPP既支持零比特填充,也支持字节填充 (Byte Stuffing)。,PPP帧格式,4.6.2 PPP运行状态图,PPP提供身份认证机制,有两种方式: 口令认证协议 (Password Authentication Protocol, PAP); 质询-握手认证协议(Challenge Handshake Authentication Protocol, CHAP),PPP链路的运行状态图,