| /dpdk/lib/lpm/ |
| H A D | rte_lpm_sse.h | 18 rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4], in rte_lpm_lookupx4() 77 *(uint64_t *)hop = pt & RTE_LPM_MASKX4_RES; in rte_lpm_lookupx4() 78 *(uint64_t *)(hop + 2) = pt2 & RTE_LPM_MASKX4_RES; in rte_lpm_lookupx4() 111 hop[0] = (tbl[0] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[0] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 112 hop[1] = (tbl[1] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[1] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 113 hop[2] = (tbl[2] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[2] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 114 hop[3] = (tbl[3] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[3] & 0x00FFFFFF : defv; in rte_lpm_lookupx4()
|
| H A D | rte_lpm_neon.h | 19 rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4], in rte_lpm_lookupx4() 76 *(uint64_t *)hop = pt & RTE_LPM_MASKX4_RES; in rte_lpm_lookupx4() 77 *(uint64_t *)(hop + 2) = pt2 & RTE_LPM_MASKX4_RES; in rte_lpm_lookupx4() 110 hop[0] = (tbl[0] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[0] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 111 hop[1] = (tbl[1] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[1] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 112 hop[2] = (tbl[2] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[2] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 113 hop[3] = (tbl[3] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[3] & 0x00FFFFFF : defv; in rte_lpm_lookupx4()
|
| H A D | rte_lpm_altivec.h | 19 rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4], in rte_lpm_lookupx4() 83 *(uint64_t *)hop = pt & RTE_LPM_MASKX4_RES; in rte_lpm_lookupx4() 84 *(uint64_t *)(hop + 2) = pt2 & RTE_LPM_MASKX4_RES; in rte_lpm_lookupx4() 117 hop[0] = (tbl[0] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[0] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 118 hop[1] = (tbl[1] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[1] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 119 hop[2] = (tbl[2] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[2] & 0x00FFFFFF : defv; in rte_lpm_lookupx4() 120 hop[3] = (tbl[3] & RTE_LPM_LOOKUP_SUCCESS) ? tbl[3] & 0x00FFFFFF : defv; in rte_lpm_lookupx4()
|
| H A D | rte_lpm_sve.h | 67 rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4], in rte_lpm_lookupx4() 74 hop[i] = defv; in rte_lpm_lookupx4() 76 __rte_lpm_lookup_vec(lpm, ips, hop, 4); in rte_lpm_lookupx4()
|
| H A D | rte_lpm.h | 397 rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4],
|
| /dpdk/doc/guides/prog_guide/ |
| H A D | fib_lib.rst | 26 * Default next hop ID. 32 A FIB rule consists of a prefix and an associated next hop ID. The prefix consists 34 The prefix serves as the key and the next hop ID as the value while doing an LPM 35 search within FIB. The size of the next hop ID is variable and must be configured 40 * ``rte_fib_add()``: Add a new route with a corresponding next hop ID to the 41 table or update the next hop ID if the prefix already exists in a table. 46 for a set of IP addresses, it will return a set of corresponding next hop IDs. 89 * ``nh_sz``: The size of the entry containing the next hop ID. 125 * The next hop ID. 137 which are 63 bits long (using ``RTE_FIB_DIR24_8_8B`` as a next hop size). [all …]
|
| H A D | rib_lib.rst | 18 Routing information is represented by a prefix (key) and a next hop ID (value). 21 Next hop IDs are represented by ``uint64_t`` values. 113 next hop ID, but it doesn't contain protocol specific information such as 119 If the routing daemon can provide a feasible next hop ID along with a best (active) next hop ID, 122 shown in :numref:`figure_rib_pic`. Every route can have a feasible next hop 131 In case of a next hop failure, we need to replace an active failed next hop with a 132 feasible next hop for every corresponding route without waiting for the routing daemon 134 To achieve this we can link all existing routes with the same active next hop in a linked list, 135 saving the feasible next hop ID and a pointer inside the extension space of each ``rte_rib_node``.
|
| H A D | lpm_lib.rst | 19 In this implementation, the user data is 1-byte long and is called next hop, 20 in correlation with its main use of storing the ID of the next hop in a routing table entry. 26 …If a rule with the same prefix is already present in the table, the next hop of the rule is update… 76 * next hop / index to the tbl8 85 or the next hop itself if the longest prefix match has already been found. 92 * next hop 100 Next hop and depth contain the same information as in the tbl24. 103 …r main data structure is a table containing the main information about the rules (IP and next hop). 120 * If the entry is invalid (i.e. it doesn't already contain a rule) then set its next hop to its v… 187 If it is valid and the external entry flag is set to 0, then the next hop is returned. [all …]
|
| H A D | lpm6_lib.rst | 29 In this implementation, the user data is 21-bits long and is called "next hop", 30 which corresponds to its main use of storing the ID of the next hop in a routing table entry. 36 …If a rule with the same prefix is already present in the table, the next hop of the rule is update… 43 …ts the rule that represents the best match for the given key and returns the next hop of that rule. 92 * next hop / index to the tbl8 103 or the next hop itself if the longest prefix match has already been found. 110 …data structure is a table containing the main information about the rules (IP, next hop and depth). 127 * If the entry is invalid (i.e. it doesn't already contain a rule) then set its next hop to its v… 145 and fill it with the next hop, setting the next entry flag to 0. 169 If it is valid and the external entry flag is set to 0, then the next hop is returned. [all …]
|
| H A D | graph_lib.rst | 376 ``next-hop`` id with which the packet needs to be further processed. 385 This node gets packets from ``ip4_lookup`` node with next-hop id for each 389 ``rte_node_ip4_rewrite_add()`` is control path API to add next-hop info.
|
| H A D | packet_framework.rst | 40 as well as the next hop for the packet, which can be either another table, an output port or packet… 355 …ed for an IP packet (so the output interface and the IP address of the next hop station are known), 356 the MAC address of the next hop station is needed in order to send this packet onto the next leg of… 358 The MAC address of the next hop station becomes the destination MAC address of the outgoing Etherne… 366 *Key value (key data):* MAC address of the next hop station (6 bytes). 976 #. The table connectivity to other tables or to output ports is regulated by the next hop actions … 1011 …handle the user-defined actions, while the reserved actions (e.g. the next hop actions) are handle… 1019 A special category of the reserved actions is represented by the next hop actions, which regulate t… 1021 :numref:`table_qos_33` lists the next hop actions. 1028 …| # | Next hop action | Description …
|
| /dpdk/app/test/ |
| H A D | test_lpm.c | 328 uint32_t hop[4]; in test7() local 350 TEST_LPM_ASSERT(hop[0] == next_hop_add); in test7() 351 TEST_LPM_ASSERT(hop[1] == UINT32_MAX); in test7() 352 TEST_LPM_ASSERT(hop[2] == UINT32_MAX); in test7() 379 uint32_t hop[4]; in test8() local 412 TEST_LPM_ASSERT(hop[0] == UINT32_MAX); in test8() 414 TEST_LPM_ASSERT(hop[2] == UINT32_MAX); in test8() 446 TEST_LPM_ASSERT(hop[2] == UINT32_MAX); in test8() 447 TEST_LPM_ASSERT(hop[3] == UINT32_MAX); in test8() 895 uint32_t hop[4]; in test12() local [all …]
|
| /dpdk/examples/pipeline/examples/ |
| H A D | selector.spec | 12 ; (the group table) and a next hop table (the member table). One of the routing table actions sets 14 ; ID meta-data field, i.e. the next hop ID that is used as the index into the next hop table. The 15 ; next hop action prepares the output packet for being sent next hop in the network by prepending 18 ; for any given route as opposed to a single next hop per route; for every packet, its next hop is
|
| H A D | fib.spec | 13 ; next hops associated with the current route, out of which a single next hop is selected based on a 15 ; typical 3-tuple) by always selecting the same next hop for packets that are part of the same flow. 16 ; The next hop provides the Ethernet header and the output port for the outgoing packet.
|
| /dpdk/examples/ipsec-secgw/ |
| H A D | ipsec_worker.c | 230 uint32_t hop; in route4_pkt() local 237 ret = rte_lpm_lookup((struct rte_lpm *)rt_ctx, dst_ip, &hop); in route4_pkt() 241 return hop; in route4_pkt() 255 uint32_t hop; in route6_pkt() local 262 ret = rte_lpm6_lookup((struct rte_lpm6 *)rt_ctx, dst_ip, &hop); in route6_pkt() 266 return hop; in route6_pkt()
|
| H A D | ipsec-secgw.c | 996 uint32_t hop[MAX_PKT_BURST * 2]; in route4_pkts() local 1023 rte_lpm_lookup_bulk((struct rte_lpm *)rt_ctx, dst_ip, hop, lpm_pkts); in route4_pkts() 1033 pkt_hop = hop[lpm_pkts++]; in route4_pkts() 1048 int32_t hop[MAX_PKT_BURST * 2]; in route6_pkts() local 1076 rte_lpm6_lookup_bulk_func((struct rte_lpm6 *)rt_ctx, dst_ip, hop, in route6_pkts() 1087 pkt_hop = hop[lpm_pkts++]; in route6_pkts()
|
| /dpdk/doc/guides/prog_guide/img/ |
| H A D | rib_pic.svg | 145 <text x="4.67" y="586.93" class="st12" id="text235">Next hop A</text> 149 <text x="4.99" y="586.93" class="st12" id="text244">Next hop B</text>
|
| /dpdk/doc/guides/sample_app_ug/ |
| H A D | l3_forward_graph.rst | 28 The ID of the output interface for the input packet is the next hop returned by 197 as per next-hop data and transmit the packet via port 'Z' by enqueuing
|
| H A D | l3_forward.rst | 38 to identify the next hop for each input packet at runtime. 42 The ID of the output interface for the input packet is the next hop
|
| /dpdk/doc/guides/nics/ |
| H A D | sfc_efx.rst | 215 traffic class, hop limit)
|
| /dpdk/doc/guides/testpmd_app_ug/ |
| H A D | testpmd_funcs.rst | 3983 - ``hop {unsigned}``: hop limit.
|