美文网首页
数据链路层

数据链路层

作者: 张_何 | 来源:发表于2021-08-03 11:18 被阅读0次

数据链路层

  • 链路: 从 1 个节点到相邻节点的一段物理线路(有线或无线),中间没有其他交换节点
  • 数据链路: 在一条链路上传输数据时,需要有对应的通信协议来控制数据的传输。 不同类型的数据链路所用的通信协议可能是不同的。
  • 广播信道: CSMA/CD 协议(比如同轴电缆、集线器等组成的网络)
  • 点对点信道: PPP 协议(比如 2 个路由器之间的信道)
  • 数据链路层的 3 个基本问题
  • 封装成帧
  • 透明传输
  • 差错检验

封装成帧

  • 帧的数据部分就是网络层传递下来的数据包(IP 数据包, Packet)
  • 最大传输单元 MTU(Maximum Transfer Unit),每一种数据链路层协议都规定了所能传送的帧的数据长度上限,以太网的 MTU 为 1500 个字节

透明传输

  • 使用 SOH(Start Of Header) 作为帧开始符
  • 使用 EOT(End Of Transmission) 作为帧结束符
  • 数据部分一旦出现了 SOH、EOH,就需要进行转义


差错检验

  • 使用 FCS 来检验数据是否正确, FCS 是根据数据部分 + 首部计算得出的


CSMA/CD 协议

  • CSMA/CD (Carrier Sense Multiple Access with Collision Detection), 载波侦听多路访问/冲突检测
  • 使用了 CSMA/CD 的网络可以成为是以太网(Ethernet),它传输的是以太网帧。以太网帧的格式有 Ethernet V2 标准、IEEE 的 802.3 标准。使用最多的是 Ethernet V2 标准。
  • 为了能够检测正在发送的帧是否产生了冲突,以太网的帧至少要 64 字节。
  • 用交换机组建的网络,已经支持全双工通信,不需要在使用 CSMA/CD,但它传输的帧依然是以太网帧,所以,用交换机组建的网络,依然可以叫做以太网。
Ethernet V2 帧的格式
  • 首部: 目标 MAC + 源 MAC + 网络类型
  • 以太网帧: 首部 + 数据 + FCS
  • 数据的长度至少是: 64 - 6 - 6 - 2 - 4 = 46 字节
Ethernet V2 标准
  • 当数据部分的长度小于 46 字节时,数据链路层会在数据的后面加入一些字节填充,接收端会将添加的字节去掉。
  • 长度总结:
  • 以太网帧的数据长度:46 ~ 1500 字节
  • 以太网帧的长度: 64 ~ 1518 字节(目标 MAC + 源 MAC + 网络类型 + 数据 + FCS)

PPP协议(Point to Point Protocol)

  • Address 字段: 图中的值是 0xFF,形同虚设,点到点通信不需要源 MAC、目标 MAC 地址
  • Control 字段: 图中的值是0x03,目前没有什么作用
  • Protocol 字段: 内部用到的协议类型
  • 帧开始符、帧结束符: 0x7E
PPP协议 - 字节填充
  • 将 0x7E 替换成 0x7D5E
  • 将 0x7D 替换成 0x7D5D

网卡

  • 网卡接收到一个帧,首先会进行差错校验,如果校验通过则接收,否则丢弃
  • Wireshark 抓到的帧没有FCS,因为它抓到的是差错校验通过的帧,帧尾的 FCS会被硬件去掉, Wireshark 抓不到差错校验失败的帧


相关文章

  • 数据链路层

    数据链路层基本概念 数据链路层的简单模型 数据链路层的信道类型 数据链路层使用的信道主要有以下俩种类型:1、点对点...

  • 计算机网络一刷3-数据链路层

    使用点对点信道的数据链路层 帧点对点信道的数据链路层的协议数据单元;数据链路层传送的协议数据单元; 封装成帧 fr...

  • 以太网数据帧解码

    以太网数据帧解码 先了解数据链路层的数据构成(数据链路层会在包头和包尾添加数据,这里仅介绍包头的数据)。数据链路层...

  • 4、数据链路层1(计算机网络笔记)

    三、数据链路层 3.1 基本概念及基本问题 3.1.1基本概念 数据链路层的简单模型 数据链路层的信道类型数据链路...

  • 数据链路层

    数据链路层需要掌握的知识。1.数据链路层的定义和主要功能;2.数据链路层传输产生差错的原因;3.差错控制机制和差错...

  • TCP/IP协议族

    #TCP/IP协议族 ---------- ##分层(概述) ###链路层: 也可以称作**数据链路层**或者**...

  • 数据链路层

    数据链路层 ​ 数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的...

  • 网络分层模型与ARP协议

    一、链路层 链路层包含以太网卡,光纤,电缆,驱动,以太网驱动 链路层:以太网协议,以太网帧,光纤电缆 链路层的数据...

  • 计算机网络-数据链路层

    计算机网络-数据链路层 数据链路层属于计算机网络的低层数据链路层使用的信道主要有以下两种类型 点对点信道 广播信道...

  • 【网络】MTU相关网络丢包问题分析处理

    一、 MTU MSS 概念 什么是MTU? MTU是数据链路层的概念,限制的是数据链路层payload的大小,即...

网友评论

      本文标题:数据链路层

      本文链接:https://www.haomeiwen.com/subject/jipjvltx.html