Files
qos-profiles/example-dc-router-transit.conf
zpericic 86a0d2cdd1 Initial import of qos-profiles
Role subpackages set the system-wide default qdisc and TCP congestion
control via /usr/lib/sysctl.d, without pulling in the base package:

  server   fq + bbr        bare metal, VM guests
  vmhost   fq_codel + bbr  hypervisors, container hosts
  router   fq_codel + cubic
  desktop  fq_codel + cubic

The base package applies cake per interface from
/etc/qos-profiles/<iface>.conf, layered over role defaults and
/etc/qos-profiles/defaults.conf:

- LINK_RATE with per-direction overrides, shaped to SHAPE_PERCENT
  (default 95, per direction overridable)
- outbound fairness per source host and diffserv4; inbound via ifb,
  fairness per destination host, besteffort with DSCP wash
- NAT awareness, extra cake args (shared and per direction), raw
  qdisc overrides
- config parsed without executing it, validated before any change,
  previous state undone on each run

Applied by the qos-profiles@<iface> unit (bound to the device) or the
qos-profiles-networkmanager dispatcher subpackage, installed
automatically on hosts with NetworkManager. Includes ready-made
examples for VM hosts, OVH dual-NIC servers, DC and home routers.
2026-10-10 22:41:12 +02:00

11 lines
407 B
Plaintext

# Datacenter router, transit uplink. Hosts behind it have public addresses
# (no NAT); VM hosts are on L2 behind this router and need no shaping.
# Install as: /etc/qos-profiles/<transit>.conf (role: qos-profiles-router)
#
# Fair share per server in both directions. Cake uses a single queue: fine at
# 1 Gbit/s, check CPU load before using it above 10 Gbit/s.
LINK_RATE=1gbit
NAT=no
CAKE_ARGS="ethernet"