




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内容简介本课程共分为9讲,主要内容包括:第1讲计算机网络概论第2讲数据通信和物理层第3讲数据链路层第4讲局域网技术第5讲广域网技术第6讲网络层第7讲传输层第8讲应用层第9讲网络安全1/118
北京师范大学BeijingNormalUniversity
2/118
北京师范大学BeijingNormalUniversity第3讲数据链路层计算机网络基础教程第3讲数据链路层本讲基本要求:了解:数据传输过程中差错产生的原因与性质掌握:误码率的定义与差错控制方法掌握:数据链路层的基本概念了解:面向字符型数据链路层协议实例—BSC掌握:面向比特型数据链路层协议实例—HDLC掌握:Internet中的数据链路层协议3/118
北京师范大学BeijingNormalUniversity数据链路概念的理解主机A数据缓冲区主机B高层缓冲区高层数据帧帧发送方接收方数据链路层:物理线路+通信协议4/118
北京师范大学BeijingNormalUniversity
?发送方:?接收方:?传输过程:!解决这些问题,是链路层的主要任务。!针对这些问题所制定的通信规程就是数据链路层的通信协议。以多快的速度发送数据帧,即每帧之间相隔多长时间?如何确认对方是否收到数据?在数据链路层上传输数据帧会出错吗?会丢失数据帧吗?5/118
北京师范大学BeijingNormalUniversity是否接收到正确的数据帧?如何告诉发送方?能及时处理接收到的数据帧吗?为什么要设计数据链路层在原始物理传输线路上传输数据信号是有差错的;设计数据链路层的主要目的:将有差错的物理线路改进成无差错的数据链路;方法—差错检测差错控制流量控制作用:改善数据传输质量,向网络层提供高质量的服务。6/118
北京师范大学BeijingNormalUniversity差错控制技术根据数据通信系统的模型,当数据从信源发出,经过通信信道传输,由于信道总存在着一定的噪声,数据到达信宿端后,接收的信号实际上是数据信号和噪声信号的叠加。接收端在取样时钟作用下接收数据,并根据阈值电平判断信号电平。如果噪声对信号的影响非常大时,就会造成数据的传输错误。我们把这种通过通信信道后接收的数据与发送的数据不一致的现象称为传输差错。而分析差错产生的原因与差错类型,并加以检查和纠正的方法称为差错控制方法。7/118
北京师范大学BeijingNormalUniversity数据通信中的实际情况8/118
北京师范大学BeijingNormalUniversity通信信道中的噪声通信信道中的噪声分为热噪声和冲击噪声。热噪声是由传输媒体的电子热运动产生的,其特点是时刻存在,幅度小,干扰强度与频率无关,但频谱很宽,属于随机噪声。由热噪声引起的差错属于一种随机差错。冲击噪声是由外界电磁干扰引起的,与热噪声相比,冲击噪声的幅度较大,是引起差错的主要原因。冲击噪声持续时间与数据传输中每个比特的发送时间相比,可能较长,因而冲击噪声引起的相邻多个数据位出错呈突发性。冲击噪声引起的传输差错称为突发差错。9/118
北京师范大学BeijingNormalUniversity差错产生的原因在通信过程中出现的传输差错,是由随机差错和突发差错共同构成的,而造成差错可能的原因包括:在数据通信中,信号在物理信道上的线路本身的电气特性随机产生的信号幅度、频率、相位的畸形和衰减;电气信号在线路上产生反射噪声的回波效应;相邻线路之间的串线干扰;大气中的闪电、电源开关的跳火、自然界磁场的变化以及电源的波动等外界因素。10/118
北京师范大学BeijingNormalUniversity误码率的定义误码率是指二进制码元在数据传输系统中被传错的概率,在数值上近似等于:
Pe=Ne/N式中:N为传输的二进制码元总数,Ne为被传错的码元数在理解误码率定义时,应注意以下几个问题:(1)误码率应该是衡量数据传输系统正常工作状态下传输可靠性的参数。(2)按实际传输要求提出误码率要求。(3)折算成二进制码元。11/118
北京师范大学BeijingNormalUniversity对于一个实际的数据传输系统,不能笼统地说误码率越低越好,要根据实际传输要求提出误码率要求;差错的出现具有随机性,在实际测量一个数据传输系统时,只有被测量的传输二进制比特数越大,才会越接近于真正的误码率值。12/118
北京师范大学BeijingNormalUniversity3.1.4检错码与纠错码纠错码:每个传输的分组带上足够的冗余信息;接收端能发现并自动纠正传输差错。检错码:
分组仅包含足以使接收端发现差错的冗余信息;接收端能发现出错,但不能确定哪一比特是错的,并且自己不能纠正传输差错。13/118
北京师范大学BeijingNormalUniversity差错检测编码常用差错检测编码有奇偶校验码水平奇(偶)校验码垂直奇(偶)校验码水平垂直奇(偶)校验码(方阵码)循环冗余码CRC目前应用最广的检错码编码方法之一14/118
北京师范大学BeijingNormalUniversity检错码检错码的构造:检错码=信息字段+校验字段
信息字段和校验字段之间的对应关系:校验字段越长,编码的检错能力越强,编码/解码越复杂;附加的冗余信息在整个编码中所占的比例越大,传输的有效成分越低,传输的效率下降。检错码一旦形成,整个检错码将作为一个整体被发往线路,通常的发送顺序是信息字段在前,校验字段在后。
15/118
北京师范大学BeijingNormalUniversity奇偶校验码
奇偶校验码是奇校验码和偶校验码的统称,是一种最基本的检错码。它是由n-1位信息元和1位校验元组成,可以表示成为(n,n-1)。如果是奇校验码,在附加上一个校验元以后,码长为n的码字中“1”的个数为奇数个;如果是偶校验码,在附加上一个校验元以后,码长为n的码字中“1”的个数为偶数个。
16/118
北京师范大学BeijingNormalUniversity水平奇/偶校验码水平奇/偶校验码:其信息字段以字符为单位,校验字段仅含一个比特称为校验比特或校验位,使用七单位的ASCII码来构造成八单位的检错码时若采用奇/偶校验,校验位的取值应使整个码字包括校验位中为1的比特个数为奇数或偶数。例:
信息字段
奇校验码
偶校验码
0110001
01100010
01100011编码效率:Q/(Q+1)
(信息字段占Q个比特)应用:通常在异步传输方式中采用偶校验,同步传输方式中采取奇校验若每个字符只采用一个奇偶校验位时,只能发现单个比特差错,如果有两个或两个以上比特出错,奇偶校验位无效;17/118
北京师范大学BeijingNormalUniversity循环冗余码CRCCRC是一种较为复杂的校验方法,它先将要发送的信息数据与一个通信双方共同约定的数据进行除法运算,并根据余数得出一个校验码,然后将这个校验码附加在信息数据帧之后发送出去。接收端接收数据后,将包括校验码在内的数据帧再与约定的数据进行除法运算,若余数为“0”,就表示接收的数据正确,若余数不为“0”,则表明数据在传输的过程中出错。循环冗余码原理19/118
北京师范大学BeijingNormalUniversity循环冗余码举例任意一个由二进制位串组成的代码都可以和一个系数仅为‘0’和‘1’取值的多项式一一对应。例如:代码1010111对应的多项式为x6+x4+x2+x+1,而多项式为x5+x3+x2+x+1对应的代码101111。20/118
北京师范大学BeijingNormalUniversity循环冗余码举例5、CRC校验码生成示意图:21/118
北京师范大学BeijingNormalUniversity取余数的说明
1101010110
←
Q
商除数
P→
110101101000110100000
←
2nM被除数
110101
111011
110101
111010
110101
111110
110101
101100
110101
110010
110101
01110
←
R
余数22/118
北京师范大学BeijingNormalUniversityCRC编码的说明
多项式和二进制数有直接对应关系:x的最高幂次对应二进制数的最高位,以下各位对应多项式的各幂次,有此幂次项对应1,无此幂次项对应0。可以看出:x的最高幂次为R,转换成对应的二进制数有R+1位。如生成多项式为G(x)=x4+x3+x+1,可转换为二进制数码11011。如发送的信息是1111,则可转换为数据多项式为C(x)=x3+x2+x+1。生成多项式是接受方和发送方的一个约定,也就是一个二进制数,在整个传输过程中,这个数始终保持不变。在发送方,利用生成多项式对信息多项式做模2除生成校验码。在接受方利用生成多项式对收到的编码多项式做模2除检测和确定错误位置。23/118
北京师范大学BeijingNormalUniversityCRC码的生成步骤1、将x的最高幂次为R的生成多项式G(x)转换成对应的R+1位二进制数。2、将信息码左移R位,相当与对应的信息多项式C(x)*2R
3、用生成多项式(二进制数)对信息码做模2除,得到R位的余数。4、将余数拼到信息码左移后空出的位置,得到完整的CRC码。模2除做法与算术除法类似,但每一位除(减)的结果不影响其它位,即不向上一位借位。所以实际上就是异或。24/118
北京师范大学BeijingNormalUniversity实例【例】假设使用的生成多项式是G(x)=x3+x+1。4位的原始报文为1010,求编码后的报文。解:1、将生成多项式G(x)=x3+x+1转换成对应的二进制除数1011。2、此题生成多项式有4位(R+1),要把原始报文C(x)左移3(R)位变成10100003、用生成多项式对应的二进制数对左移4位后的原始报文进行模2除:1001-------商------------------------10100001011----------除数------------10001011------------011-------余数(校验位)25/118
北京师范大学BeijingNormalUniversity实例5、编码后的报文(CRC码):1010000+
011------------------1010011CRC的纠错在接收端收到了CRC码后用生成多项式为G(x)去做模2除,若得到余数为0,则码字无误。若如果有一位出错,则余数不为0,而且不同位出错,其余数也不同。可以证明,余数与出错位的对应关系只与码制及生成多项式有关,而与待测碼字(信息位)无关。图10给出了G(x)=1011,C(x)=1010的出错模式,改变C(x)(码字),只会改变表中码字内容,不改变余数与出错位的对应关系。26/118
北京师范大学BeijingNormalUniversity如果循环码有一位出错,用G(x)作模2除将得到一个不为0的余数。如果对余数补0继续除下去,我们将发现一个有趣的结果;各次余数将按图10顺序循环。例如第一位出错,余数将为001,补0后再除(补0后若最高位为1,则用除数做模2减取余;若最高位为0,则其最低3位就是余数),得到第二次余数为010。以后继续补0作模2除,依次得到余数为100,0ll…,反复循环,这就是“循环码”名称的由来。27/118
北京师范大学BeijingNormalUniversityCRC校验码的检错能力CRC校验码能检查出全部单个错;CRC校验码能检查出全部离散的二位错;CRC校验码能检查出全部奇数个错;CRC校验码能检查出全部长度小于或等于K位的突发错;CRC校验码能以[1-(1/2)K-1]的概率检查出长度为(K+1)位的突发错;如果K=16,则该CRC校验码能全部检查出小于或等于16位的所有的突发差错,并能以1-(1/2)16-1=99.997%的概率检查出长度为17位的突发错,漏检概率为0.003%;
28/118
北京师范大学BeijingNormalUniversity差错的控制在数字通信中利用编码方法对传输中产生的差错进行控制,以提高数字消息传输的准确性。差错控制系统的组成及其作用原理如图。29/118
北京师范大学BeijingNormalUniversity差错控制的基本方式--ARQ分为两类:一类称为“反馈纠错”,另一类称为“前向纠错”。在这两类基础上又派生出一种称为“混合纠错”。(1)反馈纠错
也叫反馈重发(自动请求重发ARQ)
这种方式是在发信端采用某种能发现一定程度传输差错的简单编码方法对所传信息进行编码,加入少量监督码元,在接收端则根据编码规则对收到的编码信号进行检查,一旦检测出(发现)有错码时,即向发信端发出询问的信号,要求重发。发信端收到询问信号时,立即重发已发生传输差错的那部分信息,直到正确收到为止。30/118
北京师范大学BeijingNormalUniversity反馈重发机制31/118
北京师范大学BeijingNormalUniversity差错控制的基本方式--FEC(2)前向纠错
这种方式是发信端采用某种在解码时能纠正一定程度传输差错的较复杂的编码方法,使接收端在收到的信息码中不仅能发现错码,还能够纠正错码。采用前向纠错方式时,不需要反馈信道,也无需反复重发而延误传输时间,对实时传输有利,但是纠错设备比较复杂。
32/118
北京师范大学BeijingNormalUniversity两种方法的主要差别①前向纠错不需要反向信道,而反馈重传必须有反向信道。②前向纠错利用纠错码,而反馈重传利用检错码。一般来讲,纠错码的实现比较复杂,可纠正的差错少,而检错码的实现比较容易,可发现的差错也多。③前向纠错带来的消息延迟是固定的,传输消息的速率也是固定的,而反馈重传中的消息延迟和消息的传输速率都会随重传频度的变化而变化。④前向纠错不要求对信源控制,而反馈重传要求信源可控。⑤经前向纠错的被传消息的准确性仍然会随着信道干扰的变化而发生很大变化,而经反馈重传的被传消息的准确性比较稳定,一般不随干扰的变化而变化。因此,两者的适用场合很不相同。33/118
北京师范大学BeijingNormalUniversity差错控制的基本方式--混合纠错(3)混合纠错
混合纠错的方式是:少量纠错在接收端自动纠正,差错较严重,超出自行纠正能力时,就向发信端发出询问信号,要求重发。因此,“混合纠错”是“前向纠错”与“反馈纠错”两种方式的混合。
一般,反馈纠错可用于双向数据通信,前向纠错则用于单向数字信号的传输,例如广播数字电视系统,因为这种系统没有反馈通道。
34/118
北京师范大学BeijingNormalUniversity反馈重发(ARQ)的实现方法1、停止等待方式2、连续工作方式(1)拉回方式(2)选择重发方式35/118
北京师范大学BeijingNormalUniversity停止等待ARQ协议考虑:完全理想化的数据传输
接收方的速度永远不会低于发送方的速度;在链路上传送数据帧不会出错,也不会丢失。这时数据链路层协议非常简单:只要控制发送方把数据帧从缓冲区发送到数据链路上;接收方把数据帧从链路上接收到缓冲区,并上交给主机。假设协议36/118
北京师范大学BeijingNormalUniversity具有简单的流量控制假设:链路是理想化的,所传输的数据不会出错也不会丢失。协议思想:协调、控制接收方、发送方的速度。DATA0ACKACKACKDATA2DATA1协议算法等待;将收到的数据帧上交主机;发送应答信息;转到第一步发出一帧;等待;直到收到ACK才发送下一帧发送方接收方37/118
北京师范大学BeijingNormalUniversity停止等待ARQ协议(1)接近实际情形的假设:1)信道不理想,传输的数据可能会出错,也可能会丢失。2)双方的速度不一致,需要对发送端进行流量控制。DATA0ACKACKACKDATA2DATA1出错a)正常情况b)数据帧出错送主机AB送主机送主机DATA0ACKNAKACKDATA1DATA1送主机AB送主机重传38/118
北京师范大学BeijingNormalUniversityDATA0ACKACKDATA1DATA1丢失DATA0ACKACKACKDATA1DATA1丢失c)数据帧丢失d)应答帧丢失送主机送主机丢弃送主机送主机AABBtouttout39/118
北京师范大学BeijingNormalUniversity超时计时器的作用结点A发送完一个数据帧时,就启动一个超时计时器(timeouttimer)。计时器又称为定时器。若到了超时计时器所设置的重传时间tout而仍收不到结点B的任何确认帧,则结点A就重传前面所发送的这一数据帧。一般可将重传时间选为略大于“从发完数据帧到收到确认帧所需的平均时间”。40/118
北京师范大学BeijingNormalUniversity解决重复帧的问题使每一个数据帧带上不同的发送序号。每发送一个新的数据帧就把它的发送序号加1。若结点B收到发送序号相同的数据帧,就表明出现了重复帧。这时应丢弃重复帧,因为已经收到过同样的数据帧并且也交给了主机B。但此时结点B还必须向A发送确认帧ACK,因为B已经知道A还没有收到上一次发过去的确认帧ACK。41/118
北京师范大学BeijingNormalUniversity帧的编号问题任何一个编号系统的序号所占用的比特数一定是有限的。因此,经过一段时间后,发送序号就会重复。序号占用的比特数越少,数据传输的额外开销就越小。对于停止等待协议,由于每发送一个数据帧就停止等待,因此用一个比特来编号就够了。一个比特可表示0和1两种不同的序号。
42/118
北京师范大学BeijingNormalUniversity帧的发送序号数据帧中的发送序号N(S)以0和1交替的方式出现在数据帧中。每发一个新的数据帧,发送序号就和上次发送的不一样。用这样的方法就可以使收方能够区分开新的数据帧和重传的数据帧了。43/118
北京师范大学BeijingNormalUniversity可靠传输虽然物理层在传输比特时会出现差错,但由于数据链路层的停止等待协议采用了有效的检错重传机制,数据链路层对上面的网络层就可以提供可靠传输的服务。例如,循环冗余检验CRC的检错技术44/118
北京师范大学BeijingNormalUniversity帧检验序列FCS在数据后面添加上的冗余码称为帧检验序列
FCS(FrameCheckSequence)。循环冗余检验CRC和帧检验序列FCS并不等同。CRC是一种常用的检错方法,而FCS是添加在数据后面的冗余码。FCS可以用CRC这种方法得出,但CRC并非用来获得FCS的惟一方法。
45/118
北京师范大学BeijingNormalUniversity检测出差错只要得出的余数R不为0,就表示检测到了差错。但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错。一旦检测出差错,就丢弃这个出现差错的帧。只要经过严格的挑选,并使用位数足够多的除数P,那么出现检测不到的差错的概率就很小很小。46/118
北京师范大学BeijingNormalUniversity停止等待协议的算法这里不使用否认帧(实用的数据链路层协议大都是这样的),而且确认帧带有序号n。按照习惯的表示法,ACKn表示“第n–1
号帧已经收到,现在期望接收第n号帧”。ACK1表示“0号帧已收到,现在期望接收的下一帧是1号帧”;ACK0表示“1号帧已收到,现在期望接收的下一帧是0号帧”。
47/118
北京师范大学BeijingNormalUniversity在发送结点(1)从主机取一个数据帧,送交发送缓存。(2)发送状态变量V(S)←0。(3)帧序号N(S)←V(S)。(4)将发送缓存中的数据帧发送出去。(5)设置超时计时器。(6)等待。{等待以下(7)和(8)这两个事件中最先出现的一个}(7)收到确认帧ACKn,若n=1–V(s),则:从主机取一个新的数据帧,放入发送缓存;
V(S)←[1V(S)],转到(3)。否则,丢弃这个确认帧,转到(6)。(8)若超时计时器时间到,则转到(4)。48/118
北京师范大学BeijingNormalUniversity在接收结点(1)V(R)←0。(2)等待。(3)收到一个数据帧;若N(S)=V(R),则执行(4);否则丢弃此数据帧,然后转到(6)。(4)将收到的数据帧中的数据部分送交上层软件(也就是数据链路层模型中的主机)。(5)V(R)←[1V(R)]。(6)n←V(R);发送确认帧ACKn,转到(2)。49/118
北京师范大学BeijingNormalUniversity停止等待协议的要点只有收到序号正确的确认帧ACKn后,才更新发送状态变量V(S)一次,并发送新的数据帧。接收端接收到数据帧时,就要将发送序号N(S)与本地的接收状态变量V(R)相比较。若二者相等就表明是新的数据帧,就收下,并发送确认。否则为重复帧,就必须丢弃。但这时仍须向发送端发送确认帧ACKn,而接收状态变量V(R)和确认序号n都不变。
50/118
北京师范大学BeijingNormalUniversity停止等待协议的要点(续)连续出现相同发送序号的数据帧,表明发送端进行了超时重传。连续出现相同序号的确认帧,表明接收端收到了重复帧。发送端在发送完数据帧时,必须在其发送缓存中暂时保留这个数据帧的副本。这样才能在出差错时进行重传。只有确认对方已经收到这个数据帧时,才可以清除这个副本。51/118
北京师范大学BeijingNormalUniversity停止等待协议的要点(续)实用的CRC检验器都是用硬件完成的。CRC检验器能够自动丢弃检测到的出错帧。因此所谓的“丢弃出错帧”,对上层软件或用户来说都是感觉不到的。发送端对出错的数据帧进行重传是自动进行的,因而这种差错控制体制常简称为ARQ(AutomaticRepeatreQuest),直译是自动重传请求,但意思是自动请求重传。(1)从主机取一个数据帧。(2)V(S)<-
O。
{发送状态变量初始化}(3)N(S)<-V(S);
{将发送状态变量的数值写入发送序号}
将数据帧送交发送缓冲区。(4)将发送缓冲区中的数据帧发送出去。(5)设置超时定时器。
{选择适当的超时重发时间tout}(6)等待。{等待以下3个事件中最先出现的一个}(7)若收到确认帧ACK,则从主机取一个新的数据帧;
V(S)<-[1-V(S)];
{更新发送状态变量,变为下一个序号}转(3)。(8)若收到否认帧NAK,则转(4)。{重发数据帧}(9)若超时定时器时间到,则转(4)。{重发数据帧}(1)V(R)<-0。
{接收状态变量初始化,其数值等于欲接收的数据帧的发送序号}(2)等待。(3)当收到一个数据帧,就检查有无产生传输差错(如用CRC)。若检查结果正确无误,则执行后续算法;否则转到(8)。(4)若N(S)=V(R),则执行后续算法;
{收到发送序号正确的数据帧}
否则丢弃此数据帧,然后转到(7)。(5)将收到的数据帧中的数据部分送交主机。(6)V(R)<-[l—V(R)]。
{更新接收状态变量,准备接收下一个数据帧}(7)发送确认帧ACK,并转到(2)。(8)发送否认帧NAK,并转到(2)。特别提示:在收发两端各设置一个本地状态变量(仅占1个比特)。发送节点接收节点停止等待协议的算法——总结53/118
北京师范大学BeijingNormalUniversity停止等待方式原理——总结停止等待协议的工作原理的文字描述如下:1、发送点对接收点发送数据包,然后等待接收点回复ACK,并且开始计时。2、在等待过程中,发送点停止发送新的数据包。3、当数据包没有成功地被接收点接收时,接收点不会发送ACK,这样发送点在等待一定时间后,将重新发送数据包。4、反复以上步骤直到收到从接收点发送的ACK后,再发送下一个数据包。54/118
北京师范大学BeijingNormalUniversity停止等待方式原理——总结55/118
北京师范大学BeijingNormalUniversity停止等待协议ARQ的优缺点优点:比较简单。缺点:通信信道的利用率不高,也就是说,信道还远远没有被数据比特填满。为了克服这一缺点,就产生了另外两种协议,即连续ARQ和选择重传ARQ。56/118
北京师范大学BeijingNormalUniversity连续ARQ协议实现连续ARQ协议(ContinuousARQ)的方法主要有:拉回方式(Go-back-N)选择重发方式(SelectiveRepeat)
57/118
北京师范大学BeijingNormalUniversity倒退N(Go-back-N)发送点连续发送数据包,每个数据包都含有顺序字符。接受点发现某个数据包没有接受到,对发送点发NACK.在NACK中指明没有接受的数据包。接收点丢弃从第一个没有收到的数据包开始的所有数据包。发送点收到NACK后,从NACK中指明的数据包开始重新发送这个办法的问题是如何正确选择表明数据包的顺序字符的数量。这个数量因当包括ACK或者ACK从接收点到达发送点的时间。58/118
北京师范大学BeijingNormalUniversity原理说明在发送完一个数据帧后,不是停下来等待确认帧,而是可以连续再发送若干个数据帧。如果这时收到了接收端发来的确认帧,那么还可以接着发送数据帧。由于减少了等待时间,整个通信的吞吐量就提高了。59/118
北京师范大学BeijingNormalUniversity连续ARQ协议的工作原理DATA0DATA1DATA2DATA3DATA4DATA5重传DATA2重传DATA3ACK1ACK2ACK1确认DATA0ACK2确认DATA1DATA2出错,丢弃DATA3不按序,丢弃,重传ACK2DATA4不按序,丢弃,重传ACK2DATA5不按序,丢弃,重传ACK2ACK3ACK3确认DATA2ACK4确认DATA3ACK4重传DATA5重传DATA4超时重传时间ABtout送交主机送交主机…??ACK2ACK2ACK260/118
北京师范大学BeijingNormalUniversity需要注意:(1)接收端只按序接收数据帧。虽然在有差错的2号帧之后接着又收到了正确的3个数据帧,但接收端都必须将这些帧丢弃,因为在这些帧前面有一个2号帧还没有收到。虽然丢弃了这些不按序的无差错帧,但应重复发送已发送过的最后一个确认帧(防止确认帧丢失)。(2)ACK1表示确认0号帧DATA0,并期望下次收到1号帧;ACK2表示确认1号帧DATA1,并期望下次收到2号帧。依此类推。
61/118
北京师范大学BeijingNormalUniversity(3)结点A在每发送完一个数据帧时都要设置该帧的超时计时器。如果在所设置的超时时间内收到确认帧,就立即将超时计时器清零。但若在所设置的超时时间到了而未收到确认帧,就要重传相应的数据帧(仍需重新设置超时计时器)。在等不到2号帧的确认而重传2号数据帧时,虽然结点A已经发完了5号帧,但仍必须向回走,将2号帧及其以后的各帧全部进行重传。连续ARQ又称为Go-back-NARQ,意思是当出现差错必须重传时,要向回走N个帧,然后再开始重传。
需要注意:62/118
北京师范大学BeijingNormalUniversity回退N协议——总结由于停止等待ARQ协议会长时间等待ACK。信道利用率不高。所以,允许发送方不等确认帧返回就连续发送多个数据帧——连续ARQ协议的基本思想。连续ARQ协议的基本原理
允许发送方不等确认帧返回就连续发送多个数据帧。接收端只按序接收数据帧,不按序号到来的帧被丢弃。确认帧中包含着期望下次收到的帧的序号。在发送端发送完一帧后都要设置该帧的超时计时器。63/118
北京师范大学BeijingNormalUniversity选择重传ARQ协议
GO-BACK-N有可能会将已正确传送到目的方的帧再重传一遍,这显然是一种浪费。另一种效率更高的策略是当接收方发现某帧出错后,其后继续送来的正确的帧虽然不能立即递交给接收方的高层,但接收方仍可收下来,存放在缓冲区中,同时要求发送方重新传送出错的那一帧。一旦收到重新传来的帧后,就可以和已存于缓冲区中的其余帧一并按正确的顺序递交高层。这种方法称为选择重发(SelectiveRepeat),其工作过程如图所示。图中2号帧的否认返回信息NAK2要求发送方选择重发2号帧。显然,选择重发减少了浪费,但要求接收方有足够大的缓冲区空间。
64/118
北京师范大学BeijingNormalUniversity选择重发方式发送点连续发送数据包,但对每个数据包都设有一个计时器。当在一定时间内没有收到某个数据包的ACK时,发送点只重新发送那个没有回复ACK的数据包缺点:接收点收到的数据包的顺序可能不是发送的数据包顺序。因此在数据包里必须含有顺序字符来帮助接受点来排序。65/118
北京师范大学BeijingNormalUniversity选择重发方式原理图选择重发ARQ原理示意66/118
北京师范大学BeijingNormalUniversity优点和缺点ARQ协议的优点是它非常的简单。因而被广泛的应用在分组交换网络中。ARQ协议的缺点是需要接收点发送ACK,这样增加了网络的负担也影响了它的传输速度。它重复发送数据包来纠正错误的方法也严重的影响了它的传输速度。67/118
北京师范大学BeijingNormalUniversity3.2数据链路层的基本概念3.2.1物理线路与数据链路线路—链路物理线路—数据链路68/118
北京师范大学BeijingNormalUniversity3.2.2数据链路控制链路管理帧同步流量控制差错控制帧的透明传输寻址
数据链路层协议
—
为实现数据链路控制功能而制定的规程或协议。69/118
北京师范大学BeijingNormalUniversity3.2.3数据链路层向网络层提供的服务数据链路层是OSI参考模型的第2层;设立数据链路层的主要目的是将原始的、有差错的物理线路变为对网络层无差错的数据链路;为了实现这个目的,数据链路层必须实现链路管理、帧传输、流量控制、差错控制等功能;数据链路层为网络层提供的服务主要表现在:正确传输网络层的用户数据,为网络层屏蔽物理层采用的传输技术的差异性。70/118
北京师范大学BeijingNormalUniversity3.3面向字符型协议实例什么是面向字符型协议?
以字符为控制传输信息的基本单元
ASIIC码:格式字符:SOH(startofheading)STX(startoftext)ETB(endoftransmissionblock)ETX(endoftext)
控制字符:ACK(acknowledge)NAK(negativeacknowledge)ENQ(enquire)EOT(endoftransmission)SYN(synchrous)DLE(datalinkescape)71/118
北京师范大学BeijingNormalUniversity面向字符型BSC协议的数据报文格式72/118
北京师范大学BeijingNormalUniversity建立、维护与释放数据链路流程图73/118
北京师范大学BeijingNormalUniversity3.4典型数据链路层协议分析—面向比特型3.4.1HDLC产生的背景面向字符型数据链路层协议的缺点:报文格式不一样;传输透明性不好;等待发送方式,传输效率低。面向比特型协议的设计目标:以比特作为传输控制信息的基本单元;数据帧与控制帧格式相同;传输透明性好;连续发送,传输效率高。74/118
北京师范大学BeijingNormalUniversity3.4.2数据链路的配置和数据传送方式数据链路的配置非平衡配置平衡配置非平衡配置中的主站与从站主站:控制数据链路的工作过程。主站发出命令从站:接受命令,发出响应,配合主站工作非平衡配置中的结构特点点-点方式多点方式75/118
北京师范大学BeijingNormalUniversity数据链路的非平衡配置方式76/118
北京师范大学BeijingNormalUniversity非平衡配置方式正常响应模式(normalresponsemode,NRM)主站可以随时向从站传输数据帧;从站只有在主站向它发送命令帧进行探询(poll),从站响应后才可以向主站发送数据帧。异步响应模式(asynchronousresponsemode,ARM)主站和从站可以随时相互传输数据帧;从站可以不需要等待主站发出探询就可以发送数据;主站负责数据链路的初始化、链路的建立、释放与差错恢复等功能。77/118
北京师范大学BeijingNormalUniversity平衡配置方式链路两端的两个站都是复合站(combinedstation);复合站同时具有主站与从站的功能;每个复合站都可以发出命令与响应;平衡配置结构中只有异步平衡模式(asynchronousbalancedmode,ABM);异步平衡模式的每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的许可。78/118
北京师范大学BeijingNormalUniversity数据链路的平衡配置方式79/118
北京师范大学BeijingNormalUniversity面向比特的链路控制规程HDLC1974年,IBM公司推出了面向比特的规程SDLC(SynchronousDataLinkControl)。后来ISO把SDLC修改后称为HDLC(High-levelDataLinkControl),译为高级数据链路控制,作为国际标准ISO3309。CCITT则将HDLC再修改后称为链路接入规程LAP(LinkAccessProcedure)。不久,HDLC的新版本又把LAP修改为LAPB,“B”表示平衡型(Balanced),所以LAPB叫做链路接入规程(平衡型)。80/118
北京师范大学BeijingNormalUniversityHDLC的帧结构比特888可变168信息
Info标志
F标志
F地址
A控制
C帧检验序列
FCS透明传输区间FCS检验区间标志字段F(Flag):为6个连续1加上两边各一个0共8bit。固定格式—01111110,在接收端只要找到标志字段就可确定一个帧的位置。作用—帧同步、传输数据的透明性(零比特插入与删除)。零比特填充法HDLC采用零比特填充法使一帧中两个F字段之间不会出现6个连续1。在发送端,当一串比特流数据中有5个连续1时,就立即填入一个0。在接收帧时,先找到F字段以确定帧的边界。接着再对比特流进行扫描。每当发现5个连续1时,就将其后的一个0删除,以还原成原来的比特流。82/118
北京师范大学BeijingNormalUniversity零比特的填充与删除数据中某一段比特组合恰好出现和F字段一样的情况01001111110001010会被误认为是F字段发送端在5个连1之后填入0比特再发送出去填入0比特010011111010001010在接收端将5个连1之后的0比特删除,恢复原样在此位置删除填入的0比特01001111101000101083/118
北京师范大学BeijingNormalUniversity零比特插入/删除工作过程84/118
北京师范大学BeijingNormalUniversity透明传输采用零比特填充法就可传送任意组合的比特流,或者说,就可实现数据链路层的透明传输。当连续传输两个帧时,前一个帧的结束标志字段F可以兼作后一帧的起始标志字段。当暂时没有信息传送时,可以连续发送标志字段,使收端可以一直和发端保持同步。85/118
北京师范大学BeijingNormalUniversity其他字段地址字段A(address):地址,是8bit。帧检验序列FCS(framechecksum):字段共16bit。所检验的范围是从地址字段的第一个比特起,到信息字段的最末一个比特为止校验A、C、I字段的数据、G(X)=X16+X12+X5+1
。控制字段C(control):共8bit,是最复杂的字段。包括帧的类型、帧的编号、命令与控制信息,HDLC的许多重要功能都靠控制字段来实现。信息字段I(information):来自网络层数据,Nmax=256B
86/118
北京师范大学BeijingNormalUniversity帧类型及控制字段的意义87/118
北京师范大学BeijingNormalUniversity帧类型I帧:
N(S)—发送帧的顺序号
N(R)
—
接收帧的顺序号
P/F=Poll/Final,P=1询问,F=1响应
P与F成对出现S帧:监控功能位
S=00,RR(receiveready)
S=01,RNR(receivenotready)
S=10,RJE(reject)
S=11,SREJ(selectreject)U帧:用于实现数据链路控制功能88/118
北京师范大学BeijingNormalUniversityU帧的格式与链路控制功能89/118
北京师范大学BeijingNormalUniversity简化的信息帧结构的表示方法3.4.4数据链路层的工作过程一个信息帧的表示90/118
北京师范大学BeijingNormalUniversity无编号帧的表示方法
SNRM帧与UA帧结构的表示方法
91/118
北京师范大学BeijingNormalUniversity正常响应模式数据链路工作92/118
北京师范大学BeijingNormalUniversity数据链路层与物理层的关系93/118
北京师范大学BeijingNormalUniversity3.5Internet中的数据链路层Internet中主要的数据链路层协议SLIP(SerialLineIP)
—串行线路的Internet数据链路层协议PPP(Point-to-PointProtocol)
—点-点协议SLIP与PPP用于串行通信的拨号线路上,是目前家庭计算机或公司用户通过ISP接到Internet主要的协议。现在全世界使用得最多的数据链路层协议是点对点协议PPP(Point-to-PointProtocol)。用户使用拨号电话线接入因特网时,一般都是使用PPP协议。94/118
北京师范大学BeijingNormalUniversity用户拨号入网的示意图路由器调制解调器调制解调器因特网服务提供者(ISP)用户家庭拨号电话线
使用TCP/IP的
PPP连接使用TCP/IP的客户进程路由选择进程至因特网…PC机95/118
北京师范大学BeijingNormalUniversityPPP协议1992年制订了PPP协议。经过1993年和1994年的修订,现在的PPP协议已成为因特网的正式标准[RFC1661]。PPP协议有三个组成部分一个将IP数据报封装到串行链路的方法。链路控制协议LCP(LinkControlProtocol)。网络控制协议NCP(NetworkControlProtocol)。
96/118
北京师范大学BeijingNormalUniversityPPP协议基本特点PPP协议是Internet标准,RFC1660、RFC1661定义了PPP协议与帧结构;PPP协议处理了差错检测,支持面向字符型协议与面向比特型协议,可以支持IP协议及其他一些网络层协议(例如IPX协议);PPP协议不仅在拨号电话线,并且在路由器─路由器之间的专用线上广泛应用;PPP协议是在大多数家庭个人计算机和ISP之间使用的协议,它可以作为在高速广域网和社区宽带网协议族的一部分。
97/118
北京师范大学BeijingNormalUniversityPPP信息帧格式
标志(flag):01111110
地址(address):值为“FF”(11111111),表示网中所有的站都接收该帧
控制(control):值为“03”(00000011)
协议(protocol):长度为2字节,它标识出网络层协议数据域的类型。常用的网络层协议的类型主要有:
0021H—TCP/IP0023H—OSI0027H—DEC数据字段:长度可变98/118
北京师范大学BeijingNormalUniversity链路控制帧(LCP)与网络控制帧(NCP)链路控制帧(LCP)网络控制帧(NCP)99/118
北京师范大学BeijingNormalUniversityPPP协议的帧格式PPP的帧格式和HDLC的相似。标志字段F仍为0x7E(符号“0x”表示后面的字符是用十六进制表示。十六进制的7E的二进制表示是01111110)。地址字段A只置为0xFF。地址字段实际上并不起作用。控制字段C通常置为0x03。PPP是面向字节的,所有的PPP
帧的长度都是整数字节。100/118
北京师范大学BeijingNormalUniversityPPP协议的帧格式PPP有一个2个字节的协议字段。当协议字段为0x0021时,PPP帧的信息字段就是IP数据报。若为0xC021,则信息字段是PPP链路控制数据。若为0x8021,则表示这是网络控制数据。
IP数据报1211字节12不超过1500字节PPP帧先发送7EFF03FACFCSF7E协议信息部分首部尾部101/118
北京师范大学BeijingNormalUniversity透明传输问题当PPP用在同步传输链路时,协议规定采用硬件来完成比特填充(和HDLC的做法一样)。当PPP用在异步传输时,就使用一种特殊的字符填充法。102/118
北京师范大学BeijingNormalUniversity字符填充法将信息字段中出现的每一个0x7E字节转变成为2字节序列(0x7D,0x5E)。若信息字段中出现一个0x7D的字节,则将其转变成为2字节序列(0x7D,0x5D)。若信息字段中出现ASCII码的控制字符(即数值小于0x20的字符),则在该字符前面要加入一个0x7D字节,同时将该字符的编码加以改变。103/118
北京师范大学BeijingNormalUniversity
不提供使用序号和确认的可靠传输PPP协议之所以不使用序号和确认机制是出于以下的考虑:在数据链路层出现差错的概率不大时,使用比较简单的PPP协议较为合理。在因特网环境下,PPP的信息字段放入的数据是IP数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。帧检验序列FCS字段可保证无差错接受。
104/118
北京师范大学BeijingNormalUniversityPPP协议的工作状态当用户拨号接入ISP时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。PC机向路由器发送一系列的LCP分组(封装成多个PPP帧)。这些分组及其响应选择一些PPP参数,和进行网络层配置,NCP给新接入的PC机分配一个临时的IP地址,使PC机成为因特网上的一个主机。通信完毕时,NCP释放网络层连接,收回原来分配出去的IP地址。接着,LCP释放数据链路层连接。最后释放的是物理层的连接。105/118
北京师范大学BeijingNormalUniversity小结物理传输线路上传输数据信号是有差错的;误码率是指二进制比特在数据传输过程中被传错的概率;数据链路层是将一条原始的、有差错的物理线路变为对网络层无差错的数据链路;数据链路层完成链路管理、帧传输、流量控制、差错控制等功能;106/118
北京师范大学BeijingNormalUniversity数据链路层协议基本可以分为两类:面向字符型与面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025唐山市迁安市建昌营镇社区工作者考试真题
- 重庆市七校联考2024-2025学年高二下学期第一次月考化学试题(原卷版)
- 2024-2025工厂安全培训考试试题含答案(研优卷)
- 2025厂级安全培训考试试题附参考答案【考试直接用】
- 2025年项目管理人员年度安全培训考试试题及答案7A
- 2025年公司厂级员工安全培训考试试题(达标题)
- 2025年公司三级安全培训考试试题附答案【基础题】
- 2025年新进厂员工安全培训考试试题附答案【完整版】
- 2025员工三级安全培训考试试题及答案(易错题)
- 山东省聊城市茌平县第二中学2025届高三下学期第一次质量检查生物试题试卷含解析
- 南京师范大学自主招生个人陈述范文与撰写要点
- 铁粉运输合同协议
- 计算机网络安全知识试题及答案2025年计算机二级考试
- 广州广州市天河区华阳小学-毕业在即家校共话未来-六下期中家长会【课件】
- 第4单元 亮火虫(教学设计)-2024-2025学年粤教花城版(2024)音乐一年级下册
- 车间生产材料管理制度
- 西师大版小学五年级数学(下)期中测试题(含答案)
- 公司事故隐患内部报告奖励制度
- 大学生创新创业基础(创新创业课程)完整全套教学课件
- DL∕T 5210.6-2019 电力建设施工质量验收规程 第6部分:调整试验
- 导管固定-PPT课件
评论
0/150
提交评论