Информационные системы - статьи

       

DNS


Один из наиболее простых способов разделения нагрузки между несколькими серверами состоит в использовании циклической дисциплины Round-Robbin DNS (RR-DNS).

Рис. 1. Распределение нагрузки с помощью Round-Robbin DNS

Этот способ не требует наличия выделенного распределителя нагрузки, функцию которого выполняет DNS-сервер. Сервер, обслуживающий зону, в которой расположен кластер, циклически производит разрешение одного и того же доменного имени на различные IP-адреса, соответствующие хостам из кластера. Данный подход достаточно хорошо изучен и наряду с главным достоинством, простотой, обладает рядом очевидных недостатков [4].

  • RR-DNS не учитывает текущие характеристики серверов (загрузка, доступность, время отклика) и не может динамически подстроиться к меняющемуся состоянию системы.
  • Наличие промежуточных кэширующих DNS-серверов, которые обслуживают запрос на разрешение доменного имени и возвращают предыдущий IP-адрес, а не измененный RR-DNS, подрывает саму идею разделения нагрузки, приводя к дисбалансу. Действительно, при этом в течение длительного времени последовательности запросов могут направляться на один и тот же сервер.

    Бороться со вторым недостатком можно путем настройки управляющего параметра TTL (Time-to-Live), задающего время изниаписи в DNS-кэше. Установка TTL равным нулю исключает эффект кэширования, но тогда DNS-сервер может стать узким местом сетевого трафика. В [10] показано, что без кэширования время разрешения доменного имени становится на два порядка выше. Можно подстраивать TTL для каждой записи с учетом частоты запросов, но далеко не очевидно как это делать с максимальным эффектом. Замечен еще один недостаток DNS-подхода еявное предположение, что клиент и его локальный name-сервер расположены поблизости. Однако это не всегда так. Поэтому временная задержка на name-сервере не всегда правильно отражает задержку клиента. DNS-подход в условиях большой загрузки и разнообразия типов запросов сам по себе не может гарантировать решения проблемы балансировки; для этого нужны более тонкие дисциплины.



    Содержание раздела