Como a Ethernet detecta uma colisão no método CSMA / CD?


7

Entendo que o Carrier Sense é essencialmente a NIC que "escuta" a mídia em todas as transmissões, o Acesso Múltiplo significa que vários dispositivos na rede podem "escutar" a mídia, e a Detecção de Colisão é o procedimento pelo qual passa se houver um Quadro colisão. Minha pergunta é como uma NIC realmente determina se houve uma colisão? existe uma discrepância nas tensões, ou o quê?


11
A mídia é importante ... Devemos assumir conexões de cobre Cat5e?
Mike Pennington

Ah sim, me desculpe. Sim cabeamento UTP. A categoria importa nesse caso se for um cabo à base de cobre?
user3662222

A categoria só importa no sentido de que o cabo deve suportar pelo menos 10 Mbps Ethernet ... isso é Cat3 IIRC
Mike Pennington

Alguma resposta o ajudou? Nesse caso, você deve aceitar a resposta para que a pergunta não apareça para sempre, procurando uma resposta. Como alternativa, você pode fornecer e aceitar sua própria resposta.
Ron Maupin

@RonMaupin yes - sorry. : D
user3662222

Respostas:


5

Suponha que você tenha a seguinte situação ...

  • PC com NIC codificado para 100 Mbps, Full-duplex
  • Cabo RJ45, fixado EIA-568B (não que as cores na pinagem sejam importantes)
  • Cisco Catalyst Switch, usando negociação automática (a 100 Mbps)

Como a NIC do PC está bloqueada em 100 / cheio, a negociação automática de Ethernet da Cisco falha e cai para 100 / metade. Agora há uma incompatibilidade duplex na linha. O switch Cisco usa CSMA / CD para acessar o link.

Vamos supor que o PC e a Cisco transmitam exatamente no mesmo instante; o diagrama lógico e o diagrama da camada física mostram o mesmo comportamento de duas perspectivas diferentes, mas o diagrama da camada física é mais relevante para a sua pergunta.

  LOGICAL DIAGRAM
  ===============

                   Tx                     Tx
  100/full       ----->                 <-----   100/half
  PC        -----------------------------------  Cisco Catalyst Switch


  PHYSICAL LAYER PIN DIAGRAM
  ==========================

      PC                                         Cisco Catalyst Switch
      100/full                                   100/half

                    Tx D1             
                    ----->
      568B                                       568B
      Pin Signal                                 Pin Signal
      1   TX+ D1    ---------------------------  3   RX+ D2
      2   TX- D1    ---------------------------  6   RX- D2
      3   RX+ D2    ---------------------------  1   TX+ D1
      6   RX- D2    ---------------------------  2   TX- D1

                                         <------
                                           Tx D1

Nos diagramas acima, o PC (full duplex) está à esquerda e o Cisco Switch (half duplex) está à direita. Ambos os lados transmitem (Tx) simultaneamente nos pinos 1 e 2, esse par de pinos é chamado D1.

Quando a NIC no comutador recebe o quadro do PC no par D2 enquanto o comutador está transmitindo simultaneamente no par D1, o comutador registra uma colisão ( referência de resposta ). A colisão é registrada apenas no comutador, porque está no modo half-duplex.

Observações sobre GigabitEthernet:

  • Half-duplex é destacado na Nota 1 padrão ; no entanto, ninguém realmente usa GigE half-duplex. Isso significa que a GE não usará CSMA / CD
  • A GE usa todos os 8 pinos no plugue mod RJ45, e os pinos TX / RX específicos são alocados dinamicamente.

Notas finais :

Nota 1 Citando IEEE 802.3-2012 4.1 (ênfase em itálico meu):

4.1.2.1.2 Recepção sem contenção

No modo half duplex, a uma velocidade operacional de 1000 Mb / s , os quadros podem ser estendidos pela estação de transmissão nas condições descritas em 4.2.3.4. A extensão é descartada pela subcamada MAC da estação receptora, conforme definido no modelo processual em 4.2.9.


Esse link não é "o padrão". GigE não suporta operação half-duplex. E, finalmente, ninguém faz mais hubs. :-)
Ricky Beam

2
O 1000BASE-T (802.3ab) suporta, de fato, half ou full duplex (consulte grouper.ieee.org/groups/802/3/tutorial/march98/mick_170398.pdf ). Diferentemente da Ethernet de 10 ou 100 Mb, que é padrão para half duplex, o padrão de 1 Gb é full duplex. Com ethernet de 10 Gb, eles finalmente se livraram completamente do half duplex.
Ron Maupin

2
Ricky, neste momento seus comentários não têm nada a ver com melhorar minha resposta. É hora de focar novamente no que eu disse.
Mike Pennington

11
Todas as camadas físicas atuais para 1000base-X (CX, SX, LX, ZX e T) são fundamentalmente full-duplex. Ninguém implementa um modo half-duplex. O CSMA / CD é, portanto, simulado pelas funções de transmissão e recepção, onde é implementado.
Ricky feixe

2
A transmissão e recepção simultânea em half duplex é uma colisão. Os sinais tx e rx não colidem fisicamente porque estão em pares diferentes; essa é uma condição de colisão lógica, não uma colisão física.
Mike Pennington

2

Nos velhos tempos (10base-2), uma colisão era detectada pela detecção de corrente - é necessária mais energia (corrente elétrica) quando dois transmissores se interagem. Para as especificações 10/100/1000-baseT, é tão simples quanto olhar o par RX enquanto transmite no seu par TX. (ou pares no caso de 1000, mas gig-e nunca faz half-duplex.)

Os transceptores modernos (para tecnologia 10base-X) usam o cancelamento de eco para subtrair seu sinal do fio e ouvir outros sinais.


1

O MAC ou repetidor (hub) é notificado de uma colisão pelo PHY

Quando um MAC é informado de uma colisão, ele passa pelo procedimento detectado por colisão (retirada aleatória).

Quando um repetidor (hub) é informado de uma colisão, gera um "sinal JAM" em todas as portas para garantir que a colisão seja detectada pelos MACs que enviaram os quadros em colisão e que outros hosts detectem corretamente a linha como ocupada.

Como o phy detecta a colisão é específico do tipo de mídia. Para ethernet coaxial, ele se baseia na tensão CC no cabo coaxial https://books.google.co.uk/books?id=MRChaUQr0Q0C&pg=PA54&lpg=PA54&dq=coaxial+ethernet+collision+detection&source=bl&ots=oGaQGcNnkNhep4J6Y6W6W5D = pt-br & sa = X & redir_esc = y # v = uma página & q = coaxial% 20ethernet% 20collision% 20detection & f = false

As variantes comuns de par trançado e ethernet de fibra são full duplex em nível elétrico, mas por razões de compatibilidade e para permitir a operação em redes com repetidores (hubs), eles precisavam ser capazes de operar em modo half duplex. Isso é feito tratando a atividade simultânea nos caminhos de transmissão e recebimento de dados como uma colisão.

Observe que os links em execução no modo duplex completo não usam CSMA / CD; as colisões simplesmente não podem acontecer lá. A 10 Mbps, CSMA / CD era a norma. Nos primeiros dias de 100 Mbps, o CSMA / CD ainda era usado para oferecer suporte a hubs (repetidores), mas como switches (pontes) assumiram o controle e a negociação automática amadureceu em full duplex se tornou a norma. No modo half duplex de 1 Gbps existe nos padrões, mas ninguém nunca vendeu um hub, o que o tornou meio inútil. Em velocidades mais altas, o half duplex não é suportado.

Atualmente, o CSMA / CD é um recurso para compatibilidade com equipamentos herdados.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.