# Token ring

Token ring é um protocolo de redes que opera na camada física e de enlace (ligação de dados) do modelo OSI dependendo da sua aplicação. Usa um símbolo (em inglês, token), que consiste em uma trama de três bytes, que circula numa topologia em anel em que as estações devem aguardar a sua recepção para transmitir. A transmissão dá-se durante uma pequena janela de tempo, e apenas por quem detém o token.
Este protocolo foi descontinuado em detrimento de Ethernet e é utilizado atualmente apenas em infraestruturas antigas.

## História

Desenvolvida pela IBM em meados de 1980, essa arquitetura opera a uma velocidade de transmissão de 4 a 16 Mbps, utilizando como meio de transmissão o par trançado, sendo que, o protocolo token funciona passando uma permissão de transmissão para cada estação do anel consecutivamente e essa permissão fornecida pelo protocolo é chamada de token (bastão ou ficha de passagem) a qual vai passando de estação em estação na rede.
O controle dos dados transmitidos e a permissão para transmissão são feitos pelo protocolo Token-Passing utilizado em redes locais, sendo que, as redes padrão Token Ring usam como meio de transmissão um barramento em forma de anel.
O token ou permissão de transmissão é um recurso que é atribuído pela estação transmissora a um usuário em um dado instante de tempo dando a este usuário o direito exclusivo de executar determinados serviços.
O token é um pequeno bloco de dados composto de três bytes.
Os HUBs Token Ring (chamados de MAU, Multistation Access Unit), executam uma função que é realizada dentro do HUB o qual isola nós de rede que apresentem problemas para não interromper a passagem dos dados.
A principal diferença desta arquitetura e a Ethernet, é que nesta arquitetura cada equipamento tem um tempo certo para enviar seus dados para a rede.
Mesmo que a rede esteja livre, o equipamento deve esperar o seu tempo para enviar mensagem.
Na Ethernet, todas as máquinas tem a mesma prioridade, assim podem ocorrer colisões. Na Token Ring não existe possibilidade de colisões.
A principal diferença entre um HUB da Ethernet e um MAU da Token Ring, é que no primeiro todas as máquinas recebem a mensagem, enquanto no segundo (MAU), os dados são enviados para a próxima máquina do anel (lógico), até que encontre o seu destino.
A codificação utilizada para transmitir dados através do cabeamento é codificação Manchester.

## Topologia

A topologia das redes Token Ring é em anel e nela circula uma ficha (token). A circulação da ficha é comandada por cada micro da rede. Cada micro recebe a ficha, e, caso ela esteja vazia, tem a oportunidade de enviar um quadro de dados para um outro micro da rede, “enchendo” a ficha. Em seguida, esse computador transmite a ficha para o próximo micro do anel.
A ficha fica circulando infinitamente. Caso ela esteja cheia, ela circula até chegar na máquina que tenha o endereço de destino especificado no quadro de dados. Caso ela dê uma volta inteira no anel e não atinja a máquina de destino, o computador monitor percebe isso e toma as providências necessárias (esvaziar a ficha e retornar uma mensagem de erro para o micro transmissor), já que o micro de destino não existe na rede.
Ao atingir o computador de destino, este “esvazia” a ficha e manda ela de volta para o computador transmissor, marcando a ficha como “lida”. Caso a ficha esteja vazia, ela continua circulando infinitamente até que alguma máquina queira transmitir dados para a rede.

## Cabeamento

As redes Token Ring utilizam o cabo par trançado com blindagem de 150 ohms. A IBM chama a esse cabo de tipo 1. Atinge taxas de transferência de até 100 Mbps. Já o cabo Tipo1A é um cabo que consegue operar com taxas de até 300 Mbps.
Importante notar que a arquitectura Token Ring opera tipicamente a 4 Mbps ou 16 Mbps. Taxas mais altas estão a ser implementadas, especialmente com o aparecimento de cabos que conseguem operar a taxas muito maiores do que estas: 100 Mbps e 1 Gbps.

## Notas e Referências

* ↑ «Token Ring». hardware.com.br. Consultado em 28 de outubro de 2014
* Portal das tecnologias de informação