一、基本概述:
1、相关名词解释:
链路::网络中两个结点之间的物理通道
数据链路:网络中两个结点之间的逻辑通道,把控制实现数据传输协议的硬件和软件加到链路上就够构成了数据链路
帧:链路层的协议数据单元,封装网络层数据报
2、基本概念:
数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传输数据报
二、功能:
1、概述:
为网络层提供服务。无确认无连接服务、有确认无连接服务、有确认面向连接服务(有连接一定有确认!!)
链路管理,即连接的建立、维持、释放(用于面向连接的服务)
组帧
流量控制(限制发送方)
差错控制(帧错/位错)
2、功能详情:
封装成帧:
概念:给一段数据添加首部和尾部来组成一个帧。首尾部包含很多控制信息,他们的重要作用:帧定界(确定帧的界限)
注:帧的数据部分<=最大传送单元MTU
帧同步:
接收方应当能从接收到的二进制比特流中区分帧的起始和终止
透明传输:
概念:指不管所传数据是什么样的比特组合,都能够在链路上进行传送,因此,链路层看不到有任何妨碍数据传输的东西
组帧的四种方法:
字符计数法(易出错,不常用):帧首部的第一个计数字段(第一个字节,8位)来标明帧内的字符数
字符(节)填充法:以一个特定的标志符开始,以及一个特定标志符结尾,中途的所有标志符会被转译成一般的帧
零比特填充法:首部尾部的标志符是一样的,中间的数据部分:在发送端,扫描整个信息字段,只要连续5个1,就立即填入1个0(不管五个1后面跟的是不是0);在接收端,收到一个帧时,先找到标志符确定边界,再用硬比特流进行扫描,发现连续5个1时,就把后面的0删掉(发送端的逆过程)
违规编码法:用编码中不会用到的编码方法来定界帧的起始和终止,例如:曼彻斯特编码中用”高-低“或者”低--高“表示0或1,那就不会用到”高-高“或者”低-低“,那么就可以用”高-高“或者”低-低“来界定帧的起始和终止
注:比特填充法和违规编码法更为常用