计算机 络流量控制方式,猿考研之计算机 络篇三(链路层,差错控制,流量控制与可靠传输)…

链路层

概念

结点:主机、路由器

链路: 络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。

数据链路: 络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路。

帧:链路层的协议数据单元,封装 络层数据 。

数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据 。

功能

数据链路层在物理层提供服务的基础上向 络层提供服务,其最基本的服务是将源自 络层来的数据可靠地传输到相邻节点的目标机 络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对 络层表现为一条无差错的链路。

功能一:为 络层提供服务。

无确认无连接服务,不建立连接,不确认。通常用于实时通信,或者是误码率低的通信

有确认无连接服务,通常用于误码率高的通信,比如无线通信

有确认面向连接服务。

有链接一定有确认

功能二:链路管理,即连接的建立、维持、释放(用于面向连接的服务)。

功能三:组帧

功能四:流量控制。限制发送方哦~

功能五:差错控制(帧错/位错)。

组帧

封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。

首部和尾部包含许多的控制信息,他们的一个重要作用:帧定界(确定帧的界限)。

帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。

组帧的四种方法:1.字符计数法,2.字符(节)填充法,3.零比特填充法,4.违规编码法。

字符(节)填充法

填充转义字符

违规编码法

差错产生的原因

概括来说,传输中的差错都是由于噪声引起的。

全局性

1.由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随机存在的。

解决办法:提高信噪比来减少或避免干扰。(对传感器下手)

局部性

2.外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因。

解决办法:通常利用编码技术来解决。

数据链路层编码和物理层的数据编码与调制不同。

物理层编码针对的是单个比特,解决传输过程中比特的同步等问题,如曼彻斯特编码。而数据链路层的编码针对的是一组比特,它通过冗余码的技术实现一组二进制比特串在传输过程是否出现了差错。

冗余编码

在数据发送之前,先按某种关系附加上一定的冗余位,构成一个符合某一规则的码字后再发送。当要发送的有效数据变化时,相应的冗余位也随之变化,使码字遵从不变的规则。接收端根据收到码字是否仍符合原规则,从而判断是否出错。

奇偶校验码

接收端检错过程

把收到的每一个帧((上题就是1101010111110))都除以同样的除数(上题就是10011),然后检查得到的余数R。

1.余数为0,判定这个帧没有差错,接受。

2.余数为不为0,判定这个帧有差错(无法确定到位),丢弃。

FCS的生成以及接收端CRC检验都是由硬件实现,处理很迅速,

因此不会延误数据的传输。

在数据链路层仅仅使用循环冗余检验CRC差错检测技术,只能做到对帧的无差错接收,即“凡是接收端数据链路层接受的帧,我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错”。接收端丢弃的帧虽然曾收到了,但是最终还是因为有差错被丢弃。“凡是接收端数据链路层接收的帧均无差错”。

“可靠传输”:数据链路层发送端发送什么,接收端就收到什么。

链路层使用CRC检验,能够实现无比特差错的传输,但这还不是可靠传输。

纠错-海明码

海明码:发现双比特错,纠正单比特错。

工作原理:动一发而牵全身

Step2

Step4

停止-等待协议

出现的原因

除了比特出差错,底层信道还会出现丢包问题。

丢包:物理线路故障、设备故障、病毒攻击、路由信息错误等原因,会导致数据包的丢失。

每发送完一个帧(分组)就停止发送,等待对方的确认,在收到确认后再发送下一个帧(分组)。

特点:简单,效率低,信道利用率太低

发送窗口大小=1,接收窗口大小=1;

随着通信链路的越来越好,链路层抛弃了可靠传输的功能,只实现差错控制,交给传输层实现

无差错情况

ACK丢失

滑动窗口协议

要点

累积确认(偶尔捎带确认)->缺点(批量重传)

接收方只按顺序接收帧,不按序无情丢弃

确认序列 最大的、按序到达的帧

发送窗口最大为2n-1,接收窗口大小为1

因连续发送数据帧而提高了信道利用率

在重传时必须把原来已经正确传送的数据帧重传,是传送效率降低

发送窗口大小>1,接收窗口大小=1;

滑动窗口长度

选择重传协议(Selective Repeat)

SR发送方必须响应的三件事

1.上层的调用

从上层收到数据后,SR发送方检查下一个可用于该帧的序 ,如果序 位于发送窗口内,则发送数据帧;否则就像GBN一样,要么将数据缓存,要么返回给上层之后再传输。

2.收到了一个ACK

如果收到ACK,加入该帧序 在窗口内,则SR发送方将那个被确认的帧标记为已接收。如果该帧序 是窗口的下界(最左边第一个窗口对应的序 ),则窗口向前移动到具有最小序 的未确认帧处。如果窗口移动了并且有序 在窗口内的未发送帧,则发送这些帧。

超时事件每个帧都有自己的定时器,一个超时事件发生后只重传一个帧。

SR接收方要做的事

来者不拒(窗口内的帧)

SR接收方将确认一个正确接收的帧而不管其是否按序。失序的帧将被缓存,并返回给发送方一个该帧的确认帧【收谁确认谁】,直到所有帧(即序 更小的帧)皆被收到为止,这时才可以将一批帧按序交付给上层,然后向前移动滑动窗口。

如果收到了窗口序 外(小于窗口下界)的帧,就返回一个ACK。其他情况,就忽略该帧。

滑动窗口长度

如果窗口过大,会有二义性的问题

发送窗口最好等于接收窗口。(大了会溢出,小了没意义)

WbTmax = WRmax = 2(n-1)

信道划分介质访问

传输数据使用的两种链路

点对点

链路两个相邻节点通过一个链路相连,没有第三者。

应用:PPP协议,常用于广域 。

广播式链路

所有主机共享通信介质。

应用:早期的总线以太 、无线局域 ,常用于局域 。

典型拓扑结构:总线型、星型(逻辑总线型)

当>2个设备同时发送数据怎么办:介质访问控制

介质访问控制的内容就是,采取一定的措施,使得两对节点之间的通信不会发生互相干扰的情况。

FDM

统计时分复用STDM

CDM

**码分多址(CDMA)**是码分复用的一种方式

1个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的m位的芯片序列。

发送1时站点发送芯片序列,发送0时发送芯片序列反码(通常把0写成-1)。

如何不打架:多个站点同时发送数据的时候,要求各个站点芯片序列相互正交(规格化内积=0)

对应位相乘,然后相加,除以总的位数 =0

如何合并:各路数据在信道中被线性相加

对应位相加

如何分离:合并的数据和源站(芯片序列)规格化内积。

对应位相乘,然后求总和,除以总的位数

文章知识点与官方知识档案匹配,可进一步学习相关知识 络技能树首页概览22471 人正在系统学习中 相关资源:绞车提升能力及钢丝绳验算软件煤矿用_绞车提升能力计算软件-C#…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年5月20日
下一篇 2021年5月20日

相关推荐