Rate This Document
Findability
Accuracy
Completeness
Readability

Main Table Specifications

Attribute

Value

Description

Name

None

Flow table name, which must comply with the DSL naming requirements.

Quantity

1 to 12

The sum of the main table and auxiliary tables is less than or equal to 12. At least one main table must be defined.

Type

Main table

Supports user declaration and stage-based division.

Keys

  • rte_eth_hdr_t
  • rte_vlan_hdr_t
  • rte_ipv4_hdr_t
  • rte_ipv6_hdr_t
  • rte_tcp_hdr_t
  • rte_udp_hdr_t
  • rte_icmp_hdr_t
  • rte_icmp6_hdr_t
  • rte_vxlan_hdr_t
  • rte_port_id_hdr_t
  • rte_geneve_hdr_t
  • Custom headers

Different tables support different keys, including DPDK standard headers and custom headers. The structures supported by the DPDK standard are defined in built-in header files that are not user-modifiable.

Actions

  • flexda_ct
  • rte_count
  • rte_port_id
  • rte_set_mac_src
  • rte_set_mac_dst
  • rte_set_ipv4_src
  • rte_set_ipv4_dst
  • rte_set_ipv6_src
  • rte_set_ipv6_dst
  • rte_dec_ttl
  • rte_set_ttl
  • rte_set_tp_src
  • rte_set_tp_dst
  • rte_of_pop_vlan
  • rte_of_push_vlan
  • rte_of_set_vlan_vid
  • rte_of_set_vlan_pcp
  • rte_vxlan_encap
  • rte_vxlan_decap
  • rte_queue
  • rte_rss
  • Custom actions

The supported actions vary with tables. The data size of a single action cannot exceed 128 bytes.

  • rte_queue and rte_rss can be defined in the same table with other actions, but cannot be issued to the same flow table simultaneously with other upcall-type, packet-modification, custom, and rte_port_id actions.

Matching mode

Exact

Classification by matching mode.

Number of entries

2,097,152

It is recommended that this attribute be set to a value less than or equal to 2,097,152. If the recommended value is exceeded, the DSL compilation result is subject to resource resolution.

Whether the OVS service is enabled depends on the memory resources of the DPU-SPU.

Key size

10/26/42/58 bytes

The key size is calculated as follows: Calculate the key size of the key list for every main table, take the maximum value across all main tables, and round it up to the next available value in {10, 26, 42, 58}.

Flow entry size

256/512/1,024 bytes

A main table supports multiple flow entry specifications. The calculation formulas are as follows:

  • Value size = 44 + Number of actions x 4 + Total data size of actions

    The data size must be 1-byte aligned.

  • Entry size = Key size + Value size + 54. The result is rounded up to the next available value in {256, 512, 1,024}.

    The value size used in this calculation is the maximum value size across all main tables.

NOTICE:

rte_counter, rte_port_id, rte_queue, flexda_ct, flexda_upcall, and flexda_inner_rss are not included in the calculation of actions.

Aging time

0 to 1098

The unit is second.