Vamos analisar agora como A envia um quadro para B. A inicia a transmissão enviando um quadro RTS (Request to Send) para B, como mostra a Figura (a). Esse quadro curto (30 bytes) contém o comprimento do quadro de dados que eventualmente será enviado em seguida. Depois disso, B responde com um quadro CTS (Clear to Send), como mostra a Figura (b). O quadro CTS
contém o tamanho dos dados (copiado do quadro RTS). Após o recebimento do quadro CTS, A inicia a transmissão. Agora vamos ver como reagem as estações que não conseguem ouvir esses quadros. Qualquer estação que esteja ouvindo o quadro RTS está próxima a A e deve permanecer inativa por tempo suficien te para que o CTS seja transmitido de volta para A, sem conflito. Qualquer estação que esteja ouvindo o CTS está próxima a B e deve permanecer inativa durante a transmissão de dados que está a caminho, cujo tamanho pode ser verifi cado pelo exame do quadro CTS.
Na figura abaixo, o protocolo MACA. (a) A está enviando um quadro RTS para B. (b) B está respondendo com um quadro CTS para A:
Na Figura acima, C está dentro do alcance de A, mas não no alcance de B. Portanto, essa estação
pode detectar a RTS de A, mas não a CTS de B. Desde que não interfira com a CTS, a estação é
livre para transmitir enquanto o quadro de dados está sendo enviado. Em contraste, D está dentro do alcance de B, mas não de A. Ela não detecta a RTS, mas sim a CTS. Ao detectar a CTS, ela recebe a indicação de que está perto de uma estação que está prestes a receber um quadro e,
portanto, adia a transmissão até o mome nto em que a transmissão desse quadro deve ter sido
concluída. A estação E detecta as duas mensagens de controle e, como D, deve permanecer inativa até que a tr ansmissão do quadro de dados seja concluída.
Apesar dessas precauções, ainda pode haver colisões. Por exemplo, B e C poderiam enviar quadros RTS para A ao mesmo tempo. Haverá uma colisão entre esses quadros e eles se perderão. No caso de uma colisão, um transmissor que não obtiver êxito (ou seja, o que não detectar uma CTS no intervalo de tempo esperado) aguardará durante um interval o aleatório e tentará novamente mais tarde. O algoritmo utilizado é o recuo binário exponencial, que estudaremos quando começarmos a analisar o padrão Ethernet.
Com base em estudos de simulação do MACA, Bharghavan et al. (1994) otimizaram o MACA para melhorar seu desempenho e deram ao novo protocolo o nome MACAW (MACA for Wireless). Logo no início, eles observaram que sem as confirmações da camada de enlace de dados, os quadros perdidos não eram retransmitidos até que a camada de tr ansporte percebesse sua ausência, bem mais tarde. Eles resolveram esse problema introduzindo um quadro ACK após cada quadro de dados bem-sucedido. Os pesquisadores também observaram que o CSMA tinha alguma utilidade — principalmente para impedir uma estação de transmitir uma RTS ao mesmo tempo que outra estação vizinha também estiver transmitindo para o mesmo destino. Portanto, a detecção de portadora passou a ser utilizada. Além disso, eles decidiram utilizar o algoritmo de recuo individualmente para cada fluxo de dados (par origem-destino), e não para cada estação. Essa mudança melhorou a precisão do protocolo. Por fim, foi incluído um mecanismo para que as estações trocassem informações sobre congestionamento, e também uma forma de fazer o algoritmo de recuo reagir de modo menos violento a problemas temporários, o que melhorou o desempenho do sistema.
Conteúdo extraído e adaptado da página 215 do livro Redes de computadores
Quarta edição do autor Andrew S. Tanenbaum.
Nenhum comentário:
Postar um comentário