[ovs-dev] [PATCH] mac-learning: Increase default mac table size to 8K from 2K

Eelco Chaudron echaudro at redhat.com
Wed Jun 27 11:24:25 UTC 2018

In field deployments of OVS (mostly in combination with OpenStack) we
see that the 2K default MAC forwarding table is too small.

On average this tables is around 5k entries, hence this patch to
increase the default value to the next power of 2, i.e. 8K.

This increase in size does not automatically increase the memory
footprint, as the memory for the MAC entries, are allocated only when

Signed-off-by: Eelco Chaudron <echaudro at redhat.com>
 lib/mac-learning.h   |    2 +-
 vswitchd/vswitch.xml |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/mac-learning.h b/lib/mac-learning.h
index ee14185d9..b1327b830 100644
--- a/lib/mac-learning.h
+++ b/lib/mac-learning.h
@@ -89,7 +89,7 @@
 struct mac_learning;
 /* Default maximum size of a MAC learning table, in entries. */
-#define MAC_DEFAULT_MAX 2048
+#define MAC_DEFAULT_MAX 8192
 /* Time, in seconds, before expiring a mac_entry due to inactivity. */
diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml
index b93da69bd..76094852d 100644
--- a/vswitchd/vswitch.xml
+++ b/vswitchd/vswitch.xml
@@ -1365,7 +1365,7 @@
               type='{"type": "integer", "minInteger": 1}'>
           The maximum number of MAC addresses to learn.  The default is
-          currently 2048.  The value, if specified, is forced into a reasonable
+          currently 8192.  The value, if specified, is forced into a reasonable
           range, currently 10 to 1,000,000.

More information about the dev mailing list