数据链路层的概念和基本问题

一、数据链路和链路的区别

1、链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点,一条链路只是一条通路的一个组成部分。

2、数据链路(data link)除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路

二、数据链路层的作用

1、数据链路层需要把网络层交下来的数据封装成帧发送到链路上,以及把接受到的帧中的数据取出并上交给网络层。

 2、从数据流动上来看数据链路层的作用

三、数据链路层的三个基本问题

1、封装成帧

封装成帧(framing)就是在一-段数据的前后分别添加首部和尾部, 然后就构成了一个帧。帧首部和尾部的一个重要作用就是进行帧定界。即当数据发送中断时,接收端收到了只有帧开始符没有帧结束符的帧,就认为是一个不完整的帧,就会被丢弃。

2、 透明传输

①用ASCII非打印控制字符进行帧定界:当数据是由可打印的 ASCII码组成的文本文件时,帧定界可以使用ASCII非打印控制字符作为帧定界符。

②控制字符SOH放在该帧的最前面,表示帧的首部开始。另一个控制字符EOT 表示该帧的结束。

 ③当数据部分是非ASCII码表的文本文件时(比如二进制代码的计算机程序或图像等),情况就不同了。如果数据中的某一段二进制代码正好和SOH或EOT帧定界符编码一样,接收端就会误以为这是帧的边界。

④所以就引入了转义字符ESC,即在数据中出现的SOH、ESC、EOT字符编码之前的位置插入转义字符ESC的编码。如图所示就是透明传输过程。                                                                                                  

 3、差错检验

①为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。在数据链路层传送的帧中,广泛使用了循环冗余检验(CRC)的检错技术。

②CRC校验过程

③注意:

1.对于一个数据帧,具体是采用几位的FCS,以及用什么数作为除数,都是数据链路层相关协议所定义的。 

2.在数据后面添加上的冗余码称为帧检验序列FCS 。循环冗余检验CRC和帧检验序列FCS并不等同。 CRC是一种常用的检错方法,而FCS是添加在数据后面的冗余码。 FCS可以用CRC这种方法得出,但CRC并非用来获得FCS的唯一方法。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜深人静码代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值