В данном разделе приводится описание команд, которые используются для настройки параметров кластера протокол-адаптера SIP, в таблице 1 приведено их описание.
Таблица 1 - Описание параметров кластера протокол-адаптера SIP
Название параметра | Значение по умолчанию | Описание |
---|---|---|
alternative_server | Время перенаправления подписки в случае возникновения 302 ошибки по SIP. Если данная опция не указана, то 302 ошибка будет подменяться на 500. Для корректной работы опции, следует задать IP адрес | |
dns_resolve_check_interval | 600 | Интервал периодического опроса DNS для оптимизации работы с именами хостов, в секундах |
dns_resolve_default_ttl | 3600 | TTL-адресов хостов, разрешенных DNS, в секундах |
expires_alternative_server | 10 | Время, в течении которого будет считаться alternative_server основным сервером, на который будут слаться подписки. |
release_ind_ack | false | Включает/выключает требование подтверждения ядром доставки сообщения ReleaseInd: - false - выключить; - true - включить. |
release_ind_ack_timeout | 2000 мс | Тайм-аут подтверждения ядром доставки сообщения ReleaseInd. |
setup_ind_ack_timeout | 5000 мс | Тайм-аут подтверждения ядром доставки сообщения SetupInd. |
stat_info_to_log_interval | 0 | Периодичность вывода информации в log-сообщения об использовании системных ресурсов, в секундах |
tcp_connect_timeout | 20 | Тайм-аут TCP-соединения: 10..1000 (0.01..1 секунда). |
tcp_connection_idle_timeout | 300 | IDLE тайм-аут TCP соединения: 100..1000 (0.1..1 секунда). |
Использование параметров dns_resolve_check_interval, dns_resolve_default_ttl, stat_info_to_log_interval в ECSS-10
При получении инициирующего запроса, такого как INVITE, REGISTER, SUBSCRIBER, SIP-адаптер проверяет RURI на соответствие своему хосту.
Доменное имя хоста в RURI может быть не прописано явным образом. Для проверки соответствия имени хоста IP-адресу протокол-адаптера SIP выполняется DNS-запрос. Процедура обращения к DNS-серверу вносит задержки, что в свою очередь ведет к задержке ответа, перепосылкам запросов и дополнительной нагрузки на сеть и хосты.
Для оптимизации работы на SIP-адаптере реализована локальная таблица соответствия адресов. В таблицу заносятся результаты запросов IP-адресов по доменным именам, прописанным на адаптере, и доменных имен по IP-адресам. Также вносятся результаты по адресам из входящих SIP-запросов.
Алгоритм работы:
Если при получении запроса адрес в RURI не соответствует списку разрешенных (см. allowed_ruri_to, то выполняется поиск соответствия в локальной таблице.
Если соответствие не установлено, то выполняется стандартный DNS-запрос.
Если получен полноценный ответ с указанием TTL, то он сохраняется в локальную таблицу. Если нет, то используется настроенный на SIP-адаптере TTL (dns_resolve_default_ttl
).
При последующих обращениях по данному адресу время последнего запроса обновляется.
Периодически таблица проверятся с интервалом "dns_resolve_check_interval". При этом сначала определяется время с последнего обращения к записи. Если период времени превысил TTL, то запись из таблицы удаляется. Если нет, выполняется новый DNS-запрос (в отдельном процессе, на рабочие запросы не влияет).
При смене периода перепроверки выполняется внеочередной DNS-запрос, от которого начинается новый отсчет времени.
set
Настройка свойств кластера протокол-адаптера SIP.
Путь команды:
cluster/adapter/<CLUSTER>/sip/properties/set
Синтаксис:
set <FIELD> <VALUE>
Параметры:
<CLUSTER> - имя кластера протокол-адаптера SIP;
<FIELD> - имя параметра, значение которого необходимо изменить. Описание свойств приведено в таблице 1;
<VALUE> - новое значение параметра, возможные значения приведены в таблице 1.
Пример:
admin@[ds1@ecss1]:/$ cluster/adapter/sip1/properties/set dns_resolve_default_ttl 7200
clean
Командой устанавливается значение по умолчанию для заданного параметра кластера протокол-адаптера SIP.
Путь команды:
cluster/adapter/<CLUSTER>/sip/properties/clean
Синтаксис:
clean [<FIELD>]
Параметры:
<CLUSTER> - имя кластера протокол адаптера SIP;
<FIELD> - свойство, для которого устанавливается значение по умолчанию. Опциональный параметр. Если не указывать данный параметр, то значения по умолчанию будут восстановлены для всех свойств кластера протокол адаптера SIP.
Пример:
admin@[ds1@ecss1]:/$ cluster/adapter/sip1/properties/clean
info
Команда просмотра настроек свойств кластера протокол адаптера SIP.
Путь команды:
cluster/adapter/<CLUSTER>/sip/properties/info
Синтаксис:
info [<FIELD>]
Параметры:
<CLUSTER> - имя кластера протокол адаптера SIP;
<FIELD> - имя параметра, опциональный параметр. Если параметр не указывать, будет показана информация по всем параметрам кластера протокол адаптера SIP.
Пример:
admin@[mycelium1@ecss1]:/$ cluster/adapter/sip1/sip/properties/info ┌───────────────────────────┬─────────┐ │ Property │ Value │ ├───────────────────────────┼─────────┤ │alternative_server │undefined│ │dns_resolve_check_interval │600 │ │dns_resolve_default_ttl │3600 │ │expires_alternative_server │10 │ │release_ind_ack │false │ │release_ind_ack_timeout │2000 │ │setup_ind_ack_timeout │5000 │ │stat_info_to_log_interval │0 │ │tcp_connect_timeout │20 │ │tcp_connection_idle_timeout│300 │ └───────────────────────────┴─────────┘