计算机网络 数据链路层中的帧封装

数据链路层中的帧封装

在物理层中,数据传输涉及源到目的地的位同步传输。数据链路层将这些位封装成帧。

数据链路层从网络层接收数据包并将其封装成帧。如果帧的大小过大,则可能将数据包分割为较小的帧。较小的帧使流量控制和错误控制更加高效。

然后,数据链路层逐位地将每个帧发送到硬件。在接收方,数据链路层从硬件接收信号并将它们组装成帧。

数据链路层中的帧封装

##

帧的组成部分

一个帧由以下部分组成−

  • 帧头 − 它包含帧的源地址和目的地址。

  • 负载字段 − 它包含要传输的消息。

  • 尾部 − 它包含错误检测和纠错位。

  • 标志 − 它标记帧的开始和结束。

数据链路层中的帧封装

封装类型

封装有两种类型:固定尺寸封装和变长封装。

固定尺寸封装

在这种情况下,帧的大小是固定的,因此帧长度充当帧的定界符。因此,它不需要额外的边界位来标识帧的开始和结束。

例子 – ATM单元。

变长封装

在这种情况下,要传输的每个帧的大小可能不同。因此,需要额外的机制来标记一个帧的结束和下一个帧的开始。

它在局域网中使用。

在变长封装中定义帧定界符的两种方法为−

  • Length Field - 这里使用一个长度字段来确定帧的大小。它在以太网(IEEE 802.3)中使用。

  • End Delimiter - 这里使用一个模式作为分隔符来确定帧的大小。它在令牌环网络中使用。如果消息中出现该模式,则会使用两种方法来避免这种情况:

    • Byte – Stuffing - 在消息中填充一个字节以与分隔符区分开来。这也称为字符导向的帧格式。

    • Bit – Stuffing - 在消息中填充任意长度的比特模式以与分隔符区分开来。这也称为比特导向的帧格式。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程