Acesso múltiplo com detecção de portadora com detecção de colisão - Carrier-sense multiple access with collision detection

O acesso múltiplo com detecção de portadora com detecção de colisão ( CSMA / CD ) é um método de controle de acesso à mídia (MAC) usado principalmente na tecnologia Ethernet inicial para rede de área local . Ele usa detecção de portadora para adiar as transmissões até que nenhuma outra estação esteja transmitindo. Isso é usado em combinação com a detecção de colisão, na qual uma estação transmissora detecta colisões ao detectar transmissões de outras estações enquanto está transmitindo um quadro . Quando essa condição de colisão é detectada, a estação para de transmitir aquele quadro, transmite um sinal de congestionamento e, em seguida, espera por um intervalo de tempo aleatório antes de tentar reenviar o quadro.

CSMA / CD é uma modificação do acesso múltiplo com detecção de portadora puro (CSMA). O CSMA / CD é usado para melhorar o desempenho do CSMA, encerrando a transmissão assim que uma colisão é detectada, reduzindo assim o tempo necessário antes que uma nova tentativa possa ser tentada.

Com a crescente popularidade dos switches Ethernet na década de 1990, o IEEE 802.3 tornou os repetidores Ethernet obsoletos em 2011, tornando a operação CSMA / CD e half-duplex menos comum e menos importante.

Procedimento

Algoritmo simplificado de CSMA / CD incluindo lógica de retransmissão usada para resolver uma colisão detectada.

O procedimento a seguir é usado para iniciar uma transmissão. O procedimento é concluído quando o quadro é transmitido com sucesso ou uma colisão é detectada durante a transmissão.

  1. O quadro está pronto para transmissão? Se não, espere por um quadro.
  2. O meio está ocioso? Caso contrário, espere até que esteja pronto.
  3. Comece a transmitir e monitore a colisão durante a transmissão.
  4. Ocorreu uma colisão? Em caso afirmativo, vá para o procedimento de detecção de colisão.
  5. Redefina os contadores de retransmissão e conclua a transmissão do quadro.

O procedimento a seguir é usado para resolver uma colisão detectada. O procedimento é concluído quando a retransmissão é iniciada ou a retransmissão é abortada devido a várias colisões.

  1. Continue a transmissão (com um sinal de congestionamento em vez de cabeçalho / dados / CRC do quadro ) até que o tempo mínimo do pacote seja alcançado para garantir que todos os receptores detectem a colisão.
  2. Contador de retransmissão de incremento.
  3. O número máximo de tentativas de transmissão foi atingido? Em caso afirmativo, aborte a transmissão.
  4. Calcule e aguarde o período de retirada aleatório com base no número de colisões.
  5. Entre novamente no procedimento principal no estágio 1.

Os métodos de detecção de colisão dependem da mídia. Em um barramento elétrico compartilhado, como 10BASE5 ou 10BASE2 , as colisões podem ser detectadas comparando os dados transmitidos com os dados recebidos ou reconhecendo uma amplitude de sinal superior ao normal no barramento. Em todas as outras mídias, uma portadora detectada no canal de recepção durante a transmissão aciona um evento de colisão. Repetidores ou hubs detectam colisões por conta própria e propagam sinais de congestionamento.

O procedimento de recuperação de colisão pode ser comparado ao que acontece em um jantar, onde todos os convidados conversam entre si por meio de um meio comum (o ar). Antes de falar, cada convidado espera educadamente que o orador atual termine. Se dois convidados começarem a falar ao mesmo tempo, os dois param e aguardam por períodos curtos e aleatórios (na Ethernet, esse tempo é medido em microssegundos). A esperança é que a cada escolha de um período aleatório de tempo, ambos os hóspedes não escolham o mesmo horário para tentar falar novamente, evitando assim outra colisão.

Sinal de Jam

O sinal de interferência ou sinal de interferência é um sinal que carrega um padrão binário de 32 bits enviado por uma estação de dados para informar as outras estações da colisão e que elas não devem transmitir.

O tempo máximo de atolamento é calculado da seguinte forma: O diâmetro máximo permitido de uma instalação Ethernet é limitado a 232 bits. Isso resulta em um tempo de ida e volta de 464 bits. Como o tempo de slot na Ethernet é de 512 bits, a diferença entre o tempo de slot e o tempo de ida e volta é de 48 bits (6 bytes), que é o tempo máximo de congestionamento .

Isso, por sua vez, significa: Uma estação notando que ocorreu uma colisão está enviando um padrão de 4 a 6 bytes composto por 16 combinações de 1-0 bits. Nota: O tamanho deste sinal de congestionamento está claramente acima do tamanho de quadro mínimo permitido de 64 bytes.

O objetivo disso é garantir que qualquer outro nó que possa estar atualmente recebendo um quadro receberá o sinal de bloqueio no lugar do MAC CRC de 32 bits correto, o que faz com que os outros receptores descartem o quadro devido a um erro de CRC.

Colisão tardia

Uma colisão tardia é um tipo de colisão que ocorre mais além no pacote do que é permitido pelo padrão de protocolo em questão. Em Ethernet de meio compartilhado de 10 megabits, se ocorrer um erro de colisão após os primeiros 512 bits de dados serem transmitidos pela estação transmissora, diz-se que ocorreu uma colisão tardia. É importante ressaltar que as colisões tardias não são reenviadas pela NIC, ao contrário das colisões que ocorrem antes dos primeiros 64 octetos; cabe às camadas superiores da pilha de protocolo determinar se houve perda de dados.

Como um link de rede CSMA / CD configurado corretamente não deve ter colisões tardias, as causas comuns possíveis são incompatibilidade full-duplex / half-duplex, limites de comprimento de cabo Ethernet excedidos ou hardware com defeito, como cabeamento incorreto, número não compatível de hubs na rede ou uma placa de rede com defeito.

Colisão local

Uma colisão local é uma colisão que ocorre na placa de rede e não no fio. Uma NIC não pode detectar colisões locais sem tentar enviar informações.

No cabo UTP , uma colisão local é detectada no segmento local apenas quando uma estação detecta um sinal no par RX ao mesmo tempo que está enviando no par TX. Como os dois sinais estão em pares diferentes, não há mudança de característica no sinal. As colisões são reconhecidas apenas no UTP quando a estação está operando em half-duplex . A única diferença funcional entre a operação half e full-duplex a esse respeito é se os pares de transmissão e recepção podem ou não ser usados ​​simultaneamente.

Efeito de captura de canal

O efeito de captura de canal é um fenômeno onde um usuário de um meio compartilhado "captura" o meio por um tempo significativo. Durante este período (normalmente 16 frames), outros usuários não podem usar o meio. Este efeito foi visto pela primeira vez em redes que usam CSMA / CD em Ethernet. Por causa desse efeito, a conexão com mais dados intensos domina o canal sem fio de acesso múltiplo. Isso acontece em links Ethernet devido à maneira como os nós "recuam" do link e tentam acessá-lo novamente. No protocolo Ethernet, quando ocorre uma colisão de comunicação (quando dois usuários do meio tentam enviar ao mesmo tempo), cada usuário espera por um período de tempo aleatório antes de acessar novamente o link. No entanto, um usuário irá aguardar ("recuar") por um período de tempo aleatório, proporcional ao número de vezes que ele tentou acessar o link sucessivamente. O efeito de captura de canal ocorre quando um usuário continua a "ganhar" o link.

Por exemplo, o usuário A e o usuário B tentam acessar um link silencioso ao mesmo tempo. Como eles detectam uma colisão, o usuário A espera por um tempo aleatório entre 0 e 1 unidade de tempo e o mesmo faz o usuário B. Digamos que o usuário A escolha um tempo de recuo mais baixo. O usuário A então começa a usar o link e B permite que ele termine de enviar seu quadro . Se o usuário A ainda tiver mais para enviar, o usuário A e o usuário B causarão outra colisão de dados. A irá mais uma vez escolher um tempo de recuo aleatório entre 0 e 1, mas o usuário B escolherá um tempo de recuo entre 0 e 3 - porque esta é a segunda vez de B colidindo consecutivamente. Provavelmente, A "ganhará" este novamente. Se isso continuar, provavelmente A vencerá todas as batalhas de colisão e, após 16 colisões (o número de tentativas antes de um usuário retroceder por um longo período de tempo), o usuário A terá "capturado" o canal.

A capacidade de um nó de capturar todo o meio diminui à medida que o número de nós aumenta. Isso ocorre porque à medida que o número de nós aumenta, há uma probabilidade maior de que um dos "outros" nós tenha um tempo de recuo menor do que o nó de captura.

O efeito de captura de canal cria uma situação em que uma estação é capaz de transmitir enquanto outras estão continuamente retrocedendo, levando a uma situação de injustiça de curto prazo. Ainda assim, a situação é justa a longo prazo porque cada estação tem a oportunidade de "capturar" o meio uma vez que uma estação termine a transmissão. A eficiência do canal aumenta quando um nó captura o canal.

Um efeito colateral negativo do efeito de captura seria o tempo ocioso criado devido ao retrocesso das estações. Depois que uma estação termina de transmitir no meio, grandes tempos de inatividade estão presentes porque todas as outras estações estão continuamente diminuindo. Em alguns casos, o back-off pode ocorrer por tanto tempo que algumas estações realmente descartam os pacotes porque os limites máximos de tentativa foram atingidos.

Formulários

CSMA / CD foi usado em variantes de Ethernet de mídia compartilhada agora obsoletas ( 10BASE5 , 10BASE2 ) e nas primeiras versões de Ethernet de par trançado que usava hubs repetidores . As redes Ethernet modernas, construídas com switches e conexões full-duplex , não precisam mais usar CSMA / CD porque cada segmento Ethernet, ou domínio de colisão , agora está isolado. CSMA / CD ainda é suportado para compatibilidade com versões anteriores e para conexões half-duplex. O padrão IEEE 802.3 , que define todas as variantes Ethernet, por razões históricas ainda ostentava o título "Método de acesso de detecção de colisão (CSMA / CD) e especificações da camada física" até 802.3-2008, que usa o novo nome "Padrão IEEE para Ethernet ".

Veja também

Notas

Referências