Возникновение коллизии
Механизм прослушивания среды и пауза между кадрами не гарантирует исключения ситуации, когда две или более станции одновременно решают, что среда свободна, и начинают передавать свои кадры. Говорят, что при этом происходит коллизия, так как содержимое обоих кадров сталкивается на общем кабеле и происходит искажение информации.
Коллизия – это нормальная ситуация в работе сетей Ethernet. В примере на рис. 4 коллизию породила одновременная передача данных узлами 3 и 1. Для возникновения коллизии не обязательно, чтобы несколько станций начали передачу абсолютно одновременно, такая ситуация маловероятна. Более вероятна ситуация, когда один узел начинает передачу, а через некоторое (короткое) время другой узел, проверив среду и не обнаружив несущую (сигналы первого узла еще не успели до него дойти), начинает передачу своего кадра. Таким образом, возникновение коллизии является следствием распределения узлов сети в пространстве.
Рис. 4. Схема возникновения и распространения коллизии
Чтобы корректно обработать коллизию, все станции одновременно наблюдают за возникающими на кабеле сигналами. Если передаваемые и наблюдаемые сигналы отличаются, то фиксируется факт обнаружения коллизии. Для повышения вероятности скорейшего обнаружения коллизии всеми станциями сети станция, которая обнаружила коллизию, прерывает передачу своего кадра и усугубляет коллизию посылкой в сеть специальной последовательности из 32 бит, называемой jam-последовательностью.
После этого обнаружившая коллизию передающая станция обязана прекратить передачу и сделать паузу в течение короткого случайного интервала времени. Затем она может снова предпринять попытку захвата среды и передачи кадра.
Случайная пауза в технологии Ethernetможет принимать значения от 0 до 52,4 мс.
Если 16 последовательных попыток передачи кадра вызывают коллизию, то передатчик должен прекратить попытки и отбросить этот кадр.
Администраторы сетей Ethernetна разделяемой среде руководствуются простым эмпирическим правилом – коэффициент использования среды не должен превышать 30%. Для поддержания чувствительного к задержкам трафика сетиEthernetмогут применять только один метод поддержания характеристикQoS– недогруженный режим работы.
Время оборота и распознавание коллизий
Надежное распознавание коллизий всеми станциями сети является необходимым условием корректной работы сети Ethernet. Если какая-либо передающая станция не распознает коллизию и решит, что кадр данных передан ею верно, этот кадр будет утерян. Из-за наложения сигналов при коллизии информация кадра исказится, и он будет отбракован принимающей станцией из-за несовпадения контрольной суммы. Скорее всего, недошедшие до получателя данные будут повторно переданы каким-либо протоколом верхнего уровня, например, транспортным или прикладным, работающим с установлением соединения, либо протоколомLLC, если он работает в режимеLLC2. Однако, повторная передача сообщения протоколами верхних уровней произойдет гораздо позже (иногда по прошествии нескольких секунд), чем повторная передача средствами сетиEthernet, работающей с микросекундными интервалами. Поэтому если коллизии не будут надежно распознаны узлами сетиEthernet, то это приведет к заметному снижению полезной пропускной способности сети.
Для надежного распознавания коллизий должно выполняться следующее соотношение:
Здесь Tmin– время передачи кадра минимальной длины, аRTT– время оборота, т.е. время, за которое сигнал коллизии успевает распространиться до самого дальнего узла сети. В худшем случае сигнал должен пройти дважды между наиболее удаленными друг от друга станциями сети (в одну сторону проходит неискаженный сигнал, а в обратном направлении – сигнал, уже искаженный коллизией).
При выполнении этого условия передающая станция должна успеть обнаружить коллизию, которую вызвал переданный ее кадр, еще до того, как она закончит передачу этого кадра.
Очевидно, что выполнение этого условия зависит, с одной стороны, от минимальной длины кадра и скорости передачи данных протокола, а с другой стороны, от длины кабельной системы сети и скорости распространения сигнала в кабеле (для разных типов кабеля эта скорость несколько отличается).
Все параметры протокола Ethernetподобраны таким образом, чтобы при нормальной работе сети коллизии четко распознавались.
Описанные соображения объясняют выбор минимальной длины поля данных кадра в 46 байт. Уменьшение этого значения до 0 привело бы к значительному сокращению максимальной длины сети.
Требование Tmin>=RTTимеет одно интересное следствие: чем выше скорость протокола, тем меньше должна быть максимальная длина сети. Поэтому дляEthernetна разделяемой среде при скорости в 100 Мбит/с максимальная длина сети пропорционально уменьшается до 250 м, а при скорости в 1 Гбит/с – до 25 м.