Skip to content

SriRamanujam/npsgate

 
 

Repository files navigation

NpsGate

Introduction

NpsGate is an implementation of the SmartNet architecture designed in the master's thesis by Lance Alt titled "Application Transparent HTTP over a Disruption Tolerant SmartNet". The SmartNet architecture is a modular framework for experimenting with and deploying network adaptation solutions.

NpsGate implements the SmartNet core along with several plugins that can be arranged to form packet processing piplines. A plugin API is provided to easily allow third- party plugins to be incorporated in to the system.

Installation

To compile the NpsGate core from the git repository you need the following tools and libraries:

Specific plugins may have additional requirements. Once the above library prerequisites have been met, NpsGate can be compiled as follows:

$ ./autogen.sh
$ ./configure
$ make
$ make install

By default NpsGate is installed in the 'run' directory. The installation directory can be changed using the 'configure' script.

Configuration

NpsGate requires a configuration file to run. A simple default configuration is installed in the 'run' directory. More examples can be found in the 'doc/configuration/examples' directory.

Running

NpsGate can be run using the default configuration using the following command from the run directory:

$ sudo ./npsgate

NpsGate can be started with a specific configuration using the following command:

$ sudo ./npsgate -c /path/to/main/configuration/file

NpsGate typically must be run as root in order to intercept packets from the kernel.

About

NpsGate SmartNet

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 94.6%
  • C++ 4.3%
  • Shell 1.1%