Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Протокол подуровня управления доступом к среде в Ethernet. Алгоритм двоичного экспоненциального отката.
Каждый кадр начинается с поля Preamble (преамбула, заголовок) длиной 8 байт которое содержит последовательность 10101010. Манчестерское кодирование такой последовательности битов дает в результате меандр с частотой 10 МГц и длительностью 6,4 мкс, что позволяет получателю синхронизировать свои часы с часами отправителя. Далее до конца кадра они должны сохранять синхронизированное состояние за счет манчестерского кода, хранящего отметки границ битов. Кадр содержит два адреса: получателя и отправителя. По стандарту разрешаются 2-байтовые и 6-байтовые адреса, однако параметры немодулированной передачи со скоростью 10 Мбит/с предусматривают только 6-байтовые адреса. Старший бит адреса получателя содержит 0 для обычных адресов и 1 для групповых получателей. Групповые адреса позволяют нескольким станциям принимать информацию от одного отправителя. Кадр, отправляемый групповому адресату, может быть получен всеми станциями, входящими в эту группу. Такой механизм называется групповой рассылкой. Если адрес состоит только из единиц, то кадр могут принять абсолютно все станции сети. Таким способом осуществляется широковещание. Разница между групповой рассылкой и широковещанием весьма существенна, поэтому еще раз повторим: кадр, предназначенный для групповой рассылки, посылается некоторой группе станций Ethernet; широковещательный же кадр получают абсолютно все станции сети. Групповая рассылка более избирательна, но требует некоторых усилий при управлении группами. Широковещание — это более грубая технология, но зато не требует никакой настройки групп. Затем следует поле Туре, которое показывает приемнику, что делать с кадром. Дело в том, что одновременно на одной и той же машине могут работать несколько протоколов сетевого уровня, поэтому когда приходит кадр Ethernet, ядро должно понимать, какому протоколу его передать. Поле Туре определяет процесс, который должен взять себе кадр. Наконец, за полем Туре следует поле данных, размер которого ограничен 1500 байтами. Такое ограничение было выбрано, в общем-то, произвольно в те времена, когда официально был закреплен стандарт DIX. При выборе ссылались на то, что приемопередатчику нужно довольно много оперативной памяти для того, чтобы хранить весь кадр. А память в том далеком 1978 году была еще очень дорогой. Соответственно, увеличение верхней границы размера поля данных привело бы к необходимости установки большего объема памяти, а значит, к удорожанию всего приемопередатчика. Между тем, кроме верхней границы размера поля данных очень важна и нижняя граница. Поле данных, содержащее 0 байт, вызывает определенные проблемы. Дело в том, что когда приемопередатчик обнаруживает столкновение, он обрезает текущий кадр, а это означает, что отдельные куски кадров постоянно блуждают по кабелю. Чтобы было легче отличить нормальные кадры от мусора, сети Ethernet требуется кадр размером не менее 64 байт (от поля адреса получателя до поля контрольной суммы включительно). Если в кадре содержится меньше 46 байт данных, в него вставляется специальное поле Pad, с помощью которого размер кадра доводится до необходимого минимума. Последнее поле кадра стандарта Ethernet содержит контрольную сумму. По сути дела, это 32-битный хэш-код данных. Если какие-либо биты приняты неправильно (в результате шума в канале), контрольная сумма практически наверняка будет неправильной, и ошибка, таким образом, будет замечена. Алгоритм двоичного экспоненциального отката Рассмотрим, как осуществляется рандомизация периода ожидания после столкновения. Модель представлена на рис. 4.5. После возникновения коллизии время делится на дискретные интервалы, длительность которых равна максимальному времени кругового обращения сигнала (то есть его прохождения по кабелю в прямом и обратном направлениях), 2т. Для удовлетворения потребностей Ethernet при максимальном размере сети необходимо, чтобы один интервал составлял 512 битовых интервалов, или 51,2 мкс. После первого столкновения каждая станция ждет или 0 или 1 интервал, прежде чем попытаться передавать опять. Если две станции столкнутся и выберут одно и то же псевдослучайное число, то они столкнутся снова. После второго столкновения каждая станция выбирает случайным образом 0, 1, 2 или 3 интервала из набора и ждет опять. При третьем столкновении (вероятность такого события после двойного столкновения равна '/4) интервалы будут выбираться в диапазоне от 0 до 23 - 1. В общем случае после i столкновений случайный номер выбирается в диапазоне от 0 до 2' - 1, и это количество интервалов станция пропускает. Однако после 10 столкновений подряд интервал рандомизации фиксируется на отметке 1023. После 16 столкновений подряд контроллер признает свое поражение и возвращает компьютеру ошибку. Дальнейшим восстановлением занимаются более высокие уровни. Этот алгоритм, называемый двоичным экспоненциальным алгоритмом отката, был выбран для динамического учета количества станций, пытающихся осуществить передачу. Если выбрать интервал рандомизации равным 1023, то вероятность повторного столкновения будет пренебрежимо мала, однако среднее время ожидания составит сотни тактов, в результате чего среднее время задержки будет слишком велико. С другой стороны, если каждая станция будет выбирать время ожидания всего из двух вариантов, 0 и 1, то в случае столкновения сотни станций они будут продолжать сталкиваться снова и снова до тех пор, пока 99 из них не выберут 1, а одна станция — 0. Такого события можно будет ждать годами. Экспоненциально увеличивая интервал рандомизации по мере возникновения повторных столкновений, алгоритм обеспечивает небольшое время задержки при столкновении небольшого количества станций и одновременно гарантирует, что при столкновении большого числа станций конфликт будет разрешен за разумное время.
Вопросы проектирования сетевого уровня. Метод коммутации пакетов с ожиданием.
Система работает следующим образом. Хост, у которого есть пакет для передачи, посылает его либо на ближайший маршрутизатор своей ЛВС, либо по двухточечному соединению оператору связи. Там пакет хранится до тех пор, пока не будет принят целиком, включая верифицируемую контрольную сумму. Затем он передается по цепочке маршрутизаторов, которая в итоге приводит к пункту назначения. Такой механизм называется коммутацией пакетов с ожиданием, и мы уже рассматривали его в предыдущих главах.
|
Последнее изменение этой страницы: 2019-05-08; Просмотров: 223; Нарушение авторского права страницы