📜  数据链路层中的各种帧

📅  最后修改于: 2021-08-29 02:37:41             🧑  作者: Mango

成帧是数据链路层的函数,用于通过添加发件人地址和目标地址来将消息从源或发送方分离到目标或接收方,或仅从所有其他消息分离到所有其他目标。目的或接收者地址仅用于表示消息或数据包的去向,而发送者或源地址仅用于帮助接收者确认接收。

帧通常是在各个网络点之间传输或传输的数据链路层的数据单元。它包括完整和完整的寻址,必不可少的协议以及受控制的信息。物理层仅接受和传输位流,而与含义或结构无关。因此,取决于数据链路层来简单地开发和识别帧边界。

这可以通过将特殊类型的位模式附加到帧的开始和结束来实现。如果所有这些位模式都可能意外地出现在数据中,则需要特别注意以确保这些位模式不会误认为帧定界符。

成帧只是两个计算机或设备之间的点对点连接,这些计算机或设备由包含或包含电线的数据组成,其中数据作为位流进行传输。但是,所有这些位都应装入可识别的信息块中。取景方法:
基本上有四种成帧方法,如下所示–

1. Character Count
2. Flag Byte with Character Stuffing
3. Starting and Ending Flags, with Bit Stuffing
4. Encoding Violations 

这些解释如下。

  1. 字符数:
    此方法很少使用,通常需要对帧中存在的字符总数进行计数。这是通过使用标头中的字段来完成的。字符计数方法可确保接收器或目标位置的数据链路层大约跟随的字符总数以及帧结束的位置。

    使用这种方法也有缺点,即,如果由于传输过程中发生的错误而使字符计数受到干扰或扭曲,则目的地或接收者可能会失去同步。目的地或接收者也可能无法定位或识别下一帧的开始。

  2. 字符填充:
    字符填充也称为字节填充或面向字符的成帧,与位填充相同,但是字节填充实际上对字节进行操作,而位填充对位进行操作。在字节填充中,当消息或字符具有与标志字节相同的模式时,通常将具有预定义模式的特殊字节(基本上称为ESC(转义字符))添加到数据流或帧的数据部分。

    但是接收器会删除此ESC,并保留导致某些问题的数据部分。简而言之,如果文本中存在ESC或标志,则可以说字符填充是1个额外的字节的加法。

  3. 钻头填充:
    比特填充也称为面向比特的成帧或面向比特的方法。在位填充中,网络协议设计人员将多余的位添加到数据流中。通常,这是将额外的比特插入或添加到要被传输的传输单元或消息中,作为向接收器提供信令信息和数据并将其提供给接收器以及避免或忽略意外的或不必要的控制序列出现的简单方式。

    协议管理的一种类型是简单地执行以破坏位模式,从而导致传输不同步。在网络和通信协议中,比特填充是传输过程中非常重要的部分。 USB也需要它。

  4. 物理层编码违规:
    违反编码是仅用于其中物理介质上的编码包括某种冗余的网络的方法,即使用多个图形或视觉结构来简单地编码或表示一个数据变量。