A demo application that tries to implement Healthd-like functionality. The
included implementation of this protocol is not very sophisticated, it
simply polls the motherboard sensors and uses Pathfinder to route the
digested results back to a server node. However, the protocol could easily
be extended to perform packet fusion at router nodes, conjure health
reports for unreachable nodes, and support more elaborate sensor
recording/reporting methodologies.
Requirements:
- The kaffe.sensors package, currently only available in JanosVM releases
v0.8.0 and above.
- A javax.crypto implementation, we use the Legion of the Bouncy Castle
implementation with the JanosVM.
In addition to the normal class files, the protocol also carries the
protocol.properties file. This is a Java properties file that
carries some configuration data and describes the protocol to the webmin
interface. Properties that the protocol will pay attention to are as
follows:
- parameter.algorithm - The algorithm to use when verifying signatures.
- parameter.poll-frequency - The amount of time to wait between polls of
the motherboard sensors.
- parameter.health-retention - The amount of time to keep health reports
in the NodeCache.
- parameter.report-freshness - The time frame in which to accept reports.
- parameter.timeout - The idle timeout for the health domain. Basically,
if Pathfinder loses track of the server node the timeout will fire and
terminate the domain. Combined with the fact that the protocol will not
respawn onto router nodes or the server, we are able to terminate all of
the health domains in the network.
- parameter.ignored-features - The names of any SensorFeatures which
should be ignored because they would produce false alarms.
Note: If you would like to change these in the development
environment you need to edit the protocol.properties.in file
and rerun make.