计算机网络 - 数据链路层

数据链路层

数据链路层的作用:将上层(网络层)给他的数据报,安全的传给其他结点

链路层基本概念

传输层,数据链路层,物理层  三层之间的关系

数据链路层功能


组帧

数据报 加头加尾,包装成帧

帧是网络上的传输单位

帧的作用:帧定界 , 确定帧的大小(开始 和 结束)

帧的数据部分长度 >> 帧首部和尾部  ,这样传输效率才高

但是存在极限值,  MTU : 帧的数据部分最大传送单元

链路层传输特点:透明传输, 链路层是不会看帧的数据内容部分的

组帧的四种方法

字符计数法

缺点:一个出错后面的都会出错 不常用

第一个字符表示该帧有多少个字符

字符填充法

常用于文本文件

设置了开始标志和结束标志 ,数据部分采用透明传输 防止提前终止

实现透明传输的方法: 在控制字符EQT / SOH前面加上转义字符ESC ,把他们转化为数据而不是控制命令
在接收端的时候,去掉对应的转义字符就是原始数据了

零比特填充法

设置开始和结束端,数据部分与上述处理不一样

5110: 遇上5个1 后面就插入 / 删除一个0

常用 ⭐

违规编码法

把违规的编码方式作为起始 终止

常用 ⭐

差错

由噪声引起

差错控制(检错编码)

在链路传输过程中,减少错误的帧占用的资源  (而不是传到接收端以后才发现他是个错的)

这里主要研究比特错的情况, 帧错 在滑动窗口那块讲解

物理层的编码: 单个比特 是高低电平和1/0数字信号之间的编码

链路层编码: 一组比特, 来检查是否出差错

冗余码: 附加信息,用来判断是否出错

检错编码 - 奇偶校验码

校验员  +  信息员

奇偶校验码的奇偶判断,是应该算上前面的校验员的的

不能检验 = 判断 哪个校验是出错的  = 由奇变偶,或由偶变奇

缺点: 奇校验 -> 两位bit发生差错 其实会存在检测不出来错了的情况  检错能力50%

 检错编码 - CRC循环冗余码

数据加阶数除法 判断余数是否相同

阶: 最高次方  的 个数个0

生成多项式 : 除数 题目指定  或者 根据所有次方的系数获得

不要用除法啦,用异或  相同为0,不同为1

冗余码: 数据+阶 / 多项式 的余数

缺点:出错的帧丢弃了, 并没有把他修正回来  ,不属于可靠传输

纠错编码 - 海明码

不是全部纠错  : 可以发现所有的错误, 但是只能纠正 单比特错

辐射范围广,可以校验附近好几个比特位

P1校验码 二进制 0001 ,所以他能校验所有二进制尾数为1的位   
具体校验方法: 所有的符合规则的  按位异或  == 零    =>P1

注意:算出校验码后, 写出来是P4P3P2P1

链路层-流量控制

控制发送方的发送速率

链路层流量控制:点对点                       链路层存在确认帧,接受方收不下就不回复
传输层的流量控制:端到端                   接收端给发送端一个窗口公告

停止等待协议

早些年在链路层,随着技术的提高,现用于传输层 ; 链路层用于差错控制

数据 链路层 - 帧;网络层 - ip数据报, 传输层 - 报文段

 无差错情况

有差错情况 - 数据丢失(丢包)

设置的计时器时间  微微大于  平均的往返时间RTT
发送超时  会重传一次当前帧

所以 发送一个帧以后,必须保留副本
数据帧和确认帧必须编号

有差错情况 - 确认帧丢失(ACK丢失)

有差错情况 - ACK迟到

对来晚的确认帧  丢弃

 

性能分析 - 信道利用率

信道利用率太低  大部分时间都在路上

后退N帧协议GBN

停止等待协议可以看做发送窗口和等待窗口都是1的GBN协议

确认帧:确认当前之前的所有帧已收到    如果超时,重发已经发送但是未被确认的帧

接收端: 即使收到了别的帧,也不要   发送端:迟迟收不到确认帧,会重传所有未被确认的

 

选择重传协议SR


为了避免出现二义性 ,  窗口最大为2^n  -1

可靠传输机制

 

链路

https://blog.csdn.net/AKUANer/article/details/105416154

点对点链路 - PPP协议

广播式链路 - 介质访问控制

存在冲突 , 介质访问控制解决这种冲突

静态划分信道 - 信道划分介质 访问控制

这里的帧指的是物理层比特流划分的帧, 而不是链路层的帧

静态划分信道 -FDM

FDM frequent 频率复用,

静态划分信道 - 时分多路复用TDM

分时复用的感觉, 考虑一种情况, ABC都休息了,D却只能在一个周期的一小段时间运行,如何改进 ->统计时分复用

静态划分信道 - WDM 波分多路复用 wives

静态划分信道 - 码分多路复用 CDM

发送1 : 发送比特1对应的序列   , 发送0 :发送比特0对应的反码序列
如何不打架 : 相交: A站点 B站点 对应序列  对应相乘相加 / 位数 = 0    就可以同时发送了
如何合并 : 对应相加
如何分离: 规格化内积    源站序列 ×合并的数据序列 求综合 / 位数 =?    推理出 源站发送了?比特

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值