Protocolo de rede CSMA / CD (Ethernet)

2

Espero que eu esteja no subsite correto do stackexchange (não consigo encontrar um subsite relacionado à rede ..).

Tenho duas perguntas sobre o protocolo de rede CSMA / CD:

  1. Antes de enviar algumas mensagens (digamos 5) pelo barramento, existe algum tipo de fórmula quanto tempo levará para transmitir todas as mensagens com sucesso (sem colisões)? Ou é o tempo desconhecido ao começar a transmitir?

  2. Se (1) não for - > É possível calcular o tempo máximo de transmissão? Então, por exemplo - > 'vai levar max. 10 ms antes de todas as mensagens serem transmitidas com sucesso '.

Espero que minhas perguntas sejam claras para você! Se não, fico feliz em esclarecer quando necessário!

Obrigado pelo seu tempo!

    
por NickGreen 07.06.2011 / 16:01

2 respostas

1

No caso de você estar em seu próprio domínio de colisão vazio, o cálculo deve ser o seguinte para Ethernet:

Inter fram gap = 96 Bit / link speed (in MBit/s)
Packetsize = Preamble (8 bytes) + Ethernetframe (68-1522 bytes)
Time = Packetsize / Link speed (either 10 MBit/s, 100 MBit/s, 1 GBit/s, 10 GBit/s) + Inter frame gap

Então, para transferir um quadro padrão em tamanho completo de

8 bytes preamble + 22 bytes header + 1500 bytes payload = 1530 bytes

com uma conexão de 1 GBit / s

Time = 1530 bytes / 1 GBit/s = 12.24 µs

e o intervalo entre quadros de 96 ns faz 12.336 µs .

Faça esse cálculo para cada pacote e adicione as durações.

Este é o intervalo de tempo mínimo necessário, pois, assim que você não estiver no seu próprio domínio de colisão, não há como calcular o tempo necessário, pois pode ser que você não seja capaz de enviá-lo.

    
por 07.06.2011 / 16:18
1

O CSMA / CD não é inerentemente totalmente previsível, porque você não sabe o que as outras estações da rede farão. Você pode calcular o tempo mínimo (como fez o bot47), mas o tempo máximo não é conhecido antecipadamente.

    
por 07.06.2011 / 16:21