计算机网络——数据链路层-数据链路层概述(介绍、三个重要问题、使用广播信道的数据链路层、其他问题)

目录

介绍

三个重要问题

封装成帧 

差错检测

可靠传输

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

其他问题


介绍

本篇对数据链路层进行概述,我们首先来看看数据链路层在网络体系结构中的地位:

主机H1给主机H2发送数据,中间要经过三个路由器和电话网、局域网以及广域网等多种网络。

从五层协议原理体系结构的角度来看,主机应具有体系结构中的各个层次,而路由器只需具有体系结构中的下面三层。

各设备通过物理层下面的传输媒体进行互连,当主机H1向H2发送数据时,数据的流动如上图所示。主机H1将待发送的数据逐层封装后,通过物理层将构成数据包的各比特转换为电信号发送到传输媒体;数据包进入路由器后,由下往上逐层解封到网络层,路由器根据数据包的目的网络地址自身转发表确定数据包的转发端口,然后从网络层向下逐层封装数据包;并通过物理层将数据包发送到传输媒体,数据包最终到达主机H2时,还要由下往上逐层解封,最终解封出主机H1所发送的数据。

当我们专门研究数据链路层的问题时,在大多数情况下,我们可以只关心数据链路层,而不考虑网络体系结构的其他各层。换句话说,我们可以想象:数据包只在数据链路层从左向右沿水平方向传送。

从数据链路层来看,主机H1到H2的通信可以看成是在四段不同的链路上的通信组成的。

所谓链路,就是从一个节点到相邻节点的一段物理线路,中间没有任何其他的交换节点要在链路上传输数据;

仅有链路还不够,还需要一些通信协议来控制这些数据的传输,若把实现这些协议的硬件和软件
加到链路上,就构成了数据链路

在数据链路层上传输的数据包,又称为,也就是说,数据链路层以帧为单位传输和处理数据。

三个重要问题

接下来介绍数据链路层的三个重要问题,它们是封装成帧、差错检测和可靠传输。

封装成帧 

首先来看封装成帧,如下图所示,两台主机通过一段链路互连。两台主机都会对所发送或接收的数据包进行5个层次的封装或解封。

其中,数据链路层给网络层协议数据单元添加一个数据链路层协议首部,简称为帧头,还要给其添加一个帧尾

我们将数据链路层给网络层交付的协议数据单元添加帧头和帧尾的操作,称为封装成帧 

添加帧头和帧尾的目的,都是为了在链路上以帧为单元来传送数据;也就是为了实现数据链路层本身的功能。

例如这是以太网版本2的MAC帧格式:

差错检测

再来看差错检测,发送方将封装好的帧,通过物理层发送到传输媒体;帧在传输过程中遭遇干扰后
可能会出现误码,也就是比特0可能变成了比特1,反之亦然。

那么,接收方主机如何判断帧在传输过程中是否出现了误码呢?

这可以通过检错码来发现,发送方在发送帧之前,基于待发送的数据和检错算法,计算出检错码,并将其封装在帧尾。

例如以太网版本2的Mac帧的帧尾,就是4字节的帧检验序列FCS字段,要写入该字段的内容就是我们所说的检错码。

接收方主机收到帧后,通过检错码和检错算法就可以判断出帧在传输过程中是否出现了误码。

可靠传输

再来看可靠传输,接收方主机收到有误码的帧后,是不会接受该帧的,会将其丢弃。

如果数据链路层向其上层提供的是不可靠服务,那么丢弃就丢弃了,不会再有更多措施;

如果数据链路层向其上层提供的是可靠服务,那么就还需要其他措施来确保接收方主机还可以重新收到被丢弃的这个帧的正确副本。

换句话说,尽管误码是不能完全避免的,但若能实现发送方发送什么,接收方最终都能收到什么,就称为可靠传输

封装成帧、差错检测和可靠传输是数据链路层中最基本最重要的问题,我们在后面的文章中还会详细介绍。

需要说明的是,我们在介绍这三个问题的时候,使用的是点对点信道的数据链路层来举例的;对于使用广播信号的数据链路层,除了包含这三个问题外,还有一些其他需要解决的问题。

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

如下图所示,主机A、B、C、D、E通过一根总线进行互连,主机A要给主机C发送帧;
代表帧的信号会通过总线传输到总线上的其他各主机,那么主机BDE如何知道所收到的帧不是发送给他们的,而主机C又如何知道所收到的帧恰恰是发送给自己的呢?

相信大家能够想到地址,或者说编址的问题;也就是将帧的目的地址添加在帧中一起传输 。

例如这是以太网版本2的MAC帧格式:

除了编址问题外,再来看下面这个问题:

当总线上多台主机同时使用总线来传输时,传输信号就会产生碰撞。

这是采用广播信道的共享式局域网不可避免的。
以太网采用的协调方法是使用一种特殊的协议CSMA/CD,也就是载波监听多点接入/碰撞检测

其他问题

随着技术的发展,交换技术的成熟和成本的降低,具有更高性能的使用点对点链路和链路层交换机的交换式局域网在有线(局域网)领域已完全取代了共享式局域网。 

那么,网络中的交换机又是如何转发帧的呢?

另外,由于无线信道的广播天性,无线局域网仍然使用的是共享信道技术。

例如 802.11局域网采用的媒体接入控制协议是CSMA/CA,也就是载波监听多点接入碰撞避免,它的工作原理又是怎样的呢?

上述这些内容,都是数据链路层中比较重要的问题,我们将在后面的文章中逐个进行介绍。


END


学习自:湖科大——计算机网络微课堂

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/175945.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单片机学习10——独立按键

独立按键输入检测&#xff1a; #include<reg52.h>sbit LED1P1^0; sbit KEY1P3^4;void main() {KEY11;while(1){if(KEY10) //KEY1按下{LED10; //LED1被点亮}else{LED11;}} } 按键 #include<reg52.h>#define uchar unsigned char #define uint unsigned intsbit …

使用Postman如何在接口测试前将请求的参数进行自定义处理

1、前言 当我们使用 Postman 进行接口测试时&#xff0c;对于简单的不需要处理的接口&#xff0c;直接请求即可&#xff0c;但是对于需要处理的接口&#xff0c;如需要转码、替换值等&#xff0c;则就麻烦一些&#xff0c;一般我们都是先手动把修改好的值拷贝到请求里再进行请…

干法制程中的辉光放电

在芯片制程中&#xff0c;几乎所有的干法制程&#xff0c;如PVD&#xff0c;CVD,干法刻蚀等&#xff0c;都逃不过辉光放电现象。辉光放电&#xff0c;是一种在低压下电离气体的过程&#xff0c;它在半导体制程中的许多重要步骤中有着核心作用。那您知道什么是“启辉”吗&#x…

Vue3使用kkFileView预览文件pdf

kkFileView - 在线文件预览kkFileView官网 - kkFileView使用Spring Boot搭建&#xff0c;易上手和部署&#xff0c;基本支持主流办公文档的在线预览&#xff0c;如doc,docx,Excel,pdf,txt,zip,rar,图片等等https://kkfileview.keking.cn/zh-cn/docs/usage.html业务场景&#xf…

【探索Linux】—— 强大的命令行工具 P.17(进程信号 —— 信号保存 | 阻塞信号 | sigprocmask() | sigpending() )

阅读导航 引言一、阻塞信号1. 信号相关常见概念&#xff08;1&#xff09;信号递达&#xff08;2&#xff09;信号未决&#xff08;3&#xff09;阻塞信号&#xff08;4&#xff09;忽略信号 2. 信号在内核中的表示⭕信号在内核中的表示示意图 3. sigset_t &#xff08;数据类型…

viple模拟器使用(三):unity模拟器中实现沿右墙迷宫算法

沿右墙迷宫算法原理 默认直行&#xff1b;右侧有路&#xff0c;则右转&#xff1b;前方无路&#xff0c;则左转。 由于unity模拟器中使用机器人移动动力控制和机器人转动角度控制来实现控制机器人前进、后退、暂停、左转、右转 。 程序编写 主机以及配置 通过内建事件初始化机…

云表|低代码助力职场人,一招制敌解决办公难题

身在职场&#xff0c;我们时常会面临一系列令人头疼的难题&#xff1a; ● 突然被领导要求30分钟内汇总所有人的填报信息&#xff0c;看着面前格式五花八门的Excel表格&#xff0c;我们无所适从&#xff0c;不知从何下手。 ● 在这个数字化的时代&#xff0c;公司仍然沿用古老的…

【数据中台】开源项目(2)-Davinci可视应用平台

1 平台介绍 Davinci 是一个 DVaaS&#xff08;Data Visualization as a Service&#xff09;平台解决方案&#xff0c;面向业务人员/数据工程师/数据分析师/数据科学家&#xff0c;致力于提供一站式数据可视化解决方案。既可作为公有云/私有云独立部署使用&#xff0c;也可作为…

【操作宝典】SQL巨擘:掌握SQL Server Management的终极秘籍!

目录 ⛳️【SQL Server Management】 ⛳️1. 启动登录 ⛳️2. 忘记密码 ⛳️3. 操作数据库和表 3.1 新建数据库text 3.2 新建表 3.3 编辑表 3.4 编写脚本 ⛳️【SQL Server Management】 ⛳️1. 启动登录 需要开启服务 ⛳️2. 忘记密码 登录windows--> 安全性 -->…

pikachu靶场:php反序列化漏洞

pikachu靶场:php反序列化漏洞 文章目录 pikachu靶场:php反序列化漏洞代码审计漏洞利用 代码审计 像这种反序列化的代码基本都是代码审计出的 // 定义一个名为S的类&#xff0c;该类有一个属性$test和一个构造函数 class S{ var $test "pikachu"; // $test是一个…

【1】AR Tag 在ros中的使用

1.定义 AR Tag 是一种用于增强现实&#xff08;AR&#xff09;应用中的视觉标记&#xff0c;用于跟踪和定位虚拟物体在现实世界中的位置。 AR Tag由黑白正方形图像表示&#xff0c;图像内部有黑色边框中的某些图案。它与我们经常用到的二维码长得类似&#xff0c;原理其实也一…

elementui的table合并列,三个一组

<el-table :span-method"objectSpanMethod" :cell-style"iCellStyle" :data"tableData" height"63vh" border style"width: 100%; margin-top: 6px"><el-table-column type"index" label"序号"…

5V摄像机镜头驱动IC GC6208,可用于摄像机,机器人等产品中可替代AN41908

GC6208是一个镜头电机驱动IC摄像机和安全摄像机。该设备集成了一个直流电机驱动器的Iris的PID控制系统&#xff0c;也有两个通道的STM电机驱动器的变焦和对焦控制。 芯片的特点: 内置用于Iris控制器的直流电机驱动器 内置2个STM驱动程序&#xff0c;用于缩放和…

Python内置函数与标准库函数的解释示例

一、内置函数与标准库函数的区分 Python 解释器自带的函数叫做内置函数&#xff0c;这些函数可以直接使用&#xff0c;不需要导入某个模块。 Python 解释器也是一个程序&#xff0c;它给用户提供了一些常用功能&#xff0c;并给它们起了独一无二的名字&#xff0c;这些常用功能…

汽车电子 -- 车载ADAS之RCTA(后方横向来车预警 )

国际标准: RCTA: GB/T XXXXX—XXXX 乘用车后部交通穿行提示系统性能要求及试验方法 一、后方横向来车预警RCTA&#xff08; Rear Cross Traffic Assist&#xff09; 在车辆倒车时&#xff0c;实时监测车辆后方横向接近的其它道路使用者&#xff0c;并在可能发生碰撞危险时发…

第20章多线程

创建线程 继承Thread 类 Thread 类时 java.lang 包中的一个类&#xff0c;从类中实例化的对象代表线程&#xff0c;程序员启动一个新线程需要建立 Thread 实例。 Thread 对象需要一个任务来执行&#xff0c;任务是指线程在启动时执行的工作&#xff0c;start() 方法启动线程&am…

什么是yum?

&#x1f388;个人主页:&#x1f388; :✨✨✨初阶牛✨✨✨ &#x1f43b;推荐专栏1: &#x1f354;&#x1f35f;&#x1f32f;C语言初阶 &#x1f43b;推荐专栏2: &#x1f354;&#x1f35f;&#x1f32f;C语言进阶 &#x1f511;个人信条: &#x1f335;知行合一 &#x1f…

C#开发的OpenRA游戏之属性SelectionDecorations(12)

C#开发的OpenRA游戏之属性SelectionDecorations(12) 前面分析了显示选择框的指示器类SelectionBoxAnnotationRenderable,它的作用就是画一个四个角的方角。 这个类是在属性SelectionDecorations里调用的,如下: protected override IEnumerable<IRenderable> Rende…

JOSEF 综合继电器 HJZZ-32/2 AC220V 合闸延时整定0.02-9.99S

系列型号&#xff1a; HJZZ-91分闸、合闸、电源监视综合装置&#xff1b; HJZZ-92/1分闸、合闸、电源监视综合装置&#xff1b; HJZZ-92/2分闸、合闸、电源监视综合装置&#xff1b; HJZZ-92/2A分闸、合闸、电源监视综合装置&#xff1b; HJZZ-92/3分闸、合闸、电源监视综…

【机器学习】决策树

一、原理 典型的决策树 分类树与回归树 如何用训练样本建立决策树 分裂规则 不纯度 各种不纯度指标定义 对于数值型特征和分类型特征分别详述确定分裂阈值和分裂特征的过程 对于分类树和回归树如何确定叶子节点的值 对于样本特征向量属性缺失情况如何处理 对于属性缺失情况&am…