数据链路层的定义

对数据链路层有对上的网络层接口. 对下提供物理层的接口.
定义合适的传输差错率
对传输流进行管理, 以免快速的传输的数据被淹没. 比如发送端发送信号太快, 接受方接受速度较慢, 此时数据链路层就需要提供一定的功能解决这个问题
物理层上传输的基本单元是比特, 将其变成一个连续的信号或者信号传输. 在链路层将数据转换为一块一块的进行传输, 每一块叫做一个数据帧, 传输的基本单元叫做数据帧

数据链路层功能

将网络层数据 加上一定的校验, 使得数据成为一个可靠的数据

相连

两台计算机之间有物理介质连接

物理链路

两个节点之间有一个真正的物理节点, 这边有一个物理层, 那边有一个物理层, 这边的二进制比特串可以传到那边的物理层.

数据链路

通过数据链路协议实现数据的可靠传输, 两个数据链路层之间就形成了一个数据链路, 并且数据的传输有正确性保证.

数据链路层服务

1. 无确认无连接

在数据传输前不用建立数据链路收到数据帧不需要给对方一个确认消息

2. 有确认无连接

在数据发送前不需要建立连接, 即不需要建立数据链路, 但是对方收到一个数据时必须给发送方发送一个确认消息. 适用于信号传输速度延时较长的

3. 有确认有连接

在数据发送之前必须向对方主机打招呼, 必须建立一条完整的数据链路, 当对方接收到数据后, 也必须向发送方发送一个确认消息, 例如电话

数据的可靠传递

1. 将传输信息合成一个帧

(1)字符计数法

每一个帧的首部为帧的长度, 后面为帧的内容. 比如在发送一个帧为 1 2 3 4 时, 此时在帧的首部加上一个 5, 此时接收方接受到这个帧是 5 1 2 3 4, 此时接受方就认为收到的帧的长度是5, 它就再往后接受四个字节的数据帧

这种方法数据帧的长度一旦被误读, 则会产生不可收拾的错误

(2)带字符填充的首尾界填充

在发送一个数据帧的时候, 给数据帧的首部和尾部加上一个特殊的字符 7E 表示帧的结束和开始, 数据帧的内容用是 ASCII 可显示字符, 但是当数据帧中本来就有一个数据对应的字符是 7E 的时候, 此时传输数据帧的时候就在数据 7E 前加上一个 1B, 当接受方接受数据的时候发现数据帧中有一个 1B 的字符, 此时再向后检测, 此时发现后面是一个 7E, 这是就将 1B 去除, 这样就达到了数据的准确收发.

(3)带位填充的首尾标志法

用 01111110 作为帧头和帧为的标志, 在发送的时候如果帧的内容是中有 6 个连续的 1 的时候, 此时当传输到第 6 个 1 的时候就在第五个1后面插入一个 0, 此时就不会出现数据帧的错误,接收端在接受的时候对整个帧进行检测, 如果发现了 5 个 1 后面的第六个二进制数是一个 0, 此时就说明它是在发送端发送的时候加上去的, 此时接受方就将这个 0 去掉, 如果对帧的二进制在进行从头到尾的扫描时, 发现了有 6 个连续的 1 , 此时就说明这是真的结束标识, 这样就完成了一个帧的准且发送和接受.

(4)物理层编码违例法

用连续的高电平或者连续的低电平表示真的开始和结束

数据链路层:基本概念相关推荐

  1. 计算机网络【四】数据链路层基本概念+点到点通信(PPP协议)

    数据链路层基本概念 路由器是网络层设备 数据链路层:数据管道,传输的是数据包加上发送地址,接收地址,校验的数据帧 数据链路层的信道类型: 点到点信道:使用一对一的点到点通信方式(两个设备之间直接使用网 ...

  2. 计算机网络之数据链路层基础概念详解

    目录 数据链路层思想相关概念术语 数据链路层在网络中的地位 数据链路层提供的服务 成帧及透明传输 可靠交付(reliable delivery) 流量控制 差错检验 多路访问协议(介质访问控制) 传播 ...

  3. 【计算机网络】数据链路层 : 概述 ( 基本概念 | 功能 | 为 “网络层“ 提供的服务 )

    文章目录 一. 数据链路层 概述 二. "数据链路层" 基本概念 三. "数据链路层" 功能 四. "数据链路层" 为 网络层 提供的服务 ...

  4. 王道考研 计算机网络笔记 第三章:数据链路层

    本文基于2019 王道考研 计算机网络: 2019 王道考研 计算机网络 个人笔记总结 第一章:王道考研 计算机网络笔记 第一章:概述&计算机网络体系结构 第二章:王道考研 计算机网络笔记 第 ...

  5. Networking 基本术语/概念

    目录 文章目录 目录 基本概念 冲突域(Collision Domain) 广播域(Broadcast Domain) 冲突域与广播域的区别 IP 网络数据传输方式 物理网络设备 发展简述 中继器(R ...

  6. 【计算机网络复习 数据链路层】3.1 数据链路层功能概述

    数据链路层功能概述 一.数据链路层基本概念 二.数据链路层功能概述 一.数据链路层基本概念 结点: 主机.路由器 链路: 网络钟两个结点之间的物理通道,链路的传输介质主要有双绞线.光纤和微波.分为有线 ...

  7. 计算机网络学习笔记(3.数据链路层 4.网络层)

    文章目录 第三章 数据链路层 数据链路层功能概述 封装成帧&透明传输 差错控制(检错编码) 差错控制(纠错编码--海明码) 流量控制与可靠传输机制(一) 停止等待协议 后退N帧协议(GBN) ...

  8. 数据链路层 功能概述

    数据链路层的研究思想 数据链路层基本概念 数据链路层功能概述 数据链路层功能概述

  9. 3.1.1计算机网络(数据链路层 差错控制 循环冗余码 海明码 流量控制)

    目录 数据链路层 数据链路层基本概念 数据链路层功能概述 封装成帧 透明传输 组帧的四种方法: 1.字符计数法 ​2.字符填充法 ​3.零比特填充法 4.违规编码法 差错控制 差错从何而来? 数据链路 ...

最新文章

  1. 如何在5美元的Raspberry Pi上构建个人开发服务器
  2. hihocoder 1249(2015ACM/ICPC北京)
  3. JZOJ 3597. 【CQOI2014】危桥
  4. 【精】【火】关于CSDN博客与博主的第二个博客之间的区别与联系
  5. windows7安装和问题排除,绝对有用!
  6. mysql dba环境验收_面对一个全新的环境,作为一个Mysql DBA,应该了解
  7. 早上起床后喝一杯白开水是非常有好处的
  8. Visual Studio 2010 版本之前的区别
  9. 黑客是什么?揭开郭盛华的神秘面纱,讲解他不为人知传奇故事
  10. MessageBox中涉及到的宏定义
  11. uni-app实现文件管理器(Android)
  12. 反向的css动画,动画方向 | animation-direction
  13. mavell 7040使用方法
  14. linux 系统安装aria2以及配置web端
  15. NAND Flash硬件读写原理
  16. 从阿里云下载kubeadm rpm格式安装包到本地离线安装
  17. vue动态配置嵌套页面(含iframe嵌套)可实现白天夜间皮肤切换
  18. 新浪微博短视频服务的优化实践
  19. 7款相见恨晚的资源网站,每个都百里挑一,送给正需要的你!
  20. 【STM32+cubemx】0026 HAL库开发:NRF24L01无线2.4G通信模块的应用

热门文章

  1. 微软Team Foundation Service 的Scrum模板中的Feature和Backlog Items 的区别【转载】
  2. 前端开发常用正则表达式
  3. php读取xml标签内容,从xml php5获取内容
  4. python运行结果图_[宜配屋]听图阁
  5. 基于Matlab的模拟通信实验平台设计,【通信原理仿真实验】通信原理虚拟实验仿真平台的设计和实现_玛雅作文网...
  6. vs mysql iss_MySQL5.7与8.0的连接问题(vs2015\2017)
  7. input ios问题 小程序_微信小程序开发常见问题汇总
  8. php 新浪url,PHP URL函数详解
  9. 修复steam服务器失败,steam服务器链接失败
  10. 操作系统多线程实现_操作系统中的线程实现