diff options
5 files changed, 261 insertions, 46 deletions
diff --git a/doc/book-enea-nfv-access-platform-guide/doc/benchmarks.xml b/doc/book-enea-nfv-access-platform-guide/doc/benchmarks.xml index 7155e44..fa461fa 100644 --- a/doc/book-enea-nfv-access-platform-guide/doc/benchmarks.xml +++ b/doc/book-enea-nfv-access-platform-guide/doc/benchmarks.xml | |||
| @@ -4,18 +4,231 @@ | |||
| 4 | <chapter id="benchmarks"> | 4 | <chapter id="benchmarks"> |
| 5 | <title>Benchmarks</title> | 5 | <title>Benchmarks</title> |
| 6 | 6 | ||
| 7 | <para></para> | ||
| 8 | |||
| 9 | <section id="hw-setup"> | 7 | <section id="hw-setup"> |
| 10 | <title>Hardware Setup</title> | 8 | <title>Hardware Setup</title> |
| 11 | 9 | ||
| 12 | <para></para> | 10 | <para>The following table describes all the needed prequisites for an apt |
| 11 | hardware setup:</para> | ||
| 12 | |||
| 13 | <table> | ||
| 14 | <title>Hardware Setup</title> | ||
| 15 | |||
| 16 | <tgroup cols="2"> | ||
| 17 | <colspec align="left" /> | ||
| 18 | |||
| 19 | <thead> | ||
| 20 | <row> | ||
| 21 | <entry align="center">Item</entry> | ||
| 22 | |||
| 23 | <entry align="center">Description</entry> | ||
| 24 | </row> | ||
| 25 | </thead> | ||
| 26 | |||
| 27 | <tbody> | ||
| 28 | <row> | ||
| 29 | <entry align="left">Server Platform</entry> | ||
| 30 | |||
| 31 | <entry align="left">Supermicro X10SDV-4C-TLN2F | ||
| 32 | http://www.supermicro.com/products/motherboard/xeon/d/X10SDV-4C-TLN2F.cfm</entry> | ||
| 33 | </row> | ||
| 34 | |||
| 35 | <row> | ||
| 36 | <entry align="left">ARCH</entry> | ||
| 37 | |||
| 38 | <entry>x86-64</entry> | ||
| 39 | </row> | ||
| 40 | |||
| 41 | <row> | ||
| 42 | <entry align="left">Processor</entry> | ||
| 43 | |||
| 44 | <entry>1 x Intel Xeon D-1521 (Broadwell), 4 cores, 8 | ||
| 45 | hyper-threaded cores per processor</entry> | ||
| 46 | </row> | ||
| 47 | |||
| 48 | <row> | ||
| 49 | <entry align="left">CPU freq</entry> | ||
| 50 | |||
| 51 | <entry>2.40 GHz</entry> | ||
| 52 | </row> | ||
| 53 | |||
| 54 | <row> | ||
| 55 | <entry align="left">RAM</entry> | ||
| 56 | |||
| 57 | <entry>16GB</entry> | ||
| 58 | </row> | ||
| 59 | |||
| 60 | <row> | ||
| 61 | <entry align="left">Network</entry> | ||
| 62 | |||
| 63 | <entry>Dual integrated 10G ports</entry> | ||
| 64 | </row> | ||
| 65 | |||
| 66 | <row> | ||
| 67 | <entry align="left">Storage</entry> | ||
| 68 | |||
| 69 | <entry>Samsung 850 Pro 128GB SSD</entry> | ||
| 70 | </row> | ||
| 71 | </tbody> | ||
| 72 | </tgroup> | ||
| 73 | </table> | ||
| 74 | |||
| 75 | <para>Generic tests configuration:</para> | ||
| 76 | |||
| 77 | <itemizedlist> | ||
| 78 | <listitem> | ||
| 79 | <para>All tests use one port, one core and one Rx/TX queue for fast | ||
| 80 | path traffic.</para> | ||
| 81 | </listitem> | ||
| 82 | </itemizedlist> | ||
| 13 | </section> | 83 | </section> |
| 14 | 84 | ||
| 15 | <section id="bios"> | 85 | <section id="bios"> |
| 16 | <title>Bios</title> | 86 | <title>BIOS Settings</title> |
| 87 | |||
| 88 | <para>The table below details the BIOS settings for which the default | ||
| 89 | values were changed when doing performance measurements.</para> | ||
| 90 | |||
| 91 | <table> | ||
| 92 | <title>BIOS Settings</title> | ||
| 93 | |||
| 94 | <tgroup cols="4"> | ||
| 95 | <colspec align="left" /> | ||
| 96 | |||
| 97 | <thead> | ||
| 98 | <row> | ||
| 99 | <entry align="center">Menu Path</entry> | ||
| 100 | |||
| 101 | <entry align="center">Setting Name</entry> | ||
| 102 | |||
| 103 | <entry align="center">Enea NFV Access value</entry> | ||
| 104 | |||
| 105 | <entry align="center">BIOS Default value</entry> | ||
| 106 | </row> | ||
| 107 | </thead> | ||
| 108 | |||
| 109 | <tbody> | ||
| 110 | <row> | ||
| 111 | <entry align="left">CPU Configuration</entry> | ||
| 112 | |||
| 113 | <entry align="left">Direct Cache Access (DCA)</entry> | ||
| 114 | |||
| 115 | <entry>Enable</entry> | ||
| 116 | |||
| 117 | <entry>Auto</entry> | ||
| 118 | </row> | ||
| 119 | |||
| 120 | <row> | ||
| 121 | <entry>CPU Configuration / Advanced Power Management | ||
| 122 | Configuration</entry> | ||
| 123 | |||
| 124 | <entry align="left">EIST (P-States)</entry> | ||
| 125 | |||
| 126 | <entry>Disable</entry> | ||
| 127 | |||
| 128 | <entry>Enable</entry> | ||
| 129 | </row> | ||
| 130 | |||
| 131 | <row> | ||
| 132 | <entry>CPU Configuration / Advanced Power Management Configuration | ||
| 133 | / CPU C State Control</entry> | ||
| 134 | |||
| 135 | <entry align="left">CPU C State</entry> | ||
| 136 | |||
| 137 | <entry>Disable</entry> | ||
| 138 | |||
| 139 | <entry>Enable</entry> | ||
| 140 | </row> | ||
| 141 | |||
| 142 | <row> | ||
| 143 | <entry>CPU Configuration / Advanced Power Management Configuration | ||
| 144 | / CPU Advanced PM Turning / Energy Perf BIAS</entry> | ||
| 145 | |||
| 146 | <entry align="left">Energy Performance Tuning</entry> | ||
| 147 | |||
| 148 | <entry>Disable</entry> | ||
| 149 | |||
| 150 | <entry>Enable</entry> | ||
| 151 | </row> | ||
| 152 | |||
| 153 | <row> | ||
| 154 | <entry>CPU Configuration / Advanced Power Management Configuration | ||
| 155 | / CPU Advanced PM Turning / Energy Perf BIAS</entry> | ||
| 156 | |||
| 157 | <entry align="left">Energy Performance BIAS Setting</entry> | ||
| 158 | |||
| 159 | <entry>Performance</entry> | ||
| 160 | |||
| 161 | <entry>Balanced Performance</entry> | ||
| 162 | </row> | ||
| 163 | |||
| 164 | <row> | ||
| 165 | <entry>CPU Configuration / Advanced Power Management Configuration | ||
| 166 | / CPU Advanced PM Turning / Energy Perf BIAS</entry> | ||
| 167 | |||
| 168 | <entry align="left">Power/Performance Switch</entry> | ||
| 169 | |||
| 170 | <entry>Disable</entry> | ||
| 171 | |||
| 172 | <entry>Enable</entry> | ||
| 173 | </row> | ||
| 174 | |||
| 175 | <row> | ||
| 176 | <entry>CPU Configuration / Advanced Power Management Configuration | ||
| 177 | / CPU Advanced PM Turning / Program PowerCTL _MSR</entry> | ||
| 178 | |||
| 179 | <entry align="left">Energy Efficient Turbo</entry> | ||
| 180 | |||
| 181 | <entry>Disable</entry> | ||
| 182 | |||
| 183 | <entry>Enable</entry> | ||
| 184 | </row> | ||
| 185 | |||
| 186 | <row> | ||
| 187 | <entry>Chipset Configuration / North Bridge / IIO | ||
| 188 | Configuration</entry> | ||
| 189 | |||
| 190 | <entry align="left">EV DFX Features</entry> | ||
| 191 | |||
| 192 | <entry>Enable</entry> | ||
| 193 | |||
| 194 | <entry>Disable</entry> | ||
| 195 | </row> | ||
| 196 | |||
| 197 | <row> | ||
| 198 | <entry>Chipset Configuration / North Bridge / Memory | ||
| 199 | Configuration</entry> | ||
| 200 | |||
| 201 | <entry align="left">Enforce POR</entry> | ||
| 202 | |||
| 203 | <entry>Disable</entry> | ||
| 204 | |||
| 205 | <entry>Enable</entry> | ||
| 206 | </row> | ||
| 207 | |||
| 208 | <row> | ||
| 209 | <entry>Chipset Configuration / North Bridge / Memory | ||
| 210 | Configuration</entry> | ||
| 211 | |||
| 212 | <entry align="left">Memory Frequency</entry> | ||
| 213 | |||
| 214 | <entry>2400</entry> | ||
| 215 | |||
| 216 | <entry>Auto</entry> | ||
| 217 | </row> | ||
| 218 | |||
| 219 | <row> | ||
| 220 | <entry>Chipset Configuration / North Bridge / Memory | ||
| 221 | Configuration</entry> | ||
| 222 | |||
| 223 | <entry align="left">DRAM RAPL Baseline</entry> | ||
| 224 | |||
| 225 | <entry>Disable</entry> | ||
| 17 | 226 | ||
| 18 | <para></para> | 227 | <entry>DRAM RAPL Mode 1</entry> |
| 228 | </row> | ||
| 229 | </tbody> | ||
| 230 | </tgroup> | ||
| 231 | </table> | ||
| 19 | </section> | 232 | </section> |
| 20 | 233 | ||
| 21 | <section id="use-cases"> | 234 | <section id="use-cases"> |
| @@ -25,14 +238,14 @@ | |||
| 25 | <title>Docker related benchmarks</title> | 238 | <title>Docker related benchmarks</title> |
| 26 | 239 | ||
| 27 | <section> | 240 | <section> |
| 28 | <title>Use Case - Forward traffic in docker</title> | 241 | <title>Forward traffic in Docker</title> |
| 29 | 242 | ||
| 30 | <para>Benchmarking traffic forwarding using testpmd in a Docker | 243 | <para>Benchmarking traffic forwarding using testpmd in a Docker |
| 31 | container.</para> | 244 | container.</para> |
| 32 | 245 | ||
| 33 | <para>Pktgen is used to generate UDP traffic that will reach testpmd, | 246 | <para>Pktgen is used to generate UDP traffic that will reach testpmd, |
| 34 | running in a docker image. It will then be forwarded back to source on | 247 | running in a Docker image. It will then be forwarded back to source on |
| 35 | the return trip (Forwarding). </para> | 248 | the return trip (Forwarding).</para> |
| 36 | 249 | ||
| 37 | <para>This test measures:</para> | 250 | <para>This test measures:</para> |
| 38 | 251 | ||
| @@ -92,7 +305,7 @@ processor.max_cstate=0 mce=ignore_ce audit=0 nmi_watchdog=0 iommu=pt / | |||
| 92 | intel_iommu=on hugepagesz=1GB hugepages=8 default_hugepagesz=1GB / | 305 | intel_iommu=on hugepagesz=1GB hugepages=8 default_hugepagesz=1GB / |
| 93 | hugepagesz=2M hugepages=2048 vfio_iommu_type1.allow_unsafe_interrupts=1</programlisting> | 306 | hugepagesz=2M hugepages=2048 vfio_iommu_type1.allow_unsafe_interrupts=1</programlisting> |
| 94 | 307 | ||
| 95 | <para>It is expected to have docker/guest image on target. Configure | 308 | <para>It is expected to have Docker/guest image on target. Configure |
| 96 | the OVS bridge:<programlisting># OVS old config clean-up | 309 | the OVS bridge:<programlisting># OVS old config clean-up |
| 97 | killall ovsdb-server ovs-vswitchd | 310 | killall ovsdb-server ovs-vswitchd |
| 98 | rm -rf /etc/openvswitch/* | 311 | rm -rf /etc/openvswitch/* |
| @@ -286,8 +499,8 @@ start</programlisting><table> | |||
| 286 | </section> | 499 | </section> |
| 287 | 500 | ||
| 288 | <section id="usecase-three-four"> | 501 | <section id="usecase-three-four"> |
| 289 | <title>Use Case - Forward traffic from Docker to another Docker on the | 502 | <title>Forward traffic from Docker to another Docker on the same |
| 290 | same host</title> | 503 | host</title> |
| 291 | 504 | ||
| 292 | <para>Benchmark a combo test using testpmd running in two Docker | 505 | <para>Benchmark a combo test using testpmd running in two Docker |
| 293 | instances, one which Forwards traffic to the second one, which | 506 | instances, one which Forwards traffic to the second one, which |
| @@ -396,13 +609,13 @@ ovs-ofctl add-flow ovsbr0 in_port=2,action=output:1</programlisting>Import a | |||
| 396 | --rxq=1 --txq=1 --txd=512 --rxd=512 --txqflags=0xf00 --port-topology=chained</programlisting>Configure | 609 | --rxq=1 --txq=1 --txd=512 --rxd=512 --txqflags=0xf00 --port-topology=chained</programlisting>Configure |
| 397 | it in termination mode:<programlisting>set fwd rxonly</programlisting>Run | 610 | it in termination mode:<programlisting>set fwd rxonly</programlisting>Run |
| 398 | the testpmd application:<programlisting>start</programlisting>Open a | 611 | the testpmd application:<programlisting>start</programlisting>Open a |
| 399 | new console to the host and start the second docker | 612 | new console to the host and start the second Docker |
| 400 | instance:<programlisting>docker run -it --rm --cpuset-cpus=0,1 -v /var/run/openvswitch/:/var/run/openvswitch/ / | 613 | instance:<programlisting>docker run -it --rm --cpuset-cpus=0,1 -v /var/run/openvswitch/:/var/run/openvswitch/ / |
| 401 | -v /mnt/huge:/mnt/huge el7_guest /bin/bash</programlisting>In the second | 614 | -v /mnt/huge:/mnt/huge el7_guest /bin/bash</programlisting>In the second |
| 402 | container start testpmd:<programlisting>testpmd -c 0x0F --file-prefix prog2 --socket-mem 512 --no-pci / | 615 | container start testpmd:<programlisting>testpmd -c 0x0F --file-prefix prog2 --socket-mem 512 --no-pci / |
| 403 | --vdev=virtio_user0,path=/var/run/openvswitch/vhost-user2 / | 616 | --vdev=virtio_user0,path=/var/run/openvswitch/vhost-user2 / |
| 404 | -d /usr/lib/librte_pmd_virtio.so.1.1 -- -i --disable-hw-vlan</programlisting>Run | 617 | -d /usr/lib/librte_pmd_virtio.so.1.1 -- -i --disable-hw-vlan</programlisting>Run |
| 405 | the TestPmd application in the second docker:<programlisting>testpmd -c 0x3 -n 2 --file-prefix prog2 --socket-mem 512 --no-pci / | 618 | the TestPmd application in the second Docker:<programlisting>testpmd -c 0x3 -n 2 --file-prefix prog2 --socket-mem 512 --no-pci / |
| 406 | --vdev=virtio_user0,path=/var/run/openvswitch/vhost-user2 / | 619 | --vdev=virtio_user0,path=/var/run/openvswitch/vhost-user2 / |
| 407 | -d /usr/lib/librte_pmd_virtio.so.1.1 -- --burst 64 --disable-hw-vlan / | 620 | -d /usr/lib/librte_pmd_virtio.so.1.1 -- --burst 64 --disable-hw-vlan / |
| 408 | --disable-rss -i --portmask=0x1 --coremask=0x2 --nb-cores=1 --rxq=1 / | 621 | --disable-rss -i --portmask=0x1 --coremask=0x2 --nb-cores=1 --rxq=1 / |
| @@ -414,7 +627,7 @@ ovs-ofctl add-flow ovsbr0 in_port=2,action=output:1</programlisting>Import a | |||
| 414 | should be used in testpmd applications.</para> | 627 | should be used in testpmd applications.</para> |
| 415 | 628 | ||
| 416 | <table> | 629 | <table> |
| 417 | <title>Results </title> | 630 | <title>Results</title> |
| 418 | 631 | ||
| 419 | <tgroup cols="5"> | 632 | <tgroup cols="5"> |
| 420 | <tbody> | 633 | <tbody> |
| @@ -495,15 +708,15 @@ ovs-ofctl add-flow ovsbr0 in_port=2,action=output:1</programlisting>Import a | |||
| 495 | <title>VM related benchmarks</title> | 708 | <title>VM related benchmarks</title> |
| 496 | 709 | ||
| 497 | <section id="usecase-four"> | 710 | <section id="usecase-four"> |
| 498 | <title>Use Case - Forward/termination traffic in one VM</title> | 711 | <title>Forward/termination traffic in one VM</title> |
| 499 | 712 | ||
| 500 | <para>Benchmarking traffic (UDP) forwarding and termination using | 713 | <para>Benchmarking traffic (UDP) forwarding and termination using |
| 501 | testpmd in a virtual machine. </para> | 714 | testpmd in a virtual machine.</para> |
| 502 | 715 | ||
| 503 | <para>The Pktgen application is used to generate traffic that will | 716 | <para>The Pktgen application is used to generate traffic that will |
| 504 | reach testpmd running on a virtual machine, and be forwarded back to | 717 | reach testpmd running on a virtual machine, and be forwarded back to |
| 505 | source on the return trip. With the same setup a second measurement | 718 | source on the return trip. With the same setup a second measurement |
| 506 | will be done with traffic termination in the virtual machine. </para> | 719 | will be done with traffic termination in the virtual machine.</para> |
| 507 | 720 | ||
| 508 | <para>This test case measures:</para> | 721 | <para>This test case measures:</para> |
| 509 | 722 | ||
| @@ -778,7 +991,7 @@ show port stats 0</programlisting><table> | |||
| 778 | </section> | 991 | </section> |
| 779 | 992 | ||
| 780 | <section id="usecase-six"> | 993 | <section id="usecase-six"> |
| 781 | <title>Use Case - Forward traffic between two VMs</title> | 994 | <title>Forward traffic between two VMs</title> |
| 782 | 995 | ||
| 783 | <para>Benchmark a combo test using two virtual machines, the first | 996 | <para>Benchmark a combo test using two virtual machines, the first |
| 784 | with traffic forwarding to the second, which terminates it.</para> | 997 | with traffic forwarding to the second, which terminates it.</para> |
diff --git a/doc/book-enea-nfv-access-platform-guide/doc/container_virtualization.xml b/doc/book-enea-nfv-access-platform-guide/doc/container_virtualization.xml index c6ce223..055de7c 100644 --- a/doc/book-enea-nfv-access-platform-guide/doc/container_virtualization.xml +++ b/doc/book-enea-nfv-access-platform-guide/doc/container_virtualization.xml | |||
| @@ -15,7 +15,7 @@ | |||
| 15 | <para>The software container mechanism uses resource isolation features | 15 | <para>The software container mechanism uses resource isolation features |
| 16 | inside the Linux kernel, such as cgroups and kernel namespaces to allow | 16 | inside the Linux kernel, such as cgroups and kernel namespaces to allow |
| 17 | multiple containers to run within a single Linux instance, avoiding the | 17 | multiple containers to run within a single Linux instance, avoiding the |
| 18 | overhead of starting and maintaining virtual machines. </para> | 18 | overhead of starting and maintaining virtual machines.</para> |
| 19 | 19 | ||
| 20 | <para>Containers are lightweight and include everything needed to run | 20 | <para>Containers are lightweight and include everything needed to run |
| 21 | themselves: code, runtime, system tools, system libraries and settings. | 21 | themselves: code, runtime, system tools, system libraries and settings. |
| @@ -23,7 +23,7 @@ | |||
| 23 | software is isolated from its surroundings. For example, differences | 23 | software is isolated from its surroundings. For example, differences |
| 24 | between development and staging environments can be kept separate in order | 24 | between development and staging environments can be kept separate in order |
| 25 | to reduce conflicts between teams running different software on the same | 25 | to reduce conflicts between teams running different software on the same |
| 26 | infrastructure. </para> | 26 | infrastructure.</para> |
| 27 | 27 | ||
| 28 | <para>For a better understanding of what Docker is and how it works, the | 28 | <para>For a better understanding of what Docker is and how it works, the |
| 29 | official documentation provided on the Docker website should be consulted: | 29 | official documentation provided on the Docker website should be consulted: |
| @@ -37,12 +37,10 @@ | |||
| 37 | system is running the daemon correctly. This container can be launched | 37 | system is running the daemon correctly. This container can be launched |
| 38 | by simply running:</para> | 38 | by simply running:</para> |
| 39 | 39 | ||
| 40 | <programlisting>>docker run hello-world | 40 | <programlisting>docker run hello-world</programlisting> |
| 41 | 41 | ||
| 42 | Hello from Docker!</programlisting> | 42 | <para>If your installation is working correctly, the following message |
| 43 | 43 | should be outputted:<programlisting>Hello from Docker!</programlisting></para> | |
| 44 | <para>This message shows that your installation appears to be working | ||
| 45 | correctly.</para> | ||
| 46 | </section> | 44 | </section> |
| 47 | 45 | ||
| 48 | <section id="run-enfv-guest-image"> | 46 | <section id="run-enfv-guest-image"> |
| @@ -52,17 +50,17 @@ Hello from Docker!</programlisting> | |||
| 52 | other container can. Before starting an Enea NFV Access Platform guest | 50 | other container can. Before starting an Enea NFV Access Platform guest |
| 53 | image, a root filesystem has to be imported in Docker:</para> | 51 | image, a root filesystem has to be imported in Docker:</para> |
| 54 | 52 | ||
| 55 | <programlisting>>docker import enea-linux-virtualization-guest-x86-64.tar.gz el7guest</programlisting> | 53 | <programlisting>docker import enea-linux-virtualization-guest-qemux86-64.tar.gz el7guest</programlisting> |
| 56 | 54 | ||
| 57 | <para>To check that the Docker image has been imported successfully, | 55 | <para>To check that the Docker image has been imported successfully, |
| 58 | run:</para> | 56 | run:</para> |
| 59 | 57 | ||
| 60 | <programlisting>>docker images</programlisting> | 58 | <programlisting>docker images</programlisting> |
| 61 | 59 | ||
| 62 | <para>Finally, start an Enea NFV Access Platform container with | 60 | <para>Finally, start an Enea NFV Access Platform container with |
| 63 | <literal>bash</literal> running as the shell, by running:</para> | 61 | <literal>bash</literal> running as the shell, by running:</para> |
| 64 | 62 | ||
| 65 | <programlisting>>docker run -it el7guest /bin/bash</programlisting> | 63 | <programlisting>docker run -it el7guest /bin/bash</programlisting> |
| 66 | </section> | 64 | </section> |
| 67 | 65 | ||
| 68 | <section id="attach-ext-resources-docker-containers"> | 66 | <section id="attach-ext-resources-docker-containers"> |
| @@ -77,7 +75,7 @@ Hello from Docker!</programlisting> | |||
| 77 | <literal>roots</literal> home folder to a container, the command line | 75 | <literal>roots</literal> home folder to a container, the command line |
| 78 | for Docker should have the following format:</para> | 76 | for Docker should have the following format:</para> |
| 79 | 77 | ||
| 80 | <programlisting>>docker run -it -v /home/root:/home/host_root/ el7guest /bin/bash</programlisting> | 78 | <programlisting>docker run -it -v /home/root:/home/host_root/ el7guest /bin/bash</programlisting> |
| 81 | 79 | ||
| 82 | <para>To check that folders have been properly passed from the host to | 80 | <para>To check that folders have been properly passed from the host to |
| 83 | the container, create a file in the source folder on the host root | 81 | the container, create a file in the source folder on the host root |
| @@ -103,7 +101,7 @@ Hello from Docker!</programlisting> | |||
| 103 | <para>Mapping a file descriptor is done in a similar way, but the | 101 | <para>Mapping a file descriptor is done in a similar way, but the |
| 104 | <literal>-v</literal> flag needs to point directly to it:</para> | 102 | <literal>-v</literal> flag needs to point directly to it:</para> |
| 105 | 103 | ||
| 106 | <programlisting>>docker run -it --rm -v /var/run/openvswitch/vhost-user1 el7guest /bin/bash</programlisting> | 104 | <programlisting>docker run -it --rm -v /var/run/openvswitch/vhost-user1 el7guest /bin/bash</programlisting> |
| 107 | </listitem> | 105 | </listitem> |
| 108 | </itemizedlist> | 106 | </itemizedlist> |
| 109 | </section> | 107 | </section> |
| @@ -118,7 +116,7 @@ Hello from Docker!</programlisting> | |||
| 118 | <literal>/mnt/huge</literal> location, a container can also access | 116 | <literal>/mnt/huge</literal> location, a container can also access |
| 119 | hugepages by being launched with:</para> | 117 | hugepages by being launched with:</para> |
| 120 | 118 | ||
| 121 | <programlisting>>docker run -it -v /mnt/huge el7guest /bin/bash</programlisting> | 119 | <programlisting>docker run -it -v /mnt/huge el7guest /bin/bash</programlisting> |
| 122 | </section> | 120 | </section> |
| 123 | 121 | ||
| 124 | <section id="access-pci-bus"> | 122 | <section id="access-pci-bus"> |
| @@ -131,7 +129,7 @@ Hello from Docker!</programlisting> | |||
| 131 | container if the <literal>--privileged</literal> flag is passed to the | 129 | container if the <literal>--privileged</literal> flag is passed to the |
| 132 | command line:</para> | 130 | command line:</para> |
| 133 | 131 | ||
| 134 | <programlisting>>docker run --privileged -it el7guest /bin/bash</programlisting> | 132 | <programlisting>docker run --privileged -it el7guest /bin/bash</programlisting> |
| 135 | </section> | 133 | </section> |
| 136 | </section> | 134 | </section> |
| 137 | </section> | 135 | </section> |
diff --git a/doc/book-enea-nfv-access-platform-guide/doc/dpdk.xml b/doc/book-enea-nfv-access-platform-guide/doc/dpdk.xml index 91b36d3..e96dd80 100644 --- a/doc/book-enea-nfv-access-platform-guide/doc/dpdk.xml +++ b/doc/book-enea-nfv-access-platform-guide/doc/dpdk.xml | |||
| @@ -94,7 +94,8 @@ mount -t hugetlbfs nodev /mnt/huge</programlisting> | |||
| 94 | <listitem> | 94 | <listitem> |
| 95 | <para>On board 1, start the Pktgen application:</para> | 95 | <para>On board 1, start the Pktgen application:</para> |
| 96 | 96 | ||
| 97 | <programlisting>cd /usr/share/apps/pktgen/./pktgen -c 0x7 -n 4 --socket-mem 1024 -- -P -m "[1:2].0"</programlisting> | 97 | <programlisting>cd /usr/share/apps/pktgen/ |
| 98 | ./pktgen -c 0x7 -n 4 --socket-mem 1024 -- -P -m "[1:2].0"</programlisting> | ||
| 98 | 99 | ||
| 99 | <para>In the Pktgen console, run:</para> | 100 | <para>In the Pktgen console, run:</para> |
| 100 | 101 | ||
diff --git a/doc/book-enea-nfv-access-platform-guide/doc/getting_started.xml b/doc/book-enea-nfv-access-platform-guide/doc/getting_started.xml index aa0dcb5..913ba81 100644 --- a/doc/book-enea-nfv-access-platform-guide/doc/getting_started.xml +++ b/doc/book-enea-nfv-access-platform-guide/doc/getting_started.xml | |||
| @@ -85,7 +85,9 @@ | |||
| 85 | -- rmc.db | 85 | -- rmc.db |
| 86 | /* Central RMC Database */ | 86 | /* Central RMC Database */ |
| 87 | -- systemd-bootx64.efi | 87 | -- systemd-bootx64.efi |
| 88 | /* systemd-boot EFI file */</programlisting> | 88 | /* systemd-boot EFI file */ |
| 89 | -- grub-efi-bootx64.efi | ||
| 90 | /* GRUB EFI file */</programlisting> | ||
| 89 | </section> | 91 | </section> |
| 90 | 92 | ||
| 91 | <section id="docs"> | 93 | <section id="docs"> |
| @@ -171,7 +173,7 @@ label el_ramfs | |||
| 171 | the Ethernet interface used for PXE boot. From the PXE Boot Menu select | 173 | the Ethernet interface used for PXE boot. From the PXE Boot Menu select |
| 172 | <emphasis role="bold">Enea Linux_RAMfs</emphasis>. Once the Enea NFV | 174 | <emphasis role="bold">Enea Linux_RAMfs</emphasis>. Once the Enea NFV |
| 173 | Access Platform is started you can partition the HDD/SDD and install | 175 | Access Platform is started you can partition the HDD/SDD and install |
| 174 | GRUB as described in in the following section.s</para> | 176 | GRUB as described in in the following section.</para> |
| 175 | </section> | 177 | </section> |
| 176 | 178 | ||
| 177 | <section id="install-grub"> | 179 | <section id="install-grub"> |
| @@ -187,9 +189,10 @@ label el_ramfs | |||
| 187 | </listitem> | 189 | </listitem> |
| 188 | 190 | ||
| 189 | <listitem> | 191 | <listitem> |
| 190 | <para><literal>e2fsprogs-mke2fs_1.43.4-r0.0_amd64.deb, | 192 | <para><literal>e2fsprogs-mke2fs_1.43.4-r0.0_amd64.deb,/</literal></para> |
| 191 | dosfstools_4.1-r0.0_amd64.deb</literal> - available under | 193 | |
| 192 | <literal>inteld1521/deb</literal>.</para> | 194 | <para><literal>dosfstools_4.1-r0.0_amd64.deb</literal> - available |
| 195 | under <literal>inteld1521/deb</literal>.</para> | ||
| 193 | </listitem> | 196 | </listitem> |
| 194 | </itemizedlist> | 197 | </itemizedlist> |
| 195 | 198 | ||
diff --git a/doc/book-enea-nfv-access-platform-guide/doc/hypervisor_virtualization.xml b/doc/book-enea-nfv-access-platform-guide/doc/hypervisor_virtualization.xml index 6242de4..f7f186c 100644 --- a/doc/book-enea-nfv-access-platform-guide/doc/hypervisor_virtualization.xml +++ b/doc/book-enea-nfv-access-platform-guide/doc/hypervisor_virtualization.xml | |||
| @@ -440,8 +440,8 @@ $ testpmd -c 0x7 -- -i --rxq=2 --txq=2 --nb-cores=2 ...</programlisting> | |||
| 440 | containers by referencing the network in the guest XML file. It is | 440 | containers by referencing the network in the guest XML file. It is |
| 441 | possible to have a virtual network persistently running on the host by | 441 | possible to have a virtual network persistently running on the host by |
| 442 | starting the network with command <command>virsh net-define</command> | 442 | starting the network with command <command>virsh net-define</command> |
| 443 | instead of the previously mentioned <command>virsh net-create</command>. | 443 | instead of the previously mentioned <command>virsh |
| 444 | </para> | 444 | net-create</command>.</para> |
| 445 | 445 | ||
| 446 | <para>An example for the sample network defined in | 446 | <para>An example for the sample network defined in |
| 447 | <literal>meta-vt/recipes-example/virt-example/files/example-net.xml</literal>:</para> | 447 | <literal>meta-vt/recipes-example/virt-example/files/example-net.xml</literal>:</para> |
| @@ -462,17 +462,17 @@ $ testpmd -c 0x7 -- -i --rxq=2 --txq=2 --nb-cores=2 ...</programlisting> | |||
| 462 | </interface></programlisting> | 462 | </interface></programlisting> |
| 463 | 463 | ||
| 464 | <para>The following presented here are a few modes of network access | 464 | <para>The following presented here are a few modes of network access |
| 465 | from guest using virsh:</para> | 465 | from guest using <command>virsh</command>:</para> |
| 466 | 466 | ||
| 467 | <itemizedlist> | 467 | <itemizedlist> |
| 468 | <listitem> | 468 | <listitem> |
| 469 | <para><emphasis role="bold">vhost-user interface</emphasis></para> | 469 | <para><emphasis role="bold">vhost-user interface</emphasis></para> |
| 470 | 470 | ||
| 471 | <para>See Openvswitch chapter on how to create vhost-user interface | 471 | <para>See the Open vSwitch chapter on how to create vhost-user |
| 472 | using OpenVSwitch. Currently there is no Open vSwitch support for | 472 | interface using Open vSwitch. Currently there is no Open vSwitch |
| 473 | networks that are managed by libvirt (e.g. NAT). As of now, only | 473 | support for networks that are managed by libvirt (e.g. NAT). As of |
| 474 | bridged networks are supported (those where the user has to manually | 474 | now, only bridged networks are supported (those where the user has |
| 475 | create the bridge).</para> | 475 | to manually create the bridge).</para> |
| 476 | 476 | ||
| 477 | <programlisting> <interface type='vhostuser'> | 477 | <programlisting> <interface type='vhostuser'> |
| 478 | <mac address='00:00:00:00:00:01'/> | 478 | <mac address='00:00:00:00:00:01'/> |
