Browse all docs

Per-line probing and smart scheduling

Probe each node from China Telecom, Unicom and Mobile (or per province) and answer visitors with the fastest healthy nodes that are not overloaded.

What it solves

The nodes in a line group sit in different data centres: one may be fast for China Telecom users and slow for China Mobile users, and visitors still get sent to a node that is overloaded or down. Smart scheduling picks nodes per line from measured latency: each visitor's carrier (or province and carrier) resolves to the few nodes with the lowest latency that are healthy and below the load limit.

Latency comes from two sources, with no extra probing:

  • dnspup checkpoints: with the dnspup probing module enabled, dnspup's carrier checkpoints probe your nodes.
  • Peer nodes: nodes in the line group probe each other.

Turning it on

Smart scheduling comes with the control plane in both editions.

  1. Open Nodes → Line groups and click Smart scheduling on the line group.
  2. The drawer shows which latency sources are available. With neither, turning it on keeps the current DNS configuration and does no latency-based selection.
  3. Turn on Enable smart scheduling, set nodes per line, granularity, latency window and maximum load, then save.
  4. Selected nodes lists what each line resolves to and when it changed; the latency matrix shows every node's latency per line.

Main settings

SettingDefaultWhat it does
Nodes per line3How many nodes each line resolves to, 1–20
GranularityBy carrierOr by province and carrier (needs a DNS provider with province lines)
Latency window15 minCompares the median latency over this window, 5–60 min
Maximum load85%Nodes at or above this load are not selected

Node availability is judged separately by node availability probing: a node's DNS is paused only when the local probe and most dnspup checkpoints fail; dnspup failing alone only alerts. Each node IP in a line group can also have a backup IP that is resolved while the primary is down and switched back after it recovers.

Typical uses

  • Nodes in several data centres in one line group: turn on smart scheduling and each carrier's visitors land on the fastest data centre for them.
  • New nodes added before a traffic peak: no DNS changes by hand; they join selection once latency data arrives.
  • A node pegged at full CPU: it drops out above the load limit and comes back when load falls.

Limits and notes

  • A province line with no eligible node is not written, so the carrier's national line answers; a carrier line with samples but no eligible node is answered by the default line.
  • A line with no latency samples yet keeps all its current nodes.
  • Province-and-carrier granularity needs a DNS provider with province lines; otherwise only per-carrier scheduling works.
  • With smart scheduling off, every line resolves exactly as it did before.