Слушатель предназначен для обработки RADIUS-пакетов. Общие сведения о протоколе RADIUS доступны здесь.
Добавляется в контейнер следующим образом.
Параметры:
- radiusProcessor - класс процессора, реализующий логику обработки пакетов;
- radiusDataLogger - объект, осуществляющий запись бинарных логов, по умолчанию это объект типа ru.bitel.bgbilling.modules.inet.radius.RadiusHourlyDataLogger (сохранение бинарных логов с разбивкой по источникам и часам);
- host - IP-адрес, на котором слушатель, пустое значение - прослушивать любой IP-адрес;
- port - прослушиваемый UDP-порт;
- soRCVBUF - рекомендуемый SO_RCVBUF (socket recieve buffer) для сокета. На FreeBSD большие значения могут вызвать ошибку и сервер не запустится;
- byteBufferCapacity - размер буфера для приёма пакетов;
- threadCount - число потоков-обработчиков пакетов, рекомендуемые значения 10-30, не рекомендуется указывать более 100;
- maxQueueSize - максимальный размер очереди пакетов, при превышении размера очереди пакеты начинают отбрасываться и высылается аларм, рекомендуемые значения 200-1000. Следует учитывать, что если по какой-то причине сервер не успевает обрабатывать пакеты, очередь растет, то какие-то пакеты из очереди могут быть обработаны с опозданием и NAS уже выслал повторный запрос, который опять попадет в очередь и опять может быть обработан с опозданием. Поэтому большое значение вместо распределения нагрузки может вызвать ее увеличение;
- mode - режим работы, может принимать значения RadiusListener.Mode.authentication для обработки Access-Request-пакетов в InetAccess и RadiusListener.Mode.accounting для обработки Accounting-пакетов в InetAccounting.