Add New Page: You are not allowed to add pages Select section/namespace. New page title.

Commotiond Architecture


The Commotion daemon (and its associated library, libcommotion) provides a common configuration interface for connecting to mesh networks. The daemon loads and processes configuration files, generates unique identifiers and IPs, and exposes this functionality through a client executable and API (pending). Functionally, the daemon is an event-driven socket daemon that processes commands passed to it from external sources and executed through the libcommotion library. Eventually, the daemon will use its plugin architecture to load different wireless drivers, routing daemons, addressing schema, configuration file formats, middleware, and security protocols in order to allow it to manage the operation of a mesh node from start to finish through a common interface, no matter the specific technologies involved.

What are Commotiond's internals and how are they used:

/usr/lib/ A C library containing most of the functions for both the daemon and client.

/usr/sbin/commotiond An embedded daemon. Commotiond is an implementation of libcommotion, and exposes a management socket at /var/run/commotion.sock

/usr/bin/commotion A simple client that connects to the commotiond management socket and sends commands.

/etc/commotion/profiles.d The default location for configuration profiles, currently in a simple <key>=<value> format.

/etc/init.d/commotiond Initscript for commotiond. Reads any command-line options for the daemon from /etc/config/commotiond (on OpenWRT).

/etc/config/commotiond Contains command-line options for the daemon (on OpenWRT).

commotion_architecture/core_components/commotiond_architecture.txt · Last modified: 2013/11/08 20:51 (external edit)
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 3.0 Unported