数据链路层的网络技术(数据链路层的功能与作用)

数据链路层的核心任务是将物理层提供的「原始比特流」转换为网络层可处理的「帧流」。
在信道上传输比特的基础上,数据链路层负责有效地管理帧,其工作流程包括以下步骤:
  • 先从网络层获取到数据包;

  • 将数据包封装成帧,以便进行传输;

  • 每个帧包括帧头、数据包和帧尾;

  • 通过物理层传输帧;

  • 接收方接收帧,并通过数据链路层进行解析;

  • 最终将解析后的数据传递给接收方的网络层。

传输流程包括以下关键步骤:
建立连接:双方初始化各种变量和计数器,用于记录接收到的数据和未接收到的数据。
真实传输:实际传输一个或多个帧,确保数据有效传递。
链接释放:释放所有变量、缓冲区、计数器和维护的资源,完成整个链接的清理。

传输帧的构成

数据链路层负责将比特流拆分成帧,并为每个帧计算一个校验和(短令牌)。在传输过程中,帧和校验和一起被传输。
一旦帧到达目标机器,数据链路层会重新计算帧的校验和,如果计算结果与帧中包含的结果不同,说明在传输过程中发生了错误,数据链路层将采取相应的补救措施。
当数据链路层接收到数据包时,它在数据包前后添加数据链路层的头和尾,将数据包封装到一个帧中。因此,一个帧包含一个内嵌的数据包、控制信息头和一个校验和。然后,帧被传输到另一台机器的数据链路层。

值得注意的是,网络层无法获取任何关于数据链路层帧头信息的内容。这样的设计确保了网络层和数据链路层的完全分离,使得在数据链路协议和帧格式发生变化时,网络层软件无需进行任何修改。

检测错误和纠正错误

通常情况下,通信协议会要求接收方发送一些特殊的帧,用于对接收到的帧进行肯定或否定的确认。
如果接收方发送了关于某一帧的肯定,发送方就知道该帧已经安全到达;反之,如果接收方发送否定确认,则表示在传输过程中发生了错误,需要重新传输当前帧。
为了处理错误,有两种主要策略,它们都涉及在发送的数据中添加「冗余信息」。
第一种策略是使用纠错码,通过在发送的数据中添加足够多的冗余信息,使接收方能够推断出被发送的数据是什么。
另一种策略是使用检错码,其中包含一些冗余信息,使接收方能够检测到发生了错误,并请求发送方重新传输。
在实际应用中,我们需要根据不同的通信介质选择合适的策略。
在高度可靠的信道,如光纤通信中,通常采用检错码,因为错误发生的频率较低,可以通过重新传输整个数据块来处理偶发错误。
而在错误较为频繁的信道,如无线网络中,更倾向于使用纠错码,以便接收方能够计算出原始的数据块。

点到点协议「PPP,Point-to-Point Protocol」

链路层采用的成帧方法各种各样,包括字节计数、字节填充、和比特填充,Internet 使用 PPP 作为点到点线路上的主要数据链路协议。
PPP 是一个成帧机制,能够在多种物理层上承载不同协议的数据包。它以字节为单位进行操作,特别是采用了字节填充技术,使得所有帧的长度都是字节的整数倍。
它的三个主要特征:

成帧方法: PPP 采用一种成帧方法,能够清晰明确地区分出一帧的结束和下一帧的开始。

链路控制协议:PPP 包括一个链路控制协议,用于启动线路、测试线路、协商参数,或者在线路不再需要时温和地关闭线路。
协商网络层选项的方法:PPP 提供一种独立于网络层协议的协商方式,用于协商网络层选项。选择的方法是针对每一种支持的网络层都有一个不同的网络控制协议。

这些特征使得PPP成为一个灵活且可扩展的协议,适用于各种不同的网络环境和需求。


内容优化:ChatGPT
图片来源:Pixabay
内容来源:《计算机网络》

原创文章,作者:小道研究,如若转载,请注明出处:https://www.sudun.com/ask/34469.html

(0)
小道研究's avatar小道研究
上一篇 2024年4月16日 上午8:20
下一篇 2024年4月16日 上午8:22

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注