计算机网络-数据链路层

计算机网络-数据链路层

二月 27, 2021

基本概念

  • 链路:物理上的线路段
  • 数据链路:硬件(数据线路段)+软件(通信协议)

信道类型

  • 点对点信道
  • 广播信道

传输的基本单位

  • 帧是面向字节,其数据长度为整数个字节

    传输的基本单位——帧

解决的基本问题

  • 封装成帧
  • 透明传输
  • 差错控制

封装成帧

封装成帧

透明传输

  • 当出现SOH(即0000 0001)时说明这是帧的开头
  • 当出现EOT(即0000 0100)时说明这是帧的结尾

透明传输

问:但是如果我数据部分里面恰好出现了0000 0001呢?

答:这时候就用到了我们的转义字符(ESC)了,我们在出现SOH前添加ESC,声明一下我们后面的内容是数据,你别乱给我转义

转移字符

差错检测

  1. 通过循环冗余检验(CRC)计算
  2. 得到帧校验序列(FCS)

点到点信道的数据链路层

  • 代表协议:PPP协议

    组成:

    • NCP协议(网络控制协议)
    • LCP协议(链路控制协议)
    • HDLC(高级数据链路控制协议)

    注意:PPP协议没有序号机制和确认机制

    • 原因①:数据链路层出错概率不大

    • 原因②:数据链路层并不保证上层数据的传输可靠性

    • 原因③:帧检验序列FCS字段保证了无差错检测

PPP协议帧格式

协议字段的常用协议:

0x0021:IP数据包

0xC021:LCP数据

0x8021:NCP数据

0xC023:安全性认证PAP

0xC025:LQR

0xC223:安全性认证CHAP

广播信道的数据链路层

实现的方法

  • 静态划分信道

    • 频分复用
    • 时分复用
    • 波分复用
    • 码分复用

    实现麻烦,不使用该方法

  • 动态媒体接入控制(多点接入)

    • 随机接入(以太网主要采用)
    • 受控接入(如多点线路探询polling或轮询,已不采用)

常用协议

  • CSMA/CD(载波侦听多路访问/冲突检测)协议

    载波侦听多路访问:多台主机以多点的方式连接在一条总线上

    冲突检测:发数据前会检测总线上是否有数据传输,有则不发送


    检测依据:信道上的电压

    通讯方式:半双工通信协议

    • 争用期:2τ(通常取51.2μs)

      51.2μs在10Mb/s的以太网中,可发送512bit,即64字节

      所以导致:

      • 以太网线长度大多不大于100米
      • 发送的数据至少64个字节
        • 以太网帧的最短有效帧长度为64字节
        • 少于64字节的帧都已由于冲突而中止的异常帧
    • 退避算法:

      • 基本退避时间:一般为2τ
      • 重传时延为r倍的基本退避时间
      • r是从集合[0,1,2,…,(2^k-1)]中的随机取出的一个数
      • k=Min[重传次数,10]
      • 当重传达到16次仍没有成功会丢弃该帧,并向上层报告

以太网

  • 满足CSMA/CD协议的网络

  • 为了使数据链路层更好的适应多种局域网标准,数据链路层还拆分成两个子层

    • 逻辑链路控制LLC子层
    • 媒体接入控制MAC子层

    市面上的网络适配器大多仅装有MAC协议,而没有LLC协议

  • 提供的服务是不可靠的交付,尽最大努力交付

  • MAC地址:MAC层的硬件地址

网络适配器会从网络中收到的MAC帧解析出MAC地址

  • 如果是发给自己的则收下,会接受
    • 单播帧
    • 多播帧
    • 广播帧
  • 否则丢弃

MAC帧格式

mac帧格式

  • 有效帧的要求:
    • 必须为整数个字节
    • FCS无差错
    • 数据长度必须在46-1500个字节范围内(其中1500为最大MTU)
    • 帧长度必须在64-1518个字节范围内
  • 每个帧之间间隔不能少于9.6μs,给时间清理接受的缓存

拓展以太网

拓展范围

  • 双绞线(100米)
  • 光纤(上千公里)

拓展数量

  • 网桥

    • 先检测mac地址,再确认发往那个端口
    • 端口连接的是集线器
  • 交换器

    端口连接的是主机

高速以太网

  • 100Mb/s
  • 全双工通信
  • 不使用CSMA/CD协议
  • 保持最短帧长度不变,但网段的最大电缆长度减小至100米
  • 帧间隔时间9.6μs改成现在的0.96μs

吉比特以太网

  • 1Gb/s
  • 半双工/全双工通信
  • 半双工使用CSMA/CD协议,全双工不使用CSMA/CD协议

十吉比特以太网

  • 10Gb/s
  • 不再使用铜线,只使用光纤作为传输媒介
  • 全双工通信
  • 不使用CSMA/CD协议
  • 从而能够实现端对端通信,从局域网扩大到城域网和广域网