Сетевой протокол CSMA / CD (Ethernet)

714
NickGreen

Я надеюсь, что я нахожусь в правильном дочернем сайте stackexchange (кажется, не могу найти связанный с сетью дочерний сайт ..).

У меня есть 2 вопроса относительно сетевого протокола CSMA / CD:

  1. Перед отправкой некоторых (скажем, 5) сообщений по шине, существует ли какая-то формула, сколько времени потребуется для успешной передачи всех сообщений (без коллизий)? Или время неизвестно, когда начинается передача?

  2. Если (1) нет -> Можно ли рассчитать максимальное время передачи? Так например -> 'это займет макс. 10 мсек, прежде чем все сообщения будут успешно переданы ».

Надеюсь мои вопросы вам понятны! Если нет, я рад прояснить, когда это необходимо!

Спасибо за ваше время!

2

2 ответа на вопрос

1
Max Ried

В случае, если вы находитесь в одиночном и в противном случае пустом домене коллизий, вычисление должно быть следующим для 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 

Таким образом, чтобы передать полный размер стандартного кадра

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

через соединение 1 Гбит / с

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

межкадровый промежуток 96 нс составляет 12,336 мкс .

Сделайте этот расчет для каждого пакета и добавьте продолжительность.

Это минимальный временной интервал, необходимый, поскольку, как только вы не находитесь в своем собственном домене коллизий, нет никакого способа рассчитать необходимое время, поскольку может даже оказаться, что вы вообще не можете его отправить.

@NickGreen, обратите внимание, что в настоящее время вы почти всегда находитесь на пустом домене коллизий. Коллизии могут происходить только на полудуплексных каналах, и если вы используете коммутатор, вы используете полнодуплексный канал. Концентраторы перестали использоваться рано в течение 100-мегабитных дней, а спецификация GigE вообще не позволяет использовать концентраторы. Очень редко можно найти какие-либо концентраторы в использовании больше. Spiff 12 лет назад 0
@Spiff, если вы используете общую среду, например IEEE 802.11, вы часто находитесь в области коллизий. Max Ried 12 лет назад 0
IEEE 802.11 - это CSMA / CA (A = Avoidance), а не CSMA / CD (D = Detection), поэтому, поскольку он специально спросил о CSMA / CD, я не думаю, что дело 802.11 применимо. Если это произойдет, ваши расчеты в вашем ответе будут крайне недостаточны для 802.11, поскольку TXOP 802.11 и правила межкадрового хронирования ** намного ** сложнее, чем проводной Ethernet. Spiff 12 лет назад 1
1
CarlF

CSMA / CD по своей природе не полностью предсказуем, потому что вы не знаете, что будут делать другие станции в сети. Вы можете рассчитать минимальное время (как это сделал бот47), но максимальное время не известно заранее.

К сожалению, мне не хватает представителей. за то, что вы дали +1, спасибо за ваш ответ, но я принял более подробный ответ как «принятый ответ» NickGreen 12 лет назад 0

Похожие вопросы