flowadm – Manage bandwidth resource control and priority for protocols, services and zones on Solaris/illumos systems

From Get docs
Ansible/docs/2.7/modules/flowadm module


flowadm – Manage bandwidth resource control and priority for protocols, services and zones on Solaris/illumos systems

New in version 2.2.


Synopsis

  • Create/modify/remove networking bandwidth and associated resources for a type of traffic on a particular link.

Parameters

Parameter Choices/Defaults Comments

dsfield

-

- Identifies the 8-bit differentiated services field (as defined in RFC 2474). The optional dsfield_mask is used to state the bits of interest in the differentiated services field when comparing with the dsfield value. Both values must be in hexadecimal.

link

-

Specifiies a link to configure flow on.

local_ip

-

Identifies a network flow by the local IP address.

local_port

-

Identifies a service specified by the local port.

maxbw

-

- Sets the full duplex bandwidth for the flow. The bandwidth is specified as an integer with one of the scale suffixes(K, M, or G for Kbps, Mbps, and Gbps). If no units are specified, the input value will be read as Mbps.

name

- / required

- A flow is defined as a set of attributes based on Layer 3 and Layer 4 headers, which can be used to identify a protocol, service, or a zone.


aliases: flow

priority

-

  • low
  • medium

  • high

Sets the relative priority for the flow.

remote_ip

-

Identifies a network flow by the remote IP address.

state

-

  • absent
  • present

  • resetted

Create/delete/enable/disable an IP address on the network interface.

temporary

boolean

  • no

  • yes

Specifies that the configured flow is temporary. Temporary flows do not persist across reboots.

transport

-

- Specifies a Layer 4 protocol to be used. It is typically used in combination with local_port to identify the service that needs special attention.



Examples

# Limit SSH traffic to 100M via vnic0 interface
- flowadm:
    link: vnic0
    flow: ssh_out
    transport: tcp
    local_port: 22
    maxbw: 100M
    state: present

# Reset flow properties
- flowadm:
    name: dns
    state: resetted

# Configure policy for EF PHB (DSCP value of 101110 from RFC 2598) with a bandwidth of 500 Mbps and a high priority.
- flowadm:
    link: bge0
    dsfield: '0x2e:0xfc'
    maxbw: 500M
    priority: high
    flow: efphb-flow
    state: present

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description

dsfield

string

if dsfield is defined

flow's differentiated services value


Sample:

0x2e:0xfc

link

string

if link is defined

flow's link


Sample:

vnic0

local_Ip

string

if local_ip is defined

flow's local IP address


Sample:

10.0.0.42

local_port

integer

if local_port is defined

flow's local port


Sample:

1337

maxbw

string

if maxbw is defined

flow's maximum bandwidth


Sample:

100M

name

string

always

flow name


Sample:

http_drop

priority

string

if priority is defined

flow's priority


Sample:

low

remote_Ip

string

if remote_ip is defined

flow's remote IP address


Sample:

10.0.0.42

state

string

always

state of the target


Sample:

present

temporary

boolean

always

flow's persistence


Sample:

True

transport

string

if transport is defined

flow's transport


Sample:

tcp




Status

Authors

  • Adam Števko (@xen0l)

Hint

If you notice any issues in this documentation you can edit this document to improve it.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/flowadm_module.html