#
6b890c2c |
| 30-Mar-2017 |
Pascal Mazon <pascal.mazon@6wind.com> |
net/tap: remove unsupported UDP/TCP port mask in flow
Only full mask (0xffff) is accepted, there is no way to specify a mask for layer 4 ports to the kernel using TC rules.
Fixes: de96fe68ae95 ("ne
net/tap: remove unsupported UDP/TCP port mask in flow
Only full mask (0xffff) is accepted, there is no way to specify a mask for layer 4 ports to the kernel using TC rules.
Fixes: de96fe68ae95 ("net/tap: add basic flow API patterns and actions")
Signed-off-by: Pascal Mazon <pascal.mazon@6wind.com> Acked-by: Keith Wiles <keith.wiles@intel.com>
show more ...
|
#
2bc06869 |
| 23-Mar-2017 |
Pascal Mazon <pascal.mazon@6wind.com> |
net/tap: add remote netdevice traffic capture
By default, a tap netdevice is of no use when not fed by a separate process. The ability to automatically feed it from another netdevice allows applicat
net/tap: add remote netdevice traffic capture
By default, a tap netdevice is of no use when not fed by a separate process. The ability to automatically feed it from another netdevice allows applications to capture any kind of traffic normally destined to the kernel stack.
This patch implements this ability through a new optional "remote" parameter.
Packets matching filtering rules created with the flow API are matched on the remote device and redirected to the tap PMD, where the relevant action will be performed.
Signed-off-by: Pascal Mazon <pascal.mazon@6wind.com> Acked-by: Olga Shern <olgas@mellanox.com> Acked-by: Keith Wiles <keith.wiles@intel.com>
show more ...
|
#
de96fe68 |
| 23-Mar-2017 |
Pascal Mazon <pascal.mazon@6wind.com> |
net/tap: add basic flow API patterns and actions
Supported flow rules are now mapped to TC rules on the tap netdevice. The netlink message used for creating the TC rule is stored in struct rte_flow.
net/tap: add basic flow API patterns and actions
Supported flow rules are now mapped to TC rules on the tap netdevice. The netlink message used for creating the TC rule is stored in struct rte_flow. That way, by simply changing a metadata in it, we can require for the rule deletion without further parsing.
Supported items: - eth: src and dst (with variable masks), and eth_type (0xffff mask). - vlan: vid, pcp, tpid, but not eid. - ipv4/6: src and dst (with variable masks), and ip_proto (0xffff mask). - udp/tcp: src and dst port (0xffff) mask.
Supported actions: - DROP - QUEUE - PASSTHRU
It is generally not possible to provide a "last" item. However, if the "last" item, once masked, is identical to the masked spec, then it is supported.
Only IPv4/6 and MAC addresses can use a variable mask. All other items need a full mask (exact match).
Support for VLAN requires kernel headers >= 4.9, checked using auto-config.sh.
Signed-off-by: Pascal Mazon <pascal.mazon@6wind.com> Acked-by: Olga Shern <olgas@mellanox.com> Acked-by: Keith Wiles <keith.wiles@intel.com>
show more ...
|
#
268483dc |
| 23-Mar-2017 |
Pascal Mazon <pascal.mazon@6wind.com> |
net/tap: add preliminary support for flow API
The flow API provides the ability to classify packets received by a tap netdevice.
This patch only implements skeleton functions for flow API support,
net/tap: add preliminary support for flow API
The flow API provides the ability to classify packets received by a tap netdevice.
This patch only implements skeleton functions for flow API support, no patterns are supported yet.
Signed-off-by: Pascal Mazon <pascal.mazon@6wind.com> Acked-by: Olga Shern <olgas@mellanox.com> Acked-by: Keith Wiles <keith.wiles@intel.com>
show more ...
|