Wunet Source Code
This page provides links to the source code for the wunet overlay network.
-
Router.
This includes the main program for the router and the top
level processing loop. It instantiates a number of other
components that are described below.
Header and
Source files.
There is a second version of
wuRouter.c in the file
wuRouterX.c.
This version suppresses most of the calls to gettimeofday to
reduce its impact on the performance. It is intended to be
used in conjunction with ioProcX.c.
-
Link Table.
This implements the router's link table, which contains information
about each of the router's virtual links.
Header and
Source files.
-
Virtual Network Table.
This implements the router's virtual network table, which defines
which virtual networks are in use and what their associated links are.
Header and
Source files.
-
Routing Table.
This implements the router's routing table, which identifies the
outgoing link on which to forward a packet based on its
(vnet, destination address) pair.
Header and
Source files.
-
Queue Manager.
This implements the router's queue management subsystem.
This version provides a single rat-controlled queue for each
output link.
Header and
Source files.
-
Packet Store.
This implements the router's packet storage subsystem which provides
packet header data structures and buffers.
Header and
Source files.
-
IO Processing.
This implements the router's IO processing subsystem,
which handles all socket IO.
Header and
Source files.
There is a second version of
ioProc in the files
ioProcX.h and
ioProcX.c.
This version eliminates the socket IO calls to reduce their
impact on performance. Instead, packets are generated artificially,
according to a script.
This version makes it possible to get a better sense of the
performance of the core wuRouter code.
It is intended to be used in conjunction with wuRouterX.c.
-
Traffic Generator.
This implements a simple traffic generator that can be used to send
packets through a wunet network in the ONL context.
Header and
Source files.
-
Scripts.
These scripts are provided to make it easier to run the wunet overlay
within ONL. The scripts
wuRscript and
wuHscript
should be installed in ~/bin on onlsrv and made executable.
You may use these in scripts that you write yourself.
For example, here is an example
script that starts two wunet routers and six hosts.
It is intended for use with this ONL
configuration file,
which you can open with the RLI.
-
Makefile.
Last updated 8/23/09.