Формат блока данных
Сети Token Ring определяют два типа блока данных: блоки маркеров и блоки данных/блоки команд. Оба формата представлены на Рис.2.5.
Рис. 2.5. IEEE 802.5/Token Ring Frame Formats
- Маркеры. Длина маркера - три байта; он состоит из
- ограничителя начала
Ограничитель начала служит для предупреждения каждой станции о прибытии маркера (или блока данных/блока команд). В этом поле имеются сигналы, которые отличают этот байт от остальной части блока путем нарушения схемы кодирования, использованной в других частях блока.
- байта управления доступом
Байт управления доступом содержит поля приоритета и резервирования, а также бит маркера (используемый для дифференциации маркера и блока данных/блока команд) и бит монитора (используемый активным монитором, чтобы определить, циркулирует какой-либо блок в кольце непрерывно или нет).
- ограничителя конца
И наконец, разделитель конца сигнализирует о конце маркера или блока данных/ блока команд. В нем также имеются биты для индикации поврежденного блока,а также блока, являющегося последним в логической последовательности.
Блок данных и блок команд могут иметь разные размеры в зависимости от размеров информационного поля. Блоки данных переносят информацию для протоколов высших уровней; блоки команд содержат управляющую информацию, в них отсутствует информация для протоколов высших уровней.
В блоке данных/блоке команд за байтом управления доступом следует байт управления блоком данных. Байт управления блоком данных указывает, что содержит блок - данные или управляющую информацию. В управляющих блоках этот байт определяет тип управляющей информации.
За байтом управления блоком следуют два адресных поля, которые идентифицируют станции пункта назначения и источника. Для IEEE 802.5 длина адресов равна 6 байтам.
За адресными полями идет поле данных. Длина этого поля ограничена временем удержания маркера кольца, которое определяет максимальное время, в течение которого станция может удерживать маркер.
За полем данных идет поле последовательности проверки блока (FCS). Станция-источник заполняет это поле вычисленной величиной, зависящей от содержания блока данных. Станция назначения повторно вычисляет эту величину, чтобы определить, не был ли блок поврежден при прохождении. Если это так, то блок отбрасывается.
Также, как и маркер, блок данных/блок команд заканчивается ограничителем конца.
on_load_lecture()