diff options
Diffstat (limited to 'docs/UDP_Replay')
-rw-r--r-- | docs/UDP_Replay/INSTALL.rst | 124 | ||||
-rw-r--r-- | docs/UDP_Replay/README.rst | 71 | ||||
-rw-r--r-- | docs/UDP_Replay/RELEASE_NOTES.rst | 68 |
3 files changed, 0 insertions, 263 deletions
diff --git a/docs/UDP_Replay/INSTALL.rst b/docs/UDP_Replay/INSTALL.rst deleted file mode 100644 index 334f9d8e..00000000 --- a/docs/UDP_Replay/INSTALL.rst +++ /dev/null @@ -1,124 +0,0 @@ -.. This work is licensed under a Creative Commons Attribution 4.0 International -.. License. -.. http://creativecommons.org/licenses/by/4.0 -.. (c) OPNFV, National Center of Scientific Research "Demokritos" and others. - -============================ -UDP_Replay - Installation Guide -============================ - - -UDP_Replay Compilation -=================== - -After downloading (or doing a git clone) in a directory (samplevnf) - -###### Dependencies -* DPDK 16.04: Downloaded and installed via vnf_build.sh or manually from [here](http://fast.dpdk.org/rel/dpdk-16.04.tar.xz) -Both the options are available as part of vnf_build.sh below. -* libpcap-dev -* libzmq -* libcurl - -###### Environment variables - -Apply all the additional patches in 'patches/dpdk_custom_patch/' and build dpdk - -:: - export RTE_SDK=<dpdk 16.04 directory> - export RTE_TARGET=x86_64-native-linuxapp-gcc - -This is done by vnf_build.sh script. - -Auto Build: -========== -$ ./tools/vnf_build.sh in samplevnf root folder - -Follow the steps in the screen from option [1] --> [8] and select option [7] -to build the vnfs. -It will automatically download DPDK 16.04 and any required patches and will setup -everything and build UDP_Replay. - -Following are the options for setup: - -:: - - ---------------------------------------------------------- - Step 1: Environment setup. - ---------------------------------------------------------- - [1] Check OS and network connection - - ---------------------------------------------------------- - Step 2: Download and Install - ---------------------------------------------------------- - [2] Agree to download - [3] Download packages - [4] Download DPDK zip (optional, use it when option 4 fails) - [5] Install DPDK - [6] Setup hugepages - - ---------------------------------------------------------- - Step 3: Build VNF - ---------------------------------------------------------- - [7] Build VNF - - [8] Exit Script - -An UDP_Replay executable will be created at the following location -samplevnf/VNFs/UDP_Replay/build/UDP_Replay - - -Manual Build: -============ -1. Download DPDK 16.04 from dpdk.org - - http://dpdk.org/browse/dpdk/snapshot/dpdk-16.04.zip -2. unzip dpdk-16.04 and apply dpdk patch - - cd dpdk-16.04 - - patch -p0 < VNF_CORE/patches/dpdk_custom_patch/rte_pipeline.patch - - patch -p1 < VNF_CORE/patches/dpdk_custom_patch/i40e-fix-link-management.patch - - patch -p1 < VNF_CORE/patches/dpdk_custom_patch/i40e-fix-Rx-hang-when-disable-LLDP.patch - - patch -p1 < VNF_CORE/patches/dpdk_custom_patch/i40e-fix-link-status-change-interrupt.patch - - patch -p1 < VNF_CORE/patches/dpdk_custom_patch/i40e-fix-VF-bonded-device-link-down.patch - - build dpdk - - make config T=x86_64-native-linuxapp-gcc O=x86_64-native-linuxapp-gcc - - cd x86_64-native-linuxapp-gcc - - make - - Setup huge pages - - For 1G/2M hugepage sizes, for example 1G pages, the size must be specified - explicitly and can also be optionally set as the default hugepage size for - the system. For example, to reserve 8G of hugepage memory in the form of - eight 1G pages, the following options should be passed to the kernel: - * default_hugepagesz=1G hugepagesz=1G hugepages=8 hugepagesz=2M hugepages=2048 - - Add this to Go to /etc/default/grub configuration file. - - Append "default_hugepagesz=1G hugepagesz=1G hugepages=8 hugepagesz=2M hugepages=2048" - to the GRUB_CMDLINE_LINUX entry. -3. Setup Environment Variable - - export RTE_SDK=<samplevnf>/dpdk-16.04 - - export RTE_TARGET=x86_64-native-linuxapp-gcc - - export VNF_CORE=<samplevnf> - or using ./toot/setenv.sh -4. Build UDP_Replay application - - cd <samplevnf>/VNFs/UDP_Replay - - make clean - - make -5. An UDP_Replay executable will be created at the following location - - <samplevnf>/VNFs/UDP_Replay/build/UDP_Replay - -Run -==== - -Setup Port to run VNF: ----------------------- -:: - 1. cd <samplevnf>/dpdk - 3. ./tool/dpdk_nic_bind.py --status <--- List the network device - 2. ./tool/dpdk_nic_bind.py -b igb_uio <PCI Port 0> <PCI Port 1> - .. _More details: http://dpdk.org/doc/guides-16.04/linux_gsg/build_dpdk.html#binding-and-unbinding-network-ports-to-from-the-kernel-modules - - -Run UDP_Replay ----------- -:: - cd <samplevnf>/VNFs/UDP_Replay - ./build/UDP_Replay -c 0xf -n 4 -- -p 0x1 --config="(0,0,1)" - diff --git a/docs/UDP_Replay/README.rst b/docs/UDP_Replay/README.rst deleted file mode 100644 index f5e2af36..00000000 --- a/docs/UDP_Replay/README.rst +++ /dev/null @@ -1,71 +0,0 @@ -.. this work is licensed under a creative commons attribution 4.0 international -.. license. -.. http://creativecommons.org/licenses/by/4.0 -.. (c) opnfv, national center of scientific research "demokritos" and others. - -======================================================== -UDP_Replay -======================================================== - -1 Introduction -============== -This application implements UDP_Replay. The UDP Replay application is a simple example of -packet processing using the DPDK. The application performs UDP replay. This application -is based on l3fwd application from dpdk. Packets are replayed back over the same port as -received. This application is used in VNF approximation. - -2 Compiling the Application -=========================== - -To compile the application: - -Go to the sample application directory: -cd samplevnf/VNF's/UDP_Replay - -export RTE_SDK=/path/to/rte_sdk -cd ${RTE_SDK}/examples/l3fwd -Set the target (a default target is used if not specified). For example: - -export RTE_TARGET=x86_64-native-linuxapp-gcc -See the DPDK Getting Started Guide for possible RTE_TARGET values. - -Build the application: -make - -3 Running the Application -=========================== - -The application has a number of command line options: - -./build/UDP_Replay [EAL options] -- -p PORTMASK - --config(port,queue,lcore)[,(port,queue,lcore)] - --p PORTMASK: Hexadecimal bitmask of ports to configure ---config (port,queue,lcore)[,(port,queue,lcore)]: Determines which queues from -which ports are mapped to which cores. - -For e.g - -For single port -./build/UDP_Replay -c 0xf -n 4 -- -p 0x1 --config="(0,0,1)" - -For dual port -./build/UDP_Replay -c 0xf -n 4 -- -p 0x3 --config="(0,0,1),(1,0,2)" - -In this command: - -The -l option enables cores 1, 2 -The -p option enables ports 0 and 1 -The –config option enables one queue on each port and maps each (port,queue) -pair to a specific core. The following table shows the mapping in -this example: - -Port Queue lcore Description - 0 0 1 Map queue 0 from port 0 to lcore 1. - 1 0 2 Map queue 0 from port 1 to lcore 2. - -For ARP/ICMP support -use the sample config provided under samplevnf/VNFs/UDP_Replay/sample.cfg - -For e.g -./build/UDP_Replay -c 0xf -n 4 -- -s sample_ipv4.cfg -p 0x1 --config="(0,0,1),(1,0,2)" diff --git a/docs/UDP_Replay/RELEASE_NOTES.rst b/docs/UDP_Replay/RELEASE_NOTES.rst deleted file mode 100644 index 0b390b1a..00000000 --- a/docs/UDP_Replay/RELEASE_NOTES.rst +++ /dev/null @@ -1,68 +0,0 @@ -.. This work is licensed under a Creative Commons Attribution 4.0 International -.. License. -.. http://creativecommons.org/licenses/by/4.0 -.. (c) OPNFV, National Center of Scientific Research "Demokritos" and others. - -========================================================= -UDP_Replay -========================================================= - -1. Introduction -================ - -This is a beta release for Sample UDP_Replay application. -This UDP_Replay can application can be run independently (refer INSTALL.rst). - -2. User Guide -=============== -Refer to README.rst for further details on UDP_Replay, HLD, features supported, test -plan. For build configurations and execution requisites please refer to -INSTALL.rst. - -3. Feature for this release -=========================== -This release supports following features as part of UDP_Replay: - - L2l3 stack - - Interface Manager - - ARP solicitation & response. implements ARP states - - Implements ICMPv4 support handling echo request/response messages - - ICMPv6 support handling echo request/response messages - - ND handling neighbour solicitation & neighbour advertisement messages - -4. System requirements - OS and kernel version -============================================== -This is supported on Ubuntu 14.04 and Ubuntu 16.04 and kernel version less than 4.5 - - VNFs on BareMetal support: - OS: Ubuntu 14.04 or 16.04 LTS - kernel: < 4.5 - http://releases.ubuntu.com/16.04/ - Download/Install the image: ubuntu-16.04.1-server-amd64.iso - - VNFs on Standalone Hypervisor - HOST OS: Ubuntu 14.04 or 16.04 LTS - http://releases.ubuntu.com/16.04/ - Download/Install the image: ubuntu-16.04.1-server-amd64.iso - - OVS (DPDK) - 2.5 - - kernel: < 4.5 - - Hypervisor - KVM - - VM OS - Ubuntu 16.04/Ubuntu 14.04 - -5. Known Bugs and limitations -============================= - - Hadware Load Balancer feature is supported on fortville nic FW version 4.53 and below. - - Hardware Checksum offload is not supported for IPv6 traffic. - -6. Future Work -============== -Following would be possible enhancement functionalities - - Automatic enable/disable of synproxy - - Support TCP timestamps with synproxy - - FTP ALG integration - - Performance optimization on different platforms - -7. References -============= -Following links provides additional information - .. _QUICKSTART: http://dpdk.org/doc/guides-16.04/linux_gsg/quick_start.html - .. _DPDKGUIDE: http://dpdk.org/doc/guides-16.04/prog_guide/index.html |