X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fhowto%2Fpacket_capture_framework.rst;h=c31bac52340edac3e04bcff0bf63a71092018590;hb=6f04fa45211e3ca4fb9a7e9ceabc682fa47e88bf;hp=4467442eae1e16672f0f86d62e87bf821bfa6edd;hpb=629122b8b842b6bd2278c2caf705ef33d41b1a72;p=dpdk.git diff --git a/doc/guides/howto/packet_capture_framework.rst b/doc/guides/howto/packet_capture_framework.rst index 4467442eae..c31bac5234 100644 --- a/doc/guides/howto/packet_capture_framework.rst +++ b/doc/guides/howto/packet_capture_framework.rst @@ -1,34 +1,5 @@ -.. BSD LICENSE - Copyright(c) 2017 Intel Corporation. All rights reserved. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - * Neither the name of Intel Corporation nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - +.. SPDX-License-Identifier: BSD-3-Clause + Copyright(c) 2017 Intel Corporation. DPDK pdump Library and pdump Tool ================================= @@ -48,7 +19,7 @@ Introduction The :ref:`librte_pdump ` library provides the APIs required to allow users to initialize the packet capture framework and to enable or -disable packet capture. The library works on a client/server model and its +disable packet capture. The library works on a multi process communication model and its usage is recommended for debugging purposes. The :ref:`dpdk-pdump ` tool is developed based on the @@ -57,13 +28,13 @@ of enabling or disabling packet capture on DPDK ports. The ``dpdk-pdump`` tool provides command-line options with which users can request enabling or disabling of the packet capture on DPDK ports. -The application which initializes the packet capture framework will act as a -server and the application that enables or disables the packet capture will -act as a client. The server sends the Rx and Tx packets from the DPDK ports -to the client. +The application which initializes the packet capture framework will be a primary process +and the application that enables or disables the packet capture will +be a secondary process. The primary process sends the Rx and Tx packets from the DPDK ports +to the secondary process. In DPDK the ``testpmd`` application can be used to initialize the packet -capture framework and act as a server, and the ``dpdk-pdump`` tool acts as a +capture framework and acts as a server, and the ``dpdk-pdump`` tool acts as a client. To view Rx or Tx packets of ``testpmd``, the application should be launched first, and then the ``dpdk-pdump`` tool. Packets from ``testpmd`` will be sent to the tool, which then sends them on to the Pcap PMD device and @@ -81,11 +52,7 @@ Some things to note: initialization code. Refer to the ``app/test-pmd/testpmd.c`` code and look for ``pdump`` keyword to see how this is done. -* The ``dpdk-pdump`` tool depends on the libpcap based PMD which is disabled - by default in the build configuration files, owing to an external dependency - on the libpcap development files. Once the libpcap development files are - installed, the libpcap based PMD can be enabled by setting - ``CONFIG_RTE_LIBRTE_PMD_PCAP=y`` and recompiling the DPDK. +* The ``dpdk-pdump`` tool depends on the libpcap based PMD. Test Environment @@ -102,17 +69,6 @@ for packet capturing on the DPDK port in Packet capturing on a DPDK port using the dpdk-pdump tool. -Configuration -------------- - -Modify the DPDK primary application to initialize the packet capture framework -as mentioned in the above notes and enable the following config options and -build DPDK:: - - CONFIG_RTE_LIBRTE_PMD_PCAP=y - CONFIG_RTE_LIBRTE_PDUMP=y - - Running the Application ----------------------- @@ -122,11 +78,11 @@ inspect them using ``tcpdump``. #. Launch testpmd as the primary application:: - sudo ./app/testpmd -c 0xf0 -n 4 -- -i --port-topology=chained + sudo /app/dpdk-testpmd -c 0xf0 -n 4 -- -i --port-topology=chained #. Launch the pdump tool as follows:: - sudo ./build/app/dpdk-pdump -- \ + sudo /app/dpdk-pdump -- \ --pdump 'port=0,queue=*,rx-dev=/tmp/capture.pcap' #. Send traffic to dpdk_port0 from traffic generator.