diff options
author | Xavier Simonart <xavier.simonart@intel.com> | 2020-04-20 23:25:22 +0200 |
---|---|---|
committer | Xavier Simonart <xavier.simonart@intel.com> | 2020-05-29 23:28:44 +0200 |
commit | fa869940dd9bb459ac599fe80c26c9d3e720fd31 (patch) | |
tree | 67aefe7f36fad283ab690d5d0feae1a547a59487 /VNFs/DPPD-PROX/gen_tap.cfg | |
parent | 6f898f1c73d630bf6e5e75ba1b30d261c8301d2a (diff) |
Add support for vdev tap devices
This commit adds support for the creation of tap devices.
To create a tap device, and associate it with a DPDK port,
add within the port section:
vdev=<tap_name>
local ipv4=<ip_assigned_to_port>
<tap_name> will appear as a kernel network device, with an IP <ip_assigned_to_port>
ARP packets received from the network on the DPDK interface will be forwarded to the kernel.
1st packet which needs to be generated to a new IP will cause an IP packet
to be sent to the kernel (using socket sendto) forcing the kernel to send an ARP_REQUEST.
In this commit, there is no notification from the kernel about ARP table changes.
This is subject to further commits.
Two config files, gen_tap.cfg and swap_tap.cfg have been created. They work one against each other.
*** Note however that they do not work if running within the same host
(with the port being connected back to back) ***
This is due to the fact that the kernel would bypass the ports and use local interface...
Change-Id: Iadeec0d99e3c693472ea44bdb9163a3bf97df2fa
Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
Diffstat (limited to 'VNFs/DPPD-PROX/gen_tap.cfg')
-rw-r--r-- | VNFs/DPPD-PROX/gen_tap.cfg | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/VNFs/DPPD-PROX/gen_tap.cfg b/VNFs/DPPD-PROX/gen_tap.cfg new file mode 100644 index 00000000..fd74672e --- /dev/null +++ b/VNFs/DPPD-PROX/gen_tap.cfg @@ -0,0 +1,64 @@ +;; +;; Copyright (c) 2020 Intel Corporation +;; +;; Licensed under the Apache License, Version 2.0 (the "License"); +;; you may not use this file except in compliance with the License. +;; You may obtain a copy of the License at +;; +;; http://www.apache.org/licenses/LICENSE-2.0 +;; +;; Unless required by applicable law or agreed to in writing, software +;; distributed under the License is distributed on an "AS IS" BASIS, +;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +;; See the License for the specific language governing permissions and +;; limitations under the License. +;; + +[eal options] +-n=4 ; force number of memory channels +no-output=no ; disable DPDK debug output + +[port 0] +name=p0 +vdev=gen_tap +local ipv4=$ip1 + +[defaults] +mempool size=16K + +[global] +start time=5 +name=Basic Gen + +[variables] +$hex_ip1=0a 0a 0a 01 +$hex_ip2=0a 0a 0a 02 +$ip1=10.10.10.1 +$ip2=10.10.10.2 + +[core 0s0] +mode=master + +[core 1s0] +name=p0 +task=0 +mode=gen +sub mode=l3 +tx port=p0 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d ${hex_ip1} ${hex_ip2} 13 88 13 88 00 08 55 7b +pkt size=60 +lat pos=42 +packet id pos=46 +min bulk size=8 + +[core 2s0] +name=nop +task=0 +mode=lat +sub mode=l3 +rx port=p0 +drop=no +lat pos=42 +packet id pos=46 +local ipv4=${ip1} |