《计算机网络》第3章数据链路层_第1页
《计算机网络》第3章数据链路层_第2页
《计算机网络》第3章数据链路层_第3页
《计算机网络》第3章数据链路层_第4页
《计算机网络》第3章数据链路层_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络

第3章数据链路层

第3章数据链路层

*3.1数据链路层的基本概念

*3.2停止等待协议

3.2.1完全理想化的数据传输

3.2.2具有最简单流量控制的数据链路层协议

3.2.3实用的停止等待协议

3.2.4循环冗余检验的原理

3.2.5停止等待协议的算法

3.2.6停止等待协议的定量分析

[第3章数据链路层(续)

*3.3连续ARQ协议

3.3.1连续ARQ协议的工作原理

3.3.2连续ARQ协议的吞吐量

3.3.3滑动窗口的概念

3.3.4信道利用率与最佳帧长

3.4选择重传ARQ协议

第3章数据链路层(续)

I-

*3.5面向比特的链路层协议HDLC

3.5.1HDLC协议概述

3.5.2HDLC的帧结构

*3.6因特网的点对点协议PPP

3.6.1PPP协议的工作原理

3.6.2PPP协议的帧格式

3.6.3PPP协议的工作状态

数据链路层的简单模型

*主机乩向“发送数据

路由肃修空由器R路由器R3

--------心呼乂一一三主机电

局域网一j-广域网

从层次上来看数据的流动

应用层做用层

运输层[输层

网络层冈络层

链路层较各层

物理层理勿理层

数据链路层的简单模型

(续)

主机乩向“发送数据

路由器

主机Hl—一空」俟由哭R路由器“3__

--------大呼里-------主机电

局域网一J--广域网

仅从数据链路层观察帧的流动

应用层女用层

运输层,亘输层

网络层I网络层

物理层L理层物理物理理层

3.1数据链路层的基本概念

■链路(link)是一条无源的点到点的物理线

路段,中间没有任何其他的交换结点。

-一条链路只是一条通路的一个组成部分。

■数据链路(datalink)除了物理线路外,还必须

有通信协议来控制这些数据的传输。若把实现

这些协议的硬件和软件加到链路上,就构成了

数据链路。

-现在最常用的方法是使用适配器(即网卡)来实现

这些协议的硬件和软件。

-一般的适配器都包括了数据链路层和物理层这两层

的功能。

(a)

结点A结点B

数据

链路层

(b)

数据链路层像个数字管道

■常常在两个对等的数据链路层之间画出

一个数字管道,而在这条数字管道上传

输的数据单位是帧。

结点—帧帧结点

■早期的数据通信协议曾叫作通信规程

(procedure)o因此七数据链路层,规程

和协议是同义语。

A在数据链路层上传输数据帧

?发送方:一头多快的速度发送数据帧,即每帧之间相隔

多长时间?如何确认对方是否收到数据?

?接收方:是否接收到正确的数据帧?如何告诉发送方?

.能及时处理接收到的数据帧吗?

?传输过程:会出错吗?会丢失数据帧吗?

!解决这些问题,是数据链路层的主要任务。

!针对这些问题所制定的通信规程就是数据链路层的通信

协议。

A数据链路层的主要功能

数据链路层最重要的作用就是:通过一些数据链路层

协议,在不太可靠的物理链路上实现可靠的数据传输。其

主要功能可归纳如下:

(1)链路管理

(2)帧定界

(3)流量控制

(4)差错控制

(5)将数据和控制信息区分开

(6)透明传输

(7)寻址

A数据链路层的主要功能

龄链路管理当网络中的两个结点要进行通信时,数据的发方

必须确知收方是否已处在准备接受的状态。为此通信的双方必须

先要交换一些必要的信息,用术语讲必须先建立一条数据链路。

在传输数据时要维持数据链路,而在通信完毕时要释放数据链路。

数据链路的建立、维持和释放就叫做链路管理。

(2)帧同步-在数据链路层,数据的传送单位时帧。数据一帧一

帧地传送,就可以在出现差错时,将有差错的帧再重传一次,避

免了全部数据的重传。帧同步是指收方应当能从受到的比特流中

准确地区分出一帧的开始和结束。

A数据链路层的主要功能

酚流量控制发方发送数据的速率必须使收方来得及接收。当收

方来不及接收时,就必须及时控制发方发送数据的速率。

(4)差错控制-在计算机通信中,一般都要求有极低的比特差错率。

为此广泛地使用了编码技术,主要有两大类,一类是前向纠错,

即收方收到有差错的数据帧时能自动将差错改正过来。这种方法

的开销较大,不适合于计算机通信。另一类是检错重发,即收方

可以检测出收到的帧中有差错,于是就让发方重复发送这一帧,

直到收方正确收到这一帧为止。这种方法在计算机通信中是最常

用的。

A数据链路层的主要功能

瑞数据和控制信息区分开-由于数据和控制信息都是在同一信

道中传输,在许多情况下,数据和控制信息处于同一帧中,因此

一定要有响应的措施使收方能够将他们区分开来。

(6)透明传输-所谓透明传输就是不管所传数据是什么样的比特组

合,都应当能够在链路上传送。当所传数据中的比特组合恰巧与

某一个控制信息完全一样时,就必须采取适当的措施,使收方不

会将这样的数据误认为是某种控制信息。这样才能保证数据链路

层的传输是透明的。

(7)寻址-在多点连接的情况下,必须保证每一帧都能送到正确

的地址。双方也应当知道发方是哪一个站。

3.2三个基本问题

(1)帧定界

(2)透明传输

(3)差错控制

1.帧定界

-帧定界(framing)就是确定帧的界限。在一段数据的前

后分别添加首部和尾部,然后就构成了一个帧。确定

帧的界限。

■首部和尾部的一个重要作用就是进行帧定界。也有其

——<MTU-------

数据链路层的帧长

用控制字符进行帧定界的方法举例

帧开始符帧结束符

SOH装在帧中的数据部分EOT

上帧

SOH:01

EOT:04

2.透明传输

出现了“EOT”

完整的帧一

发送—数据部分

云前

SOHEOTEOT

被接收端被接收端当作无效帧而丢弃

误认为是一个帧

解决透明传输问题

■发送端的数据链路层在数据中出现控制字符“SOH”

或“EOT”的前面插入一个转义字符“ESC”(其十六

进制编码是1B)。

■字节填充(bytestuffing)或字符填充(character

stuffing)——接收端的数据链路层在将数据送往网

络层之前删除插入的转义字符。

■如果转义字符也出现数据当中,那么应在转义字

符前面插入一个转义字符。当接收端收到连续的

两个转义字符时,就删除其中前面的一个。

用字节填充法解决透明传输的问题

帧开始符帧结束符

原始数据

SOHEOTSOHESCSOHEOT

字节填光/字节金充;字填'充''字等填充

SOHESCEOTESCSOHESCESCESCSOHEOT

--------------------经过字节填充后发送的数据-----------------

发送

在前

3,差错检测

■在传输过程中可能会产生比特差错:1可能会

变成。而o也可能变成lo

■在一段时间内,传输错误的比特占所传输比特

总数的比率称为误码率BER(BitErrorRate)o

■误码率与信噪比有很大的关系。

■为了保证数据传输的可靠性,在计算机网络传

输数据时,必须采用各种差错检测措施。

循环冗余检验的原理

■在数据链路层传送的帧中,广泛使用了循

环冗余检验CRC的检错技术。

■在发送端,先把数据划分为组。假定每组k

个比特。

■假设待传送的一组数据M=101001(现在

攵=6)。我们在M的后面再添加供差错检

测用的〃位冗余码一起发送。

冗余码的计算

■用二进制的模2运算进行2〃乘”的运算,

这相当于在M后面添加〃个0。

■得到的依+〃)位的数除以事先选定好的

长度为(/7+1)位的除数P,得出商是Q

而余数是此余数/?比除数户少1位,

即/?是〃位。

冗余码的计算举例

■现在k=6,M=101001c

■设〃=3,除数P=1101,

■被除数是101001000c

■模2运算的结果是:商Q=110101,

余数/?=001。

■把余数/?作为冗余码添加在数据附的后面发

送出去。发送的数据是:2〃"+R

即:101001001,共(攵+〃)位。

循环冗余检验的原理说明

110101—Q(商)

尸(除数)一1101|10除Q1.Q00-(被除数)

1101jHH

1110HH

1101j纭

0111:::

0000H

1110”

1101;:

"0110j

0000j

Iwo

1101

两—R(余数),作为FCS

帧检验序列FCS

■在数据后面添加上的冗余码称为帧检验

序歹UFCS(FrameCheckSequence)□

■循环冗余检验CRC和帧检验序列FCS并

不等同。

■CRC是一种常用的检错方法,而FCS是添

加在数据后面的冗余码。

■FCS可以用CRC这种方法得出,但CRC

并非用来获得FCS的唯一方法。

(接收端对收到的每一帧进行CRC检验

■把收到的帧除以同样的P,得出余数兄

■(1)若得出的余数R=0,则判定这个帧没有

差错,就接受(accept)。

■(2)若余数0,则判定这个帧有差错,就丢

弃。

■但这种检测方法并不能确定究竟是哪一个或哪

几个比特出现了差错。

■只要经过严格的挑选,并使用位数足够多的除

数2那么出现检测不到的差错的概率就很小

很小。

应当注意

■仅用循环冗余检验CRC差错检测技术只能做

到无差错接受(accept)o

■“无差错接受”是指:“凡是接受的帧(即不

包括丢弃的帧),我们都能以非常接近于1的

概率认为这些帧在传输过程中没有产生差错”。

■也就是说:“凡是接收端数据链路层接受的帧

都没有传输差错”(有差错的帧就丢弃而不接

受)。

■要做到“可靠传输”(即发送什么就收到什么)

就必须再加上确认和重隹机制。

3.3停止等待协议

完全理想化的数据传输

发送方接收方

I

高层

数据链路层

完全理想化的数据传输

所基于的两个假定

■假定1:链路是理想的传输信道,所传

送的任何数据既不会出差错也不会丢失。

假定

2:不管发方以多快的速率发送数

,收方总是来得及收下,并及时上交

■这个假定就相当于认为:接收端向主机交

付数据的速率永远不会低于发送端发送数

据的速率。

具有最简单流量控制的数据链

路层协议______

■现在去掉上述的第二个假定。但是,仍

然保留第一个假定,即主机A向主机B

传输数据的信道仍然是无差错的理想信

道。然而现在不能保证接收端向主机交

付数据的速率永远不低于发送端发送数

据的速率。

■由收方控制发方的数据流,乃是计算机

网络中流量控制的一个基本方法。

具有最简单流量控制的

数据链路层协议算法

行发送结点:

(1)从主机取一个数据帧。

(2)将数据帧送到数据链路层的发送缓存。

(3)将发送缓存中的数据帧发送出去。

(4)等待。

(5)若收到由接收结点发过来的信息(此信息

的格式与内容可由双方事先商定好),则

从主机取一个新的数据帧,然后转到(2)。

具有最简单流量控制的

数据链路层协议算法(续)

在接收结点:

(1)等待。

(2)若收到由发送结点发过来的数据帧,

则将其放入数据链路层的接收缓存。

(3)将接收缓存中的数据帧上交主机。

(4)向发送结点发一信息,表示数据帧

已经上交给主机。

(5)转到(1)。

实用的停止等待协议

四种情况

(a)正常情况(b)数据帧出错(c)数据帧丢失(d)确认帧丢失

超时计时器的作用

■结点A发送完一个数据帧时,就启动一个

超时计时器(timeouttimer)□

■计时器又称为定时器。

■若到了超时计时器所设置的重传时间tout

而仍收不到结点B的任何确认帧,则结

点A就重传前面所发送的这一数据帧。

■一般可将重传时间选为略大于“从发完

数据帧到收到确认帧所需的平均时间”。

解决重复帧的问题

■使每一个数据帧带上不同的发送序号。每发送

一个新的数据帧就把它的发送序号加lo

■若结点B收到发送序号相同的数据帧,就表明

出现了重复帧。这时应丢弃重复帧,因为已经

收到过同样的数据帧并且也交给了主机Bo

■但此时结点B还必须向A发送确认帧ACK,

因为B已经知道A还没有收到上一次发过去

的确认帧ACKo

帧的编号问题

■任何一个编号系统的序号所占用的比特数一定

是有限的。因此,经过一段时间后,发送序号

就会重复。

■序号占用的比特数越少,数据传输的额外开销

就越小。

■对于停止等待协议,由于每发送一个数据帧就

停止等待,因此用一个比特来编号就够了。

-一个比特可表示。和1两种不同的序号。

帧的发送序号

■数据帧中的发送序号N(S)以。和1交

替的方式出现在数据帧中。

■每发一个新的数据帧,发送序号就和上

次发送的不一样。用这样的方法就可以

使收方能够区分开新的数据帧和重传的

数据帧了。

[应当注意_

-仅用循环冗余检验CRC差错检测技术只能做

到无差错接受(accept)o

■“无差错接受”是指:“凡是接受的帧(即不

包括丢弃的帧),我们都能以非常接近于1的

概率认为这些帧在传输过程中没有产生差错”。

■也就是说:“凡是接受的帧都没有传输差错”

(有差错的帧就丢弃而不接受)。

■要做到“可靠传输”(即发送什么就收到什么)

就必须再加上确认和重传机制。

停止等待协议的算法

■这里不使用否认帧(实用的数据链路层协议大

都是这样的),而且确认帧带有序号

■按照习惯的表示法,ACK"表示"第〃-1号帧

已经收到,现在期望接收第〃号帧”。

-ACK1表示“0号帧已收到,现在期望接收的下一

帧是1号帧";

-ACK0表示“1号帧已收到,现在期望接收的下一

帧是。号帧”。

在发送结点

(1)从主机取一个数据帧,送交发送缓存。

(2)V(S)-O。

(3)N(S)-V(S)。

(4)将发送缓存中的数据帧发送出去。

(5)设置超时计时器。

(6)等待。{等待以下(7)和(8)这两个事件中最先出现的一个}

(7)收到确认帧ACK”,

若l-V(s),贝ij:

从主机取一个新的数据帧,放入发送缓存;

V(S)-[1-V(S)],转到(3)。

否则,丢弃这个确认帧,转到(6)。

(8)若超时计时器时间到,则转到(4)。

在接收结点

(1)V(R)<-Oo

(2)等待。

(3)收到一个数据帧;

若N(S)=V(R),则执行(4);

否则丢弃此数据帧,然后转到(6)。

(4)将收到的数据帧中的数据部分送交上层软件

(也就是数据链路层模型中的主机)。

(5)V(R)-[1-V(R)]O

(6)/7-V(R);

发送确认帧ACK",转到(2)。

停止等待协议的要点

■只有收到序号正确的确认帧ACK/7后,才更新

发送状态变量V(S)一次,并发送新的数据帧。

-接收端接收到数据帧时,就要将发送序号N(S)

与本地的接收状态变量V(R)相比较。

-若二者相等就表明是新的数据帧,就收下,并发送

确认。

-否则为重复帧,就必须丢弃。但这时仍须向发送端

发送确认帧ACK。,而接收状态变量V(R)和确认序

号〃都不变。

停止等待协议的要点(续)

■连续出现相同发送序号的数据帧,表明

发送端进行了超时重传。连续出现相同

序号的确认帧,表明接收端收到了重复

帧。

■发送端在发送完数据帧时,必须在其发

送缓存中暂时保留这个数据帧的副本。

这样才能在出差错时进行重传。只有确

认对方已经收到这个数据帧时,才可以

清除这个副本。

停止等待协议的要点(续)

■实用的CRC检验器都是用硬件完成的。

■CRC检验器能够自动丢弃检测到的出错

帧。因此所谓的“丢弃出错帧”,对上

层软件或用户来说都是感觉不到的。

■发送端对出错的数据帧进行重传是自动

进行的,因而这种差错控制体制常简称

为ARQ(AutomaticRepeatreQuest),

直译是自动重传请求,但意思是自动请

求重传。

3.3.3停止等待协议的定量分析

-设》是一个数据帧的发送时间,且数据帧的长度是固

定不变的。显然,数据帧的发送时间》是数据帧的长

度)(bit)与数据的发送速率。(bit/s)之比,即

tf=lf/C=lf/C(s)(3-1)

-发送时间》也就是数据帧的发送时延。

■数据帧沿链路传到结点B还要经历一个传播时延tpO

■结点B收到数据帧要花费时间进行处理,此时间称为

处理时间中发送确认帧ACK的发送时间为taO

停止等待协议中数据帧和确认帧

1的发送时间关系

工]专播时延tp

0甚a

I重传时间

-重传时间的作用是:数据帧发送完毕后若经过了这样

长的时间还没有收到确认帧,就重传这个数据帧。

■为方便起见,我们设重传时间为

=。+3+〃+。%(3-2)

■设上式右端的处理时间G和确认帧的发送时间《都远

小于传播时延tp,因此可将重传时间取为两倍的传播

时延,即

tout=2tp(3-3)

简单的数学分析

-两个发送成功的数据帧之间的最小时间间隔是

tT=tf+t0"t=tf+2tp(3-4)

■设数据帧出现差错(包括帧丢失)的概率为p,

但假设确认帧不会出现差错。

■设正确传送一个数据帧所需的平均时间tav

〃=%(1+一个帧的平均重传次数)

简单的数学分析(续)

一帧的平均重传次数

={1XP[重传次数为l]+2xP[重传次数为2]+3XP[重传次数为3]+...}

={1xP[第1次发送出错]xP[第2次发送成功]

+2xP[第1,2次发送出错]xP[第3次发送成功]

+3xP[第1,2,3次发送出错]xP[第4次发送成功]+...)

=p(l—p)+2P2(1—p)+3p3(l-p)+...

这里P[X]是出现事件X的概率。

简单的数学分析(续)

得出正确传送一个数据帧所需的平均时间:

00

l

tav=tT+(l-2)ZiptT=G/(I—P)(3-5)

i=i

当传输差错率增大时,心也随之增大。当无差错时,p=0,G=%。

简单的数学分析(续)

每秒成功发送的最大帧数就是链路的最大吞吐量4nax。显然,

Anax=l%=(l-P)/%(3-6)

在发送端,设数据帧的实际到达率为九贝氏不应超过最大吞吐量4nax,即

2<(1-p)/tT(3-7)

用时间与进行归一化,得出归一化的吞吐量夕为

p=Atf<(1-p)/a<\(3-8)

其中参数a是卬的归一化时间:

a=tT/tf>l(3-9)

当重传时间远小于发送时间时,此时的归一化吞吐量

P&\—P(3-10)

[停止等待协议ARQ的优缺点

-优点:比较简单。

.缺点:通信信道的利用率不高,也就是说,信

道还远远没有被数据比特填满。

-为了克服这一缺点,就产生了另外两种协议,

即连续ARQ和选择重传ARQ。这将在后面进

一步讨论。

34发送窗口大于1的ARQ协议

[3.4.1连续ARQ协议的工作原理

-在发送完一个数据帧后,不是停下来等待确认

帧,而是可以连续再发送若干个数据帧。

-如果这时收到了接收端发来的确认帧,那么还

可以接着发送数据帧。

-由于减少了等待时间,整个通信的吞吐量就提

高了。

连续ARQ协议的工作原理

B

A

DATAOJJ^确认

ACK1DATAO送交主机

ACK!确认

超ACK2DATA1

时5__3fDATA2出错,丢弃

重_PATA3_JDATA3不按序,丢弃,重传ACK2

传,out

__ACK2DATA4不按序,丢弃,重传ACK2

时p

间t—一旦领2一ACK!DATA5不按序,丢弃,重传ACK2

一重传氏亚也

-EACK3确认DATA2]

L®t_DAJA3^ACK4确认DATA31送交主机

---

重传DA7A5

(1)接收端只按序接收数据帧。虽然在有差错的2号帧之

后接着又收到了正确的3个数据帧,但接收端都必须

将这些帧丢弃,因为在这些帧前面有一个2号帧还没

有收到。虽然丢弃了这些不按序的无差错帧,但应重

复发送已发送过的最后一个确认帧(防止确认帧丢

失)。

(2)ACK1表示确认0号帧DATAO,并期望下次收到1

号帧;ACK2表示确认1号帧DATA1,并期望下次收

到2号帧。依此类推。

(3)结点A在每发送完一个数据帧时都要设置该帧的超时

计时器。如果在所设置的超时时间内收到确认帧,就

立即将超时计时器清零。但若在所设置的超时时间到

了而未收到确认帧,就要重传相应的数据帧(仍需重

新设置超时计时器)。

在等不到2号帧的确认而重传2号数据帧时,虽

然结点A已经发完了5号帧,但仍必须向回走,将2

号帧及其以后的各帧全部进行重传。连续ARQ又称为

Go-back-NARQ,意思是当出现差错必须重传时,要

向回走N个帧,然后再开始重传。

需要注意:

(4)以上讲述的仅仅是连续ARQ协议的工作原理。协议

在具体实现时还有许多的细节。例如,用一个计时器

就可实现相当于/V个独立的超时计时器的功能。

3.3.2连续ARQ协议的吞吐量

-可以很方便地导出连续ARQ协议的吞吐

量公式。

3A2滑动窗口的概念

■连续ARQ需要首先解决两个问题:

(1)当未被确认的数据帧数目太多,有一帧错误,

就要重传许多帧。浪费。

(2)发送序号占用比特数,增加开销。

-发送端和接收端分别设定发送窗口和接收窗口。

-发送窗口用来对发送端进行流量控制。

■发送窗口的大小竹代表在还没有收到对方确认信

息的情况下发送端最多可以发送多少个数据帧。

WT

(d)|O|1|2|3|4|5|6|7|O|1|2

'获许发送不允许爰送这些帧

并已收到确认3个帧

接收端设置接收窗口

T在接收端只仃当收到的数据帧的发送序号落入接收

窗口内才允许将该数据帧收下。

■若接收到的数据帧落在接收窗口之外,则一律将其

丢弃。

■在连续ARQ协议中,接收窗口的大小1。

-只有当收到的帧的序号与接收窗口一致时才能接收该帧。

否则,就丢弃它。

-每收到一个序号正确的帧,接收窗口就向前(即向右方)

滑动一个帧的位置。同时发送对该帧的确认。

*

(a)01234567012

——--、―---____/

准备3收o号帧不允许接收这些帧

=>

(b)I012|3|4|5|6|7|O|1|2

已U1到

准备接收不允许接收这些帧

1号帧

-----------------►喙

:=>

⑹01234567012

"-------------------▼-------------------"------------------------------▽-----------------------------)

已收到I不允许接收这些帧

准备接收4号帧

滑动窗口的重要特性

■只有在接收窗口向前滑动时(与此同时

也发送了确认),发送窗口才有可能向

前滑动。

■收发两端的窗口按照以上规律不断地向

前滑动,因此这种协议又称为滑动窗口

协议。

■当发送窗口和接收窗口的大小都等于1

时,就是停止等待协议。

发送窗口的最大值

■当用〃个比特进行编号时,若接收窗口

的大小为1,则只有在发送窗口的大小

叫(2〃-1时,连续ARQ协议才能正确

运行。

■例如,当采用3bit编码时,发送窗口的

最大值是7而不是8。

3A3连续ARQ的信道利用率

■信道利用率:扣除控制信息的数据率与

信道容量之比。

■由于每个数据帧都必须包括一定的控制

信息(如帧的序号、地址、同步信息以及

其他的一些控制信息),所以即使连续不

停地发送数据帧,信道利用率(即扣除全

部的控制信息后的数据率与信道容量之

比)也不可能达到100%o

■当出现差错时(这是不可避免的),数据帧

的不断重传将进一步使信道利用率降低。

■要定量地分析这问题,就必须知道链路的差错

特性。对于卫星信道,每人比特的出错可视为

独立的(因为差错主要是由卫星到地座的传输

途径中的随机噪声引起的)。记误比醇率为

以O设数据帧长为If(即数据部分加上控制信

心、,则数据帧的差错率或误帧率(即1帧中

至少有1个比特出错的概率)为:

■p=\—Q—p)f(3-12)

■对于很小的儿,上式可近似为:

■p口1fpb«1(3-13)

■设每帧中数据为4bit而控制信息为4

bito

■那么不产生差错时,实际信道利用率为:

u=wi

-如出现差错,假设1帧需重传a次:

U=4/M+4)(l+a)

I最佳帧长

■若数据帧的帧长取得很短,那么控制信

息在每一帧中所占的比例就增大,因而

额外开销增大,这就导致信道利用率的

下降。

■若帧长取得太长,则数据帧在传输过程

中出错的概率就增大,于是重传次数将

增大,这也会使信道利用率下降。

■由此可见,存在一个最佳帧长,在此帧

长下信道的利用率最高。

信道利用率与数据长度的关系曲线

信道利用率与数据长度的关系曲线

3A4选择重传ARQ协议

■可加大接收窗口,先收下发送序号不连续但仍

处在接收窗口中的那些数据帧。等到所缺序号

的数据帧收到后再一并送交主机。

■选择重传ARQ协议可避免重复传送那些本来

已经正确到达接收端的数据帧。

■但我们付出的代价是在接收端要设置具有相当

容量的缓存空间。

■对于选择重传ARQ协议,若用n比特进行编

号,则接收窗口的最大值受下式的约束

n

WR<2/2(3-18)

WT<,接收窗口股最大时%=%=2加,

3.5因特网的点对点协议PPP

3.5.1PPP协议的工作原理

■现在全世界使用得最多的数据链路层协

议是点对点协议PPP(Point-to-Point

Protocol)o

-用户使用拨号电话线接入因特网时,一

般都是使用PPP协议。

用户拨号入网的示意图

用户家庭因特网服务提供者(ISP)

使用TCP/IP的,因

拨号电话线

--------------------------------------------

口]使用TCP/IP的

PPP连接

1.ppp协议应满足的需求

■简单——这是首要的要求

■封装成帧

■透明性

■多种网络层协议

■多种类型链路

■差错检测

■检测连接状态

■最大传送单元MTU

■网络层地址协商

■数据压缩协商

2.PPP协议不需要的功能

■纠错

-流量控制

■序号

-多点线路

■半双工或单工链路

3.PPP协议的组成

■1992年制订了PPP协议。经过1993年

和1994年的修订,现在的PPP协议已

成为因特网的正式标准[RFC1661]O

■ppp协议有三个组成部分

■一个将IP数据报封装到串行链路的方法。

■链路控制协议LCP(LinkControlProtocol)o

■网络控制协议NCP(NetworkControl

Protocol)o

352PPP协议的帧格式

-标志字段F仍为0x7E(符号“Ox”表示

后面的字符是用十六进制表示。十六进

制的7E的二进制表示是01111110)。

■地址字段A只置为OxFFo地址字段实际

上并不起作用。

-控制字段C通常置为0x03。

■PPP是面向字节的,所有的PPP帧的长

度都是整数字节。

ppp协议的帧格式

先发送

字节1112不超过1500字节21

<------------------------------------PPP帧---------------------------►

■PPP有一个2个字节的协议字段。

-当协议字段为0x0021时,PPP帧的信息字段就是

IP数据报。

-若为0xC021,则信息字段是PPP链路控制数据。

-若为0x8021,则表示这是网络控制数据。

透明传输问题

■当PPP用在同步传输链路时,协议规定

采用硬件来完成比特填充(和HDLC的

做法一样)。

■当PPP用在异步传输时,就使用一种特

殊的字节填充法。

■字节填充法

-将信息字段中出现的每一个0x7E字节转

变成为字节序列

2(0x7D,0x5E)o

■若信息字段中出现一个0x7D的字节,则将

其转变成为字节序列

2(0x7D,0x5D)o

■若信息字段中出现ASCII码的控制字符

(即数值小于0x20的字符),则在该字

符前面要加入一个0x7D字节,同时将该

字符的编码加以改变。

零比特填充

■PPP协议用在SONET/SDH链路时,是

使用同步传输(一连串的比特连续传

送)。这时PPP协议采用零比特填充方

法来实现透明传输。

■在发送端,只要发现有5个连续1,则

立即填入一个0。接收端对帧中的比特

流进行扫描。每当发现5个连续1时,就

把这5个连续1后的一个0删除,

零比特填充

宁段中出现了和—0^001111110001010

7

藤字段F完全一样V

的8比特组合会被误认为是标志字段F

ooidid1iddiO-XOOO-XO-XO

发送端在5个连1之后01F

填入。比特再发送出去

发送端填入0比特

010011111010001010

在接收端把5个连1

之后的0比特删除

接收端删除填入的o比特

不提供使用序号和确认

j的可靠传输

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论