RTS/CTS

In telecomunicazioni e informatica, la tecnica RTS/CTS (acronimo dell'inglese Request to Send / Clear to Send, in italiano "Richiesta di invio / Via libera all'invio") è un meccanismo opzionale di controllo del flusso utilizzato dal protocollo di accesso al mezzo CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) nelle reti locali senza fili (WLAN), in particolare quelle basate sullo standard IEEE 802.11 (Wi-Fi).

Il suo scopo principale è mitigare il cosiddetto problema del terminale nascosto, riducendo le collisioni di trama che possono verificarsi quando due nodi non si "sentono" a vicenda ma trasmettono verso lo stesso destinatario.

Funzionamento

Il meccanismo si basa sullo scambio di due brevi messaggi di controllo, detti frame, prima dell'invio effettivo dei dati. Questa procedura avviene nell'ambito della Distributed Coordination Function (DCF).

  1. RTS (Request to Send): Quando un nodo sorgente (es. uno smartphone o un laptop) desidera trasmettere un pacchetto dati e il canale risulta libero, invia prima un frame RTS al nodo di destinazione (solitamente un Access point o un altro client in modalità ad-hoc). All'interno del frame RTS è incluso un campo "duration" (durata), che specifica il tempo necessario per trasmettere il pacchetto dati successivo e ricevere il relativo ACK (acknowledgement).
  2. CTS (Clear to Send): Se il nodo di destinazione riceve correttamente l'RTS e il mezzo è libero nelle sue vicinanze, risponde dopo un breve intervallo (SIFS - Short Interframe Space) con un frame CTS. Anche il CTS contiene un campo "duration", copiato dal tempo rimanente dichiarato nell'RTS. Sebbene il CTS sia indirizzato al mittente, viene ascoltato da tutti i nodi nel raggio di copertura del destinatario.
  3. NAV (Network Allocation Vector): Tutti gli altri nodi che ricevono l'RTS o il CTS leggono il campo "duration" e impostano il loro vettore di allocazione di rete (NAV). Il NAV agisce come un meccanismo di rilevamento virtuale della portante: dice ai nodi per quanto tempo il canale sarà occupato, obbligandoli a rimandare qualsiasi tentativo di trasmissione fino allo scadere del timer, anche se rilevano fisicamente il canale come libero.
  4. Trasmissione Dati e ACK: Una volta ricevuto il CTS, il nodo sorgente trasmette il pacchetto dati. Se la trasmissione ha successo, il destinatario risponde con un frame di conferma (ACK).

Risoluzione del problema del terminale nascosto

Il problema del terminale nascosto si verifica quando un nodo A e un nodo C vogliono comunicare con un nodo B (l'Access Point), ma A e C sono troppo distanti tra loro per rilevare le rispettive trasmissioni. Senza RTS/CTS, se A sta trasmettendo a B, C non se ne accorge e potrebbe iniziare a trasmettere a sua volta, causando una collisione presso B e la perdita di entrambi i pacchetti.

Con il meccanismo RTS/CTS:

Soglia RTS (RTS Threshold)

Nonostante i benefici, l'invio di frame RTS e CTS introduce un overhead (sovraccarico) che consuma larghezza di banda e aumenta la latenza. Per pacchetti di piccole dimensioni, il costo temporale dello scambio RTS/CTS potrebbe superare il tempo necessario a ritrasmettere il pacchetto in caso di collisione.

Per questo motivo, lo standard e la maggior parte dei dispositivi di rete permettono di configurare una Soglia RTS (RTS Threshold):

Il valore di default è spesso impostato al massimo (es. 2347 byte), disabilitando di fatto la funzione a meno che non venga configurata manualmente in ambienti ad alta densità di nodi o con forti interferenze.

Vantaggi e Svantaggi

Vantaggi
Svantaggi

Note

    Voci correlate

      Portale Telecomunicazioni: accedi alle voci di Wikipedia che trattano di telecomunicazioni