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.
Options
| parameter | required | default | choices | comments |
|---|---|---|---|---|
| dsfield | no | - 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 | no | Specifiies a link to configure flow on. | ||
| local_ip | no | Identifies a network flow by the local IP address. | ||
| local_port | no | Identifies a service specified by the local port. | ||
| maxbw | no | - 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 | yes | - 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 | no | medium |
| Sets the relative priority for the flow. |
| remove_ip | no | Identifies a network flow by the remote IP address. | ||
| state | no | present |
| Create/delete/enable/disable an IP address on the network interface. |
| temporary | no |
| Specifies that the configured flow is temporary. Temporary flows do not persist across reboots. | |
| transport | no | - 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 Return Values, the following are the fields unique to this module:
| name | description | returned | type | sample |
|---|---|---|---|---|
| dsfield | flow's differentiated services value | if dsfield is defined | string | 0x2e:0xfc |
| link | flow's link | if link is defined | string | vnic0 |
| local_Ip | flow's local IP address | if local_ip is defined | string | 10.0.0.42 |
| local_port | flow's local port | if local_port is defined | int | 1337 |
| maxbw | flow's maximum bandwidth | if maxbw is defined | string | 100M |
| name | flow name | always | string | http_drop |
| priority | flow's priority | if priority is defined | string | low |
| remote_Ip | flow's remote IP address | if remote_ip is defined | string | 10.0.0.42 |
| state | state of the target | always | string | present |
| temporary | flow's persistence | always | boolean | True |
| transport | flow's transport | if transport is defined | string | tcp |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/flowadm_module.html