什么是数据链路层?

我们都使用互联网来获取我们需要的信息,但你有没有想过,这些信息是如何从地球的一端传送到另一端的?网络如何运作?互联网如何将您与其他计算机和服务器连接起来?那么,当您研究 OSI(开放系统互连)模型时,您可以立即找到所有这些问题的答案。它是一个概念框架,用于教育人们了解网络系统的功能。它还在一组规则和要求中描述了计算功能。

什么是数据链路层?-南华中天

因此OSI模型可以支持不同产品和软件之间的互操作性。OSI 模型有不同的层,每个层都被定义为提供一组特定的功能。OSI 层之一称为数据链路层,这就是我们今天要详细说明的内容。在本文的帮助下,我们将向您展示数据链路层的组件、数据链路层提供的服务类型、数据链路层协议示例等。让我们开始吧。

什么是数据链路层?

OSI 模型和我们的网络中的数据链路层用于提供安全的节点到节点的数据传输。它将数据包转换为从网络层接收的帧,然后将它们发送到物理层。除此之外,在数据链路层的帮助下,信息在通过网络传输之前得到同步。同样,它还有助于错误控制和编码数据,以便它可以传递到物理层。

数据链路层的基本工作之一是找到错误检测位并在发现错误时纠正错误。该层将消息组装到框架中。之后,系统将等待接收数据传输确认。一旦收到确认,网络就可以可靠地发送数据。

此外,它还用于将原始传输设施转换为没有任何未检测到的传输错误的线路。该行将被发送到网络层。为此,数据链路层将数据分解成小帧。这些帧有几百到几千字节。分解后,它将按顺序发送帧。如果服务可靠,接收方将通过向发送方发送确认帧来为每个帧提供确认回执。

数据链路层提供的服务

下面给出数据链路层在网络工作中所提供的功能和服务。

  • 成帧:这些是从网络层接收到可管理数据单元的比特流。数据链路层负责将流分成更小的比特进行传输。
  • 物理寻址:当帧被发送到物理层时,数据链路层将提供帧头。需要添加标头,以便物理层能够知道帧的发送方和接收方。当需要将帧分发到不同的系统或网络时,这变得非常重要。
  • 流量控制:数据链路层提供了一种流量控制机制,可以使用缓冲区使快速发送器运行在慢速接收器上。缓冲区将添加一个额外的位来维持流量控制。结果,接收方没有交通堵塞。
  • 错误控制:此服务由数据链路层通过在帧的最后添加尾部来实现。通过使用这种机制,网络也避免了帧的重复。
  • 访问控制:当多个设备连接到同一链路时使用访问控制。这种情况将决定哪些设备将控制链路。
  • 确认无连接服务:使用数据链路层使用的停止和等待协议,确认数据包的传送。在这里,没有建立任何逻辑连接。因此,发送过来的每个帧都将被单独确认。除此之外,此模式将允许用户向其他系统发送或传输数据,并同时要求接收方返回数据。
  • Acknowledged Connection-Oriented Service:首先在发送方和接收方之间建立连接。之后,数据将通过已建立的连接发送。框架带有单独的编号。这样每一帧只会在另一端收到一次。这也确保接收到的帧按正确的顺序排列。
  • Unacknowledged Connectionless Service:这提供了无错误的数据报式传递系统,应该没有任何问题,甚至没有流量控制。在这里,发送方的机器将独立的帧传输到接收方的系统,而不要求帧的确认。之所以称为无连接,是因为一开始就没有建立连接。这种模式的工作实例是以太网。

数据链路层协议示例

数据链路层协议的主要用途是确保发送和接收的比特和字节彼此相同。它们是一组用于实现数据链路层的规范。数据链路层位于物理层之上。广域网 (WAN) 需要大量的数据链路协议。但是,为了方便起见,我们在下面给出了一些最常用的数据链路层协议。

同步数据链路协议 (SDLC)

它是一种通信协议,还支持多点链接和错误恢复。SDLC 的主要用途是承载系统网络架构的流量。此外,它还是 HDLC 的前身。在 Internet 的最初几天,此协议用于将所有远程设备连接到位于中心位置的大型计算机。连接的建立方式类似于点对点或点对多点,具体取决于要求。

高级数据链路协议 (HDLC)

近年来,HDLC 变得更像是一把保护伞,您可以在它下面找到许多潜伏的广域协议。该协议也用于 x.25 网络,由 ISO 于 1979 年开发。它松散地基于 SDLC,提供可靠和尽力而为的不可靠服务。HDLC 是一种面向比特的协议,适用于点对点和多点通信。

串行线路接口协议 (SLIP)

这个更像是一种旧的网络协议,它被用来在 IP 数据包的末尾添加成帧字节。它更像是一种数据链路控制设施,对于在 Internet 服务提供商 (ISP) 之间传输 IP 数据包至关重要。如果我们换个角度来看,它就变成了一个TCP/IP的封装,旨在与串口和其他几个路由器连接进行通信。

点对点协议 (PPP)

它用于为 SLIP 提供附加功能。此外,PPP 还被认为是用于传输所有类型的数据包和 IP 数据包的最强大的协议。某些拨号 Internet 连接也需要它。除此之外,它还提供了一种描述帧的成帧方法。同样,它是一种面向字符的协议,可用于查找帧中的错误。最后,它可以用来为网络提供两种协议,NCP 和 LCP。

链路控制协议 (LCP)

LCP 由 IEEE 802.2 创建,在早期,它被用作 LAN 中的 HDLC 服务。LCP 很像 PPP,用于建立、配置、测试、维护以及在传输数据帧时结束或终止链路。

网络控制协议 (NCP)

ARPANET 是提出 NCP 的网络。它使用户可以从远程位置访问计算机和其他一些设备。此外,它还可用于通过网络在两台或多台计算机之间传输文件。它是一种始终可用的协议,以及 PPP 可以支持的所有其他高层协议。不幸的是,NCP 在 1980 年代被 TCP/IP 取代。

链接访问程序 (LAP)

它是负责在点对点链路上构建和传输数据的一种协议。除此之外,您还可以获得一些可靠的服务功能。存在三种类型的 LAP 协议。LAP Balanced、LAP D-channel 和 LAP Frame-mode 承载服务。LAP 是从 IBM SDLC 创建的,IBM 正在提交标准化。

数据链路层及其在错误检测中的应用

存在三种不同类型的错误,数据链路层使用各种错误控制技术。确保帧或数据流从源传输到目的地没有任何问题或错误。

  • 单比特错误:在这种情况下,只有一位被破坏,这意味着它已从其原始状态从 0 变为 1,反之亦然。
  • 多位错误:这里,帧中不止一位被损坏。
  • 突发错误:对于突发错误,一个以上的连续位处于损坏形式。

数据链路层控制错误

有两种处理错误的方法。首先是错误检测,数据链路层检查错误是否发生。在错误检测中,错误位数及其类型无关紧要。然后是纠错,需要知道被破坏的比特的确切数量以及它们在数据流中的位置。对于这两个过程,发送方需要连同数据位一起发送一些额外的位。一旦发送了额外的比特,接收方将根据额外的冗余比特执行必要的检查。如果接收方发现帧中没有错误,它将删除冗余位并将消息传输到上层。

查找错误位位置的方法

  • 向后纠错:如果接收方在传入帧中遇到错误,它将请求发送方重新发送前一帧。做起来非常简单,但从一开始就非常高效,不需要额外成本。另一方面,数据的重传对于应用的要求比较低。
  • 前向纠错:如果接收方在传入帧中发现一些错误,它将开始执行生成实际帧的纠错代码。这将节省大量用于传输的带宽。当错误很小时,它总是会发生。但如果错误太多,则必须重新传输帧。

数据链路层的问题

数据链路层有很多需要解决的问题。其中一些是。使用数据链路层,发送方不会淹没慢速接收方。这意味着发送方正在以非常高的速度发送帧。另一方面,慢速接收器可能无法正确处理它。即使传输没有错误,这也会导致帧丢失。此外,数据链路层还负责数据传输的无差错链路。但是当发生这种情况时,它需要处理传输错误,重传丢失的帧,并在广播时找到一种方法来控制共享频道的访问。

结论

所以这就是关于数据链路层的各种组件、数据链路层提供的服务类型以及数据链路层协议示例的全部内容。希望现在您对数据链路层及其用法有了更好的了解。