OpenBSD Journal

Parallel IP forwarding activated

Contributed by rueda on from the and-there-was-much-simultaneous-rejoicing dept.

Following much development and testing, parallel IP forwarding has been enabled in -current. The most recent of the relevant commits are:

CVSROOT:	/cvs
Module name:	src
Changes by:	bluhm@cvs.openbsd.org	2022/04/30 15:13:57

Modified files:
	sys/net        : if.c ifq.c 

Log message:
Run IP input and forwarding with shared netlock.  Also distribute
packets from the interface receive rings into multiple net task
queues.
Note that we still have only one softnet task.  So there will be
no concurrency yet, but we can notice wrong exclusive lock assertions.
Soon the final step will be to increase the NET_TASKQ define.
lots of testing Hrvoje Popovski; OK sashan@
and:
CVSROOT:	/cvs
Module name:	src
Changes by:	bluhm@cvs.openbsd.org	2022/05/03 05:47:03

Modified files:
	sys/net        : if.c 

Log message:
Activate parallel IP forwarding.  Start 4 softnet tasks.  Limit the
usage to the number of CPUs.
lots of testing Hrvoje Popovski; OK sashan@ sthen@

We recently ran a report from Hrvoje Popovski regarding his testing.


Latest Articles

Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]