Проблема скрытого узла

Перейти к навигацииПерейти к поиску

Пробле́ма скры́того узла́ возникает, когда два или несколько узлов сети (абонентов) пытаются получить доступ к базовой станции (точке доступа) сети, но при этом не видят друг друга, то есть физически не могут принимать сигналы в эфире друг от друга (например, из-за большой дальности, условий распространения сигналов и т. д.). Это приводит к проблемам с Управлением Доступом в Эфир (media access control, MAC), так как большинство существующих способов доступа в цифровые сети со стороны абонентов этой сети используют определение занятости каналов путём прослушивания сигналов от соседних абонентов (технологии CSMA/CD, CSMA/CA и т. д.).

Для примера возьмём топологию Звезда, образуемую точкой доступа (Access Point) с несколькими узлами, находящимися на окружности, радиус которой близок к максимально достижимой дальности действия для данного вида связи. Тогда, даже если все узлы окажутся в поле действия связи с точкой доступа, не все из них смогут принимать сигнал друг от друга. Например, узел, находящийся на одной стороне окружности, скорее всего сможет отслеживать сигнал от узла, расположенного на той же стороне окружности, но вряд ли этот же узел будет принимать сигнал от узла, находящегося на противоположной стороне окружности, на расстоянии 2r, где r — радиус окружности. Эти узлы друг для друга будут являться скрытыми. Из-за того, что скрытые узлы не отслеживают сигналы друг друга, они могут начать посылать пакеты в точку доступа одновременно. При использовании метода множественного доступа с прослушиванием несущей и обнаружением столкновений (CSMA/CD) описанная выше ситуация может приводить к невозможности установления связи или обрыву уже установленной связи.

Данная проблема частично решается в методе доступа CSMA/CA, где происходит посылка пакетов RTS/CTS. Данный метод используется, например, в стандарте IEEE 802.11. Не получив ответа на пакет RTS в виде пакета-квитанции CTS, вводится случайная задержка, через которую узел (назовём его «первым») ещё раз может попробовать получить доступ к сети. При этом если другой скрытый узел (назовём его «вторым») установил связь и ведёт обмен данными, то редкая посылка коротких пакетов RTS от первого узла не приводит к разрыву связи. Соответственно, первый узел просто не получает доступ к сети пока второй узел не освободит канал передачи. Таким образом реализуется «виртуальный» режим CSMA/CD.