[spp] [PATCH 25/30] doc: add how to use vhost-user support
x-fn-spp at sl.ntt-tx.co.jp
x-fn-spp at sl.ntt-tx.co.jp
Tue Jan 16 06:16:36 CET 2018
From: Hiroyuki Nakamura <nakamura.hioryuki at po.ntt-tx.co.jp>
add description on how to use vhost-user client mode.
* Add information on qemu-kvm version.
* Add and explan optional parameters of spp_vf.
* Update qemu parameter for vhost. (xml set by virsh)
Signed-off-by: Kentaro Watanabe <watanabe.kentaro.z01 at as.ntt-tx.co.jp>
Signed-off-by: Naoki Takada <takada.naoki at lab.ntt.co.jp>
---
docs/spp_vf/how_to_use.md | 24 ++++++++++++++++++++----
docs/spp_vf/sample_usage.md | 10 ++++++----
docs/spp_vf/setup_guide.md | 10 +++++-----
3 files changed, 31 insertions(+), 13 deletions(-)
diff --git a/docs/spp_vf/how_to_use.md b/docs/spp_vf/how_to_use.md
index dee4465..32c1774 100644
--- a/docs/spp_vf/how_to_use.md
+++ b/docs/spp_vf/how_to_use.md
@@ -9,7 +9,7 @@ SPP_VF is a SR-IOV like network functionality for NFV.
## Environment
* Ubuntu 16.04
-* qemu-kvm
+* qemu-kvm 2.7 or later
* DPDK v17.05 or later
## Launch SPP
@@ -56,7 +56,10 @@ In `spp_vf`, spp secondary processes are launched by single command.
Option of dpdk are refer to [dpdk documentation](http://dpdk.org/doc/guides/linux_gsg/build_sample_apps.html#running-a-sample-application).
Options of `spp_vf` are
- * TODO
+ * --client-id : client id
+ * --config : config file path
+ * -s : Port for ip addr and spp secondary
+ * --vhost-client : vhost-user client enable setting
Core assingment and network configuration are defined
in JSON formatted config file.
@@ -65,7 +68,19 @@ config file (test/spp_config/spp_config/vf.json).
```sh
$ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
--c 0x3ffd -n 4 --proc-type=secondary
+-c 0x3ffd -n 4 --proc-type=secondary \
+-- --client-id 1 -s 127.0.0.1:6666 --vhost-client
+```
+
+`--vhost-client` option is used when SPP is a client of vhost-user.
+By choosing not to use `--vhost-client` option,
+It may be possible to use SPP even in qemu (before 2.7 version)
+which can not be used as a vhost-user server.
+
+```sh
+$ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
+-c 0x3ffd -n 4 --proc-type=secondary \
+-- --client-id 1 -s 127.0.0.1:6666
```
You can also indicate which of config you use explicitly with
@@ -78,7 +93,8 @@ defined in each of config files.
```sh
$ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
-c 0x3ffd -n 4 --proc-type=secondary \
--- --config /path/to/config/spp_vf1.json
+-- --client-id 1 --config /path/to/config/spp_vf1.json \
+-s 127.0.0.1:6666 --vhost-client
```
### SPP VM
diff --git a/docs/spp_vf/sample_usage.md b/docs/spp_vf/sample_usage.md
index dcc051a..47abbec 100644
--- a/docs/spp_vf/sample_usage.md
+++ b/docs/spp_vf/sample_usage.md
@@ -41,17 +41,19 @@ launch secondary process after launch primary process.
$ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
-c 0x00fd -n 4 --proc-type=secondary \
-- \
- --process-id 1 \
+ --client-id 1 \
--config /path/to/spp_vf1_without_cmtab.json \
- -s 127.0.0.1:11111
+ -s 127.0.0.1:11111 \
+ --vhost-client
# start secondary 2
$ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
-c 0x3f01 -n 4 --proc-type=secondary \
-- \
- --process-id 2 \
+ --client-id 2 \
--config /path/to/spp_vf2_without_cmtab.json \
- -s 127.0.0.1:11112
+ -s 127.0.0.1:11112 \
+ --vhost-client
```
### Setup network configuration for VMs
diff --git a/docs/spp_vf/setup_guide.md b/docs/spp_vf/setup_guide.md
index 4684cf3..f24e43e 100644
--- a/docs/spp_vf/setup_guide.md
+++ b/docs/spp_vf/setup_guide.md
@@ -3,7 +3,7 @@
## Environment
* Ubuntu 16.04
-* qemu-kvm
+* qemu-kvm 2.7 or later
* DPDK v17.05 or later
## Setting
@@ -205,15 +205,15 @@ $ virsh edit [VM_NAME]
<qemu:arg value='node,memdev=mem'/>
<qemu:arg value='-mem-prealloc'/>
<qemu:arg value='-chardev'/>
- <qemu:arg value='socket,id=chr0,path=/tmp/sock0'/>
+ <qemu:arg value='socket,id=chr0,path=/tmp/sock0,server'/>
<qemu:arg value='-device'/>
- <qemu:arg value='virtio-net-pci,netdev=vhost-net0'/>
+ <qemu:arg value='virtio-net-pci,netdev=vhost-net0,mac=52:54:00:12:34:56'/>
<qemu:arg value='-netdev'/>
<qemu:arg value='vhost-user,id=vhost-net0,chardev=chr0,vhostforce'/>
<qemu:arg value='-chardev'/>
- <qemu:arg value='socket,id=chr1,path=/tmp/sock1'/>
+ <qemu:arg value='socket,id=chr1,path=/tmp/sock1,server'/>
<qemu:arg value='-device'/>
- <qemu:arg value='virtio-net-pci,netdev=vhost-net1'/>
+ <qemu:arg value='virtio-net-pci,netdev=vhost-net1,mac=52:54:00:12:34:57'/>
<qemu:arg value='-netdev'/>
<qemu:arg value='vhost-user,id=vhost-net1,chardev=chr1,vhostforce'/>
</qemu:commandline>
--
1.9.1
More information about the spp
mailing list