Лекции 2010-го года (1130544), страница 45
Текст из файла (страница 45)
Он отвечает за обнаружение несущей частоты иколлизий. Когда трансивер обнаруживает коллизию, он посылает специальный сигнал покабелю, чтобы гарантировать, что другие трансиверы услышат коллизию. Трансивер накабеле соединяется с компьютером трансиверным кабелем. Его длина не должнапревосходить 50 метров. Он состоит из 5 витых пар. Две - для передачи данных ккомпьютеру и от него, две - для передачи управляющей информации в обе стороны, ипятая пара - для подачи питания на трансивер. Некоторые трансиверы позволяютподключать к себе до восьми машин.Рисунок 4-16.
Три способа подключения по стандарту IEEE 802Трансиверный кабель подключается к контроллеру в компьютере. На этом контроллереесть специальная микросхема, которая отвечает за прием кадров и их отправку, проверкуи формирование контрольной суммы. В некоторых случаях она отвечает за управлениебуферами на канальном уровне, очередью буферов на отправку, прямой доступ к памятимашины и другие вопросы доступа к сети.У 10Base2 трансивер расположен на контроллере. Каждая машина должна иметь свойиндивидуальный трансивер (рисунок 4-16 (b)).У 10Base-T трансивера нет вовсе (рисунок 4-16 (c)).
Машина соединяется с хабом витойпарой, длина которой не должна превосходить 100 метров. Вся электроникасосредоточена в хабе.Наконец, последний вид кабеля 10Base-F - оптоволоконный вариант. Он относительнодорог, но низкий уровень шума и длина одного сегмента - важные достоинства этогокабеля.На рисунке 4-17 показаны различные топологии использования Ethernet. Чтобы увеличитьдлину сегмента, используются репитеры.
Это устройство физического уровня, котороеотвечает за очистку, усиление и передачу сигнала. Репитеры не могут отстоять более чемна 2,5 км, и на одном сегменте их не может быть более четырех.23Рисунок 4-17. Топологии Ethernet4.3.1.2. Манчестерский кодНи одна версия IEEE 802.3 не использует прямого кодирования, т.к. оно оченьнеоднозначно.
Так, например, оно не позволяет однозначно отличить 00100011 от10001100 или 01000110 без дополнительных усилий на синхронизацию. Нужен был метод,который бы позволял определять начало, середину и конец передачи каждого бита безособой побитной синхронизации. Было предложено два метода для этого: манчестерскийкод и дифференциальный манчестерский код (см. главу 2).При использовании Манчестерского кода весь период передачи бита разбивается на дваравных интервала.
При передаче 1 передается высокий сигнал в первом интервале инизкий - во втором. При передаче 0 - наоборот. Такой подход имеет переход в серединепередачи каждого бита, что позволяет синхронизироваться приемнику и передатчику.Недостатком такого подхода является то, что пропускная способность канала падает вдвоепо сравнению с прямым кодированием. Манчестерский код показан на рисунке 4-18.Рисунок 4-18. Манчестерский кодПри использовании дифференциального манчестерского кода при передаче 1 в началепередачи нет различия в уровне с предыдущим интервалом передачи, т.е. нет перепада вуровне в начале каждого интервала, а при передаче 0 - есть.
Этот способ кодированияобладает лучшей защищенностью, чем просто манчестерский код, но требует болеесложного оборудования.4.3.1.3. IEEE 802.3: протокол МАС-подуровняСтруктура кадра в IEEE 802.3 показана на рисунке 4-19. Кадр начинается с преамбулы - 7байт вида 10101010, которая в манчестерском коде на скорости 10 МГц обеспечивает 5,624мксек для синхронизации приемника и передатчика. Затем следует стартовый байт10101011, обозначающий начало передачи.Рисунок 4-19.
Структура кадра IEEE 802.3Хотя стандарт допускает двух- и шестибайтные адреса, для 10Base используются только6-байтные. 0 в старшем бите адреса получателя указывает на обычный адрес. Если там 1,это признак группового адреса. Групповой адрес позволяет обращаться сразу кнескольким станциям одновременно. Если адрес получателя состоит из одних единиц это вещательный адрес, т.е.
этот кадр должны получить все станции в сети.Другой интересной возможностью адресации является различение локального адреса иглобального. На то, какой адрес используется, указывают 46 бит. Если этот бит 1 - этолокальный адрес, который устанавливает сетевой администратор и вне данной сети этотадрес смысла не имеет. Глобальный адрес устанавливает IEEE и гарантирует, что нигде вмире нет такого второго.
С помощью 46 битов можно получить 7х1013 глобальныхадресов.Поле длины указывает на длину поля данных. Она может быть от 0 до 1500 байт. То, чтополе данных может иметь длину 0, вызывает проблему для обнаружения коллизий.Поэтому IEEE 802.3 предписывает, что кадр не может быть короче 64 байт. Если длинаполя данных недостаточна, то поле Pad компенсирует нехватку длины.Ограничение на длину кадра связано со следующей проблемой. Если кадр короткий, тостанция может закончить передачу прежде, чем начало кадра достигнет самогоотдаленного получателя. В этом случае она может пропустить коллизию и ошибочносчитать, что кадр доставлен благополучно.
Пусть τ - минимальное время распространениясигнала до самой удаленной станции. Тогда минимальная длина кадра должна быть такой,чтобы время передачи кадра такой длины занимало не менее 2τ секунд. Эту ситуациюпоясняет рисунок 4-20. Для IEEE 802.3 (2,5 км и четырех репитерах) это время равно 51,2мксек., что соответствует 64 байтам. При больших скоростях длина кадра должна бытьеще больше. Например, на скорости 1 Гбит при длине сегмента 2,5 км она будет равна6400 байтам.
И это становится проблемой при переходе на высокие скорости передачи.Рисунок 4-20. Обнаружение коллизии25Последнее поле - контрольная сумма, которая формируется с помощью CRC-кода. Мырассматривали эти коды в главе 3.4.3.1.4. Двоичный экспоненциальный алгоритм задержкиТеперь рассмотрим, как определяется случайная величина задержки при возникновенииколлизий. При возникновении коллизии время разбивается на слоты длиной,соответствующей наибольшему времени распространения сигнала в оба конца (2τ).
Для802.3, как уже было указано, это время при длине линии 2,5 км и четырех репитерах равно51,2 мксек.При первой коллизии станции, участвовавшие в ней, случайно выбирают 0 или 1 слот дляожидания. Если они выберут одно и то же число, то коллизия возникнет опять. Тогдавыбор будет происходить среди чисел 0, 2i, 1, где i - порядковый номер очереднойколлизии.После 10 коллизий число слотов достигает 1023 и далее не увеличивается, после 16коллизий Ethernet-контроллер фиксирует ошибку и сообщает о ней более высокомууровню стека протоколов.Этот алгоритм называется алгоритм двоичной экспоненциальной задержки.
Он позволяетдинамически подстраиваться под число конкурирующих станций. Если для каждойколлизии случайный интервал был бы равен 1023, то вероятность повторной коллизии длядвух станций была бы пренебрежимо мала. Однако среднее время ожидания разрешенияколлизии было бы сотни слотов. Если бы случайный интервал был бы постоянно 0 или 1,то при 100 станциях разрешение коллизии потребовало бы годы, так как 99 станцийдолжны были бы случайно выбрать, скажем, 0 и лишь одна - 1.4.3.1.5.
Производительность IEEE 802.3Здесь мы рассмотрим производительность 802.3 при условии плотной и постояннойнагрузки. У нас есть k станций, всегда готовых к передаче. С целью упрощения анализапри коллизиях мы будем рассматривать не алгоритм двоичной экспоненциальнойзадержки, а постоянную вероятность повторной передачи в каждом слоте. Если каждаястанция участвует в состязаниях в слоте с вероятностью p, то вероятность А, чтонекоторая станция захватит канал в этом слоте, равна26А достигает максимума при p=1/k , А→1/е при k→∞.
Вероятность, что период состязанийбудет иметь j слотов, равна A(1-A)j-1. Отсюда среднее число слотов в состязаниях равноТак как каждый слот имеет длительность 2τ, то средний интервал состязаний w равен2τ/А. Предполагая оптимальное значение р, wе5.4 . Если передача кадрасредней длины занимает m сек, то при условии большого числа станций, постоянноимеющих кадры для передачи, эффективность канала равнаИз этой формулы видно, что чем длиннее кабель, тем хуже эффективность, т.к. растетдлительность периода состязаний. При длительности 51,2 мксек, что соответствует 2,5 кмпри четырех репитерах и скорости передачи 10 Мбит/сек., минимальный размер кадра 512 бит, или 64 байта.На рисунке 4-21 показана зависимость эффективности канала от числа готовых к передачестанций при сделанных выше предположениях о длине канала, скорости передачи иминимальной длине кадра.
При этом следует учитывать, что хотя с ростом длины кадраэффективность канала растет, время задержки кадра в системе также увеличивается.Рисунок 4-21. Эффективность канала 802.3Как показали экспериментальные исследования, предположение о том, что трафик вканале может быть описан распределением Пуассона (опираясь на это предположение,было сделано очень много теоретических исследований) не верно. Увеличение27длительности наблюдений не сглаживает трафик, не дает определенного среднегозначения.4.3.2. Стандарт IEEE 802.4: шина с маркеромСтандарт 802.3 получил очень широкое распространение. Однако там, где возникалапотребность в режиме реального времени, он вызывал нарекания. Во-первых, потому чтос ненулевой вероятностью станция может ожидать сколь угодно долго отправки кадра. Встандарте нет понятия приоритета кадра, что очень важно для приложений реальноговремени.Простейшая система с заранее известным наихудшим случаем ожидания - кольцо.