计算机网络学习笔记(三)——数据链路层功能和服务、帧定位、差错、海明距离、检错码和纠错码
文章目录
- 前言
- 概念
- 一、链路层功能与服务
- 二、成帧和帧同步(帧定位)
- [1]字节计数法
- [2]字符填充首尾定界法
- [3]位填充首尾定界法
- [4]块传输与物理层违例编码定界法
- [5]校验和法
- 三、链路层的差错产生及类型
- (一)产错产生的原因
- (二)误码类型及影响
- 四、检错码和纠错码
- (一)海明距离与误码检测
- (二)纠错码(前向纠错)
- 1、海明码(汉明码)
- (三)检错码
- 1、奇偶校验
- 2、循环冗余校验(CRC校验)
- 3、校验和
- 参考资料
前言
笔者系电子科技大学2019级在读本科生,针对本学期学校开设的计算机通信网课程,将学习笔记以博客形式上传到CSDN上以便日后复习整理,其中的瑕疵欢迎大家向我指正,在评论区多多交流讨论。
概念
一、链路层功能与服务
特点
- 相连-①通过通信信道道进行物理连接,没有“智能”的中介节点②特点:a.不乱序b.可能出错c.不会随机“插值”
- 可靠-差错:①评价信道-误码率(物理层)②评价链路-误帧率(链路层)③一定帧长下,误码率越高,误帧率越高
- 有效-①开销少②延时短
链路层效率定义
η = 有效/理想 = r/R(η≤1)
R(b/s)——信道容量,理想吞吐量
有效数据率
r = ∑ni/T
ni:第i个有效帧的bit数;T:测量总时间
链路层的功能和服务
服务:
- 无确认的无连接服务
- 有确认的无连接服务
- 有确认的面向连接服务
链路层功能
- 成帧:定位,标明起始与终止
- 差错检测与控制
- 流量控制
- 链路管理:建链、通信、拆链
二、成帧和帧同步(帧定位)
帧:一个完整的数据块
帧定位:从原始的bit流中提取出离散的帧
不同传输方式下的帧同步:
- 同步传输(Sync,连续bit流)bit流的起始和终止,没有帧传输时也存在bit流;一次传一个数据块(连续一串字符);收发双方同步;信道良好,高速传输
- 异步传输(Async,异步字节序列)一次只传输一个字符(8位),字符之间有不确定延时;收发双方不要求同步;使用信道质量较差
- 数据块传输方式(Block)若干字节构成一个连续的数据块,数据块前有若干先导bits
帧同步常用方法:
- 字节计数法
- 字符填充首尾定界法(面向字符)
- 位填充首位定界法(面向位)
- 物理层编码违例法
- 校验和法
[1]字节计数法
发方在每个帧头部中的第一个字段,标识该帧的长度,总共有多少字符数。
特点
- 优点:简单
- 缺点:一旦出错,无法再同步;一旦帧首标记符出错,无法正确检测后续所有帧;很少被使用
[2]字符填充首尾定界法
定界字符F=01111110;转义符(Esc)
发送-在所有通信控制字符(特殊字符)前增加转义符【包含转义符】
接收-(1)前面没有转移符的控制字符以控制符解释(2)前面有转义符的控制字符作为数据字符解释
[3]位填充首尾定界法
定界标志F(Flag)= ‘01111110’
位填充:实际传输数据中出现连续5个1直接插入0,然后接收方去掉0(便于用硬件移位实现)
[4]块传输与物理层违例编码定界法
块传输(数据块传输):(1)块长度可变(2)块间间隔可变
——看作是增强型的异步传输,速率高,应用有计算机网络电缆连接,以太网信号。
块传输每个块即为一个帧:前同步码(Preamble)+后同步码(Postmable)
违例编码法:利用信息bit流特性,用非正常码型进行位置界定(有NRZ、曼彻斯特、HDB3、以太网、SDH)
[5]校验和法
(PS:此处笔者仍然没有搞清楚校验和具体细节,故暂且将其归纳为两种不同的校验和方法,如有错误,欢迎指正)
块传输的校验和法:应用于帧长度固定、帧与帧首尾相接的传输中
ATM(帧长53字节-信元)两种校验和帧定位方法
①
整个帧进行校验和Checksum:B[4] = B[0] +…+B[52] 帧同步技术(1)粗同步-校验一个信元(2)精同步-连续校验N个块
②
头部进行校验和,使用循环冗余校验:B[4] ? B[0]+…+B[3]
优点:(1)无定界符开销(2)可靠性高
缺点:(1)有附加条件-固定信元(2)环境要求高-足够的寄存器、计算速度高
三、链路层的差错产生及类型
(一)产错产生的原因
1、衰减-信号随传播距离的增长,能量的消耗信号强度减弱到一定成都导致对方误判
2、失真-畸变,信号在传输过程中与原有信号相比发生的偏差
(1) 衰减失真-不同频率分量衰减不同在合成之后改变波形
(2) 时延失真-信号传播速度因频率不同,某个码元频率成分溢出到下一个码元,码元之间串扰而失真
3、噪声
(1) 白/热噪声
(2) 互/交调噪声——共享信道
(3) 串扰——相邻线路耦合
(4) 冲激噪声——开关电流冲激
(二)误码类型及影响
1、误码类型
误码率 = 传输的误码/总码数
(1)随机错-1位
(2)突发错-多位“连续”错(连续指错误位置距离较近)
PS:随机错更容易被发现
2、误码的影响
(1) 帧体错-内容错
(2) 帧界定错-帧数据不可信,可能连锁反应,信道失序——收发无法同步
(3)不会出现“插值”、复制、乱序错误
四、检错码和纠错码
(一)海明距离与误码检测
海明距离-两个码字中不同的位的个数
计算机网络学习笔记(三)——数据链路层功能和服务、帧定位、差错、海明距离、检错码和纠错码相关推荐
- 计算机网络学习笔记之数据链路层的介质访问控制
计算机网络学习笔记之数据链路层的介质访问控制 介质访问控制 信道划分介质访问控制 随机访问介质访问控制 ALOHA协议(不听就说) 纯ALOHA协议 时隙ALOHA协议 比较 CSMA协议(先听再说) ...
- 计算机网络学习笔记(三):数据链路层
数据链路层 数据链路层概述 链路:就是从一个结点到相邻结点的一段物理链路,中间没有任何其他的交换节点 数据链路:指把实现通信协议的硬件和软件加到链路上,构成数字链路 数据链路层以帧为数据单位传输数据 ...
- 片偏移怎么计算_计算机网络学习笔记(四)之网络层
点击蓝字关注我吧 越努力越幸运!!! 1 网络层的功能 1.1异构网络互联 网络的互联:指将两个以上的计算机网络,通过一定的方法, 用一种或多种通信处理设备(即中间设备)相互联接起来,以构成更大的网络 ...
- 计算机网络学习笔记:第三章
文章目录 计算机网络学习笔记:第三章 前言 3.1.概述和运输层服务 3.1.1 运输层和网络层的关系 3.1.2 因特网运输层概述 3.2.多路复用与多路分解 前言 运输层位于应用层和网络层之间,是 ...
- 计算机网络-学习笔记
计算机网络-学习笔记 1.1.1 概念.组成.功能和分类 概念:计算机网络:是一个将分散的.具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统.计算机网 ...
- 【计算机网络学习笔记】计算机网络
计算机网络学习笔记 第一章 计算机网络概述 1. 计算机网络概述 1.1 计算机网络的概念 1.2 计算机网络的组成 1.3 计算机网络的功能 1.4 计算机网络的分类 1.5 计算机网络的标准化工作 ...
- 计算机网络学习笔记(详尽版)
计算机网络学习笔记 计算机网络 第一章 定义和特点 网络 定义 功能 特点 组成 类别 性能 结构 本章重要概念 第二章 物理层 基本概念和标准 数据通信基础知识 物理层下的传输媒体 引导型传输媒体 ...
- 计算机网络学习笔记Part1
计算机网络学习笔记Part1 1. 概念 计算机网络:是一个将分散的.具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统. 2.功能 1.数据通信.2. ...
- 计算机网络学习笔记---第一章
计算机网络学习笔记 第一章 文章目录 计算机网络学习笔记 第一章 前言 一.计算机网络的概念 (一)计算机网络的功能 1.数据通信(连通性) 2.资源共享(硬件 软件 数据) 3.分布式处理 (Had ...
- 计算机网络学习笔记之物理层
计算机网络学习笔记之物理层 通信基础 背景知识 基本概念 数据.信号与码元 信源.信道与信宿 速率.波特与带宽 ★ \bigstar ★ 奈奎斯特定理(奈式准则)与香农定理 ★ \bigstar ★ ...
最新文章
- java jodd 框架中发送email
- 续篇:新型Lamda版Html.RenderAction
- 用json 数据生成mysql 表_根据json数据生成表格
- 谷歌推荐Data Binding实现MVVM模式(完整文档)
- 【渝粤教育】电大中专药剂学基础知识_1作业 题库
- Blog建设好了,好好看φ(゜▽゜*)♪
- 疑似华为Mate X 5G版入网 将支持两种组网方式
- 华人、华侨、华裔之间究竟有什么区别?
- Golang QRCode 生成实现
- Tf-idf推导及理解
- 2021美赛总结(假)。预祝大家获得满意的成绩!
- 360浏览器兼容css,css样式怎样调360浏览器的兼容性
- SWI-Prolog的下载与使用
- 推荐9款最佳的编程字体
- 红米k50和k60参数对比哪个好 红米k50和k60区别
- 下载谷歌浏览器以及谷歌浏览器不能加载网页问题的解决
- Linux vmstat命令详解:监控系统资源
- linux环境下查看ibm mq mb日志
- Javascript 实现gb2312和utf8编码的互换
- idf实验室聪明的小羊
热门文章
- 最新没写博客,晒晒家里的技术书吧
- EasyExcel动态合并单元格
- Unity_IL2CPP常见问题分析
- Python切片详解
- 企业hr管理java,hr Java 企业人事管理系统,利用SSH模式进行开发,能满足一般 的得需求。 Develop 238万源代码下载- www.pudn.com...
- 2008.09.25 半夜爬起来
- 获取京东_JdTdudfp的eid和fp
- Wav2Lip原理以及训练
- pytorch中AdaGrad优化器源码解读
- Zabbix Templates(常用模板)