Simplified Multicast Forwarding (SMF) Engine
The NRL Simplified Multicast Forwarding (nrlsmf) project is a user-space software implementation of the forwarding engine for Simplified Multicast Forwarding (SMF, RFC 6621).
This software was developed by the Naval Research Laboratory (NRL) PROTocol Engineering Advanced Networking (PROTEAN) Research Group. The goal of this effort is to provide an implementation of experimental techniques for robust, efficient distribution of broadcast or multicast packets in dynamic, wireless networks such as Mobile Ad-hoc Networks (MANETs).
The nrlsmf application can be run as a stand-alone application capable of providing "classic" flooding of broadcast and multicast traffic for a specified network interface or can be used in conjunction with a controlling program to perform more sophisticated multicast forwarding. An interprocess communication "remote control" interface is provided so that a compatible program (e.g. NRL-OLSR) may issue real-time commands to nrlsmf to control the multicast forwarding process.
Both IPv4 and IPv6 operation are supported. Versions of nrlsmf can be built for the following operating systems: Linux, MacOS, BSD, Win32, and WinCE.
Source code and latest releases of nrlsmf are available on GitHub. Please note that nrlsmf also requires ProtoLib.
SMF Users Guide
Please see the NRLSMF User's Guide for detailed information on compilation and usage.