netfilter
firewalling, NAT, and packet mangling for linux
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Collaboration diagram for Hierachical Token Bucket (HTB):

Attribute Modifications

void rtnl_htb_set_rate2quantum (struct rtnl_qdisc *qdisc, uint32_t rate2quantum)
 
void rtnl_htb_set_defcls (struct rtnl_qdisc *qdisc, uint32_t defcls)
 Set default class of the htb qdisc to the specified value. More...
 
void rtnl_htb_set_prio (struct rtnl_class *class, uint32_t prio)
 
void rtnl_htb_set_mtu (struct rtnl_class *class, uint32_t mtu)
 Set MTU of the data link. More...
 
void rtnl_htb_set_rate (struct rtnl_class *class, uint32_t rate)
 Set rate of HTB class. More...
 
void rtnl_htb_set_ceil (struct rtnl_class *class, uint32_t ceil)
 Set ceil of HTB class. More...
 
void rtnl_htb_set_rbuffer (struct rtnl_class *class, uint32_t rbuffer)
 Set size of the rate bucket of HTB class. More...
 
void rtnl_htb_set_cbuffer (struct rtnl_class *class, uint32_t cbuffer)
 Set size of the ceil bucket of HTB class. More...
 
void rtnl_htb_set_quantum (struct rtnl_class *class, uint32_t quantum)
 Set how much bytes to serve from leaf at once of HTB class {use r2q}. More...
 
void rtnl_htb_set_overhead (struct rtnl_class *class, uint8_t overhead)
 Set per-packet size overhead used in rate computations of HTB class. More...
 
void rtnl_htb_set_mpu (struct rtnl_class *class, uint8_t mpu)
 Set the minimum packet size used in rate computations of HTB class. More...
 

Detailed Description

Function Documentation

void rtnl_htb_set_cbuffer ( struct rtnl_class class,
uint32_t  cbuffer 
)

Set size of the ceil bucket of HTB class.

  • class HTB class to be modified.
  • cbuffer New size in bytes.

References rtnl_htb_class::ch_cbuffer, rtnl_htb_class::ch_mask, and NULL.

void rtnl_htb_set_ceil ( struct rtnl_class class,
uint32_t  ceil 
)

Set ceil of HTB class.

  • class HTB class to be modified.
  • ceil New ceil in bytes per second.

References rtnl_htb_class::ch_ceil, rtnl_htb_class::ch_mask, NULL, rtnl_ratespec::rs_cell_log, and rtnl_ratespec::rs_rate.

void rtnl_htb_set_defcls ( struct rtnl_qdisc qdisc,
uint32_t  defcls 
)

Set default class of the htb qdisc to the specified value.

  • qdisc qdisc to change
  • defcls new default class

References NULL, rtnl_htb_qdisc::qh_defcls, and rtnl_htb_qdisc::qh_mask.

void rtnl_htb_set_mpu ( struct rtnl_class class,
uint8_t  mpu 
)

Set the minimum packet size used in rate computations of HTB class.

  • class HTB class to be modified.
  • mpu Size in bytes.

References rtnl_htb_class::ch_mask, rtnl_htb_class::ch_mpu, and NULL.

void rtnl_htb_set_mtu ( struct rtnl_class class,
uint32_t  mtu 
)

Set MTU of the data link.

  • class HTB class to be modified.
  • mtu New MTU in bytes.

Sets MTU of the data link controlled by the HTB class. If not set, the Ethernet MTU (1600) is used.

References rtnl_htb_class::ch_mask, rtnl_htb_class::ch_mtu, and NULL.

void rtnl_htb_set_overhead ( struct rtnl_class class,
uint8_t  overhead 
)

Set per-packet size overhead used in rate computations of HTB class.

  • class HTB class to be modified.
  • overhead Size in bytes.

References rtnl_htb_class::ch_mask, rtnl_htb_class::ch_overhead, and NULL.

void rtnl_htb_set_prio ( struct rtnl_class class,
uint32_t  prio 
)
void rtnl_htb_set_quantum ( struct rtnl_class class,
uint32_t  quantum 
)

Set how much bytes to serve from leaf at once of HTB class {use r2q}.

  • class HTB class to be modified.
  • quantum New size in bytes.

References rtnl_htb_class::ch_mask, rtnl_htb_class::ch_quantum, and NULL.

void rtnl_htb_set_rate ( struct rtnl_class class,
uint32_t  rate 
)

Set rate of HTB class.

  • class HTB class to be modified.
  • rate New rate in bytes per second.

References rtnl_htb_class::ch_mask, rtnl_htb_class::ch_rate, NULL, rtnl_ratespec::rs_cell_log, and rtnl_ratespec::rs_rate.

void rtnl_htb_set_rate2quantum ( struct rtnl_qdisc qdisc,
uint32_t  rate2quantum 
)
void rtnl_htb_set_rbuffer ( struct rtnl_class class,
uint32_t  rbuffer 
)

Set size of the rate bucket of HTB class.

  • class HTB class to be modified.
  • rbuffer New size in bytes.

References rtnl_htb_class::ch_mask, rtnl_htb_class::ch_rbuffer, and NULL.