2.1.3 Программные алгоритмы сети Ethernet и Fast Ethernet

2.1.2 Программные алгоритмы сети

Метод управления обменом CSMA/CD

          Метод управления обменом CSMA/CD (Carrier-Sense Multiple Access with Collision Detection – множественный доступ с контролем несущей и обнаружением коллизий) относится к децентрализованным случайным методам[1]. Он используется как в сетях типа Ethernet, так и в высокоскоростных сетях (Fast Ethernet, Gigabit Ethernet). При описании временных диаграмм сетей типа Ethernet и Fast Ethernet, а также предельных размеров пакетов (кадров) используются следующие определения:

-IPG (interpacket gap, межпакетная щель, межкадровый интервал) – минимальный промежуток времени между передаваемыми пакетами (9,6 мкс для Ethernet / 0,96 мкс для Fast Ethernet).

-Collision domain (область коллизий, зона конфликта) – часть сети, на которую распространяется конфликт (коллизия).

-ВТ (Bit Time, время бита) – интервал времени для передачи одного бита (100 нс для Ethernet / 10 нс для Fast Ethernet).

Алгоритм доступа к сети

          В начале из кадра, предназначенного для передачи в сеть, абонент формирует пакет. Если после подготовки пакета сеть свободна, то абонент имеет право начать передачу. Сначала он должен проверить, прошло ли минимально допустимое время IPG после предыдущей передачи (блок 1 на рисунке). Только по окончании этого времени абонент может начать передачу битов своего пакета.

          После передачи каждого бита абонент проверяет наличие конфликта (коллизии) в сети. Если коллизии отсутствуют, передача битов продолжается до окончания пакета. В этом случае считается, что передача данных прошла успешно.

          Если после передачи любого бита обнаружена коллизия, то передача пакета прекращается. Абонент (узел) усиливает коллизию, передавая 32-битовый сигнал ПРОБКА (JAM) и начинает готовиться к следующей попытке передать свои данные. Сигнал ПРОБКА гарантирует, что факт наличия коллизии обнаружат все абоненты сети.

          После передачи сигнала ПРОБКА абонент, обнаруживший коллизию, увеличивает значение счетчика количества попыток (перед началом передачи значение этого счетчика равно нулю). Максимальное число попыток передачи не может быть более 16, поэтому если счетчик переполнился, то попытки передать пакет прекращаются. В этом случае считается, что сеть сильно перегружена - в ней слишком много коллизий. Такая ситуация является аварийной, она обрабатывается на более высоких уровнях протоколов обмена.

          Если количество попыток не превысило предельного значения, то производится вычисление величины, а затем и выдержка вычисленного временного интервала. Случайный характер величины этой задержки с высокой степенью вероятности гарантирует, что все абоненты, участвующие в конфликте имеют разное ее значение. Затем попытка передать пакет снова повторяется. Абонент, у которого вычисленная задержка будет меньше, начнет свою передачу первым и заблокирует все остальные передачи.

          Если в момент возникновения заявки на передачу данных (по завершению подготовки пакета) сеть занята другим абонентом, ведущим передачу, то данный абонент ждет ее освобождения. После освобождения сети он должен выждать время IPG после окончания предыдущей передачи по сети до начала собственной.

          Таким образом, особенностью метода CSMA/CD является то, что он не только не предотвращает коллизии, а наоборот, предполагает их и даже провоцирует, а затем разрешает.

Оценка производительности сети

          Вопрос об оценке производительности сетей, использующих случайный метод доступа CSMA/CD, достаточно сложен из-за того, что существуют несколько различных критериев[2]. Важным является критерий характеризующий производительность сети в идеальном случае – при отсутствии коллизий и при передаче непрерывного потока пакетов, которые разделены только межпакетным интервалом IPG. Такой режим реализуется, если один из абонентов активен и передает свои пакеты по сети с максимально возможной скоростью. Неполное использование пропускной способности при такой передаче связано с наличием служебных полей в пакете Ethernet.

          Для существующих сетей более информативен показатель использования сети (network utilization), который представляет собой долю в процентах от суммарной пропускной способности, он учитывает коллизии и другие факторы. Ни рабочие станции, ни сервер, не имеют средств для определения показателя использования сети. Для этой цели используют специальные, достаточно сложные и дорогостоящие аппаратно-программные комплексы, такие как анализаторы протоколов.

          Считается, что для загруженных систем семейства Ethernet хорошим показателем использования сети является значение более 30%. Оно соответствует отсутствию длительных простоев в работе сети и обеспечивает достаточный запас в случае резкого увеличения нагрузки. Однако если показатель использования сети длительный период времени составляет 80...90%, то это свидетельствует о полностью используемых ресурсах, что не оставляет резерва на масштабирование сети.

          Некоторые авторы используют для широко распространенного термина «перегрузка» (overload) сетей на основе метода доступа CSMA/CD следующую трактовку: сеть перегружена, если она не может работать при полной нагрузке в течение 80% времени (при этом 20% времени показатель использования сети считается низким из-за наличия ошибок). На практике маловероятно, чтобы нагрузка на сеть непрерывно возрастала и надолго превышала пропускную способность Fast Ethernet.



[1] Кондратенко С., Новиков Ю. Основы локальных сетей [Электронный ресурс]

[2] Кондратенко С., Новиков Ю. Основы локальных сетей [Электронный ресурс]