The Minimum Rank with Hysteresis Objective Function (MRHOF)
This implementation uses the estimated number of transmissions (ETX) as the additive routing metric, and also provides stubs for the energy metric.
Macros | |
#define | _DEBUG_ DEBUG_NONE |
#define | ETX_ALPHA 90 |
#define | ETX_SCALE 100 |
#define | MAX_LINK_METRIC 10 |
#define | MAX_PATH_COST 100 |
#define | PARENT_SWITCH_THRESHOLD_DIV 2 |
Typedefs | |
typedef uint16_t | rpl_path_metric_t |
Functions | |
static rpl_dag_t * | best_dag (rpl_dag_t *, rpl_dag_t *) |
static rpl_parent_t * | best_parent (rpl_parent_t *, rpl_parent_t *) |
static rpl_path_metric_t | calculate_path_metric (rpl_parent_t *p) |
static rpl_rank_t | calculate_rank (rpl_parent_t *, rpl_rank_t) |
static void | neighbor_link_callback (rpl_parent_t *, int, int) |
static void | reset (rpl_dag_t *) |
static void | update_metric_container (rpl_instance_t *) |
Variables | |
rpl_of_t | rpl_mrhof |
References rpl_dag::grounded, rpl_dag::preference, and rpl_dag::rank.
|
static |
|
static |
References INFINITE_RANK, rpl_parent::link_metric, NULL, rpl_parent::rank, RPL_DAG_MC_ETX_DIVISOR, and RPL_INIT_LINK_METRIC.
|
static |
References rpl_instance::mc, RPL_DAG_MC, and rpl_metric_container::type.