数据链路层的设计问题是什么
数据链路层位于物理层和网络层之间。它向网络层提供服务,并从物理层接收服务。数据链路层的范围是节点到节点。
以下是数据链路层的设计问题:
- 提供给网络层的服务。
- 帧定界
- 错误控制
- 流量控制
网络层的服务
在OSI每一层中,各自使用底层的服务并向上一层提供服务。该层的主要功能是在网络层上提供明确定义的服务接口。
服务类型
服务有三种类型:
- 未确认的无连接服务 - 发送者发送消息,接收者接收消息且不需要任何确认,两个节点都使用无连接服务。
-
已确认的无连接服务 - 发送者将消息发送给接收者,接收者接收消息后向发送者发送确认消息,使用无连接服务。
-
已确认的连接导向服务 - 发送者和接收者都使用连接导向服务进行通信,是两个节点之间基于确认的通信。
帧定界
帧定界是数据链路层的一项功能,用于发送者向接收者传输一组对接收者有意义的比特位。
帧包括以下内容:
- 帧头
- 用于承载数据包的负载字段
- 帧尾
帧如下所示图示:
数据链路层中使用的三种帧定界方法如下:
- 字节定界
- 位定界
- 基于时钟的定界
错误控制
在发送节点,数据链路层的帧需要被转换为比特位,并通过传输介质传输的电磁信号,接收节点接收到电磁信号后,将其转换为比特位,并组装为帧。
由于电磁信号容易受到干扰,帧也容易出现错误。错误需要首先被检测到,然后接收节点可以进行纠正,或者发送节点可以丢弃并重新发送。
流量控制
流量控制允许两个节点之间相互通信并以不同的速度工作。数据链路层监视流量控制,以便当一个快速发送者发送数据时,一个慢速接收者可以以相同的速度接收数据。因此,使用了这种流量控制技术。
流量控制的方法
有两种流量控制方法,如下:
- 基于反馈的流量控制
- 基于速率的流量控制