Э. Таненбаум - Компьютерные сети. (4-е издание) (DJVU) (1130092), страница 80
Текст из файла (страница 80)
Существует небольшая вероятность того, что как только станция начнет передачу, другая станция также окажется готовой к передаче и опросит канал. Если сигнал от первой станции еще не успел достичь второй станции, вторая станция решит, что канал свободен, и также начнет передачу, результатом чего будет коллизия. Чем больше время распространения сигнала, тем выше вероятность столкновений и ниже производительность протокола, Даже при нулевой задержке распространения сигнала все равно будут столкновения.
Если две станции придут в состояние готовности в то время, когда передает какая-то третья станция, обе будут ждать, пока она не закончит передачу, после чего сами одновременно станут передавать, и в результате произойдет столкновение. Если бы они не были столь нетерпеливы, количество столкновений было бы меньшим. Однако даже такая система значительно лучше чистой системы АЕОНА, так как обе станции воздерживаются от передачи, пока передает третья станция.
Очевидно, что благодаря этому производительность системы с опросом несущей должна быть выше даже чем у дискретной системы АЕОНА. Вторым протоколом с опросом несущей является ненастойчивый протокол СБМА, В данном протоколе предпринята попытка сдержать стремление станций начинать передачу, как только освобождается канал. Прежде чем начать передачу, станция опрашивает канал.
Если никто не передает в данный момент по каналу, станция начинает передачу сама. Однако если канал занят, станция не ждет освобождения канала, постоянно прослушивая его и пытаясь захватить сразу, как только он освободится, как в предыдущем протоколе. Вместо этого станция ждет в течение случайного интервала времени, а затем снова прослушивает линию. Очевидно, данный алгоритм должен привести к лучшему использованию канала и к большим интервалам ожидания, чем протокол СЕМА с настойчивостью 1. Наконец, третий протокол, который мы рассмотрим, это протокол СИМА с настойчивостью р.
Он применяется в дискретных каналах и работает следующим образом. Когда станция готова передавать, она опрашивает камал. Если канал свободен, она с вероятностью р начинает передачу. С вероятностью о = 1-Р она отказывается от передачи и ждет начала следующего такта. Этот процесс повторяется до тех пор, пока кадр не будет передан или какая-либо другая станция не начнет передачу. В последнем случае станция ведет себя так же, как в случае столкновения.
Она ждет в течение случайного интервала времени, после чего начинает все снова. Если при первом прослушивании канала он оказывается занят, станция ждет следующего интервала времени, после чего применяется тот же алгоритм. На рис. 4А показана расчетная зависимость производительности канала от предлагаемого потока кадров для всех трех протоколов, а также для чистой и дискретной систем АЕОНА. 302 Глава 4.
Подуровень управления доступом к среде СЗМД с настойчивостью 0,01 1,0 $ 0,9 ~ о,в 0,6 0,6 0,4 0,3 0,2 0,1 0 0 2 3 4 0 Э 7 8 9 0 (копичество попыток зв время кедра) Рис. 4.4. Сравнение использования канала в зависимости от его загрузки для различных протоколов коплективного доступа Протокол СЗМА с обнаружением конфликтов Настойчивый и ненастойчивый протоколы СБМА, несомненно, являются улучшениями системы А1.0НА, поскольку они гарантируют, что никакая станция не начнет передачу, если она определит, что канал уже занят. Еще одним шагом вперед является прекращение станцией передачи, если выясняется, что произошел конфликт. Другими словами, если две станции, обнаружив, что канал свободен, одновременно начали передачу, они практически немедленно обнаруживают столкновение. Вместо того чтобы пытаться продолжать передачу своих кадров, которые все равно уже не могут быть приняты получателями, им следует прекратить передачу.
Таким образом экономится время и улучшается производительность канала. Такой протокол, называемый СЕМА/СО (Сагг?ег-пензе Мп!с1р!е Ассезз ту?с?т СОИ?з?оп?)егесг1оп — множественный доступ с контролем несущей и обнаружением конфликтов), широко применяется в локальных сетях в подуровне МАС. В частности, он является основой чрезвычайно популярных ЛВС ЕФ?тегпес, поэтому мы уделим некоторое время более нлн менее подробному рассмотрению СЕМА/СЕ).
В протоколе СЯМА/С?), так же как и во многих других протоколах локальных сетей, применяется концептуальная модель, показанная на рис. 4.5. В момент вРемени Гс одна из станций закончила пеРедачУ кадРа. Все остальные станции, готовые к передаче, теперь могут попытаться передать свои кадры. Если две или более станций одновременно начнут передачу, то произойдет столкновение. Столкновения могут быть обнаружены по мощности или длительности импульса принимаемого сигнала в сравнении с передаваемым сигналом.
Обнаружив коллизию, станция прекращает передачу, ждет случайный период времени, после чего пытается снова при условии, что к этому моменту не начала передачу другая станция. Таким образом, наша модель протокола СИМА/СР бу- Протоколы коллективного доступа 303 дет состоять из чередования периодов конкуренции и передачи, а также перио- дов простоя канала (когда все станции молчат), Интервалы тс конкуренции (::-:~П ~~(:"~~ 6~~(:-~ Период Период передачи конкуренции Период простоя Время — Ф. рис.
4.$. Протокол СЗМА/СС может находиться в одном ив трех состояний: конкуренции, передачи и простоя Рассмотрим более подробно алгоритм борьбы за право передачи по каналу. Предположим, две станции одновременно начали передачу в момент времени ге Сколько понадобится времени на то, чтобы онн поняли, что произошло столкновение г От ответа на этот вопрос зависит длина периода конкуренции, а следовательно, величина задержки и производительность канала.
Минимальное время обнаружения конфликта равно времени распространения сигнала от одной станции до другой, Исходя из этих рассуждений, можно предположить, что станция, которая не слышит столкновения в течение времени, требующегося для прохождения сигнала по всему кабелю, может быть уверена, что ей удалось захватить кабель. Под термином «захватить» имеется в виду, что все остальные станции знают, что эта станция передает, и не будут сами пытаться передавать. Однако такое заключение неверно.
Рассмотрим следующий сценарий. Пусть время, необходимое для прохождения сигнала между двумя самыми дальними станциями, равно т. В момент времени гс одна из станций начинает передачу. Через интервал времени т — з, за мгновение до того, как сигнал достигнет самой дальней станции, та станция также начинает передавать. Конечно, почти мгновенно она обнаруживает столкновение и останавливается, но всплеск шума, вызванный столкновением, достигает передающей станции только через интервал времени 2т — е с момента начала передачи.
Другими словами, станция не может быть уверена в том, что захватила канал, до тех пор, пока не пройдет интервал времени 2т с момента начала передачи. По этой причине для моделирования интервала конкуренции мы будем использовать дискретную систему А).ОНА с шириной интервала 2т. В коаксиальном кабеле длиной 1 км т ы 5 мкс. Для простоты мы будем предполагать, что каждый интервал времени 2т содержит всего 1 бит. Как только канал захвачен, станция может передавать с любой скоростью, не обязательно 1 бнт за 2т с.
Следует отметить, что обнаружение столкновения является аналоговым процессом. Аппаратура станции должна прослушивать кабель во время передачи. При этом, если то, что она слышит, отличается от того, что она передает, станция понимает, что произошло столкновение. Способ кодирования сигнала должен 304 Глава 4.
Под оеень п веления дос пом к среде позволять определять столкновения (например, столкновение двух сигналов в О В в явном виде не так просто обнаружить). По этой причине используется специальное кодирование. Передающая станция должна постоянно прослушивать канал, выявляя всплески шума, которые могут означать столкновение. По этой причине СЗМА/С() с моноканалом считается полудуплексной системой.
Станция не может одновременно передавать и принимать кадры, поскольку задействован механизм обратной связи для определения столкновений. Во избежание неправильного понимания вопроса следует также отметить, что ни один протокол подуровня МАС не может гарантировать надежную доставку, Даже при отсутствии столкновений получатель может не получить правильную копию кадра по различным причинам (например, из-за нехватки места в буфере или пропущенного прерывания). Протоколы без столкновений Хотя в протоколе СЯМА/СР столкновения не могут происходить после того, как станция захватывает канал, они могут случаться в период конкуренции. Эти столкновения снижают производительность системы, особенно при большой длине кабеля (то есть при больших т) и коротких кадрах. Метод СВМА/СП оказывается не универсальным.
В данном разделе мы рассмотрим протоколы, которые решают проблему борьбы за право занять канал, причем делают это даже без периода конкуренции. В описываемых далее протоколах предполагается наличие М станций, у каждой из которых есть постоянный уникальный адрес в пределах от О до У- 1. То, что некоторые станции могут часть времени оставаться пассивными, роли не играет. Также предполагается, что задержка распространения сигнала пренебрежимо мала. Главный вопрос сохраняется: какой станции будет предоставлен канал после передачи данного кадрами з4ы будем по-прежнему использовать модель, изображенную на рис.