OSI分析之数据链路层

Posted thesoch

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OSI分析之数据链路层相关的知识,希望对你有一定的参考价值。

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本文主要简单讲解一下OSI的第二层——数据链路层

一、传输单位

传输数据的基本单位是帧

二、实现功能

1.异帧同步

方法:字节计数法、违例编码法、字符填充法、比特填充法
这里主要谈一下两个填充法

字符填充法

面向字符的同步协议——BSC采取的就是该方法,主要操作时增加了转义字符 DLE;

比特填充法

面向比特的同步规程——HDLC采取该方法,主要操作是发送的数据中连续出现了5个1就在之后填充一个0,原因是这里的转移方式是6个1.

2.检测错码

主要介绍几种检错码

1.奇偶校验码

水平奇偶校验常被用于在面向字符的传输协议中产生块检查字符

2.CRC——循环校验码

可查出99%以上的差错

3.海明码

4.卷积码

5.RS码

3. 差错控制方式

  1. 保留已发的帧
  2. 计时器
  3. 帧编号

数据链路层的差错控制主要是通过检错码纠错码来完成的,帧序号只是在反馈重发中的一种辅助手段

1.前向纠错

2. 自动请求重发

3.混合纠错

4. 传输协议

1.停等协议

2.回退N协议

3.选择重传协议

4.滑动窗口

5.传输技术

CDMA

在每个用户处使用一个不同的CDMA码,这些码片是相互正交或准正交的,发送方发1,就直接发送其码片序列,发0就发码片序列的反码,计算内积,结果为正1,就是该用户发送了1,为0,就是该用户没有发东西,而-1,则是该用户发送了0

ALOHA技术

主要关心它的吞吐率S
ALOHA
S-ALOHL
一个帧发送成功的条件是在2t时间内只有一个帧发送

CSMA

先听后说
工作方式:
想要传输的站点首先监听媒体上是否有其他站点在传输

0坚持CSMA

a.发送前先检测信道
b.如空闲就发送
c.如忙就延迟一个随机时间后重复a

1坚持CSMA

a.发送前先检测信道
b.如空闲就发送
c.如忙就一直监听到空闲后立即发送
d.如果有冲突,则等待一段随机时间后重复a

p坚持CSMA

a.发送前先检测信道
b.如空闲就以p概率发送数据,或以1-p的概率延迟一个随机时间单位,再重复a
c.如忙则一直监听直到空闲重复b
d.如果传输延迟了一个时间单位,重复a

CSMA/CD

工作方式:在传输的同时进行冲突检测,又叫做边听边做。每一个正在发送数据的站点,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
载波监听、多址访问、冲突检测
1坚持CSMA/CD算法
a.发送前先检测信道
b.如空闲就发送(以太网标准要求96比特)
c.如忙就一直监听知道空闲后立即发送
d.若在传输中监听到冲突,则发送扰码(jam)(32比特)来强化冲突
e.发完人为扰码后等待一段随机时间再重复a

二进制指数退避算法

a.对每个帧,当首次发送冲突,设置参数n=1
b.退避时间间隔取2^n-1个时槽数中的一个随机数(一个时槽数等于2倍的传输延迟时间)
c.每当帧重复发生一次冲突,就将n加1,但达到10次之后,随机等待的最大时槽数固定为1023
d.若重传16次仍不能成功,则丢弃该帧并向高层报告错误
优点:在于它在不同的负载时信道利用率都比较合理
缺点:没有遇到过或遇到冲突次数少的站点比等待时间更长的站点更有机会得到媒体的访问权

网桥

两种路由策略:基于生成树算法的透明网桥以及适合于令牌环网的源路由网络
透明网桥工作过程:
a.学习
b.扩散
c.转发
d.过滤
e.老化
生成树算法(STP):让网桥相互通信,并且构造一棵到达每个LAN的生成树,确保任意两个LAN间只有唯一的一条路径

交换机

网桥无法隔离广播帧,交换机可以
三种转发方式

  1. 存储转发
  2. 直通技术
  3. 无残帧:与直通类似,但是是在收到64字节的数据后才开始转发的

总结

本文只是个人粗浅之见,如有不对之处,还望大家指正

以上是关于OSI分析之数据链路层的主要内容,如果未能解决你的问题,请参考以下文章

OSI分析之数据链路层

OSI分析之数据链路层

OSI参考模型之数据链路层

OSI七层详解之二 数据链路层(DataLinkLayer)

网络基础之 OSI七层模型

1-2:网络初识之了解OSI和TCP/IP及网络分层(物理层,数据链路层,网路层,传输层,应用层)