Provided by: iproute2_4.3.0-1ubuntu3_amd64 bug


       flower - flow based traffic control filter


       tc filter ... flower [ MATCH_LIST ] [ action ACTION_SPEC ] [ classid CLASSID ]


       MATCH  :=  {  indev  ifname | { dst_mac | src_mac } mac_address | eth_type { ipv4 | ipv6 |
               ETH_TYPE } | ip_proto { tcp  |  udp  |  IP_PROTO  }  |  {  dst_ip  |  src_ip  }  {
               ipv4_address | ipv6_address } | { dst_port | src_port } port_number }


       The  flower  filter  matches flows to the set of keys specified and assigns an arbitrarily
       chosen class ID to packets belonging to them. Additionally (or  alternatively)  an  action
       from the generic action framework may be called.


       action ACTION_SPEC
              Apply an action from the generic actions framework on matching packets.

       classid CLASSID
              Specify  a class to pass matching packets on to.  CLASSID is in the form X:Y, while
              X and Y are interpreted as numbers in hexadecimal format.

       indev ifname
              Match on incoming interface name. Obviously this makes  sense  only  for  forwarded
              flows.   ifname  is  the  name  of  an interface which must exist at the time of tc

       dst_mac mac_address
       src_mac mac_address
              Match on source or destination MAC address.

       eth_type ETH_TYPE
              Match on layer three protocol.  ETH_TYPE may be either  ipv4,ipv6  or  an  unsigned
              16bit value in hexadecimal format.

       ip_proto IP_PROTO
              Match  on  layer four protocol.  IP_PROTO may be either tcp,udp or an unsigned 8bit
              value in hexadecimal format.

       dst_ip ADDRESS
       src_ip ADDRESS
              Match on source or destination IP address.  ADDRESS must be a valid  IPv4  or  IPv6
              address, depending on ether_type, which has to be specified in beforehand.

       dst_port NUMBER
       src_port NUMBER
              Match  on  layer  4  protocol source or destination port number. Only available for
              ip_proto values udp and tcp, which has to be specified in beforehand.


       As stated above where applicable, matches of a certain  layer  implicitly  depend  on  the
       matches   of   the   next   lower   layer.   Precisely,   layer  one  and  two  matches  (
       indev,dst_mac,src_mac  and  eth_type)  have  no  dependency,   layer   three   matches   (
       ip_proto,dst_ip and src_ip) require eth_type being set to either ipv4 or ipv6, and finally
       layer four matches ( dst_port and src_port) depend on ip_proto being set to either tcp  or

       There  can be only used one mask per one prio. If user needs to specify different mask, he
       has to use different prio.


       tc(8), tc-flow(8)