libnl: Token Bucket Filter (TBF)

libnl 3.7.0

Token Bucket Filter (TBF)
Routing Library (libnl-route) » Traffic Control » Queueing Disciplines

## Attribute Access
void | rtnl_qdisc_tbf_set_limit (struct rtnl_qdisc *qdisc, int limit)
| Set limit of TBF qdisc. More...
int | rtnl_qdisc_tbf_set_limit_by_latency (struct rtnl_qdisc *qdisc, int latency)
| Set limit of TBF qdisc by latency. More...
int | rtnl_qdisc_tbf_get_limit (struct rtnl_qdisc *qdisc)
| Get limit of TBF qdisc. More...
void | rtnl_qdisc_tbf_set_rate (struct rtnl_qdisc *qdisc, int rate, int bucket, int cell)
| Set rate of TBF qdisc. More...
int | rtnl_qdisc_tbf_get_rate (struct rtnl_qdisc *qdisc)
| Get rate of TBF qdisc. More...
int | rtnl_qdisc_tbf_get_rate_bucket (struct rtnl_qdisc *qdisc)
| Get rate bucket size of TBF qdisc. More...
int | rtnl_qdisc_tbf_get_rate_cell (struct rtnl_qdisc *qdisc)
| Get rate cell size of TBF qdisc. More...
int | rtnl_qdisc_tbf_set_peakrate (struct rtnl_qdisc *qdisc, int rate, int bucket, int cell)
| Set peak rate of TBF qdisc. More...
int | rtnl_qdisc_tbf_get_peakrate (struct rtnl_qdisc *qdisc)
| Get peak rate of TBF qdisc. More...
int | rtnl_qdisc_tbf_get_peakrate_bucket (struct rtnl_qdisc *qdisc)
| Get peak rate bucket size of TBF qdisc. More...
int | rtnl_qdisc_tbf_get_peakrate_cell (struct rtnl_qdisc *qdisc)
| Get peak rate cell size of TBF qdisc. More...

## Detailed Description

## Function Documentation

## ◆ rtnl_qdisc_tbf_set_limit()

void rtnl_qdisc_tbf_set_limit | ( | struct rtnl_qdisc * | qdisc,
|  | int | limit
| ) |  |

Set limit of TBF qdisc.

Parameters

  qdisc | TBF qdisc to be modified.
  limit | New limit in bytes.

Returns
  0 on success or a negative error code.

Definition at line 172 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_set_limit_by_latency()

int rtnl_qdisc_tbf_set_limit_by_latency | ( | struct rtnl_qdisc * | qdisc,
|  | int | latency
| ) |  |

Set limit of TBF qdisc by latency.

Parameters

  qdisc | TBF qdisc to be modified.
  latency | Latency in micro seconds.

Calculates and sets the limit based on the desired latency and the configured rate and peak rate. In order for this operation to succeed, the rate and if required the peak rate must have been set in advance.

Returns
  0 on success or a negative error code.

Definition at line 212 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_limit()

int rtnl_qdisc_tbf_get_limit | ( | struct rtnl_qdisc * | qdisc | ) |

Get limit of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Limit in bytes or a negative error code.

Definition at line 243 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_set_rate()

void rtnl_qdisc_tbf_set_rate | ( | struct rtnl_qdisc * | qdisc,
|  | int | rate,
|  | int | bucket,
|  | int | cell
| ) |  |

Set rate of TBF qdisc.

Parameters

  qdisc | TBF qdisc to be modified.
  rate | New rate in bytes per second.
  bucket | Size of bucket in bytes.
  cell | Size of a rate cell or 0 to get default value.

Returns
  0 on success or a negative error code.

Definition at line 270 of file tbf.c.

References nl_us2ticks(), rtnl_tc_calc_cell_log(), rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_rate()

int rtnl_qdisc_tbf_get_rate | ( | struct rtnl_qdisc * | qdisc | ) |

Get rate of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Rate in bytes per seconds or a negative error code.

Definition at line 296 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_rate_bucket()

int rtnl_qdisc_tbf_get_rate_bucket | ( | struct rtnl_qdisc * | qdisc | ) |

Get rate bucket size of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Size of rate bucket or a negative error code.

Definition at line 314 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_rate_cell()

int rtnl_qdisc_tbf_get_rate_cell | ( | struct rtnl_qdisc * | qdisc | ) |

Get rate cell size of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Size of rate cell in bytes or a negative error code.

Definition at line 332 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_set_peakrate()

int rtnl_qdisc_tbf_set_peakrate | ( | struct rtnl_qdisc * | qdisc,
|  | int | rate,
|  | int | bucket,
|  | int | cell
| ) |  |

Set peak rate of TBF qdisc.

Parameters

  qdisc | TBF qdisc to be modified.
  rate | New peak rate in bytes per second.
  bucket | Size of peakrate bucket.
  cell | Size of a peakrate cell or 0 to get default value.

Returns
  0 on success or a negative error code.

Definition at line 353 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_peakrate()

int rtnl_qdisc_tbf_get_peakrate | ( | struct rtnl_qdisc * | qdisc | ) |

Get peak rate of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Peak rate in bytes per seconds or a negative error code.

Definition at line 381 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_peakrate_bucket()

int rtnl_qdisc_tbf_get_peakrate_bucket | ( | struct rtnl_qdisc * | qdisc | ) |

Get peak rate bucket size of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Size of peak rate bucket or a negative error code.

Definition at line 399 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_tbf_get_peakrate_cell()

int rtnl_qdisc_tbf_get_peakrate_cell | ( | struct rtnl_qdisc * | qdisc | ) |

Get peak rate cell size of TBF qdisc.

Parameters

  qdisc | TBF qdisc.

Returns
  Size of peak rate cell in bytes or a negative error code.

Definition at line 417 of file tbf.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function: