数据链路层17 Mar 2025 | 阅读 2 分钟 - 在 OSI 模型中,数据链路层是自顶向下的第 4 层,自底向上的第 2 层。
- 连接相邻节点的通信信道称为链路,为了将数据报从源传输到目的地,数据报必须跨越单个链路传输。
- 数据链路层的主要职责是跨单个链路传输数据报。
- 数据链路层协议定义了节点之间交换的数据包格式以及错误检测、重传、流量控制和随机访问等操作。
- 数据链路层协议有以太网、令牌环、FDDI 和 PPP。
- 数据链路层的一个重要特性是,数据报可以在路径中的不同链路上由不同的链路层协议处理。例如,数据报在第一个链路上由以太网处理,在第二个链路上由 PPP 处理。
数据链路层提供以下服务: - 成帧和链路访问: 数据链路层协议在通过链路传输之前,将每个网络帧封装到链路层帧中。帧由一个数据字段组成,其中插入了网络层数据报和多个数据字段。它指定了帧的结构以及通过链路传输帧的信道访问协议。
- 可靠交付: 数据链路层提供可靠交付服务,即无错误地传输网络层数据报。可靠交付服务通过传输和确认实现。数据链路层主要在链路上提供可靠交付服务,因为它们的错误率较高,并且可以在本地(发生错误的链路处)进行纠正,而不是强制重新传输数据。
- 流量控制: 接收节点接收帧的速度可能快于处理帧的速度。如果没有流量控制,接收方的缓冲区可能会溢出,并且帧可能会丢失。为了解决这个问题,数据链路层使用流量控制来防止链路一侧的发送节点压垮链路另一侧的接收节点。
- 错误检测: 信号衰减和噪声可能会引入错误。数据链路层协议提供了一种检测一个或多个错误的机制。这通过在帧中添加错误检测位来实现,然后接收节点可以执行错误检查。
- 纠错: 纠错类似于错误检测,不同之处在于接收节点不仅检测错误,还确定错误在帧中发生的位置。
- 半双工和全双工: 在全双工模式下,两个节点可以同时传输数据。在半双工模式下,只有一个节点可以同时传输数据。
|