Как определить длину кадра Ethernet II?
Формат кадра Ethernet II не содержит поля длины, и я хотел бы понять, как можно обнаружить конец кадра без него.
К сожалению, я понятия не имею о физике, но для меня это звучит разумно: мы предполагаем, что уровень 1 (физический уровень) предоставляет нам способ передачи исходных бит таким образом, чтобы можно было различать ситуация, когда отправляются биты, и ситуация, когда ничего не отправляется (если цифровые данные были закодированы в аналоговые сигналы посредством фазовой модуляции, это было бы верно, например, но я не знаю, действительно ли это сделано). В этом случае плата Ethernet может просто подождать до тех пор, пока не произойдет некоторая временная интервал, когда больше не передаются биты, а затем решите, что передача кадра должна быть завершена.
Действительно ли это происходит?
Если да: где я могу найти эти вещи и какие общие значения для длины "определенного интервала времени"? Почему имеет IEEE 802.3 имеет поле длины?
Если нет: как это делается?
Благодарим за помощь!
Ханно
Ответы
Ответ 1
Ваше предположение верно. Поле длины внутри кадра не требуется для слоя 1.
Layer1 использует другие средства для обнаружения конца кадра, которые изменяются в зависимости от типа физического уровня.
- с 10Base-T за кадром следует форма TP_IDL. Отсутствие дополнительных битов данных, закодированных в Манчестере, может быть обнаружено.
- с 100Base-T кадр заканчивается типом бит конца разделителя потока, который может не произойти в данных полезной нагрузки (из-за его кодирования 4B/5B).
Грубое описание, которое вы можете найти, например. Вот:
http://ww1.microchip.com/downloads/en/AppNotes/01120a.pdf "Теория работы Ethernet"