netfilter
firewalling, NAT, and packet mangling for linux
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Collaboration diagram for Stochastic Fairness Queueing (SFQ):

Attribute Access

int rtnl_sfq_set_quantum (struct rtnl_qdisc *qdisc, int quantum)
 Set quantum of SFQ qdisc. More...
 
int rtnl_sfq_get_quantum (struct rtnl_qdisc *qdisc)
 Get quantum of SFQ qdisc. More...
 
int rtnl_sfq_set_limit (struct rtnl_qdisc *qdisc, int limit)
 Set limit of SFQ qdisc. More...
 
int rtnl_sfq_get_limit (struct rtnl_qdisc *qdisc)
 Get limit of SFQ qdisc. More...
 
int rtnl_sfq_set_perturb (struct rtnl_qdisc *qdisc, int perturb)
 Set perturbation interval of SFQ qdisc. More...
 
int rtnl_sfq_get_perturb (struct rtnl_qdisc *qdisc)
 Get perturbation interval of SFQ qdisc. More...
 
int rtnl_sfq_get_divisor (struct rtnl_qdisc *qdisc)
 Get divisor of SFQ qdisc. More...
 

Detailed Description

Parameter Description
  • Quantum: Number of bytes to send out per slot and round.
  • Perturbation: Timer period between changing the hash function.
  • Limit: Upper limit of queue in number of packets before SFQ starts dropping packets.
  • Divisor: Hash table divisor, i.e. size of hash table.

Function Documentation

int rtnl_sfq_get_divisor ( struct rtnl_qdisc qdisc)

Get divisor of SFQ qdisc.

  • qdisc SFQ qdisc.
    Returns
    Divisor in number of entries or a negative error code.

References NLE_NOATTR, rtnl_sfq::qs_divisor, and rtnl_sfq::qs_mask.

int rtnl_sfq_get_limit ( struct rtnl_qdisc qdisc)

Get limit of SFQ qdisc.

  • qdisc SFQ qdisc.
    Returns
    Limit or a negative error code.

References NLE_NOATTR, rtnl_sfq::qs_limit, and rtnl_sfq::qs_mask.

int rtnl_sfq_get_perturb ( struct rtnl_qdisc qdisc)

Get perturbation interval of SFQ qdisc.

  • qdisc SFQ qdisc.
    Returns
    Perturbation interval in seconds or a negative error code.

References NLE_NOATTR, rtnl_sfq::qs_mask, and rtnl_sfq::qs_perturb.

int rtnl_sfq_get_quantum ( struct rtnl_qdisc qdisc)

Get quantum of SFQ qdisc.

  • qdisc SFQ qdisc.
    Returns
    Quantum in bytes or a negative error code.

References NLE_NOATTR, rtnl_sfq::qs_mask, and rtnl_sfq::qs_quantum.

int rtnl_sfq_set_limit ( struct rtnl_qdisc qdisc,
int  limit 
)

Set limit of SFQ qdisc.

  • qdisc SFQ qdisc to be modified.
  • limit New limit in number of packets.
    Returns
    0 on success or a negative error code.

References NLE_NOMEM, rtnl_sfq::qs_limit, and rtnl_sfq::qs_mask.

int rtnl_sfq_set_perturb ( struct rtnl_qdisc qdisc,
int  perturb 
)

Set perturbation interval of SFQ qdisc.

  • qdisc SFQ qdisc to be modified.
  • perturb New perturbation interval in seconds.
    Note
    A value of 0 disables perturbation altogether.
    Returns
    0 on success or a negative error code.

References NLE_NOMEM, rtnl_sfq::qs_mask, and rtnl_sfq::qs_perturb.

int rtnl_sfq_set_quantum ( struct rtnl_qdisc qdisc,
int  quantum 
)

Set quantum of SFQ qdisc.

  • qdisc SFQ qdisc to be modified.
  • quantum New quantum in bytes.
    Returns
    0 on success or a negative error code.

References NLE_NOMEM, rtnl_sfq::qs_mask, and rtnl_sfq::qs_quantum.