计算机网络—数据链路层

开发工具和关键技术:Word 2016,计算机网络知识
作者:金建勇
撰写时间:2019年5月28日

首先我们要了解一下什么是网络,网络包括简单的网络和由网络构成的互联网。下面就介绍计算机网络中的数据链路层。
1、数据链路层使用的信道主要有以下两种类型:
点对点信道,这种信道使用一对一的点对点通信方式。
广播信道,这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些数据发送。
我们看看数据链路层的简单模型,如下图所示:
计算机网络—数据链路层_第1张图片
可以看到图中主机H1向H2发送数据的过程,需要注意的是:不同的链路层可能采用不同的数据链路层协议。
2、数据链路还有另外的术语,分为物理链路和逻辑链路。数据链路层传输的是帧,它就像个数字管道,常常在两个对等的数据链路层之间画出一个数字管道,而在管道上传输的单位就是帧。如下图所示:
在这里插入图片描述
数据链路层不用考虑物理层如何实现比特传输的细节。甚至还可以更简单地设想好像是沿着两个数据链路层之间的水平方向把帧直接发送到对方。
数据链路层的协议有很多种,但有三个基本问题是共同的。这三个基本问题是:封装成帧、透明传输、差错控制。

 封装成帧
封装成帧就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。
首部和尾部的一个重要作用就是进行帧定界。如下图所示:
计算机网络—数据链路层_第2张图片

当数据是由可打印的的ASCII码组成的文本文件时,帧定界是可以使用特殊的帧定界符。
帧开始符:SOH,帧结束符:EOT。

 透明传输
如果数据中 某个字节的二进制代码恰好和SOH或EOT一样,数据链路层就会错误地“找到帧的边界”。
解决透明传输的方法:字节填充或字符填充。发送端的数据链路层在数据中出现控制字符‘SOH’或“EOT”的前面插入一个转义字符“ESC”(其十六制是1B)。接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符ESC。当接收端收到连续的两个转义字符时,就删除其中前面一个。

下面看个字节填充法解决透明传输问题的例子,如下图所示:
计算机网络—数据链路层_第3张图片

 差错检测
在传输过程中可能会产生比特差错:可能会变成0,而0也可能变成1。在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER。误码率和信噪比有很大关系。为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。

下面介绍一种检测方法:循环冗余法。
原理就是在发送端,先把数据划分为组。假定没组k个比特。
冗余码计算的案例,如下图所示:
计算机网络—数据链路层_第4张图片

以上就关于计算机网络中数据链路层的介绍,大家可以学习或参考。

你可能感兴趣的:(原创,基础知识,课后作品,网络)