| /dpdk/doc/guides/prog_guide/ |
| H A D | generic_receive_offload_lib.rst | 9 small packets into larger ones, GRO enables applications to process 10 fewer large packets directly, thus reducing the number of packets to 14 reassemble packets. 21 example, TCP/IPv4 GRO processes TCP/IPv4 packets. 24 table structure to reassemble packets. We assign input packets to the 34 packets as well as VxLAN packets which contain an outer IPv4 header and an 44 applications and supports to merge a large number of packets. 71 types or TCP SYN packets are returned. Otherwise, the input packets are 74 packets from the tables, when they want to get the GROed packets. 178 Header fields deciding if packets are neighbors include: [all …]
|
| H A D | packet_distrib_lib.rst | 10 which is responsible for load balancing or distributing packets, 34 #. As workers request packets, the distributor takes packets from the set of packets passed in and… 41 This ensures that no two packets with the same tag are processed in parallel, 42 and that all packets with the same tag are processed in input order. 44 #. Once all input packets passed to the process API have either been distributed to workers 58 It returns to the caller all packets which have finished processing by all worker cores. 59 Within this set of returned packets, all packets sharing the same tag will be returned in their ori… 62 If worker lcores buffer up packets internally for transmission in bulk afterwards, 63 the packets sharing a tag will likely get out of order. 66 who may then flush their buffered packets sooner and cause packets to get out of order. [all …]
|
| H A D | generic_segmentation_offload_lib.rst | 12 process a smaller number of large packets (e.g. MTU size of 64KB), instead of 13 processing higher numbers of small packets (e.g. MTU size of 1500B), thus 18 packets within the guest, and improves the data-to-overhead ratio of both the 25 packets in software. Note however, that GSO is implemented as a standalone 28 GSO library to segment packets, they also must call ``rte_pktmbuf_free()`` 35 #. The GSO library doesn't check if input packets have correct checksums. 38 packets (that task is left to the application). 42 #. The egress interface's driver must support multi-segment packets. 64 ``rte_gso_segment()`` function to segment packets. 162 VXLAN packets GSO supports segmentation of suitably large VXLAN packets, [all …]
|
| H A D | ipsec_lib.rst | 20 inbound and outbound IPsec packets. 33 introduces an asynchronous API for IPsec packets destined to be processed by 48 For packets destined for inline processing no extra overhead 64 * for inbound packets: 75 * for outbound packets: 97 * for inbound packets: 107 * for outbound packets: 122 * for inbound packets: 127 * for outbound packets: 139 * for inbound packets: [all …]
|
| H A D | packet_framework.rst | 78 …| 3 | IP reassembly | Input packets are either IP fragments or complete IP datagrams. Output pa… 83 …| | | packets. Output packets are non-jumbo packets. … 497 two packets (that just completed stage 0) are now executing stage 1 and two packets (next two packe… 499 The pipeline iterations continue until all packets from the burst of input packets execute the last… 521 before same packets 0 and 1 are used (i.e. before stage 1 is executed on packets 0 and 1), 522 different packets are used: packets 2 and 3 (executing stage 1), packets 4 and 5 (executing stage 2… 627 …| 0 | Prefetch packet meta-data | Select next two packets from the burst of input packets. … 698 If there are less than 7 packets in the burst of input packets, 701 …of the bucket search algorithm has been executed for all the packets in the burst of input packets, 907 …| 0 | Prefetch packet meta-data | #. Select next two packets from the burst of input packets. … [all …]
|
| H A D | event_ethernet_rx_adapter.rst | 9 device port for receiving events that reference packets instead of polling Rx 11 be supported in hardware or require a software thread to receive packets from 80 parameter. Event information for packets from this Rx queue is encoded in the 165 flags for handling received packets, event queue identifier, scheduler type, 184 packets. Certain queues may have low packet rates and it would be more 185 efficient to enable the Rx queue interrupt and read packets after receiving 197 invokes the ``rte_eth_rx_burst()`` to receive packets on the queue and 198 converts the received packets to events in the same manner as packets 212 dequeuing packets from the ethernet device. The application may want to 215 criteria to decide which packets should enter the event device even when [all …]
|
| H A D | reorder_lib.rst | 63 be reported as late packets when they arrive. The process of moving packets 75 library to transmit packets in the same order they were received. 79 The processing of packets by the workers is not guaranteed to be in order, 80 hence a reorder buffer can be used to order as many packets as possible. 84 As the workers finish processing the packets, the distributor inserts those
|
| /dpdk/doc/guides/nics/ |
| H A D | kni.rst | 12 Sending packets to any DPDK controlled interface or sending to the 21 application, and DPDK application may forward packets to a physical NIC 41 When testpmd forwarding starts, any packets sent to ``kni0`` interface 130 RX packets 0 bytes 0 (0.0 B) 132 TX packets 0 bytes 0 (0.0 B) 137 RX packets 0 bytes 0 (0.0 B) 139 TX packets 0 bytes 0 (0.0 B) 158 RX-packets: 35637905 RX-dropped: 0 RX-total: 35637905 159 TX-packets: 35637947 TX-dropped: 0 TX-total: 35637947 163 RX-packets: 35637915 RX-dropped: 0 RX-total: 35637915 [all …]
|
| H A D | pcap_ring.rst | 80 The driver captures only the incoming packets on that interface. 107 - Use the RX PCAP file to infinitely receive packets 119 - Drop all packets on transmit 127 - Receive no packets on Rx 138 Read packets from one pcap file and write them to another: 146 Read packets from a network interface and write them to a pcap file: 154 Read packets from a pcap file and write them to a network interface: 162 Forward packets through two network interfaces: 256 RX-packets: 462384736 RX-dropped: 0 RX-total: 462384736 257 TX-packets: 462384768 TX-dropped: 0 TX-total: 462384768 [all …]
|
| H A D | null.rst | 7 NULL PMD is a simple virtual driver mainly for testing. It always returns success for all packets f… 9 On Rx it returns requested number of empty packets (all zero). On Tx it just frees all sent packets. 42 Makes PMD more like ``/dev/null``. On Rx no packets received, on Tx all packets are freed.
|
| H A D | netvsc.rst | 19 * It supports merge-able buffers per packet when receiving packets and scattered buffer per packet 20 when transmitting packets. The packet size supported is from 64 to 65536. 22 * The PMD supports multicast packets and promiscuous mode subject to restrictions on the host. 39 and send and receive packets using the VF path. 131 multiple small packets into one request. If tx_copybreak is 0 then 133 set larger than the MTU, then all packets smaller than the chunk size 134 of the VMBus send buffer will be copied; larger packets always have to 139 mbuf for receiving packets. The default value is 0. (netvsc doesn't use 142 receiving packets, thus avoid copying memory. Use of external buffers
|
| /dpdk/drivers/net/nfb/ |
| H A D | nfb_tx.h | 137 struct ndp_packet packets[nb_pkts]; in nfb_eth_ndp_tx() local 148 packets[i].data_length = bufs[i]->pkt_len; in nfb_eth_ndp_tx() 149 packets[i].header_length = 0; in nfb_eth_ndp_tx() 152 num_tx = ndp_tx_burst_get(ndp->queue, packets, nb_pkts); in nfb_eth_ndp_tx() 169 rte_memcpy(packets[i].data, in nfb_eth_ndp_tx() 176 dst = packets[i].data; in nfb_eth_ndp_tx()
|
| H A D | nfb_rx.h | 154 struct ndp_packet packets[nb_pkts]; in nfb_eth_ndp_rx() local 168 num_rx = ndp_rx_burst_get(ndp->queue, packets, nb_pkts); in nfb_eth_ndp_rx() 187 packet_size = packets[i].data_length; in nfb_eth_ndp_rx() 192 packets[i].data, packet_size); in nfb_eth_ndp_rx() 206 (packets[i].header + 4))); in nfb_eth_ndp_rx() 211 (packets[i].header + 8))); in nfb_eth_ndp_rx()
|
| /dpdk/doc/guides/howto/ |
| H A D | rte_flow.rst | 44 /* setting the eth to pass all packets */ 48 /* set the vlan to pass all packets */ 74 [waiting for packets] 93 [waiting for packets] 140 /* setting the eth to pass all packets */ 144 /* set the vlan to pass all packets */ 172 [waiting for packets] 194 [waiting for packets] 243 /* set the vlan to pas all packets */ 266 [waiting for packets] [all …]
|
| H A D | packet_capture_framework.rst | 8 Capture Framework is used for capturing packets on DPDK ports. It is intended 15 for collecting packets ``librte_pdump`` 16 and writing packets to a file ``librte_pcapng``. 29 to format packets and write them to a file in Pcapng format. 31 The :doc:`dpdk-dumpcap <../tools/dumpcap>` is a tool that captures packets in 33 It runs as a DPDK secondary process and captures packets 44 To view Rx or Tx packets of ``dpdk-testpmd``, 87 Rx side packets on dpdk_port0 in :numref:`figure_packet_capture_framework` and 99 Inspect packets captured in the file capture.pcapng using a tool
|
| /dpdk/doc/guides/sample_app_ug/ |
| H A D | rxtx_callbacks.rst | 9 packets. The application performs a simple latency check, using callbacks, to 10 determine the time packets spend within the application. 13 packets to add a timestamp. A separate callback is applied to all packets 100 all packets received: 104 :start-after: Callback added to the RX port and applied to packets. 8< 116 packets prior to transmission: 123 The ``calc_latency()`` function accumulates the total number of packets and 124 the total number of cycles used. Once more than 100 million packets have been
|
| H A D | dma.rst | 23 copy with copy done using a DMA device for different sizes of packets. 25 received/send packets and packets dropped or failed to copy. 64 * --[no-]mac-updating: Whether MAC address of packets should be changed 263 For receiving packets on each port, the ``dma_rx_port()`` function is used. 265 mode the user chose, it will enqueue packets to DMA channels and 275 The packets are received in burst mode using ``rte_eth_rx_burst()`` 276 function. When using hardware copy mode the packets are enqueued in 278 ``rte_dma_copy()``. When all received packets are in the 294 is used to pass the packets to the TX function. 303 :start-after: Transmit packets from dmadev/rte_ring for one port. 8< [all …]
|
| H A D | server_node_efd.rst | 57 The main loop of the server process receives a burst of packets, then for 75 The worker node's main loop is simply receiving packets then doing a hash table 136 which is used to distribute packets to nodes, which the number of flows 146 address from the packets is used as a key to look up in the EFD table, 151 :start-after: Processing packets. 8< 154 The burst of packets received is enqueued in temporary buffers (per node), 156 After this, a new burst of packets is received and this process is 164 The second process, the back-end node, receives the packets from the shared 184 After initialization, packets are dequeued from the shared ring 194 :end-before: >8 End of packets dequeuing. [all …]
|
| H A D | dist_app.rst | 15 The distributor application performs the distribution of packets that are received 72 The receive thread receives the packets using ``rte_eth_rx_burst()`` and will 73 enqueue them to an rte_ring. The distributor thread will dequeue the packets 83 worker threads do simple packet processing by requesting packets from 86 and then finally returning the packets back to the distributor thread. 89 ``rte_distributor_returned_pkts()`` to get the processed packets, and will enqueue 91 output port. The transmit thread will dequeue the packets from the ring and 132 statistics include the number of packets enqueued and dequeued at each stage 134 packets of each burst size (1-8) were sent to each worker thread.
|
| H A D | l3_forward_access_ctrl.rst | 8 The application performs a security check on received packets. 21 * Access Control List (ACL) rules that block packets with a specific characteristic 23 When packets are received from a port, 34 Classification for both IPv4 and IPv6 packets is supported in this application. 35 The application also assumes that all the packets it processes are TCP/UDP packets and 36 always extracts source/destination port information from the packets. 159 * Rule 3 (the third line) tells the application to forward all packets to port 0. 166 Consider the arrival of the following three packets: 209 - Process the incoming packets from a port. Packets are processed in three steps: 215 If an ACL rule is matched, the packets will be dropped and return back to step 1. [all …]
|
| H A D | qos_scheduler.rst | 23 The RX thread reads packets from the RX port, 24 classifies the packets based on the double VLAN (outer and inner) and 26 The worker thread dequeues the packets from the ring and calls the QoS scheduler enqueue/dequeue fu… 29 The TX thread, if present, reads from the TX ring and write the packets to the TX port. 82 by the I/O RX lcores to send packets to worker lcores (the default value is 8192). 142 * stats port X subport Y: For a specific subport, it shows the number of packets that 143 went through the scheduler properly and the number of packets that were dropped. 147 * stats port X subport Y pipe Z: For a specific pipe, it shows the number of packets that 148 went through the scheduler properly and the number of packets that were dropped. 154 All of these commands work the same way, averaging the number of packets throughout a specific subs… [all …]
|
| /dpdk/doc/guides/tools/ |
| H A D | pdump.rst | 60 …* Multiple instances of ``--pdump`` can be passed to capture packets on different port and queue c… 67 Port id of the eth device on which packets should be captured. 70 PCI address (or) name of the eth device on which packets should be captured. 74 * As of now the ``dpdk-pdump`` tool cannot capture the packets of virtual devices 80 Queue id of the eth device on which packets should be captured. The user can pass a queue value of … 91 * To receive ingress packets only, ``rx-dev`` should be passed. 93 * To receive egress packets only, ``tx-dev`` should be passed. 95 * To receive ingress and egress packets separately ``rx-dev`` and ``tx-dev`` 98 * To receive ingress and egress packets together, ``rx-dev`` and ``tx-dev`` 102 … This value is used internally for ring creation. The ring will be used to enqueue the packets from
|
| /dpdk/doc/guides/eventdevs/ |
| H A D | opdl.rst | 10 All packets follow the same path through the device. The order in which\ 11 packets follow is determined by the order in which queues are set up.\ 12 Events are left on the ring until they are transmitted. As a result packets\ 55 asynchronous handling of packets in the middle of a pipeline. Ordered 56 queues in the middle of a pipeline cannot delete packets. 62 As stated the order in which packets travel through queues is static in 66 P3 then packets must be 92 - The order in which packets moved between queues is static and fixed \ 98 - All packets follow the same path through device queues.
|
| /dpdk/doc/guides/faq/ |
| H A D | faq.rst | 82 …empts to aggregate the cost of processing each packet individually by processing packets in bursts. 84 This allows the application to request 32 packets at a time from the PMD. 85 …n then immediately attempts to transmit all the packets that were received, in this case, all 32 p… 86 The packets are not transmitted until the tail pointer is updated on the corresponding TX queue of … 88 can be spread across 32 packets, effectively hiding the relatively slow MMIO cost of writing to the… 90 … because the first packet that was received must also wait for the other 31 packets to be received. 91 …e transmitted until the other 31 packets have also been processed because the NIC will not know to… 92 which is not done until all 32 packets have been processed for transmission. 94 …even under heavy system load, the application developer should avoid processing packets in bunches. 160 When trying to send packets from an application to itself, meaning smac==dmac, using Intel(R) 82599… [all …]
|
| /dpdk/doc/guides/platform/ |
| H A D | cnxk.rst | 102 Loopback HW Unit (LBK) receives packets from NIX-RX and sends packets back to NIX-TX. 123 SDP interface receives input packets from remote host from NIX-RX and sends packets 364 Octets of received packets: 0 365 Octets of received packets with out error: 0 366 Received packets with alignment errors: 0 367 Control/PAUSE packets received: 0 370 Received packets: 0 373 Error packets: 0 377 Dropped packets: 0 406 MAC control packets received: 0 [all …]
|