Testing shows that creation of 5000 internal ports and using it
to do some meaningful tasks works fine on a 12 cpu hardware.
Since a single port needs one file descriptor and a bridge
needs 3 file descriptors, we will have to increase the file
descriptor limit to a higher number from the current limit of 5000.
7500 feels like a decent increase with enough room for further
scale testing.
Bug #18383.
Signed-off-by: Gurucharan Shetty <gshetty@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
log_success_msg "ovs-vswitchd is already running"
else
# Increase the limit on the number of open file descriptors.
- # On Linux, ovs-vswitchd needs about one file descriptor per
- # switch port, so this allows a very large number of switch
- # ports.
- ulimit -n 5000
+ # On Linux, ovs-vswitchd needs about three file descriptors
+ # per bridge and one file descriptor per bridge port, so this
+ # allows a very large number of bridges and ports.
+ ulimit -n 7500
# Start ovs-vswitchd.
set ovs-vswitchd unix:"$DB_SOCK"
limits assume the use of the Linux kernel datapath.
.
.IP \(bu
-\fBovs\-vswitchd\fR started through \fBovs\-ctl\fR(8) provides a limit of 5000
+\fBovs\-vswitchd\fR started through \fBovs\-ctl\fR(8) provides a limit of 7500
file descriptors. The limits on the number of bridges and ports is decided by
the availability of file descriptors. With the Linux kernel datapath, creation
of a single bridge consumes 3 file descriptors and adding a port consumes