Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/109289/?format=api
http://patches.dpdk.org/api/patches/109289/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20220406151106.2915304-23-juraj.linkes@pantheon.tech/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20220406151106.2915304-23-juraj.linkes@pantheon.tech>", "list_archive_url": "https://inbox.dpdk.org/dev/20220406151106.2915304-23-juraj.linkes@pantheon.tech", "date": "2022-04-06T15:11:04", "name": "[RFC,v1,22/24] dts: merge DTS doc/dts_gsg/usr_guide/sys_reqs.rst to DPDK", "commit_ref": null, "pull_url": null, "state": "rfc", "archived": true, "hash": "759102e1e7cd28dd5e68bc2f947a7ebf525ac41a", "submitter": { "id": 1626, "url": "http://patches.dpdk.org/api/people/1626/?format=api", "name": "Juraj Linkeš", "email": "juraj.linkes@pantheon.tech" }, "delegate": { "id": 1, "url": "http://patches.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20220406151106.2915304-23-juraj.linkes@pantheon.tech/mbox/", "series": [ { "id": 22379, "url": "http://patches.dpdk.org/api/series/22379/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=22379", "date": "2022-04-06T15:10:42", "name": "merge DTS documentation files to DPDK", "version": 1, "mbox": "http://patches.dpdk.org/series/22379/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/109289/comments/", "check": "warning", "checks": "http://patches.dpdk.org/api/patches/109289/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 6BFB4A0508;\n\tWed, 6 Apr 2022 17:14:10 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E76EF42922;\n\tWed, 6 Apr 2022 17:11:42 +0200 (CEST)", "from lb.pantheon.sk (lb.pantheon.sk [46.229.239.20])\n by mails.dpdk.org (Postfix) with ESMTP id B8000428F9\n for <dev@dpdk.org>; Wed, 6 Apr 2022 17:11:35 +0200 (CEST)", "from localhost (localhost [127.0.0.1])\n by lb.pantheon.sk (Postfix) with ESMTP id 240FE16BC0E;\n Wed, 6 Apr 2022 17:11:35 +0200 (CEST)", "from lb.pantheon.sk ([127.0.0.1])\n by localhost (lb.pantheon.sk [127.0.0.1]) (amavisd-new, port 10024)\n with ESMTP id oQE_Hgsrvn_Z; Wed, 6 Apr 2022 17:11:33 +0200 (CEST)", "from entguard.lab.pantheon.local (unknown [46.229.239.141])\n by lb.pantheon.sk (Postfix) with ESMTP id 667BC19E0DE;\n Wed, 6 Apr 2022 17:11:17 +0200 (CEST)" ], "X-Virus-Scanned": "amavisd-new at siecit.sk", "From": "=?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>", "To": "thomas@monjalon.net, david.marchand@redhat.com,\n Honnappa.Nagarahalli@arm.com, ohilyard@iol.unh.edu, lijuan.tu@intel.com", "Cc": "dev@dpdk.org, =?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>", "Subject": "[RFC PATCH v1 22/24] dts: merge DTS\n doc/dts_gsg/usr_guide/sys_reqs.rst to DPDK", "Date": "Wed, 6 Apr 2022 15:11:04 +0000", "Message-Id": "<20220406151106.2915304-23-juraj.linkes@pantheon.tech>", "X-Mailer": "git-send-email 2.25.1", "In-Reply-To": "<20220406151106.2915304-1-juraj.linkes@pantheon.tech>", "References": "<20220406151106.2915304-1-juraj.linkes@pantheon.tech>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "---\n dts/doc/dts_gsg/usr_guide/sys_reqs.rst | 131 +++++++++++++++++++++++++\n 1 file changed, 131 insertions(+)\n create mode 100644 dts/doc/dts_gsg/usr_guide/sys_reqs.rst", "diff": "diff --git a/dts/doc/dts_gsg/usr_guide/sys_reqs.rst b/dts/doc/dts_gsg/usr_guide/sys_reqs.rst\nnew file mode 100644\nindex 0000000000..b91eef9db5\n--- /dev/null\n+++ b/dts/doc/dts_gsg/usr_guide/sys_reqs.rst\n@@ -0,0 +1,131 @@\n+System Requirements\n+===================\n+\n+This chapter describes the packages required to deploy DTS, including Tester and DUT.\n+Tester and DUT should have one interface connected to the same internet, so that they can be accessed by each other from local IP address.\n+The tester and DUT are recommended to install the latest Centos, Redhat or Ubuntu for easily installing DTS(DPDK Test Suite) or DPDK required modules.\n+\n+.. note::\n+\n+ Uubuntu 20.04 are installed for Tester and DUT, and The setup instruction and required packages may be different on different operation systems.\n+\n+Firewall should be disabled on Tester and DUT so that all packets can be accepted by NIC Interface.\n+\n+.. code-block:: console\n+\n+ systemctl disable firewalld.service\n+\n+\n+SSH Service\n+-----------\n+\n+Since DPDK Test Suite Tester communicates with DUT via SSH, please install and start sshd service in your Tester and DUT.\n+\n+.. code-block:: console\n+\n+ apt-get install openssh-server # download / install ssh software\n+ service ssh start # start ssh service\n+\n+Generally DTS use Linux username and password to login, but it also supports to use authorized login.\n+For create authorized login session, user needs to generate RSA authentication keys to ssh connectioni:\n+\n+.. code-block:: console\n+\n+ ssh-keygen -t rsa\n+\n+Python modules\n+--------------\n+\n+To run DTS, `Python3` must be installed, and it uses the following packages:\n+\n+* xlwt: it is used to generate spreadsheet files which compatible with MS Excel 97/2000/XP/2003 XLS files。\n+* numpy: it provides method to deal with array-processing test results.\n+* pexpect: it provides API to automate interactive SSH sessions.\n+* docutils:it is a modular system for processing documentation into useful formats, such as HTML, XML, and LaTeX\n+* pcapy: it is a Python extension module that interfaces with the libpcap packet capture library. Pcapy enables python scripts to capture packets on the network.\n+* xlrd: it is a Python module that extracts data from Excel spreadsheets.\n+* threadpool: it is a Python module that maintains a pool of worker threads to perform time consuming operations in parallel.\n+* scapy: it is a Python program that enables the user to send, sniff and dissect and forge network packets.\n+\n+They are recorded in `requirements.txt`.\n+\n+.. code-block:: console\n+\n+ [root@tester ~]# cat requirements.txt\n+ ...\n+ xlwt==1.3.0\n+ pexpect==4.7.0\n+ numpy==1.18.5\n+ docutils\n+ pcapy\n+ xlrd\n+ scapy==2.4.4\n+ threadpool\n+\n+Recommend installing them quickly with following commands:\n+\n+.. code-block:: console\n+\n+ apt-get install python3-pip\n+ pip3 install -r ../requirements.txt\n+\n+DTS uses python module scapy to forge or decode packets of a wide number of protocols, send them over the wire, capture them, and analyse the packets.\n+We recommend installing scapy-2.4.4, as some protocol such as PFCP, GTPPDUSessionContainer are supported from this version.\n+\n+.. code-block:: console\n+\n+ pip3 install scapy # install default version\n+ pip3 install scapy==2.4.4 # install specific version\n+\n+Here are some differences between scapy 2.4.4 and scapy 2.4.3 about the packet layer:\n+\n+.. table:: Differences between scapy 2.4.3 with scapy 2.4.4\n+\n+ +------------------------+---------------------------------+-----------------------------------------------+-------------------------------------------------------+\n+ | Layer | packet in scapy 2.4.3 | packet in scapy 2.4.4 | Comments |\n+ +========================+=================================+===============================================+=======================================================+\n+ | PPP | PPP(proto=0xc021) | PPP(b\\'\\\\xc0\\\\x21\\') | PPP protocol filed length is 1 byte in scapy2.4.4 |\n+ +------------------------+---------------------------------+-----------------------------------------------+-------------------------------------------------------+\n+ | L2TP | L2TP(\\'\\\\x00\\\\x00\\\\x00\\\\x11\\') | L2TP(b\\'\\\\x00\\\\x00\\\\x00\\\\x11\\') | L2TP is byte type in scapy2.4.4 |\n+ +------------------------+---------------------------------+-----------------------------------------------+-------------------------------------------------------+\n+ | PFCP | N/A | PFCP(S=1, seid=1) | PFCP is not supported in scapy2.4.3 |\n+ +------------------------+---------------------------------+-----------------------------------------------+-------------------------------------------------------+\n+ | GTPPDUSessionContainer | N/A | GTPPDUSessionContainer(type=0, P=1, QFI=0x34) | GTPPDUSessionContainer is not supported in scapy2.4.3 |\n+ +------------------------+---------------------------------+-----------------------------------------------+-------------------------------------------------------+\n+\n+BIOS Setting Prerequisite on x86\n+--------------------------------\n+\n+For the majority of platforms, no special BIOS settings for Tester and DUT.\n+DPDK prefers devices bound to ``vfio-pci`` kernel module, therefore, `VT-x` and `VT-d` should be enabled.\n+\n+.. code-block:: console\n+\n+ Advanced -> Integrated IO Configuration -> Intel(R) VT for Directed I/O <Enabled>\n+ Advanced -> Processor Configuration -> Intel(R) Virtualization Technology <Enabled>\n+\n+DPDK running Prerequisite\n+-------------------------\n+\n+Hugepage support is required for the large memory pool allocation used for packet buffers.\n+DPDK performance will be imporved more with 1G page size than 2M, therefore, recommend to use 1G pages for DPDK.\n+The following options should be passed to Linux Cmdline:\n+\n+.. code-block:: console\n+\n+ hugepagesz=1G hugepages=16 default_hugepagesz=1G\n+\n+For more detail information of DPDK requirements, please refer to `Data Plane Development Kit Getting Started Guide <http://dpdk.org/doc/guides>`_.\n+\n+Performance testing requirements\n+--------------------------------\n+\n+DTS supports three kinds of traffic generators: `Scapy`, `TRex` and `Ixia IxExplorer`. Scapy is for functional testing, TRex and `Ixia IxExplorer` are for performance testing. The mechanism in DTS that mananges traffic generators for performance is called `Pktgen`.\n+\n+`Ixia IxExplorer` is the principal means used to program Ixia hardware and to perform testing on network devices. Ixia is a hardware traffic generator product of `keysight <https://www.keysight.com>`_ company. DTS requires to install TCL (Tool Command Language) package to connect and control `Ixia IxExplorer`:\n+\n+.. code-block:: console\n+\n+ apt-get install tcl\n+\n+`TRex <https://trex-tgn.cisco.com>`_ is an open source software traffic generator fuelled by DPDK. It generates L3-7 traffic and provides in one tool capabilities. DTS requires to install `Trex` and configure it before lunching DTS.\n", "prefixes": [ "RFC", "v1", "22/24" ] }{ "id": 109289, "url": "