Radiator Server Documentation — v10.33.3
Table of Contents
  • min-connections
  • Context
  • Syntax
  • Allowed values
  • Default
  • Constraints
  • Background maintenance
  • Related

min-connections

Radiator uses the same backend socket pool for UDP, TCP, and TLS.

For TCP and TLS, min-connections keeps long-lived connections open and helps Radiator skip a server immediately when the pool has zero live connections.

For UDP, Radiator can also keep backend sockets ready in the background, but opening a UDP socket does not prove that the remote server is reachable. For that reason, min-connections does not give the same reachability signal on UDP as it does on TCP/TLS.

Minimum number of connections to pre-establish at startup. When greater than zero, Radiator opens connections to the backend server in the background immediately after startup, without blocking request processing, and keeps the pool at this floor.

Setting min-connections >= 1 enables warm connections (no first-request handshake cost) and unreachable-server detection (immediate failover when the pool has zero connections). On UDP, the warm-socket part still applies, but remote reachability is only learned from real requests or Status-Server checks. For the full behavior, server selection, and counters, see Backend Load Balancing.

Context

Valid inside a RADIUS backend server block and inside a radius-dns-sd server_template block. Only meaningful for outbound (connect) servers; ignored for reverse servers.

Syntax

server "PRIMARY" {
    secret "mysecret";
    min-connections 1;
    connect { protocol tls; host "primary.example.com"; port 2083; tls { ... } }
}

Allowed values

Integer, 0-65535.

Default

0 (disabled). Connections are created on demand when the first request arrives.

Constraints

Must not exceed connections. Configuration parsing fails if min-connections > connections.

Background maintenance

The maintainer that keeps the warm pool at min-connections uses fixed internal pacing for RADIUS backends:

  • Connect attempt timeout: 5 seconds.
  • Retry interval: 1 second between attempts when the floor is not yet met.

These values are not configurable for RADIUS backends. The SQL equivalents (min-connections-maintenance-timeout, min-connections-maintenance-retry-interval) do not apply here.

Known limitation: if min-connections is very close to connections, background reconnect attempts and request-triggered growth can briefly overshoot the configured connections limit during recovery. A small floor such as 1 or 2 usually works best.

Navigation
  • @init

  • @verification

  • aaa

  • backends

    • file

    • http

    • ipmap

    • jsonfile

    • ldap

    • mysql

    • postgresql

    • radius

      • connect

      • connections

      • idle-timeout

      • min-connections

      • nas_identifier

      • priority

      • query

      • retries

      • server

      • server-selection

      • status

      • timeout

    • radius-dns-sd

    • sqlite

    • system

  • caches

  • captures

  • certificates

  • clients

  • conditions

  • dictionary

  • hmac-otp

  • include

  • ip-accept

  • license

  • logging

  • management

  • proxy-protocol

  • scripts

  • servers

  • statistics

  • stats

  • ui