计算机网络_数据链路层

数据链路层概述

封装成帧 差错检测 可靠传输

使用广播信道的数据链路层(共享式局域网)
以太网的媒体接入控制协议CSMA/CD
无线局域网
802.11局域网的媒体接入控制协议CSMA/CA

封装成帧

封装成帧使指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧

  1. 帧头和帧尾中包含有重要的控制信息
  2. 帧头和帧尾的作用之一就是帧定界

透明传输时指数据木链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样
面向字节的物理链路使用字节填充的方法实现透明传输
面向比特的物理链路使用比特填充的方法实现透明传输

为了提高的传输效率,应当使帧的数据部分的长度尽可能大些
考虑到差错控制等多种因素,每一种数据链路层协议都规定了帧的数据部分的长度上限,即最大传送单元MTU.

差错检测

实际的通信链路都不是理想的,比特在传输过程种可能会产生差错 : 1可能会变成0.这称为比特差错
在一段时间内,传输错误的比特占有传输比特总数的比率称为误码率BER
使用差错检测码来检测数据在传输过程种是否禅城了比特差错,使数据链路层所要解决的重要问题之一

差错检测

奇偶校验
在待发送的数据后面添加1位奇偶校验码,使整个数据中"1"的个数为奇数或偶数
如果有奇数个位发生误码,则奇数性发生变化,可以检查出误码
如果有偶数个位发生误码,则奇偶性不发生变化,不能检查出误码

循环冗余校验
收发双方约定好一个生成多项式
法送方基于待发送的数据和生成多项式计算出差错检测码.将其添加到待传输数据的后面一起传输
接收方通过生成多项式来计算收到的数据是否产生误码

检错码只能检测出帧在传输过程中出现了差错,但并不能定位错误,因此无法纠正错误
想要纠正传输中的差错,可以使用冗余信息更多的纠错码进行向前纠错,但纠错码的开销比较大,在计算机网络中较少使用
循环冗余校验CRC有很好的检错能力,虽然计算比较复杂,但非常易于用硬件实现 因此被广泛引用与数据链路层
在计网中通常采用我们后续课程中将要讨论的检错重传的方式来纠正传输中的差错,或者仅仅是丢弃检测到差错的帧,这取决于数据链路层向其上层提供的是可靠传输服务还是不可靠传输服务

可靠传输的基本概念

使用差错检测技术,接收方的数据链路层就哭呀检测出帧在传输过程中是否产生误码
数据链路层向上层提供的服务类型
不可靠传输服务 : 仅仅丢弃有误码的帧,其他什么也不做
可靠传输服务 : 想办法实现发送端发送什么,接收端就手收到什么

一般情况下,有线链路的误码率比较低为了减小开销,并不要求数据链路称向上提供可靠传输服务,即使出现了误码,可靠传输的问题由其上层处理
无线链路易受干扰.误码率比较高,因此要求数据链路层必须向上提供可靠传输服务

  1. 比特差错只是传输差错的一种

  2. 从整个计网体系结构来看,传输差错还包括分组丢失分组丢失,分组失序以及分组重复.

  3. 分组丢失,分组失序以及分租重复这些传输差错 一般不会出现在数据链路层,而会出现在其上层

  4. 可靠传输服务并不仅限于数据链路层,其他各层均可选择实现可靠传输

  5. 可靠传输的实现比较复杂,开销也大

  6. TCP向其上层提供面向连接的可靠传输服务

  7. UDP向其上层提供法无连接,不可靠传输服务

  8. IP向其上层提供无连接,不可靠传输服务

  9. 802,11无线局域网要求数据链路层实现可靠传输以太网不要求数据链路层实现可靠传输服务

可靠传输的实现机制

停止-等待协议SW

  1. 接收端检测到数据分组有误码时,将其丢弃并等待发送的超时重传,但对于误码率较高的点对点链路,为使发送方尽早重传,也可给发送方发送NAK分组
  2. 为了让接收方能够判断所收到的数据是否是重复的,需要给数据分组编号,由于停止-等待协议的等待特性,只需1个比特编号就够了,即编号0和1
  3. 为了让发送方能够判断所收到的ACK分组是否是重复的,需要给ACK分组编号,所用比特数量与数据分组编号所用比特数量一样,数量链路层一般不会出现ACK分组迟到的情况,因此在数据链路称实现停止-等待协议可以不用给ACK分组编号
  4. 超时计时器设置的重传时间应仔细选择,一般可将重传时间选为略大于"从发送方到接收方的平均往返时间"
    1.在数据链路层点对点的往返时间比较确定,重传时间比较好确定
    2.然而在运输层,由于端到端往返时间非常不确定,设置合适的重传时间有时并不容易
  5. 当往返时延RTT远大于数据帧发送时延TO时,信道利用率非常低
  6. 若出现重传,则对于传送有用的数据信息来说,信道利用率还要低
  7. 为了克服停止-等待协议信道利用率很低的缺点,就产生了另外两种协议,即后退N帧协议GBN和选择重传协议SR.

回退N帧协议GBN
回退N帧协议在流水线传输的基础上利用发送窗口来限制发送方连续发送数据分组的数量,时一种连续ARO协议

在协议得工作过程中发送窗口不断向前滑动,因此这类协议又称之为滑动窗口协议

由于回退N帧协议的特性当通信线路质量不好时,其信道利用率并不比停止-等待协议高
选择重传协议SR
/发送方

  1. 发送方可在未收到接收方确认分组的情况下,将序号落在发送窗口内的多个数据分组全部发送出去.
  2. 发送方只有按序收到对已发送数据分组的确认时,发送窗口才能向前相应滑动;若收到未按序到达的确认分组时,对其进行记录,以防止其相应数据分组的超时重发,但发送窗口不能向前滑动

/接收方

  1. 接收方可接收未按序到达但没有误码并且序号落在接收窗口内的数据分组
  2. 为了使发送方仅重传出现差错的分组,接收方不能再采用累计确认,而需要对每个正确接收到的数据分组进行逐一确认
  3. 接收方只有再按序接收数据分组后,接收窗口才能向前相应滑动

点对点协议PPP

PPP协议的标准文档(RFC1661,RFC1662)
PPP协议为再点对点链路传输各种协议数据报提供了一个标准方法,主要由以下三部分组成

  1. 对各种协议数据报的封装方法
  2. 链路控制协议LCP 用于建立,配置以及测试书局链路的链接
  3. 一套网络控制协议NCPs 其中的每一个协议支持不同的网络层协议
    PPP帧的透明传输
  4. 面向字节的异步链路使用字节填充法
  5. 面向比特的同步链路使用比特填充法
    PPP协议的工作状态
    计算机网络_数据链路层_第1张图片

媒体接入控制的基本概念

共享信道要着重考虑的一个问题就是如歌协调多个发送和接收站点对一个共享传输媒体的占用,即媒体接入控制MAC
计算机网络_数据链路层_第2张图片

静态划分信道

计算机网络_数据链路层_第3张图片

媒体接入控制 动态接入控制 随机接入 CSMA/CD协议

CSMA/CD 协议的工作原理
多点接入MA :多个主机连接在一条总线上,竞争使用总线
载波监听CS : 发送帧前线检测总线,若总线空闲96比特时间,则立即发送 :若总线忙 :则持续检测总线知道总线空闲96比特时间后在重新发送
碰撞检测到CD 边发送边检测碰撞,若检测到碰撞,则立即停止发送,退游一段随机时间都再重新发送
上述过程可以比喻为 : 先听后说,边听边说: 一旦冲突 立即停说 等待时机 重写再说

你可能感兴趣的:(计算机综合基础,网络)