数据通信原理「一分钟搞懂数据链」

数据链路是指从发送端经过通信线路到接收端之间物理上的传送路径和逻辑上的传输信道的总称。 在数据通信网中,按一种链路协议的技术要求连接两个或多个数据站的...

一、数据链路层概念

链路(link):两个结点之间的物理线路段,中间没有其他的交换结点。

数据链路(data link):数据传输时还需要通信协议的控制,实现这些协议的软硬件加上链路就构成了数据链路

二、数据链路层功能

数据链路层最基础的服务就是为网络层服务,将源自网络层的数据以帧为单位传输到相邻结点的目标网络层。(这种传输是在物理层将数据帧转换为比特流之后完成的,也就是说物理层为数据链路层提供服务。可以看出,在计算机网络体系中,下层为上层提供服务,同时上层利用下层提供的服务实现上层的功能。)

数据帧:链路层的协议数据单元,封装网络数据报

数据链路层为完成服务,必须具备三大主要功能:封装成帧透明传输差错检测

2.1 封装成帧

在IP数据报前后分布添加首部尾部就构成了一个帧。

计算机网络--数据链路层一

只有在数据链路层封装成帧时有添加尾部,其他如构成IP数据报时仅添加首部。帧尾部存放有CRC校验码,可以检测差错(后面会具体描述)。首部和尾部还有个重要作用就是帧定界,即确定帧的界限。

2.2 透明传输

透明:一个事物实际存在,但看起来好像不存在一样,比如空气,实际存在,但是看不见。

在计算机中,用户输入计算1+1的指令,计算机显示计算结果为2,计算过程是存在的,但是对用户是透明的,用户只能看见结果而不能看见过程。在透明传输中,透明是针对数据链路层的,数据链层的数据帧无论是什么样的比特组合,都能顺利在链路上传输。为什么要有这个功能呢?

在传输数据时,如果数据的二进制组合中出现与帧定界符相同的组合,此数据帧的传输就会提前终止,数据传输出错。因此,需要采取手段避免这种错误,以实现透明传输。

2.2.1 字符计数法

字符计数法的原理就是在帧首部使用一个计数字段,以表明该帧的字符长度,这样就避免了数据帧传输提前终止。它的缺点是当有数据帧中有一个字符丢失,后面的数据帧全会出错。比如第一帧中的1如果丢失,那么第一帧就会变成52345,后面的所有帧依次错位,全部出错。

计算机网络--数据链路层一

2.2.2 字符填充法

在数据帧中与控制信息相同的比特组合前面加一个转义字符“ESC”,相当于告诉系统这是一个数据信息,不是控制信息。

计算机网络--数据链路层一

SOH:Start Of Header,放在首部表示帧的开始

EOT:end of transmission,放在尾部表示帧的结束

当接收方接收到数据帧后会自动去除转义字符。

2.2.3 零比特填充法

只需记住5 1 1 0即可,看见5个连续的1,就插入一个0。

计算机网络--数据链路层一

只有在帧的开始与结束处才出现6个连续的1,事实上,此方法正是以F(01111110)为边界。

2.2.4 违规编码法

违规编码法适用于曼彻斯特编码,曼彻斯特编码用从高到低的跳变表示1,从低到高的跳变表示0,那我们就可以用“高-高”,“低-低”表示帧的开始与结束。

计算机网络--数据链路层一
本文来自网络,不代表本站立场,转载请注明出处: http://www.fxqlsy.cn/news/72917.html
返回顶部