Il protocollo MACAW utilizza ancora un altro pacchetto chiamato
Request for Request to Send (RRTS), che risolve la seguente problematica. Assumiamo che sia in corso una trasmissione tra i nodi S1 e R1; ora il nodo S2 cerca di trasmettere a R2, ma siccome R2 è vicino a R1, esso riceverà un pacchetto CTS da R1 e, di conseguenza, R2 differirà la sua trasmissione.
Il nodo S2 non ha altre strade per avere informazioni inerenti ai
contention periode così incrementerà il
back-off couter ogni qualvolta fallirà il tentativo di accedere al canale. Quindi
avere poche informazioni per la sincronizzazione di S2, causa questo problema. MACAW rimedia a ciò utilizzando l'RRTS: infatti R2 contende il canale per conto di S2; se R2 ha ricevuto un RTS in precedenza, non potrà rispondere immediatamente perché è disturbato dalla trasmissione in corso tra R1 e S1. Allora R2 attende il prossimo
contention period e trasmette un RRTS.
I nodi vicini ascoltando l'RRTS (compreso R1) e vanno in attesa per i successivi due slot (per permettere così lo scambio dell'RTS e CTS). S2 una volta che ha ricevuto l'RRTS, invia l'RTS per R2 e quindi stabilisce la normale comunicazione (RTS-CTS-DATA-ACK).
Siano S il nodo sorgente, R il nodo ricevente ed N1, N2 due nodi vicini. Ogni qualvolta l'RTS è trasmesso da S esso è sentito da N1, esso quindi si astiene dalla trasmissionefinché il nodo S ha ricevuto il CTS. Analogamente, se il CTS inviato da R è ascoltato da N2, quest'ultimo si asterrà dal trasmetterefino a quando il CTS non arriva ad S. Una volta che S ha recepito il CTS, trasmette immediatamente il DS. Quando N1 ascolta il DS esso andrà in back-offfino a che tale pacchetto non sarà trasmesso.
Il protocollo MACAW è stato progettato tenendo conto di quattro problematiche principali:
la congestione rilevante sul ricevente e non sul trasmittente è possibile utilizzando protocolli CSMA, inadatti nelle ad hoc wireless network e perciò il meccanismo di scambio di RTS-CTS-DATA di MACA è necessario.
MACAW in aggiunta a quanto fatto da MACA, utilizza il meccanismo di scambio di RTS-CTS-DS-DATA-ACK.
La congestione è dipendente dove è posizionato il trasmittente: invece di caratterizzare il back-off con un singolo parametro, vengono definiti diversi parametri di back-off introdotti per ogni flusso;
la conoscenza della congestione al variare dei nodi deve essere in comune: la notazione per effettuare la copia dei valori di back-off in seguito all'ascolto dei pacchetti sul canale è stata introdotta in MACA. Infine si è tenuto conto dell'
ordine effettivo, in cui i nodi si contendono l'accesso al canale.