当前位置: 首页 > news >正文

【计算机网络 | 第七篇】数据链路层及三个基本问题

文章目录

    • 3.1 数据链路层概述
      • 数据链路层的信道类型
      • 数据链路层的简单模型
    • 3.2 数据链路和帧
      • 链路与数据链路的区别
    • 3.1.2 数据链路层的三个基本问题
      • 1. 封装成帧
      • 2. 透明传输
      • 3. 差错检测

3.1 数据链路层概述

在计算机网络体系结构中,数据链路层主要研究在同一个局域网中,分组怎样从一台主机传送到另一台主机(或路由器),但更主要的是研究在同一个局域网中,分组怎样从一个节点传送到相邻节点。

数据链路层的信道类型

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

  1. 点对点信道:这种信道使用一对一的点对点通信方式。
  2. 广播信道:这种信道使用一对多的广播通信方式。由于广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。

数据链路层的简单模型

在数据传输过程中,数据在不同层次间流动。从物理层面看,数据经过了多个中间节点(路由器);但从数据链路层的逻辑层面看,通信主要关注的是相邻节点之间的链路。

当主机H 1 H_1H1H 2 H_2H2发送数据时,虽然中间经过了复杂的网络拓扑,但在数据链路层看来,可以将其抽象为在一段段独立的链路上进行传输。


3.2 数据链路和帧

链路与数据链路的区别

在技术定义上,“链路”与“数据链路”是两个不同的概念:

  • 链路:指从一个节点到相邻节点的一段物理线路(有线或无线),中间没有任何其他的交换节点。这是一条无源的点到点的物理线路段。
  • 数据链路:在物理线路(链路)的基础上,必须增加控制数据传输的通信协议(硬件和软件)来实现通信,这就构成了数据链路。

目前最常用的实现方法是使用网络适配器( 即网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层的功能。

  • 也有人采用另外的术语。这就是把链路分为物理链路和逻辑链路。
  • 物理链路就是上面所说的链路
  • 逻辑链路就是上面的数据链路,是物理链路加上必要的通信协议。
  • 早期的数据通信协议曾叫做通信规程 (procedure)。因此在数据链路层,规程和协议是同义语。

数据链路层传送的数据单位是:Frame

数据链路层把网络层交下来的数据(IP 数据报)封装成帧发送。我们可以将数据链路层抽象为一个数字管道,数据以帧为单位在这条逻辑管道上进行传输。

数据链路层不必考虑物理层如何实现比特传输的细节,甚至可以简单地假设数据是沿着两个数据链路层之间的水平方向直接发送到对方的。


3.1.2 数据链路层的三个基本问题

尽管数据链路层的协议种类繁多,但它们都需要解决三个共同的基本问题:封装成帧透明传输差错检测

1. 封装成帧

封装成帧是指在一段数据的前后分别添加首部和尾部,从而构成一个完整的帧。

  • 帧定界:首部和尾部的一个重要作用是进行帧定界(确定帧的界限)。接收端在收到物理层上交的比特流后,通过首部和尾部的标记来识别帧的开始和结束。
  • 帧长限制:为了提高传输效率和避免垄断信道,数据链路层通常限制帧的数据部分长度上限,称为最大传送单元 MTU,Maximum Transfer Unit。

eg.在 Ubuntu 上查看所有网卡的MTU:

用帧首部和帧尾部封装成帧:

控制字符定界法
当数据是由可打印的 ASCII 码组成的文本文件时,可以使用特殊的控制字符作为帧定界符。

  • SOH (Start Of Header):十六进制编码为01,放在一帧的最前面,表示帧的开始。
  • EOT (End Of Transmission):十六进制编码为04,放在一帧的结束,表示帧的结束。

2. 透明传输

透明传输是指无论发送什么样的比特组合,数据链路层都能够按照原样正确地传输,而不会因为数据中出现了与控制字符相同的编码而导致误判。

问题产生
如果数据中的某个字节的二进制代码恰好和 SOH 或 EOT 一样,数据链路层就会错误地“找到帧的边界”,导致部分数据被丢弃或误识别。

解决方法:字节填充 (Byte Stuffing)
为了解决上述问题,通常采用字节填充(或字符填充)的方法:

  1. 发送端在数据中出现的控制字符(如 SOH 或 EOT)前面插入一个转义字符ESC(十六进制1B)。
  2. 如果数据中本身也出现了转义字符 ESC,则在 ESC 前面再插入一个 ESC。
  3. 接收端在收到数据后,根据转义字符将填充的 ESC 删除,还原出原始数据。

通过这种方式,数据链路层实现了对任意数据的透明传输。

3. 差错检测

在通信链路上传输信号时,信号可能会受到各种干扰。

  • 比特差错:传输过程中,1 可能会变成 0,0 也可能变成 1。
  • 误码率:在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率。误码率与信噪比有很大的关系。

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。目前在数据链路层广泛使用的是循环冗余检验 CRC等技术。

下一章节:循环冗余校验 CRC 等技术

http://www.jsqmd.com/news/354200/

相关文章:

  • 【Linux系统编程】(二十八)深入 ELF 文件原理:从目标文件到程序加载的完整揭秘
  • 年夜饭省钱技巧:哪里能领年夜饭隐藏优惠券,怎么领?美团更划算 - 资讯焦点
  • 关于每日邮件提醒的代码更新
  • 哪里可以线上排队年夜饭餐厅?美团App性价比首选,省钱又省心 - 资讯焦点
  • day06
  • spingboot茶文化推广系统毕业论文+PPT(附源代码+演示视频)
  • 馬伍旺饮料厂怎么薅羊毛?周末半价 + 春节 88 元券,爽到飞起! - 资讯焦点
  • 2026年kosher犹太认证公司权威推荐:青岛赛克斯犹太食品咨询服务,食品/清真/洁食认证全覆盖 - 品牌推荐官
  • ai工具之讯飞开放平台
  • 【算法基础篇】(五十七)线性代数之矩阵乘法从入门到实战:手撕模板 + 真题详解
  • 春莱怎么薅羊毛?手把手教你用美团神券,一杯省出奶茶钱 - 资讯焦点
  • GEO服务商哪家好?2026年2月优化服务商测评与推荐 - 速递信息
  • /tmp/jave/ffmpeg-amd64-2.4.6-SNAPSHOT 的生成者和生成原因 - 详解
  • 看电影可以外卖什么奶茶喝?美团6.9元起,解锁观影快乐 - 资讯焦点
  • 2026年光伏发电厂家推荐:上海铭扬智慧能源有限公司,提供商业/工厂/家用光伏发电及储能解决方案 - 品牌推荐官
  • 李山山怎么薅羊毛?对比全网,美团这些福利独一份 - 资讯焦点
  • 2026 年 Kimi 优化服务商全维度测评:从技术实力到效果落地的选型指南 - 速递信息
  • 过年给朋友点什么外卖?美团更便宜,多活动叠加省不停 - 资讯焦点
  • 过年给闺蜜点什么外卖不踩雷?美团App更便宜,半价吃遍大牌 - 资讯焦点
  • 2026珠宝店设计与展柜定制深度分析:四大主流方案的选择路径 - 速递信息
  • 2026年矿安/井下/工程小/混凝土小方/小型/矿用水泥搅拌车厂家推荐:济宁嘉联重工机械 - 品牌推荐官
  • 杭州德能水系统二合一安装服务好吗,价格方面是多少? - myqiye
  • IACheck × AI审核:系统化提升欧盟 RoHS 认证质量的材料认证新方案
  • 破界与重塑:敏捷协同下的营销进化——兼论“开源链动2+1模式AI智能名片小程序”在私域裂变中的核心赋能
  • 靠谱的别墅空调地暖安装公司怎么收费? - mypinpai
  • 玉灵膏什么牌子的正宗质量好?全国十大靠谱品牌推荐:严选道地原料,无添加品质更稳定 - 资讯焦点
  • IACheck × AI审核:全面把关欧盟 REACH 认证,让材料合规更系统、更稳妥
  • 微信小程序 java+Vue3基于springboot框架的社区团购自提系统
  • 2026年内蒙好用的尼龙衬板品牌推荐及价格分析 - 工业推荐榜
  • 2026年护理床厂家深度评测:五大品牌实力横向对比 - 资讯焦点