The physical part of the infrastructure primarily consists of the purpose-built DELL PCs that make up the 14 rooftop and poletop locations shown in the map below. These 14 nodes make up the permanent installation of CentMesh nodes. In addition, upto 8 pushcart-based nodes can be temporarily integrated into these facilities. These nodes are battery-inverter powered for mobility, and have a lifetime of no more than 3 - 5 hours.
In addition to the actual nodes, the entire outdoor installation with antenna cables, mounting, power supply etc. is maintained by OSCAR Labs, ITng, who also provide other infrastructure support for CentMesh such as software image archival, retrieval and storage, firewalled connectivity to the campus network, address management and access control for CentMesh nodes, and a back-end services platform accessible to the CentMesh users, suitable for running a data repository or similar services. The CentMesh website is maintained by the technical directors and students working with CentMesh.
The infrastructure is complemented by the software images that have been developed by CentMesh developers, and are available for users to use as-is. Users may also build their own custom images starting from one of the available ones, and have them archived in the CentMesh facility.
A "bare-bones" image is available, which has no customization by the CentMesh development team, but is known to work with the basic hardware (including the WiFi cards) on the nodes. At any time, this is essentially a late-model Linux image; in January 2014, this was a Fedora-19 based image.
A "programmable" image is one that contains a software system that has been built over the years by CentMesh developers. It modularizes and separates the management plane from the data plane of the mesh network, making it easy for experimenters to modify aspects of the mesh network such as routing, power control, etc. separately or in combination. The programmable image was originally developed on top of the open MadWiFi driver. Following the end of life of MadWiFi, we have been transitioning to more recent drivers to achieve the same capabilities, based on a Fedora-18 image. In January 2014, this image is in testing but is not considered stable. Please see more information about the architecture and capabilities of the programmable image.
Some other purpose-built images, specific to the needs of the projects which produced them, might be available. An example is the "sensor" and "drone" images, produced in the 2014 NCSU CentMesh Drones Challenge. The former image is installed on the permanent CentMesh nodes, and the latter on the BeagleBone Blacks on the drones. This provides the drones with inbuilt APIs that can report sensor data to the CentMesh nodes acting as a distributed server, and then automatically archived in a back-end database; similarly a ground control station can access the CentMesh facility securely from a remote location to control the drones.
More detailed description of the facility is available on the CentMesh wiki. Potential users of the facility are also encouraged to get in touch with us to plan their use.
The unit of scheduling, access, and management for CentMesh is a project. A project is a set of related activities identified by a common goal. Each CentMesh project must be initiated by a lead person, who must be an NCSU employee. Registered projects may schedule all or a designated part of the infrastructure resources, for a defined period. The granularity of reservation is likely to be at least a day, and most reservations are likely to be of the order of a week or two. By requiring registration and reservation, we enforce accountability and traceability. We do not intend to restrict CentMesh to be limited to NCSU use through these mechanisms, merely to ensure that any group of users of CentMesh has at least one liaison inside NCSU, who will be accountable to the managing committee.