计算机网络之数据链路层

数据链路层的功能:在物理层提供服务的基础上向网络层提供服务,主要作用加强物理层传输原始比特流的功能,将物理层可能出错的物理连接改造为逻辑上无差错的数据链路,是指对网络层表现为一条无差错的链路。

为网络层提供服务:

  1. 无确认的无连接服务适用于实时通信或误码率较低的通信信道,如以太网
  2. 有确认的无连接服务,但目的机器收到数据帧时必须发回确认,提高传输的可靠性,适用于误码率较高的通信信道,如无线通信
  3. 有确认的面向连接服务,三阶段:建立数据链路、传输帧、释放数据链路,每一帧都要确认,确认后才发送下一帧,可靠性最好,适用于通信要求(可靠性、实时性)较高的场合

注:有连接就一定有确认,即不存在无确认的缅想的服务

链路管理

帧界定、帧同步、透明传输

帧界定:网络层传输信息,将分组封装成帧,将一段数据的前后分别而添加首部和尾部,就构成了帧,好有很多控制信息,重要作用是确定帧的界限,即帧界定

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

流量控制:不是数据链路层特有功能,只是高层协议控制对象不同,数据链路层控制的是相邻两结点之间数据链路上的流量传输层控制的是从源端到目的端之间的流量

差错控制:用以使发送发确定接收方是否正确收到其发送的数据的方法称为差错控制。这些错误可分为位错和帧错。

位错:帧中某些位出现了差错。通常采用循环冗余校验(CRC),通过自动重传请求(ARQ)方式来重传出错的帧。

帧错:指帧的丢失、重复或失序等错误,在数据链路层引入定时器和编号机制,能保证。

组帧

组帧:为了使接收方能正确的接受并检查所传输的帧,发送方必须依据一定的规则把网

络层递交的分组封装成帧,为组帧。

字符计数法:指的是在帧头部使用一个计数字段来标明帧内字符数。问题:如果计数字段出错,就失去了帧边界划分的依据。

字符填充的首位定界符法

字符填充法使用一些特定的字符来定界一帧的开始(DLE ATX)与结束(DLE ETX)避免信息中出现特殊符加了转义字符DLE

比特填充的首尾标志法:··发送方的数据链路层在信息位中遇到五个连续的1自动在后面插入一个0,接收方逆操作。

违规编码法:在物理层进行编码时,通常采用违规编码法,电平对在数据比特流是违规的,可以界定帧的开始和终止。不需要采用任何填充技术,但他只使用2于采用冗余编码的特殊编码环境。

差错控制

传输过程中的差错都是由噪声控制的,两类噪声一类是信道所固有的、连续存在的随机热噪声,可以通过提高噪声比来减少或避免干扰;另一类是由外界特定的短暂原因所造成的冲击噪声,不能通过提高噪声比来减少或避免干扰,是产生噪声的重要原因。

通常用编码技术进行差错控制,两类,自动重传请求(ARQ)和前向纠错

另一种分类方式,检错编码和纠错编码。

检错编码

检错编码都采用冗余编码技术,核心思想在有效数据(信息位)被发送前,先按照某种关系附加一定的冗余位,构成一个符合某一规则的码字后再发送,常见的检错编码1有奇偶校验码和循环冗余码

奇偶校验码是奇校验和偶校验的统称,由n-1位信息元和1位校验元组成,如果是奇数验码,那么在附加一个校验元后,码长位n的码字中“1”的个数为奇数;如果是偶数验码,那么在附加一个校验元后,码长位n的码字中“1”的个数为偶数,又分为垂直奇偶校验、水平奇偶校验和水平垂直奇偶校验。

循环冗余校验:循环冗余码又称为多项式码。给定一个m bit的帧或报文,发送器生成一个r bit的序列(FCS),这样生成的帧将由m+r比特组成。

纠错编码:最常见的纠错编码是海明威编码,它能发现双比特错,但只能纠正单比特错。

M个信息位插入r个校验位组成 m+r位码字,他们满足的关系2rm+r+1

流量控制与可靠传输机制

流量控制、可靠传输与滑动窗口机制

流量控制涉及对链路上的帧的发送速率的控制,以使接收方有足够的缓冲空间来接受某个帧常见的方式有两种停止等待协议滑动窗口协议

停止等待流量控制原理

发送方每发送一帧,都要等待接收方的应答信号,之后才能发送下一帧,接收方没接收一帧都要反馈一个应答信号,表示可接受下一帧,如果接收方不反馈应答信号,那么发送方必须一直等待。每次只允许发送一帧,然后就陷入等待接收方确认信息的过程,因而传输效率很低。

滑动窗口流量控制基本原理

在任意时刻,发送方都维持一组连续的允许发送的帧的序号,称为发送窗口;同时接收方也维持一组连续的允许接收帧的序号,称为接收窗口。发送窗口用来对发送方进行流量控制,而发送窗口的大小WT代表在还未收到对方确认消息的情况下发送方最多还可以发送多少个数据帧。

发送端每收到一个确认帧,发送窗口就向前推动一个帧的位置,当发送窗口内没有可发送的帧时,发送方就会停止发送,直到收到接收方发送的确认帧使窗口移动,窗口内有可以发送的帧后,才开始继续发送。

接收端收到数据帧后,将窗口向前移动一个位置,并发回确认帧,若收到的数据帧落在接收窗口之外,则一律丢弃。

特点:

  1. 只有接受窗口向前滑动(同时接收方发送了确认帧)时,发送窗口才有可能(只有发送方收到确认帧后才一定)向前滑动。
  2. 几个协议在发送接收窗口大小有区别

停止-等待协议:发送窗口大小=1,接收窗口大小=1

后退N帧协议:发送窗口大小>1,接收窗口大小=1

选择重传协议:发送窗口大小>1,接收窗口大小>1

  1. 接收窗口的大小为1时,可保证帧的有序接收
  2. 数据链路层的滑动窗口协议中,窗口的大小在传输过程是固定的(注意与迪章传输层的滑动窗口协议的区别)

可靠传输机制:数据链路层的可靠传输机制通常使用确认和超时重传两种机制来完成。为了提高传输效率,将确认捎带在一个回复帧中,称为捎带确认

超时重传是指发送方在发送某个数据帧后就开启一个计时器,在一定时间内如果没有得到发送的数据帧的确认帧,那么就重新发送该数据帧直到发送成功为止。

自动重传请求,接收方请求发送方重传出错的数据帧来恢复出错的帧,是通信中用于处理信道通信差错的方法之一。

注意在数据链路层中流量控制机制和可靠传输机制是交织在一起的。

单帧滑动窗口与停止等待协议 略

多帧滑动窗口与后退N帧协议 略

一共三种滑动窗口协议

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Clark-dj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值