Name

pf-queue — format of pf-queue component configuration

DESCRIPTION

General syntax rules of Kernun Firewall configuration files are described in configuration(7). This man page describes types, sections and items specific for the pf-queue component configuration.

Repeatable sections/items are marked by the '*' before section/item name.

TYPES

Configuration directives have attributes of several value-types. For the basic types description, see configuration(7).

Enumeration is a list of words (names) representing integer values. Some enumerations accept both names and direct integer values; in this case, enumeration description contains values for every name (in parenthesis next to name). For other enumerations, using of names is obligatory.

The following enumerations are used in pf-queue configuration directives:

bandwidth-mode (name-usage obligatory)

PF bandwidth config modes.

abs

Absolute bandwidth

ratio

Bandwidth relative to parent

pf-sc-setting (name-usage obligatory)

PF Service Curve setting.

total, initial

ITEMS AND SECTIONS

Configuration of pf-queue library component consists of following prototypes:


  pf-sc ... ;
  pf-sched-options { ... }
* pf-queue name { ... }
    

Description:

pf-sc [total] total-bw;

pf-sc initial init-bw milliseconds total-bw;

PF - HFSC Service Curve.

<branching element> (type: pf-sc-setting, optional, default: total)

init-bw (type: uint64)

milliseconds (type: uint32)

total-bw (type: uint64)

pf-sched-options {


  default ... ;
  red ... ;
  rio ... ;
  ecn ... ;
  borrow ... ;
  realtime ... ;
  upperlimit ... ;
  linkshare ... ;
}

        

Items & subsections:

default;

red;

rio;

ecn;

borrow;

realtime [total] total-bw;

realtime initial init-bw milliseconds total-bw;

PF - HFSC Service Curve.

<branching element> (type: pf-sc-setting, optional, default: total)

init-bw (type: uint64)

milliseconds (type: uint32)

total-bw (type: uint64)

upperlimit [total] total-bw;

upperlimit initial init-bw milliseconds total-bw;

PF - HFSC Service Curve.

<branching element> (type: pf-sc-setting, optional, default: total)

init-bw (type: uint64)

milliseconds (type: uint32)

total-bw (type: uint64)

linkshare [total] total-bw;

linkshare initial init-bw milliseconds total-bw;

PF - HFSC Service Curve.

<branching element> (type: pf-sc-setting, optional, default: total)

init-bw (type: uint64)

milliseconds (type: uint32)

total-bw (type: uint64)

[End of section pf-sched-options description.]

pf-queue name {


  parent ... ;
  bandwidth ... ;
  priority ... ;
  qlimit ... ;
  cbq { ... }
  priq { ... }
  hfsc { ... }
}

        

Packet filter QUEUE definition.

For configuration attributes details, see pf.conf(5).

Constraints:

CBQ, PRIQ and HFSC are mutually exclusive.

Items & subsections:

parent name;

Parent queue definition (child queue only).

name (type: name of pf-queue, see above)

bandwidth [abs] bits;

bandwidth ratio percent;

Queue bandwidth limit.

If omitted, 100% of parent bandwidth assumed.

<branching element> (type: bandwidth-mode, optional, default: abs)

bits (type: uint64)

Required bandwidth in bps.

percent (type: uint8)

Required part of parent bandwidth.

Constraints:

Percent value must be less 100.

priority [prty];

prty (type: uint8, optional, default: 1)

qlimit packets;

packets (type: uint32)

cbq {


  default ... ;
  red ... ;
  rio ... ;
  ecn ... ;
  borrow ... ;
}

            

The cbq section is derived from pf-sched-options section prototype. For detail description of it, see above.

Changes to the cbq section:

Item realtime is not valid.

Item upperlimit is not valid.

Item linkshare is not valid.

priq {


  default ... ;
  red ... ;
  rio ... ;
  ecn ... ;
}

            

The priq section is derived from pf-sched-options section prototype. For detail description of it, see above.

Changes to the priq section:

Item borrow is not valid.

Item realtime is not valid.

Item upperlimit is not valid.

Item linkshare is not valid.

hfsc {


  default ... ;
  red ... ;
  rio ... ;
  ecn ... ;
  realtime ... ;
  upperlimit ... ;
  linkshare ... ;
}

            

The hfsc section is derived from pf-sched-options section prototype. For detail description of it, see above.

Changes to the hfsc section:

Item borrow is not valid.

[End of section pf-queue description.]

SEE ALSO

configuration(7), altq(4), pf.conf(5)