多路访问协议 - ALOHA、CSMA、CSMA/CA 和 CSMA/CD

2025年03月17日 | 阅读 9 分钟

数据链路层

在计算机网络中,数据链路层用于在两个设备或节点之间传输数据。它将该层分为数据链路控制多路访问解析/协议等部分。上层负责数据链路层的流量控制和错误控制,因此称为数据链路控制的逻辑部分。而下层子层用于处理和减少信道上的冲突或多路访问。因此,它被称为媒体访问控制或多路访问解析。

数据链路控制

数据链路控制是利用各种技术(如帧化、错误控制和流量控制)在专用链路上可靠地传输数据包的网络通道。

什么是多路访问协议?

当发送方和接收方有专用链路来传输数据包时,数据链路控制足以处理该信道。假设在两个设备之间没有专用路径进行通信或传输数据。在这种情况下,多个站访问信道并同时在信道上传输数据。这可能会导致冲突和串扰。因此,需要多路访问协议来减少冲突并避免信道之间的串扰。

例如,假设有一个挤满学生的教室。当老师问一个问题时,班上所有的学生(小信道)会同时回答问题(同时传输数据)。所有学生同时回答,导致数据重叠或数据丢失。因此,老师(多路访问协议)有责任管理学生,并让他们只有一个答案。

以下是多路访问协议的类型,它们被细分为不同的过程:

Multiple access protocol- ALOHA, CSMA, CSMA/CA and CSMA/CD

A. 随机访问协议

在此协议中,所有站都有相同的优先级通过信道发送数据。在随机访问协议中,一个或多个站不能依赖另一个站,也不能由任何站控制另一个站。根据信道的状态(空闲或忙),每个站都会传输数据帧。但是,如果多个站通过信道发送数据,则可能发生冲突或数据冲突。由于冲突,数据帧数据包可能会丢失或更改。因此,接收方无法接收。

以下是用于在信道上广播帧的随机访问协议的不同方法。

  • Aloha
  • CSMA
  • CSMA/CD
  • CSMA/CA

ALOHA 随机访问协议

它专为无线 LAN(局域网)设计,但也可用于共享介质传输数据。使用此方法,任何站都可以在有数据帧可供传输时同时跨网络传输数据。

Aloha 规则

  1. 任何站都可以随时向信道传输数据。
  2. 它不需要任何载波侦听。
  3. 在多个站通过数据传输过程中,可能会丢失数据帧。
  4. Aloha 中存在帧的确认。因此,没有冲突检测。
  5. 它需要数据在一定随机时间后重传。
Multiple access protocol- ALOHA, CSMA, CSMA/CA and CSMA/CD

纯 Aloha

当站中有可用于通过信道发送的数据时,我们将使用纯 Aloha。在纯 Aloha 中,当每个站向信道传输数据而不检查信道是否空闲时,可能会发生冲突,并且数据帧可能会丢失。当任何站向信道传输数据帧时,纯 Aloha 会等待接收方的确认。如果接收方在指定时间内未确认,则该站会等待一段随机时间,称为回退时间(Tb)。然后该站可能会假设帧已丢失或损坏。因此,它会重新传输该帧,直到所有数据都成功传输到接收方。

  1. 纯 Aloha 的总易损时间为 2 * Tfr。
  2. 当 G = 1/2 时,最大吞吐量为 18.4%。
  3. 数据帧成功传输为 S = G * e ^ - 2 G。
Multiple access protocol- ALOHA, CSMA, CSMA/CA and CSMA/CD

从上图可以看出,有四个站访问共享信道并传输数据帧。一些帧发生冲突,因为大多数站同时发送它们的帧。只有两个帧,帧 1.1 和帧 2.2,成功传输到接收端。同时,其他帧丢失或损坏。当两个帧同时落入共享信道时,会发生冲突,并且两者都会受损。如果新帧的第一个比特在第二个帧的最后一个比特完成之前进入信道。两个帧都完全完成,并且两个站都必须重传数据帧。

时隙 Aloha

时隙 Aloha 的设计是为了克服纯 Aloha 的效率,因为纯 Aloha 的帧碰撞可能性非常高。在时隙 Aloha 中,共享信道被划分为固定时间间隔,称为时隙。因此,如果一个站想将帧发送到共享信道,则只能在时隙开始时发送该帧,并且每个时隙只允许发送一个帧。如果站无法在时隙开始时发送数据,则该站必须等到下一个时隙的开始。但是,在尝试在两个或多个站的时隙开始时发送帧时,仍然存在碰撞的可能性。

  1. 时隙 Aloha 的最大吞吐量发生在 G = 1 时,即 37%。
  2. 时隙 Aloha 中成功传输数据帧的概率为 S = G * e ^ - 2 G。
  3. 时隙 Aloha 所需的总易损时间为 Tfr。
Multiple access protocol- ALOHA, CSMA, CSMA/CA and CSMA/CD

CSMA(载波侦听多路访问)

这是一种基于载波侦听多路访问的媒体访问协议,用于在传输数据之前侦听信道上的流量(空闲或忙)。这意味着如果信道空闲,站就可以将数据发送到信道。否则,它必须等到信道空闲。因此,它减少了传输介质上发生冲突的可能性。

CSMA 访问模式

1-持续:在 CSMA 的 1-持续模式中,定义了每个节点,首先侦听共享信道,如果信道空闲,它会立即发送数据。否则,它必须等待并跟踪信道状态,使其为空闲,并在信道空闲时无条件广播帧。

非持续:这是 CSMA 的访问模式,定义了在传输数据之前,每个节点都必须侦听信道,如果信道不活动,它会立即发送数据。否则,该站必须等待一段随机时间(不是连续等待),当发现信道空闲时,它会传输帧。

P-持续:它是 1-持续模式和非持续模式的组合。P-持续模式定义了每个节点都会侦听信道,如果信道不活动,它会以 P 的概率发送一个帧。如果数据未传输,它会等待(q = 1-p 的概率)一段随机时间,并在下一个时间槽恢复传输帧。

O-持续:这是一种 O-持续方法,定义了站的优先级,用于在共享信道上传输帧。如果发现信道不活动,每个站都会等待轮到它来重传数据。

Multiple access protocol- ALOHA, CSMA, CSMA/CA and CSMA/CD

CSMA/ CD

这是一种用于传输数据帧的载波侦听多路访问/冲突检测网络协议。CSMA/CD 协议与媒体访问控制层一起工作。因此,它在广播帧之前先侦听共享信道,如果信道空闲,它会传输一个帧来检查传输是否成功。如果帧成功接收,则站发送另一个帧。如果在 CSMA/CD 中检测到任何冲突,站会向共享信道发送一个拥塞/停止信号以终止数据传输。之后,它会等待一段随机时间,然后再向信道发送帧。

CSMA/ CA

这是一种用于载波传输数据帧的载波侦听多路访问/冲突避免网络协议。它是一种与媒体访问控制层协同工作的协议。当数据帧发送到信道时,会收到一个确认,以检查信道是否清晰。如果站只收到一个(自己的)确认,则表示数据帧已成功传输到接收方。但是,如果它收到两个信号(它自己的信号和另一个冲突的信号),则会在共享信道中发生帧冲突。当发送方收到确认信号时,会检测到帧冲突。

以下是在CSMA/ CA中用于避免冲突的方法:

帧间间隔:在此方法中,站会等待信道空闲,如果发现信道空闲,它不会立即发送数据。相反,它会等待一段时间,这段时间称为帧间间隔或 IFS。然而,IFS 时间通常用于定义站的优先级。

竞争窗口:在竞争窗口中,总时间被划分为不同的时隙。当站/发送方准备好传输数据帧时,它会选择一个随机时隙数作为等待时间。如果信道仍然忙碌,它不会重新启动整个过程,除了在信道不活动时重新启动计时器以发送数据包。

确认:在确认方法中,如果未及时收到确认,发送方站会将数据帧发送到共享信道。

B. 受控访问协议

这是一种减少共享信道上数据帧冲突的方法。在受控访问方法中,每个站会进行交互并决定由所有其他站批准的特定站发送数据帧。这意味着单个站不能发送数据帧,除非所有其他站都未获得批准。它有三种类型的受控访问:预约、轮询令牌传递

C. 信道划分协议

这是一种信道划分协议,允许总可用带宽在共享信道上根据它们的时间、距离和代码在多个站之间共享。所有站都可以同时访问以将数据帧发送到信道。

以下是基于时间、距离和代码访问信道的各种方法

  1. FDMA(频分多路访问)
  2. TDMA(时分多路访问)
  3. CDMA(码分多路访问)

FDMA

这是一种频分多路访问(FDMA)方法,用于将可用带宽划分为相等的频段,以便多个用户可以通过不同的频率发送数据到子信道。为每个站保留一个特定的频段,以防止信道之间的串扰和站的干扰。

Multiple access protocol- ALOHA, CSMA, CSMA/CA and CSMA/CD

TDMA

时分多路访问(TDMA)是一种信道访问方法。它允许在多个站之间共享相同的频率带宽。为了避免共享信道中的冲突,它将信道划分为不同的频率时隙,这些时隙分配给站来传输数据帧。通过将信号划分为不同的时隙来在共享信道中传输相同的频率带宽。但是,TDMA 存在同步开销,它通过在每个时隙添加同步比特来指定每个站的时隙。

CDMA

码分多路访问(CDMA)是一种信道访问方法。在 CDMA 中,所有站都可以同时在同一信道上发送数据。这意味着它允许每个站随时以完整的频率在共享信道上发送数据帧。它不需要根据时隙划分共享信道上的带宽。如果多个站同时向信道发送数据,它们的数据帧将由唯一的代码序列分隔。每个站都有一个不同的唯一代码用于在共享信道上传输数据。例如,房间里有多个用户一直在说话。只有当两个人用同一种语言交流时,数据才能被用户接收。类似地,在网络中,如果不同的站用不同的代码语言同时相互通信。


下一个主题URI 与 URL