tanenbaum_seti_all.pages (525408), страница 77
Текст из файла (страница 77)
3.16, соответствующую последовательности состояний (000), (01А),(01-),(010),(01А) на рис. 3.14. Объясните, что при этом происходит. Постройте сетевую модель Петри по следуюшим правилам переходов: АС-+В В->АС, С0-ьЕ и Е~С1). По сетевой модели Петри постройте модель конечного автомата с состояниями, достижимыми из начального состояния АС1). Какие хорошо известные принципы кибернетики моделирует эти правила перехода7 36 Основные идеи протоколов РРР и Н1)1,С очень близки.
Чтобы случайно встретившийся в поле данных флаговый байт не вызвал ошибки синхронизации кадров; в протоколе НО1,С используется битовое заполнение. Назовите хотя бы одну причину, по которой в протоколе РРР вместо этого применяет- ся символьное заполнение. Каковы минимальные накладные расходы при пересылке 1Р-пакета по прото- колу РРР? Учитывайте только накладные расходы самого протокола РРР, ане заголовки протокола 1Р. 290 Глава 3. Уровень передачи данных 33, целью данного упражнения является реализация механизма обнаружения ошибок с помощью стандартного алгоритма циклического избыточного кода (СКС), описанного в тексте.
Напишите две программы: генератор (дезегзгог) и верификатор (чег1йег). Программа-генератор считывает со стандартного устройства ввода н-битное сообщение из нулей и единиц, представленных в виде строки АБСП-текста. Вторая строка является я-битным многочленом (также в АЗСП). На устройстве вывода печатается текст из и + я нулей и единиц„представляющий собой сообщение, подлежащее пересылке, Затем печатается многочлен в том же виде, в каком он был считан. Программа-верифика. тор считывает результат работы генератора и выводит сообщение, в котором сообщается, корректен ли данный результат.
Наконец, напишите программу (а1гег), вносящую сбой, а именно инвертирующую только один бит первой строки в зависимости от аргумента (например, порядкового номера бита, предполагая, что слева располагается бит с номером 1), Все остальные данные передаются без изменений.
Набрав в командной строке 9епегаСог <г11е ( чег111ег пользователь должен увидеть сообщение о том, что данные переданы корректно. Набрав деоегагог <01е ~ а1гег аг9 ~ чег1г1ег пользователь должен получить сообщение об ошибке при передаче. 39. Напишите программу для моделирования поведения сети Петри.
Программа должна считывать правила переходов и список состояний, соответствующих сетевому уровню, передающему или принимающему новый пакет. Из начального состояния, также считываемого программой, программа должна случайно выбирать переходы, проверяя возможность ситуации, когда один хост примет два сообщения, и при этом другой хост между этими событиями не выпустит нового сообщения. Глава 4 Подуровень управления доступом к среде Ф Проблема распределения канала Ф Протоколы коллективного доступа Ф Сеть Е1пегпе1 Ф Беспроводные локальные сети Ф Широкополосные беспроводные сети Ф В!ие1оотй 1 Коммутация на уровне передачи данных Ф Резюме Ф Вопросы Как уже указывалось в главе 1, все сетевые технологии могут быть разделены на две категории: использующие соединения от узла к узлу и сети с применением широковещания.
Эта глава посвящена широковещательным сетям и их протоколам. Главной проблемой любых широковещательных сетей является вопрос о том, как определить, кому предоставить канал, если пользоваться им одновременно хотят несколько компьютеров. Для примера представьте себе конференцию, в которой принимают участие шесть человек, причем каждый использует свой телефон. Все они соединены таким образом, что каждый может слышать всех остальных.
Весьма вероятно, что когда один из них закончит свою речь, сразу лвое или трое начнут говорить одновременно, тем самым создав неловкую ситуацию. При личной встрече подобные проблемы предотвращаются внешними средствами, например поднятием руки для получения разрешения говорить. Когда доступен лишь один канал, определить, кто может говорить следующим, значительно труднее. Для решения этой проблемы разработано много протоколов, которые и будут обсуждаться в данной главе. В литературе широковещательные каналы иногда 392 Глава 4.
Под роэень управления доступом к среде называют каналами с множественным доступом, или каналами с произвольным доступом. Протоколы, применяющиеся для определения того, кто будет говорить следующим, отиосятся к подуровню уровня передачи данных, называемому МАС (Меб(пт Ассеэз Сопгго1 — управление доступом к среде). Подуровень МАС особенно важен в локальных сетях, так как почти все оии используют канал множественного доступа. В глобальных сетях, напротив, применяются двухточечные соединения, Исключением являются только спутниковые сети. Поскольку каналы множественного доступа тесно связаны с локальными сетями, в данной главе в основном будут описываться локальные сети, а также некоторые вопросы, напрямую ие связанные с темой подуровня МАС, Технически подуровень управления доступом к среде является нижней частью уровня передачи данных, поэтому логичиее было бы изучить сначала его, а затем протоколы кточка — точка», рассмотренные в главе 3.
Тем ие меиее, большинству людей понять протоколы, включающие многих участников, легче после того, как хорошо изучены протоколы с двумя участниками. По этой причине при рассмотрении уровней мы слегка отклонились от строгого следования снизу вверх по иерархической лестнице. Проблема распределения канала Центральной проблемой, обсуждаемой в этой главе, является распределение одного широковещательного канала между многочисленными пользователями, претендующими иа него. Сначала мы в общих чертах рассмотрим статические и динамические схемы распределения канала. Затем обсудим несколько конкретиых алгоритмов.
Статическое распределение канала а локальных и региональных сетях Традиционным способом распределения одного канала — например, телефонного кабеля — между многочисленными конкурирующими пользователями является РОМ (Ргеппепсу 01ч!з1оп Мц1йр1ех1пй — частотное уплотнение). При наличии )у пользователей полоса пропускаиия делится иа у диапазонов одинаковой ширины (см.
рис, 2.27), и каждому пользователю предоставляется один из иих. Поскольку при такой схеме у каждого оказывается свой личный частотный диапазон, то конфликта между пользователями ие возникает. При иебольшом количестве абонентов, каждому иэ которых требуется постоянная линия связи (иапример, коммутаторы операторов связи), частотное уплотнение предоставляет простой и эффективный мехаиизм распределения. Однако при большом и постоянно меняющемся количестве отправителей данных или пульсирующем графике частотное уплотнение ие может обеспечить достаточио эффективное распределение канала. Если количество пользователей в какой-либо момент времени меньше числа диапазонов, иа которые разделен Проблема распределения канала 293 спектр частот, то большая часть спектра не используется и тратится попусту.
Если, наоборот, количество пользователей окажется больше числа доступных диапазонов, то некоторым придется отказать в доступе к каналу, даже если абоненты, уже захватившие его, почти не будут использовать пропускную способность. Однако даже если предположить, что количество пользователей можно каким-то способом удерживать на постоянном уровне, то разделение канала на статические подканалы все равно является неэффективным.
Основная проблема здесь состоит в том, что если какая-то часть пользователей не пользуется каналом, то эта часть спектра просто пропадает. Они сами при этом занимают линию, не передавая ничего, и другим не дают передать данные. Кроме того, в большинстве компьютерных систем график является чрезвычайно неравномерным (вполне обычным является отношение пикового графика к среднему как 1000:1). Следовательно, большую часть времени большая часть каналов не будет использоваться. То, что характеристики статического частотного уплотнения оказываются неудачными, можно легко продемонстрировать на примере простых вычислений теории массового обслуживания.
Для начала сосчитаем среднее время задержки Тдля канала с пропускной способностью С бит/с, по которому прибывают Л кадров в секунду. Длина кадров является случайной величиной с экспоненциально распределенной плотностью вероятности, среднее значение которой равно 1/р бита на кадр. При таких параметрах скорость прибытия составляет Л кадров в секунду, а скорость обслуживания — пС кадров в секунду. Теория массового обслуживания говорит о том„что пуассоновское время прибытия и обслуживания равно Т= 1 рс-л Пусть, наприьгер, пропускная способность С равна 100 Мбит/с, средняя длина кадра 1/р = 10 000 бит, скорость прибытия кадров Л= 5000 кадров в секунду.
Тогда Т = 200 мкс. Обратите внимание: если бы мы не учли задержки при формировании очереди и просто посчитали, сколько времени нужно на передачу кадра длиной 10 000 бит по сети с пропускной способностью 100 Мбит/с, то получили бы неправильный ответ; 100 мкс. Это число приемлемо лишь при отсутствии борьбы за канал. Теперь давайте разделим канал на Ж независимых подканалов, у каждого из которых будет пропускная способность С/йг бит/с.