Обнаружив конфликт, пользователь ожидает некоторый случайный отрезок времени после чего повторяет попытку. Ожидание должно быть случайным, иначе конкуренты будут повторять попытки в одно и то же время, что приведет к блокировке. Системы подобного типа, где пользователи конкурируют за получение общего канала, называются системами с состязаниями.
Неважно когда произошел конфликт когда первый бит одного кадра наложился на последний бит другого кадра или как-то иначе, оба кадра считаются испорченными и должны быть переданы повторно. Контрольная суммам не позволяет различать разные случаи наложения.
Какова эффективность системы ALOHA? Какая часть кадров избежала коллизий? Рассмотрим следующую модель. Есть неограниченное число пользователей, работающих на компьютерах. Все что они могут делать это - либо набирать текст, либо ждать пока набранный текст передается. Когда пользователь заканчивает набирать очередную строку, он останавливается и ждет ответа от системы. Система пытается передать эту строку. Когда она сделает это успешно, пользователь видит отклик и может продолжать работу.
Назовем временем кадра - время необходимое на передачу кадра стандартной фиксированной длины. Предполагаем, что пользователей не ограниченное число и они порождаю кадры по закону Пуассона со средним
кадров за время кадра. Поскольку при очередь на передачу будет только расти и все кадры будут страдать от коллизий, то мы будем предполагать, .Также будем предполагать что вероятность k попыток послать как новые, так и ранее не прошедшие кадры за время кадра распределена по закону Пуассона со средним
попыток. Понятно, что . При слабой загрузке ( приближенно равно нулю) будет не много передач, а следовательно и коллизий - G приближенно равно . При высокой загрузке . При любой нагрузке пропускная способность это - число кадров, которые надо передать, умноженное на вероятность успешной передачи. Если обозначить - вероятность успешной передачи, то .Рассмотрим внимательно сколько времени надо отправителю, чтобы обнаружить коллизию. Пусть он начал передачу в момент времени
и пусть требуется время , чтобы кадр достиг самой отдаленной станции. Тогда если в тот момент, когда кадр почти достиг этой отдаленной станции она начнет передачу ( ведь в системе ALOHA станция сначала передает, а потом слушает), то отправитель узнает об этом только через .Вероятность появления k кадров на передачу при распределении Пуассона равна
поэтому вероятность, что появится 0 кадров равна
. За двойное время кадра среднее число кадров будет , отсюда ,а так как
, то .Рис.3.1 Зависимость производительности канала от предлагаемого трафика для систем ALOHA
Зависимость между нагрузкой и пропускной способность показана на Рис.3.1. максимальная пропускная способность достигается при
при , что составляет примерно 18%. Результат не очень вдохновляющий.Слотированная ALOHA.
В 1972 году Робертс предложил модификацию чистой ALOHA. Все время разделяют на слоты - один кадр на слот. Ясно, что это требует синхронизации. Одна станция должна испускать сигнал начала очередного слота. Поскольку передачу теперь можно начинать не в любой момент, а только по специальному сигналу, то время на обнаружение коллизии сокращается в двое. Отсюда
Как видно из рис. 1 максимум пропускной способности слотированной ALOHA наступает при
, где , т.е. около 0,37, что в двое больше чем у чистой ALOHA.Рассмотрим как
влияет на пропускную способность подсчитаем вероятность успешной передачи за попыток. Так как вероятность отсутствия коллизии при передаче, то вероятность что кадр будет передан ровно за попыток, равнаСреднее ожидаемое число повторных передач будет
Эта экспоненциальная зависимость показывает, что с ростом
резко возрастает число повторных попыток, а следовательно и общая пропускная способность канала.3.2. Протоколы множественного доступа с контролем несущей (CSMA).
Лучший результат, какой мы можем получить для системы ALOHA - 1/е. Это не удивительно, так как там станция не обращает внимание на , что делают другие. В локальных сетях есть возможность определить, что делают другие станции и только после этого решать что делать.
Протоколы, которые реализую именно эту идею - определить есть ли передача и действовать соответствующе, называются протоколами с обнаружением несущей CSMA (Carrier Sense Multiply Access).
Настойчивые и не настойчивые CSMA.
Согласно протоколу, который мы сейчас рассмотрим, станция прежде чем что-либо передавать определяет состояние канала. Если канал занят, то она ждет. Как только канал освободился она пытается начать передачу. Если при этом произошла коллизия, она ожидает случайный интервал времени и все начинает с начала. Этот протокол называется CSMA настойчивым протоколом первого уровня или 1-настойчивым CSMA протоколом, потому что он начинает передачу с вероятность 1 как только обнаруживает, что канал свободен.
Здесь существенной является задержка распространения сигнала. Чем она больше. Тем больше будет коллизий, так как две готовые к передачи станции обнаружат что они обе в режиме передачи только по истечении времени задержки. Тем не менее этот протокол более эффективен, чем любая из ALOHA, так как учитывают что происходит на канале прежде, чем начать действовать.
Другой вариант CSMA - не настойчивый CSMA протокол. Основное отличие его от предыдущего в том, что готовая к передаче станция не опрашивает постоянно канал, в ожидании когда он освободиться, а делает это через случайные отрезки времени. Это несколько увеличивает задержку при передаче, но общая эффективность возрастает.
И ,наконец, CSMA настойчивый протокол уровня р. Он применяется к слотированным каналам. Когда станция готова к передаче она опрашивает канал, если он свободен, то она с вероятностью р передает свой кадр и с вероятностью ждет следующего слота. Так она действует пока не передаст кадр. Если произошла коллизия вовремя передачи, она ожидает случайный интервал времени и опрашивает канал опять. Если при опросе канала он оказался занят, станция ждет начала следующего слота и весь алгоритм повторяется. На Рис.3.2 показана пропускная способность в зависимости от нагрузки.
Рис.3.2 Сравнение использования канала в зависимости отего нагрузки для различных протоколов коллективного доступа
3.3. Протоколы множественного доступа с контролем несущей с определением коллизий (CSMA/CD).
Настойчивые и ненастойчивые CSMA протоколы несомненно есть улучшение ALOHA, т.к. они начинают передачу только проверив состояние канала. Другим улучшением, которое можно сделать, - станции должны уметь определять коллизии как можно раньше, а не по окончании отправки кадра. Это экономит время и пропускную способность канала. Такой протокол, известный как CSMA/CD - Carrier Sense Multiply Access with Collision Detection , широко используется в локальных сетях.