[spp] Proposal - spp_vf(SR-IOV like feature) addition to SPP
Nakamura Hioryuki
nakamura.hiroyuki at po.ntt-tx.co.jp
Mon Dec 25 05:41:48 CET 2017
Hi everyone,
As announced in DPDK Summit, we would like to introduce a SR-IOV like network
functionality to SPP on DPDK17.08[1].
To support such functionality, we have developed new
controller(spp_vf.py) and secondary process(spp_vf).
spp_vf process has three kinds of component, classifier, forwarder and merger.
These components communicate each other via ring-pmd,
and provides SR-IOV like packet classification function according to virtual
MAC address.
Classifier:
This component provides packet forwarding function from one port to one port.
Classifier has table of virtual MAC address.
According to this table, classifier lookups L2 destination MAC address
and determines which port to be transferred to incoming packets.
L2 Multicast feature is also supported.
Forwarder:
This provides function for packet processing from one port to one port.
Incoming packets from port are to be transferred to specific one port.
The direction of this transferring is specified by `port` command.
Merger:
This component provides packet forwarding function from multiple ports to one port.
Incoming packets from multiple ports are to be transferred to one specific port.
The flow of this merging process is specified by `port` command.
By the combination of these component, following SR-IOV like function can be configured.
+----------+ +-----------+
|Classifier|->ringPMD->|Forwarder#1|->vhost->VM#1 --------+
Packet(dstMAC:A/B) | | +-----------+ (vMAC:A) |
------phy--------> | | +-----------+ |
| |->ringPMD->|Forwarder#2|->vhost->VM#2 ---+ |
| | +-----------+ (vMAC:B)| |
+----------+ | |
| |
+----------+ +-----------+ | |
|Merger |<-ringPMD<-|Forwarder#3|<-vhost --==----------+
| | +-----------+ |
<------phy--------| | +-----------+ |
| |<-ringPMD<-|Forwarder#4|<-vhost ---------+
+----------+ +-----------+
Limitaion#1: vlan support is not yet, this feature is in still our backlogs.
Limitaion#2: Support DPDK17.11 is not yet.
Code changes will be posted in the following emails.
Regard,
-- Hiroyuki Nakamura
NTT TechnoCross Corporation
More information about the spp
mailing list