The first step towards being part of an active network is to set up a local machine as an active router. The ``ARMain'' class serves as the entry point for the router. For more detailed usage information, please refer to The PLAN Active Router [1] document. Try typing :
% java ARMain -?
You will get a message about the usage of ARMain :
Usage : java ARMain [-i] [-v|-d|-q] [-l logfile] [-ip port] [[-m master] [-h hub] | [-rf routtab file]] [-n n1,n2,...,nk]
The -i
option tells the router to be interactive; this requires you
to press enter before sending out any packet. The -v
, -q
,
-d
options tell the router to be quiet, verbose, or in debugging mode
(extremely verbose), respectively. The -l
option specifies that
output messages should be written to the specified file.
The -ip
option specifies which UDP and TCP ports the router will use
for sending and receiving packets (a default port of 3324 will be used if
one is not specified). Using different port numbers allows several PLAN nodes in
the same PLAN network to reside on the same machine. Only one Active Router
can be using any port at any time.
The -m
flag allows you to specify a network master node for the
Service Layer Routing Protocol (SLRP) [2], and the -n
flag
allows you to request certain other nodes as neighbors. If no master node is
specified, it is assumed that you are starting a new master. The -h
flag may be used to specify an ANON hub to use to link separate PLAN
networks. Finally, the -rf
flag is used to specify a file used by
this node to form its routing table. If this option is used, the node may
not participate in a SLRP network.
A more detailed desription of all of these arguments may be found in [1].
As an example, let us construct an active network of two nodes on our machine m. Typing in a terminal window of m:
% java ARMain -v 23-Nov-97 5:32:12 PM: ARMain: verbose mode on. 23-Nov-97 5:32:12 PM: ActiveRouter.start: Active router up! 23-Nov-97 5:32:12 PM: ActiveRouter: OUT to IPv4UDP : (m, 3324) : fstCookie 23-Nov-97 5:32:12 PM: ActiveRouter: OUT: succeeded 23-Nov-97 5:32:12 PM: SLRPmaster: received a request to add: IPv4UDP : (m, 3324) 23-Nov-97 5:32:13 PM: ActiveRouter: OUT to IPv4UDP : (m, 3324) : newRT 23-Nov-97 5:32:13 PM: ActiveRouter: OUT: succeeded 23-Nov-97 5:32:13 PM: ActiveRouter: IN from IPv4UDP : (m, 3324): fstCookie 23-Nov-97 5:32:13 PM: ActiveRouter: IN from IPv4UDP : (m, 3324): newRT 23-Nov-97 5:32:13 PM: SLRP: received new route table.
starts a SLRP master, using the default port number 3324. In another terminal window, if we type:
% java ARMain -ip 3325 -m m:3324 -v 23-Nov-97 5:34:17 PM: ARMain: verbose mode on. 23-Nov-97 5:34:18 PM: ActiveRouter.start: Active router up! 23-Nov-97 5:34:18 PM: ActiveRouter: OUT to IPv4UDP : (m, 3324) : addme 23-Nov-97 5:34:18 PM: ActiveRouter: OUT: succeeded 23-Nov-97 5:34:18 PM: ActiveRouter: IN from IPv4UDP : (m, 3325): fstCookie 23-Nov-97 5:34:18 PM: ActiveRouter: IN from IPv4UDP : (m, 3325): newRT 23-Nov-97 5:34:19 PM: SLRP: received new route table.
we start another active router, listening on port 3324, specifying the other node that we started as the master.