X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fprog_guide%2Frte_flow.rst;h=2d2d87f1db639ee039b08f4891e4c33c66c75b3b;hb=b54403fd08374dae243bf0a0e90488f51485154e;hp=fa05fe08450054128f089847acb015bb6061e636;hpb=14fc81aed73842d976dd19a93ca47e22d61c1759;p=dpdk.git diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst index fa05fe0845..2d2d87f1db 100644 --- a/doc/guides/prog_guide/rte_flow.rst +++ b/doc/guides/prog_guide/rte_flow.rst @@ -701,9 +701,9 @@ Item: ``META`` Matches 32 bit metadata item set. On egress, metadata can be set either by mbuf metadata field with -PKT_TX_DYNF_METADATA flag or ``SET_META`` action. On ingress, ``SET_META`` +RTE_MBUF_DYNFLAG_TX_METADATA flag or ``SET_META`` action. On ingress, ``SET_META`` action sets metadata for a packet and the metadata will be reported via -``metadata`` dynamic field of ``rte_mbuf`` with PKT_RX_DYNF_METADATA flag. +``metadata`` dynamic field of ``rte_mbuf`` with RTE_MBUF_DYNFLAG_RX_METADATA flag. - Default ``mask`` matches the specified Rx metadata value. @@ -1548,6 +1548,56 @@ This item is meant to use the same structure as `Item: PORT_REPRESENTOR`_. See also `Action: REPRESENTED_PORT`_. +Item: ``FLEX`` +^^^^^^^^^^^^^^ + +Matches with the custom network protocol header that was created +using rte_flow_flex_item_create() API. The application describes +the desired header structure, defines the header fields attributes +and header relations with preceding and following protocols and +configures the ethernet devices accordingly via +rte_flow_flex_item_create() routine. + +- ``handle``: the flex item handle returned by the PMD on successful + rte_flow_flex_item_create() call, mask for this field is ignored. +- ``length``: match pattern length in bytes. If the length does not cover + all fields defined in item configuration, the pattern spec and mask are + considered by the driver as padded with trailing zeroes till the full + configured item pattern length. +- ``pattern``: pattern to match. The pattern is concatenation of bit fields + configured at item creation. At configuration the fields are presented + by sample_data array. The order of the bitfields is defined by the order + of sample_data elements. The width of each bitfield is defined by the width + specified in the corresponding sample_data element as well. If pattern + length is smaller than configured fields overall length it is considered + as padded with trailing zeroes up to full configured length, both for + value and mask. + +Item: ``L2TPV2`` +^^^^^^^^^^^^^^^^^^^ + +Matches a L2TPv2 header. + +- ``flags_version``: flags(12b), version(4b). +- ``length``: total length of the message. +- ``tunnel_id``: identifier for the control connection. +- ``session_id``: identifier for a session within a tunnel. +- ``ns``: sequence number for this date or control message. +- ``nr``: sequence number expected in the next control message to be received. +- ``offset_size``: offset of payload data. +- ``offset_padding``: offset padding, variable length. +- Default ``mask`` matches flags_version only. + +Item: ``PPP`` +^^^^^^^^^^^^^^^^^^^ + +Matches a PPP header. + +- ``addr``: PPP address. +- ``ctrl``: PPP control. +- ``proto_id``: PPP protocol identifier. +- Default ``mask`` matches addr, ctrl, proto_id. + Actions ~~~~~~~ @@ -1777,8 +1827,8 @@ flows to loop between groups. Action: ``MARK`` ^^^^^^^^^^^^^^^^ -Attaches an integer value to packets and sets ``PKT_RX_FDIR`` and -``PKT_RX_FDIR_ID`` mbuf flags. +Attaches an integer value to packets and sets ``RTE_MBUF_F_RX_FDIR`` and +``RTE_MBUF_F_RX_FDIR_ID`` mbuf flags. This value is arbitrary and application-defined. Maximum allowed value depends on the underlying implementation. It is returned in the @@ -1798,7 +1848,7 @@ Action: ``FLAG`` ^^^^^^^^^^^^^^^^ Flags packets. Similar to `Action: MARK`_ without a specific value; only -sets the ``PKT_RX_FDIR`` mbuf flag. +sets the ``RTE_MBUF_F_RX_FDIR`` mbuf flag. - No configurable properties. @@ -1943,23 +1993,23 @@ only matching traffic goes through. .. table:: RSS - +---------------+---------------------------------------------+ - | Field | Value | - +===============+=============================================+ - | ``func`` | RSS hash function to apply | - +---------------+---------------------------------------------+ - | ``level`` | encapsulation level for ``types`` | - +---------------+---------------------------------------------+ - | ``types`` | specific RSS hash types (see ``ETH_RSS_*``) | - +---------------+---------------------------------------------+ - | ``key_len`` | hash key length in bytes | - +---------------+---------------------------------------------+ - | ``queue_num`` | number of entries in ``queue`` | - +---------------+---------------------------------------------+ - | ``key`` | hash key | - +---------------+---------------------------------------------+ - | ``queue`` | queue indices to use | - +---------------+---------------------------------------------+ + +---------------+-------------------------------------------------+ + | Field | Value | + +===============+=================================================+ + | ``func`` | RSS hash function to apply | + +---------------+-------------------------------------------------+ + | ``level`` | encapsulation level for ``types`` | + +---------------+-------------------------------------------------+ + | ``types`` | specific RSS hash types (see ``RTE_ETH_RSS_*``) | + +---------------+-------------------------------------------------+ + | ``key_len`` | hash key length in bytes | + +---------------+-------------------------------------------------+ + | ``queue_num`` | number of entries in ``queue`` | + +---------------+-------------------------------------------------+ + | ``key`` | hash key | + +---------------+-------------------------------------------------+ + | ``queue`` | queue indices to use | + +---------------+-------------------------------------------------+ Action: ``PF`` ^^^^^^^^^^^^^^ @@ -2759,10 +2809,10 @@ Action: ``SET_META`` Set metadata. Item ``META`` matches metadata. -Metadata set by mbuf metadata field with PKT_TX_DYNF_METADATA flag on egress +Metadata set by mbuf metadata field with RTE_MBUF_DYNFLAG_TX_METADATA flag on egress will be overridden by this action. On ingress, the metadata will be carried by ``metadata`` dynamic field of ``rte_mbuf`` which can be accessed by -``RTE_FLOW_DYNF_METADATA()``. PKT_RX_DYNF_METADATA flag will be set along +``RTE_FLOW_DYNF_METADATA()``. RTE_MBUF_DYNFLAG_RX_METADATA flag will be set along with the data. The mbuf dynamic field must be registered by calling