02 - CSMA-CD e Acesso ao Meio
video: https://youtu.be/... no frontmatter da nota.CSMA/CD e Acesso ao Meio
1. Definição e Contexto Histórico
CSMA/CD (Carrier Sense Multiple Access with Collision Detection) é o método de acesso ao meio definido pelo IEEE 802.3 para redes Ethernet clássicas com meio compartilhado (coaxial ou hubs). Foi o mecanismo que tornou a Ethernet comercialmente viável nas décadas de 1980 e 1990, permitindo que múltiplas estações compartilhassem um mesmo meio físico sem um controlador central.
O CSMA/CD foi projetado para uma época em que switches L2 eram caros e raros: todos os dispositivos compartilhavam um único domínio de colisão, e o protocolo garantia ordem justa no acesso ao meio. Com a popularização dos switches (que isolam domínios de colisção por porta em modo full-duplex), o CSMA/CD tornou-se obsoleto em LANs modernas, mas seu entendimento permanece fundamental para compreender a fundo o funcionamento da Ethernet.
2. Princípios Fundamentais
O nome CSMA/CD descreve suas quatro fases:
A. Carrier Sense (Sensoreamento do Portador)
Antes de transmitir, a estação "escuta" o meio físico para verificar se há sinal (portadora) presente. Em cabos de par trançado, isso é feito medindo a tensão diferencial. Se o meio estiver ocupado, a estação aguarda.
B. Multiple Access (Acesso Múltiplo)
Múltiplas estações compartilham o mesmo meio, sem controleador central. Cada estação decide autonomamente quando transmitir, baseada nas regras do protocolo.
C. Collision Detection (Detecção de Colisão)
Mesmo após o sensoreamento, duas estações podem iniciar transmissões simultaneamente (pois o sinal leva tempo para se propagar). Quando os sinais colidem, a estação detecta uma anomalia na tensão (collision detect - CD) e imediatamente interrompe a transmissão útil.
D. Jam Signal e Backoff
Após detectar a colisão, a estação envia um jam signal (sinal de congestionamento de 32 bits) para garantir que todas as outras estações saibam da colisão. Em seguida, aplica o algoritmo de binary exponential backoff para aguardar um tempo aleatório antes de retransmitir.
3. Algoritmo de Backoff Binário Exponencial
Após a primeira colisão, a estação escolhe um número aleatório k no intervalo [0, 2^n - 1], onde n é o número de tentativas (limitado a 10):
| Tentativa | Intervalo (k) | Slots médios |
|---|---|---|
| 1 | [0, 1] | 0,5 |
| 2 | [0, 3] | 1,5 |
| 3 | [0, 7] | 3,5 |
| 4 | [0, 15] | 7,5 |
| 5 a 10 | [0, 1023] | 511,5 |
| 16 (final) | descarta o frame | - |
Cada slot tem duração de 512 bits (51,2 microssegundos em 10 Mbps). Esse crescimento exponencial reduz drasticamente a probabilidade de novas colisões, mas introduz latência crescente em redes congestionadas.
4. A Regra dos 64 Bytes e o Slot Time
O tamanho mínimo do frame Ethernet é 64 bytes (excluindo preamble). Essa regra não é arbitrária: ela garante que uma estação ainda esteja transmitindo quando o sinal da colisão retornar, permitindo a detecção.
Cálculo do Slot Time em Ethernet Clássica (10BASE5)
- Velocidade: 10 Mbps
- Slot time: 51,2 microssegundos (512 bits)
- Velocidade de propagação no cabo: ~0,67c (cerca de 200.000 km/s)
- Distância máxima de ida e volta: 200.000 km/s x 51,2 microssegundos = ~10,24 km
A regra prática: em uma rede 10BASE5 com cabo coaxial grosso, o comprimento máximo do segmento era limitado a 500 metros, garantindo que qualquer colisão fosse detectada a tempo.
L_max = (SlotTime x v_prop) / 2
= (51,2 us x 200 m/us) / 2
= 5120 metros (limite teórico)
5. Limitações do CSMA/CD
A. Degradação sob Carga
À medida que a utilização do meio cresce (acima de 40%), o número de colisões explode. Em 60% de utilização, a rede torna-se praticamente inutilizável.
B. Ineficiência em Redes de Longa Distância
O CSMA/CD só funciona em domínios de colisão pequenos (centenas de metros a poucos quilômetros). Em redes WAN, há latência de propagação alta demais para garantir detecção de colisões.
C. Cabeamento Half-Duplex
CSMA/CD exige meio half-duplex (uma estação transmite por vez). Em links full-duplex modernos (switches comutados), não há colisões e o CSMA/CD é desativado.
6. Comparação com CSMA/CA (Wi-Fi)
| Característica | CSMA/CD (Ethernet) | CSMA/CA (Wi-Fi 802.11) |
|---|---|---|
| Detecção de colisão | Sim, durante transmissão | Não (transmissor não consegue ouvir enquanto envia) |
| Prevenção | Backoff após colisão | RTS/CTS antes de transmitir |
| ACK | Não (Camada 4 cuida) | Sim, a Camada 2 exige ACK |
| Hidden node | Não (todos ouvem todos) | Sim (problema clássico) |
| Half/Full duplex | Half (legacy), Full (moderno) | Apenas half-duplex compartilhado |
7. Evolução: o Fim do CSMA/CD
Com a introdução de switches full-duplex no final dos anos 1990, cada porta passou a ser um domínio de colisão isolado com dois pares de fios dedicados (um para TX, outro para RX). Em modo full-duplex, não há colisões e o CSMA/CD é formalmente desativado.
O padrão IEEE 802.3-2012 (e posteriores) manteve CSMA/CD para retrocompatibilidade em half-duplex, mas em velocidades acima de 1 Gbps (10GBASE-T, 25GBASE-T, etc.), o padrão exige modo full-duplex. Em 1000BASE-T half-duplex (raro), CSMA/CD ainda é usado com carrier extension para garantir detecção de colisão.
8. Ferramentas de Diagnóstico
# Linux: estatísticas de colisões por interface
ip -s link show eth0
# observar campos "errors", "dropped", "collisions"
# Cisco: histórico de erros na interface
show interfaces fastEthernet 0/1
# observar "collisions", "late collisions", "excessive collisions"
# Detectar late collisions (sintoma de problema físico, ex: cabo longo demais)
# Late collision = colisão detectada após 64 bytes (já era tarde demais para detecção)
Causas Comuns de Late Collisions
- Cabo excedendo o limite de 100 metros (em 10/100BASE-TX).
- NIC em modo half-duplex conectada a switch em full-duplex (duplex mismatch).
- Concentrador (hub) cascatedo além do limite de redes Ethernet clássicas.
9. Comparação com Outros Métodos de Acesso
| Método | Aplicação | Eficiência sob carga | Complexidade |
|---|---|---|---|
| CSMA/CD | Ethernet clássica | Boa até 40%, péssima acima | Baixa |
| CSMA/CA | Wi-Fi | Boa até 50% | Média |
| Token Passing | Token Ring, FDDI | Excelente até 90% | Alta |
| TDMA | Celular, satélite | Excelente | Alta |
| Polling | Bluetooth, redes industriais | Boa | Média |
10. Resumo Técnico
| Atributo | Valor |
|---|---|
| Padrão | IEEE 802.3 |
| Mecanismo | Carrier Sense + Collision Detection |
| Backoff | Binário exponencial |
| Slot time (10 Mbps) | 51,2 microssegundos |
| Frame mínimo | 64 bytes (512 bits) |
| Limite de tentativas | 16 (após isso, descarta o frame) |
| Status atual | Obsoleto em LANs full-duplex modernas |
11. Conclusão
O CSMA/CD é uma das invenções mais elegantes da história das redes de computadores: um algoritmo distribuído que permitiu construir LANs baratas e robustas sem controleadores centrais. Embora tenha sido efetivamente aposentado pela adoção massiva de switches full-duplex, seus princípios - sensoreamento de portador, detecção de colisões e backoff exponencial - continuam a influenciar o projeto de protocolos modernos, especialmente em redes sem fio (CSMA/CA) e em sistemas distribuídos. Compreender CSMA/CD é entender por que a Ethernet venceu a guerra das LANs na década de 1990, superando concorrentes como Token Ring e ARCNET.