MMBORDER(8)

NAME
mmborder - Mobile Mesh Border Discovery

SYNOPSIS
mmborder -a addr [-d file] [-f file] [-h] -i ifname [-vz]

DESCRIPTION
mmborder speaks the Mobile Mesh Border Discovery Protocol. The goal of a border router is to take advantage of "collateral flow" that occurs "external" to a Mobile Mesh Routing Protocol cloud. This is accomplished by border routers tunneling packets between peer border routers. A tunnel is needed between each pair of members. The IP addresses on the ends of the tunnels do not need to be globally unique across the Internet, they only need to be unique within the Mobile Mesh Routing Protocol cloud. This enables us to use the private IP addresses of 10.X.X.X and 192.168.X.X for the tunnels.

Tunnels are set up automatically by mmborder when it discovers a peer border router. The discovery process requires each border router to periodically send a BorderAdvertisement message to a multicast group address. When a border hears from a new peer, it sets up a point to point tunnel with it. When a border has not heard from a peer within a deadInterval , it assumes the peer has departed and tears down the tunnel.

Under Linux, each tunnel results in a unique IP interface. When a tunnel is created, mmborder dynamically adds the corresponding IP interface to the mobile mesh router mmrp. Similary, when the tunnel is destroyed, mmborder dynamically removes the IP interface from the mobile mesh router.

OPTIONS
mmborder recognizes the following command line switches:

-a addr
    The dotted decimal unique private IP address for tunnel interfaces. A separate point to point tunnel interface is set up to each discovered peer border router. Each of these tunnels shares this address.

-d file
    Use flags 'file' to enable debug output.

-f file
    Use config 'file' instead of /etc/mobilemesh/mmborder.conf. See below for a description of the config file format.

-g file
    When launching mmdiscover on a newly created tunnel interface, use config 'file' instead of default /etc/mobilemesh/mmdiscover-border.conf. See manpage for mmdiscover for a description of the config file format.

-h  Display a help message.

-i ifname
    The name of the fixed network interface that discovery of other border routers will take place on.

-v  Display version information.

-z  Run in the foreground instead of running as a daemon.

Config File Format
By default, mmborder reads the file /etc/mobilemesh/mmborder.conf for configuration parameters. The format of the config file requires each configuration parameter to be on its own line. Comments may be placed in the file by beginning a line with a #. The following configuration parameters are recognized:

groupAddr    <Multicast Group Address>
    the IP multicast group address which all border routers use to send and receive BorderAdvertisement messages.

port         <Udp Port Number>
    the UDP port number to which all BorderAdvertisment messages are sent.

mmrpPort     <Udp Port Number>
    the UDP port number used by mmrp. This allows multiple copies of mmrp to execute simultaneously and mmborder to connect to the appropriate one.

adPeriod     <unsigned int value>
    the number of seconds between sending our BorderAdvertisement message.

deadInterval <unsigned int value>
    the number of seconds after hearing the last BorderAdvertisement from a peer to declare the peer down and tear down any tunnels that went to it.

SEE ALSO
mmdiscover(8), mmrp(8), mmrpviz(8)

AUTHOR
This program and documentation was written by Kevin H. Grace of The MITRE Corporation <kgrace@mitre.org>. Credit is also given to Mike Butler who developed some of the support classes and lent his keen insight.