On this page
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 | 
       
  | 
      
        
        Sets the relative priority for the flow.
         | 
     
| remote_ip | 
        
        Identifies a network flow by the remote IP address.
         | 
     |
| state | 
       
  | 
      
        
        Create/delete/enable/disable an IP address on the network interface.
         | 
     
| temporary  
        bool
         | 
      
       
  | 
      
        
        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  
        int
         | 
      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
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance
This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by the Ansible Community, see here.
Author
- 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.6/modules/flowadm_module.html