计算机网络学习笔记(三)基础_数据链路层

https://www.icourse163.org/course/SCUT-1002700002   

华南理工大学_袁华老师   

以下为笔记

数据链路层

概述

保证数据传输的有效和可靠    传输过程不免会发生差错

那么数据链路层就需要做差错检测和控制和流量控制   

流量控制

流量控制有两种方法       基于速率;基于反馈            一般采取基于反馈的方法

在数据链路层经常采取基于反馈的模式,

即    由接收方告诉发送方:   处理能力大小为多少 ;      发送方根据接受方的反馈提供对应流量

数据链路层处理的协议数据单元:  帧 = 帧头(定位需要的物理地址) + 载荷 + 帧尾(校验)

物理层为数据链路层提供服务     物理层: 位流(bits)      数据链路层:  帧(frame)

成帧:    将原始的位流分散到离散的帧中

常见的四种成帧方法

  1. 字符计数法
  2. 字节填充的标志字节法
  3. 比特填充的比特标记法
  4. 物理层编码违例法

字符计数法

1.发送方: 在每个帧头部中的第一个字段,标识该帧的长度共有多少字符

2.接收方: 通过第一个字段,就知道这个帧有几个字符,在哪里结束该帧

3.优点: 实现简单

4.缺点: 没有考虑重新同步问题,一旦出错,无法恢复,工程中极少使用

标志字节法

考虑了重新同步问题,每一帧采用一个特殊字节做帧界,即当前帧的开始与上一个帧的结束

将这个特殊字节称为标志/标记字节(flag byte)
存在问题

当传输数据中也存在标志字节时,会和真正的帧界混淆

解决方案

标记字节法       当数据中存在标记字节时,在数据的标记前添加转义字符  

案例


标记字节法的补充

特点

用于PPP协议(点对点协议)

缺点

1.数据中存在帧界或转义符时会造成帧界混淆,大量的标志字节或转义字符会造成低效率的成帧(最坏情况50%)。

2. 任意比特数的帧不适用,必须是8位整数倍

任意比特数的帧怎么解决?          改进: 比特填充的比特标记法 

比特标记法

这是一种面向二进制位的帧格式,把所有需传输的数据以比特位一字排开,并以特殊的位模式01111110作为帧标志,即一个帧的开始(这也意味着标志前一个帧的结束)

位填充法

当帧内容出现与帧标志相同位串01111110时:

在5个1后插入一个0ÿ

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值