OSI模型中的数据链路层17 Mar 2025 | 6 分钟阅读 数据链路层是 OSI 模型自底向上数的第 2 层。它的作用是提供节点到节点的网络数据传输。数据链路层的首要职责是检查从一个点传输到物理层上的另一个节点的数据是否无错误。如果在数据传输过程中发生任何错误,数据链路层会丢弃该数据并重新发送。该层负责设备之间可靠和高效的通信。  数据包从网络层传输到数据链路层。这些数据包被进一步划分为帧,帧的大小根据系统中使用的网卡(NIC)来选择。 该层在两个点之间设置了一个逻辑层。它通过在帧缓冲区已满时停止传输信号来帮助管理网络上的帧流量控制。为了传输信息,数据链路层使用交换机、桥接器等设备。 数据链路层分为两个子层,如下所示:  - 逻辑链路控制(LLC)或数据链路控制(DLC)子层: LLC 或 DLC 是数据链路层的最顶层。它负责处理底层和上层之间的通信。该子层运行在数据链路层之上,并提供流量控制和错误信息。它负责分配帧序列号。它指定了可用于寻址传输介质上的站以及控制发送方和接收方之间交换的数据的机制。
- 媒体访问控制(MAC)子层: 数据链路层的底层子层是媒体访问控制。它也称为媒介访问控制。它为传输介质提供多路复用和流量控制。该子层的主要职责是封装帧、检查传输错误,然后允许将帧转发到上层。它决定了在任何给定时间谁可以访问介质。
数据链路层的功能- 逐跳或节点到节点的数据传输: 数据链路层(DLL)的责任是提供逐跳(hop-to-hop)的数据传输。数据链路层决定了数据应首先发送到哪个节点,然后是下一个节点,依此类推,直到信息到达目标系统。
- 分帧: 这是将网络层接收到的数据包封装成帧进行传输的过程。每个帧包含一个头部、一个有效载荷字段和一个尾部。头部包含帧起始位、源和目标地址、数据类型以及质量控制位。有效载荷字段包含数据包。尾部包含错误检测位、错误纠正位和帧结束位。
- 物理寻址: 数据链路层将接收方和发送方的物理地址附加到每个帧的头部。要将信息从源发送到目标,您必须知道我们正在发送什么以及正在发送到哪里。
- 错误控制: 在传输过程中,帧可能由于任何原因而损坏。错误可以在数据链路层通过以下三个错误控制阶段来控制:
- 错误检测: 通过帧尾部中的错误检测位来检测数据帧中的错误。
- 确认: 收到数据帧后,接收方会响应发送方,告知数据帧已成功发送。此确认可以是肯定的或否定的。如果数据帧成功接收,则发送方发送肯定反馈;否则,发送方发送否定反馈。
- 重传: 如果接收方成功接收到数据帧,则发送方发送下一组数据帧;但是,如果数据帧未能成功到达接收方,则发送方必须重新发送数据帧。
- 流量控制: 接收方应能以与发送方发送数据帧相同的速度接收数据帧,即发送方和接收方应以相同的速度工作。如果发送方以高速发送帧而接收方以低速接收帧,发送方将过载,导致数据丢失。
数据丢失可以通过以下两种机制来处理: - 停止等待(Stop and wait): 发送方应等到收到接收方对帧 1 的确认。发送方将等待接收方的响应,然后发送下一数据帧。
- 滑动窗口(Sliding Window): 在此机制中,发送方会在发送完一组帧后才发送确认,而不是在每个帧后都发送确认。
数据链路层协议 - 同步数据链路协议 (SDLC): 它是第一个面向比特的协议,被广泛使用。它是高级数据链路协议的一个子集。IBM 于 1975 年开发了该协议。它管理数据链路层上的同步串行传输的比特。
- 高级数据链路协议 (HDLC): 它是用于点对多点和点对点链路上的数据传输的面向比特的协议。国际标准化组织(ISO)于 1979 年开发了该协议。它基于同步数据链路协议。它提供无连接和面向连接的服务。它提供两种传输模式:异步平衡模式(ABM)和正常反馈模式(NRM)。
- 串行线路互联网协议 (SLIP): 这是一个简单的互联网协议,允许用户通过计算机调制解调器访问互联网。Rick Adams 于 1984 年开发了该协议。它与 TCP/IP 一起用于通过路由器和串行端口进行通信。
- 点对点协议 (PPP): 这是一个面向字符或面向字节的协议。PPP 是一种运行在互联网连接上的 WAN 协议。它用于宽带通信。它用于在点对点设备之间传输多协议数据。它提供传输加密、循环连接认证和数据压缩。
- 网络控制协议 (NCP): 该层由 ARPANET 实现。它允许在两个设备之间传输数据。它是点对点协议的一部分。该网络层将数据包从源头传输到目的地。
- 链路控制协议 (LCP): 该层也是点对点协议的一个组成部分。它主要用于在发送数据之前建立和维护链路。
- 链路访问过程 (LAP): 它派生自高级数据链路协议。它用于点对点链路上进行分帧和数据传输。它有几种链路访问协议,例如多链路过程(MLP)、调制解调器链路访问过程(LAPM)、半双工链路访问过程(LAPX)和帧中继链路访问过程(LAPF)。
结论- 在本文中,您学习了 OSI 模型中的数据链路层,它是开放系统互连模型的第二层,该层的作用是将无错误的数据从一台计算机传输到另一台计算机。
- 您了解到 OSI 模型中的数据链路层有两个子层,即媒体访问控制(MAC)子层和数据链路控制(DLC)子层或逻辑链路控制(LLC)子层。
- 您学习了数据链路层的几个功能和职责,例如分帧、逐跳数据传输、物理寻址、流量控制和错误控制。
- 您学习了数据链路层的各种协议,如点对点协议(PPP)、高级数据链路协议(HDLC)、链路控制协议(LCP)、同步数据链路协议(SDLC)、网络控制协议(NCP)、串行线路接口协议(SLIP)和链路访问过程(LAP)。
|