概述
关于数据链路层
个人认为可以分四大方面 来了解基本知识,深入理解还是需要个人自己去阅读书籍 花费时间去深度学习。
(1)两大信道的特点,以及相关协议
在学习这个方面前 我先介绍另一个很重要的知识点
对,就是我们都知道的三个基本问题。
(2)三大基本问题
封装成帧 透明运输 差错检测
很多书籍教材 对于三大基本问题 描述 都存在过于复杂 或 过于简单 不便理解 这里我也是分享自己的理解 后面有新的理解 会更新子篇 下面看第一个问题。
当我们第一次看到 封装成帧 该怎么理解呢?
作为菜鸟的我 是这样理解的 把 一个重要的东西(数据) 包装起来 然后命名为 帧 。
其实就是把网络层发送下来的数据经过包装(封装)构成 帧
因此官方又把 帧 称为数据链路层的协议数据单元
既然有数据链路层 那肯定有 网络层协议数据单元了,其实就是网络层发送下来的数据 即 被称为IP数据报,数据报 ,分组 ,包。 后续介绍网络层的篇章我会详细介绍。
现在回到本篇,既然知道是数据包装成帧,那么是怎么实现包装过程的呢 ?
我知道,我知道 ,就是我的 头+躯干+脚 。
emm 抱歉 不该放老王出来 但是
其实包装就是在一段数据前后分别添加 首部 和 尾部,其中首部和尾部的一个重要作用就是 确定帧的界限(帧定界),如下图首尾帧定界符,完成帧定界。
此外,首,尾部还包括许多必要的控制信息。并且在各种数据链路协议中,不仅对首部和尾部的格式有明确的规定,也规定了帧的数据部分长度上限-最大传送单元MTU,如下图。
透明运输
光看字面意思 其实很难理解 这个基本问题要表达什么。
现在先说明一下 透明运输的概念
当传输的帧是用文本文件组成的帧时,其数据部分显然不会出现像SOH或EOT这样的帧定界控制字符,因此这样的传输称为透明传输。
看到这句话 大家是不是以为结束了,实则不是 。
透明传输 真正的重点是如何解决数据中出现控制字符后,在接收端不被解释为控制字符。这才啊透明传输的关键所在。那怎么解决这个问题了,其实很简单,就留给大家自己思考吧。
接下来又是一个重头戏哦,三大基本问题之三。
差错检测
突然想到,昨天我和老王打电话,他叫我买猪头肉
但是菜市场太吵 我最后买了个猪头。
在现实的通信链路中 ,比特传输可能因为某些不可控因素产生差错 1变为0,0变为1,于是我们的CRC(循环冗余校验) 就说 比特你出错了 。
最后
以上就是从容鸡为你收集整理的计算机网络 数据链路层详解(一)的全部内容,希望文章能够帮你解决计算机网络 数据链路层详解(一)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复