Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> software >> Backup dei dati >> .

In che modo l'algoritmo di back-off logaritmico è implementato in Mac Layer per evitare la collisione?

L'algoritmo di backoff logaritmico nello strato MAC, utilizzato principalmente in protocolli CSMA/CA (Sentice del vettore con evitamento di collisione) come Wi-Fi (802.11), mira a risolvere le collisioni introducendo un ritardo randomizzato prima di ritrasmettere un telaio. È "logaritmico" perché la gamma di possibili ritardi aumenta esponenzialmente con ogni collisione successiva. Ecco come viene implementato:

1. Rilevamento delle collisioni:

* Il nodo trasmettente ascolta una collisione dopo aver inviato un frame. Se rileva una collisione (ad esempio, rilevando un altro segnale sul canale durante la trasmissione), sa che la sua trasmissione non è riuscita.

2. Inizializzazione del contatore di backoff:

* Viene inizializzato un contatore di backoff. Il valore iniziale è generalmente `cwmin` (minimo della finestra di contesa), un valore fisso definito dallo standard (ad esempio 31 in alcune configurazioni 802.11). Questo contatore rappresenta il numero di fasce orarie che il nodo deve attendere prima di tentare la ritrasmissione. Una fascia oraria è un intervallo breve e predefinito.

3. Backoff casuale:

* Un numero casuale viene generato uniformemente tra 0 e il valore corrente del contatore di backoff (`cw`). Questo numero casuale determina il ritardo specifico prima della ritrasmissione. Questa casualità aiuta a evitare collisioni persistenti che potrebbero verificarsi se tutti i nodi ritrasmetti esattamente nello stesso momento.

4. Declutamento del contatore di backoff:

* Il nodo attende il numero casuale di fasce orarie. Durante questo periodo di attesa, il nodo continua a percepire il canale. Se il canale è chiaro, riduce il contatore di backoff in ogni fascia oraria fino a raggiungere lo zero.

5. Retrasmission:

* Quando il contatore di backoff raggiunge lo zero, il nodo tenta di ritrasmettere il frame.

6. Risoluzione delle collisioni:

* Se si verifica un'altra collisione, la finestra di contesa (`cw`) viene raddoppiata (o aumentata in base a un algoritmo specifico all'interno dello standard), fino a un valore massimo (` cwmax`). Ciò garantisce che i nodi distribuiscano i loro tentativi di ritrasmissione per un intervallo di tempo più ampio, riducendo la probabilità di ulteriori collisioni.

7. Backoff esponenziale:

* La natura logaritmica deriva dall'aumento esponenziale della finestra della contesa. Ogni collisione aumenta significativamente l'intervallo di possibili ritardi, portando a una rapida riduzione della probabilità di collisione. Se viene raggiunto un numero massimo di tentativi di ritrasmissione senza successo, il frame viene scartato.

8. Esempio:

Diciamo che `cwmin` è 31 e` cwmax` è 1023.

* 1 ° collisione: `Cw` =31. Ritardo casuale:0-31 fascia orari.

* 2nd Collision: `Cw` =63 (raddoppiato). Ritardo casuale:0-63 fasce orarie.

* 3a collisione: `Cw` =127. Ritardo casuale:0-127 fasce orarie.

* ... e così via, fino a quando `cw` raggiunge` cwmax` o il frame viene trasmesso correttamente.

Dettagli di implementazione (Esempio 802.11):

L'implementazione precisa varia leggermente a seconda dello standard 802.11 specifico (ad es. 802.11a, 802.11b, 802.11g, 802.11n, 802.11ax). I dettagli sarebbero incorporati nel firmware o nel driver della scheda di interfaccia di rete wireless (NIC). Questi dettagli includono:

* Valori specifici di `cwmin` e` cwmax`.

* L'algoritmo esatto per raddoppiare o aumentare la finestra della contesa.

* Meccanismi per la gestione di vari tipi di errori e condizioni del canale.

In sostanza, l'algoritmo di backoff logaritmico è un componente chiave per rendere efficace CSMA/CA nella gestione dell'accesso concorrente a un mezzo wireless condiviso, evitando collisioni catastrofiche e consentire una comunicazione efficiente.

 

software © www.354353.com