计算机网络——数据链路层


数据链路层使用的信道主要有以下两种类型:

  • 点对点信道:一对一
  • 广播信道:一对多

在这里插入图片描述

一、使用点对点信道的数据链路层

1. 数据链路和帧

  • 链路:从一个结点到相邻节点的一段物理线路,中间没有任何其他的交换结点。
  • 数据链路:除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
  • 点对点信道的数据链路层在进行通信时的主要步骤
    - 结点A的

2. 三个基本问题

封装成帧、透明传输、差错检测、顺序控制、流量控制(后两个目前已不用)

  • 封装成帧

    • 封装成帧:就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。
    • 首部和尾部的一个重要作用就是进行帧定界。
    • 每一种数据链路层协议都规定了帧的数据部分的长度上限——最大传输单元 MTU。(数据链路层的最大MTU为1500字节,最小MTU为64字节)
      在这里插入图片描述
      在这里插入图片描述
  • 透明传输

    • 透明传输:表示无论什么样的比特组合的数据都能通过这个数据链路层。
    • 解决思路:设法使数据中可能出现的控制字符“SOH”和“EOT”在接受端不被解释为控制字。
    • 具体方法:字节填充 或 字符填充
      • 发送端的数据链路层对帧中数据部分出现的控制字SOH、EOT和ESC的前面插入一个转义字符“ESC”。
      • 接收端的数据链路层在把数据送往其网络层之前则要删除这个插入的转义字符。
        在这里插入图片描述
        在这里插入图片描述
  • 差错检测

    • 在传输过程中可能会产生比特差错:1 可能会变成 0 而 0 也可能变成 1。
    • 在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate)。误码率与信噪比有很大的关系。
    • 循环冗余检验CRC
      看这篇博客 —> CRC循环冗余检验
  • 顺序控制

    • 问题的提出:发送端先发的帧在点到点的线路上由于某种原因没有到达接收端;发送端后发的帧先于先发的帧到达接收端。
    • 解决方法:通过在帧中增加序号管理字段,来解决接收端能按顺序接收到发送端发来的数据。
  • 流量控制

    • 问题的提出:收发双方由于收发速率不协调,导致接收端缓冲区溢出。
    • 解决方法:建立反馈应答机制
      • 反馈重发方式----接收方流量控制
      • 滑动窗口技术 ----发送方的流量控制

二、点对点协议PPP

1. PPP协议的特点

  • PPP 是面向字节的,所有的 PPP 帧的长度都是整数字节。
  • PPP协议应满足的需求:
    简单(首要要求)、封装成帧、透明性、多种网络层协议、多种类型链路、差错检测、检测连接状态、最大传送单元、网络层地址协商、数据压缩协商;
  • PPP 协议的组成
    • 一个将 IP 数据报封装到串行链路的方法;
    • 一个链路控制协议 LCP (Link Control Protocol);
    • 一个网络控制协议 NCP (Network Control Protocol) ;

2. PPP协议的帧格式

在这里插入图片描述

  • 字段的意义:
    • 标志字段 F = 0x7E (符号“0x”表示后面的字符是用十六进制表示。十六进制的 7E 的二进制表示是 01111110)。
    • 地址字段 A 只置为 0xFF。地址字段实际上并不起作用。
    • 控制字段 C 通常置为 0x03。
    • 协议字段
  • 字节填充(异步传输)
  • 零比特填充(同步传输)

三、使用广播信道的数据链路层

  • 为了通信简便,以太网采取了以下两种措施:
    • 采用较为灵活的无连接方式,即不需要建立连接就可以发送数据。适配器对发送的数据帧不进行编号,也不要求对方发回确认。以太网提供的服务是不可靠的交付,即尽最大努力交付。
    • 以太网发送数据都使用曼彻斯特编码的信号。

1. CSMA/CD 协议

载波监听多点接入/碰撞检测(Carrier Sense Multiple Access with Collision Detection)

  • CSMA/CD 协议 要点
    • 多点接入:网络上所有工作站收发数据共同使用同一条总线,且发送数据是广播式的。
    • 载波监听:网络上各个工作站在发送数据前都要确认总线上有没有数据传输。若有数据传输(称总线为忙),则不发送;若无数据传输(称总线为空),立即发送。
    • 碰撞检测:为了减少碰撞发生后的影响,工作站在发送数据过程中还要不停地检测自己发送的数据,看有没有在传输过程中与其他工作站的数据发生碰撞。(也称为 冲突检测)
  • CSMA/CD 协议 的思想
    • 先听后发
    • 边听边发
    • 冲突即停
    • 延迟重发
  • CSMA/CD 协议 流程
    在这里插入图片描述

2. CSMA/CD 协议 难点补充

  • 传播时延对载波监听的影响
    在这里插入图片描述

  • 强化碰撞

    • 当发送数据的站一旦发现发生了碰撞时:
      • 立即停止发送数据;
      • 再继续发送若干比特的人为干扰信号,以便让所有用户都知道现在已经发生了碰撞。
        在这里插入图片描述
  • 争用期

    • 最先发送数据帧的站,在发送数据帧后至多经过时间 2τ (两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。
    • 以太网的端到端往返时延 2τ 称为争用期,或碰撞窗口。
    • 经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。
    • 例如,对于10 Mb/s以太网,发送 512 bit(即 64 字节) 的时间需要 51.2μs。以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突,以太网取 51.2 μs 为争用期的长度。对于100 Mb/s以太网,争用期为 5.12μs。
    • 以太网上帧的最小时间间隔为 9.6 μs,相当于传输96比特所需的时间。
  • 二进制指数类型退避算法,以及存在问题

    • 发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。退避时间为争用期的整数倍,这个倍数可由如下的算法确定。
    • 退避算法
      在这里插入图片描述
    • 二进制指数类型退避算法存在的问题——公平性问题
  • CSMA/CD的优缺点

    • 优点:原理比较简单,技术上易实现,网络中各工作站处于平等地位,不需集中控制,不提供优先级控制。
    • 缺点:但在网络负载增大时,发送时间增长,成功发送的时间随机不确定,发送效率急剧下降。

四、使用广播信道的以太网

1. 使用集线器的星形拓扑

  • 传统以太网最初是使用粗同轴电缆,后来演进到使用比较便宜的细同轴电缆,最后发展为使用更便宜和更灵活的双绞线
  • 这种以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器(hub)
  • 集线器的特点
    • 集线器是使用电子器件来模拟实际电缆线的工作,因此整个系统仍然像一个传统的以太网那样运行。
    • 使用集线器的以太网在逻辑上仍是一个总线网,各工作站使用的还是 CSMA/CD 协议,并共享逻辑上的总线。
    • 集线器很像一个多接口的转发器,工作在物理层。
      在这里插入图片描述

2. 以太网的信道利用率

在这里插入图片描述

  • 一个帧从开始发送,经可能发生的碰撞后,将再重传数次,到发送成功且信道转为空闲(即再经过时间 τ 使得信道上无信号在传播)时为止,所需的时间是发送一帧所需的平均时间。
  • 设帧长为 L (bit),数据发送速率为 C (b/s),因而帧的发送时间为 T0 = L/C(s)。
  • 定义参数 α ,是以太网单程端到端时延 τ 与帧的发送时间 T0 之比
    在这里插入图片描述
  • 发送一帧占用线路的时间是 T0 + τ ,而帧本身的发送时间是T0。于是我们可计算出理想情况下的极限信道利用率 Smax为:
    在这里插入图片描述
  • 以太网取 51.2 μs 为争用期的长度;
  • 对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节;

3. 以太网的 MAC 层

  • 在局域网中,硬件地址又称为物理地址,或 MAC 地址。
  • 常用的以太网MAC帧格式有两种标准 :
    • DIX Ethernet V2 标准(最常用)
    • IEEE 的 802.3 标准
      在这里插入图片描述

五、扩展的以太网

1. 在物理层扩展以太网

  • 用多个集线器连成更大的以太网
    在这里插入图片描述
  • 优点
    • 使原来属于不同碰撞域的局域网上的计算机能够进行跨碰撞域的通信。
    • 扩大了局域网覆盖的地理范围。
  • 缺点
    • 碰撞域增大了,但总的吞吐量并未提高。
    • 如果不同的碰撞域使用不同的数据率,那么就不能用集线器将它们互连起来。

2. 在数据链路层扩展以太网

  • 网桥的概念
    • 在数据链路层扩展局域网是使用网桥。
    • 网桥工作在数据链路层,依靠转发表来准发帧,它根据 MAC 帧的目的地址对收到的帧进行转发。
    • 网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口 。
  • 网桥的工作原理
    在这里插入图片描述
  • 网桥的优点
    • 过滤通信量
    • 扩大了物理范围
    • 提高了可靠性
    • 可互连不同物理层、不同 MAC 子层和不同速率(如10 Mb/s 和 100 Mb/s 以太网)的局域网
  • 网桥的缺点
    • 存储转发增加了时延。
    • 在MAC 子层并没有流量控制功能。
    • 具有不同 MAC 子层的网段桥接在一起时时延更大。
    • 网桥只适合于用户数不太多(不超过几百个)和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞。这就是所谓的广播风暴。
  • 透明网桥
    • “透明”是指局域网上的站点并不知道所发送的帧将经过哪几个 网桥,因为网桥对各站来说是看不见的。
    • 透明网桥是一种即插即用设备,其标准是 IEEE 802.1D。
    • 网桥在转发表中登记以下三个信息:地址、接口和时间。
    • 自学习
      • 网桥收到一帧;
      • 先查找转发表,判断有无与收到帧的源地址相匹配的项目;
      • 如没有,就在转发表中增加一个项目(源地址、进入的接口和时间);
      • 如有,则把原有的项目进行更新。
    • 转发帧
      • 查找转发表中有无与收到帧的目的地址相匹配的项目;
      • 如没有,则通过所有其他接口(但进入网桥的接口除外)按进行转发;
      • 如有,则按转发表中给出的接口进行转发;
      • 若转发表中给出的接口就是该帧进入网桥的接口,则应丢弃这个帧(因为这时不需要经过网桥进行转发)。
        在这里插入图片描述

版权声明:本文为pary__for原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。