]> git.proxmox.com Git - mirror_ovs.git/commit
dpif-netdev: Add SMC cache after EMC cache
authorYipeng Wang <yipeng1.wang@intel.com>
Tue, 10 Jul 2018 10:14:06 +0000 (03:14 -0700)
committerIan Stokes <ian.stokes@intel.com>
Tue, 24 Jul 2018 16:01:03 +0000 (17:01 +0100)
commit60d8ccae135f046a313a64d5f71822177b3c2371
treee5c152d2677e17bfa521f27dccc165fd65b923d8
parent1ac690899592f97520aa1c959a623175e642f0a4
dpif-netdev: Add SMC cache after EMC cache

This patch adds a signature match cache (SMC) after exact match
cache (EMC). The difference between SMC and EMC is SMC only stores
a signature of a flow thus it is much more memory efficient. With
same memory space, EMC can store 8k flows while SMC can store 1M
flows. It is generally beneficial to turn on SMC but turn off EMC
when traffic flow count is much larger than EMC size.

SMC cache will map a signature to an dp_netdev_flow index in
flow_table. Thus, we add two new APIs in cmap for lookup key by
index and lookup index by key.

For now, SMC is an experimental feature that it is turned off by
default. One can turn it on using ovsdb options.

Signed-off-by: Yipeng Wang <yipeng1.wang@intel.com>
Co-authored-by: Jan Scheurich <jan.scheurich@ericsson.com>
Signed-off-by: Jan Scheurich <jan.scheurich@ericsson.com>
Acked-by: Billy O'Mahony <billy.o.mahony@intel.com>
Signed-off-by: Ian Stokes <ian.stokes@intel.com>
Documentation/topics/dpdk/bridge.rst
NEWS
lib/cmap.c
lib/cmap.h
lib/dpif-netdev-perf.h
lib/dpif-netdev.c
tests/pmd.at
vswitchd/vswitch.xml