Skip to content

Commit 07ec237

Browse files
author
Juha Heiskanen
committed
Updated Discovery and RPL setup large & medium size network
RPL Updates Medium: imin 128 seconds imax 1024 seconds Large: imin 256 seconds imax 2048 seconds Discovery Medium: imin 60 seconds imax 960 seconds Large: imin 240 seconds imax 1536 seconds
1 parent a94d8f2 commit 07ec237

File tree

3 files changed

+26
-26
lines changed

3 files changed

+26
-26
lines changed

source/6LoWPAN/ws/ws_cfg_settings.c

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -390,16 +390,16 @@ static void ws_cfg_network_size_config_set_medium(ws_cfg_nw_size_t *cfg)
390390
cfg->gen.rpl_selected_parent_max = WS_RPL_SELECTED_PARENT_MAX;
391391

392392
// Configure the Wi-SUN timing trickle parameters
393-
cfg->timing.disc_trickle_imin = TRICKLE_IMIN_30_SECS; // 30 seconds
394-
cfg->timing.disc_trickle_imax = TRICKLE_IMIN_30_SECS << 5; // 960 seconds; 16 minutes
393+
cfg->timing.disc_trickle_imin = TRICKLE_IMIN_60_SECS; // 60 seconds
394+
cfg->timing.disc_trickle_imax = TRICKLE_IMIN_60_SECS << 4; // 960 seconds; 16 minutes
395395
cfg->timing.disc_trickle_k = 1;
396396
cfg->timing.pan_timeout = PAN_VERSION_MEDIUM_NETWORK_TIMEOUT;
397397
cfg->timing.temp_link_min_timeout = WS_NEIGHBOR_TEMPORARY_LINK_MIN_TIMEOUT_SMALL;
398398
cfg->timing.temp_eapol_min_timeout = WS_EAPOL_TEMPORARY_ENTRY_MEDIUM_TIMEOUT;
399399

400400
// RPL configuration
401-
cfg->bbr.dio_interval_min = WS_RPL_DIO_IMIN_MEDIUM; // 15; 32s
402-
cfg->bbr.dio_interval_doublings = WS_RPL_DIO_DOUBLING_MEDIUM; // 2; 1024s
401+
cfg->bbr.dio_interval_min = WS_RPL_DIO_IMIN_MEDIUM; // 17; 128s
402+
cfg->bbr.dio_interval_doublings = WS_RPL_DIO_DOUBLING_MEDIUM; // 3; 1024s
403403
cfg->bbr.dio_redundancy_constant = WS_RPL_DIO_REDUNDANCY_MEDIUM; // 10
404404
cfg->bbr.dag_max_rank_increase = WS_RPL_MAX_HOP_RANK_INCREASE;
405405
cfg->bbr.min_hop_rank_increase = WS_RPL_MIN_HOP_RANK_INCREASE;
@@ -426,16 +426,16 @@ static void ws_cfg_network_size_config_set_large(ws_cfg_nw_size_t *cfg)
426426
cfg->gen.rpl_selected_parent_max = WS_RPL_SELECTED_PARENT_MAX;
427427

428428
// Configure the Wi-SUN timing trickle parameters
429-
cfg->timing.disc_trickle_imin = TRICKLE_IMIN_60_SECS; // 60 seconds
430-
cfg->timing.disc_trickle_imax = TRICKLE_IMIN_60_SECS << 4; // 960 seconds; 16 minutes
429+
cfg->timing.disc_trickle_imin = TRICKLE_IMIN_60_SECS << 2; // 240 seconds
430+
cfg->timing.disc_trickle_imax = 1536; // 1536 seconds; 25 minutes
431431
cfg->timing.disc_trickle_k = 1;
432432
cfg->timing.pan_timeout = PAN_VERSION_LARGE_NETWORK_TIMEOUT;
433433
cfg->timing.temp_link_min_timeout = WS_NEIGHBOR_TEMPORARY_LINK_MIN_TIMEOUT_LARGE;
434434
cfg->timing.temp_eapol_min_timeout = WS_EAPOL_TEMPORARY_ENTRY_LARGE_TIMEOUT;
435435

436436
// RPL configuration
437-
cfg->bbr.dio_interval_min = WS_RPL_DIO_IMIN_LARGE; // 19; 524s, 9min
438-
cfg->bbr.dio_interval_doublings = WS_RPL_DIO_DOUBLING_LARGE; // 1; 1024s, 17min
437+
cfg->bbr.dio_interval_min = WS_RPL_DIO_IMIN_LARGE; // 18; 262s, 4.5min
438+
cfg->bbr.dio_interval_doublings = WS_RPL_DIO_DOUBLING_LARGE; // 3; 2048s, 34min
439439
cfg->bbr.dio_redundancy_constant = WS_RPL_DIO_REDUNDANCY_LARGE; // 10
440440
cfg->bbr.dag_max_rank_increase = WS_RPL_MAX_HOP_RANK_INCREASE;
441441
cfg->bbr.min_hop_rank_increase = WS_RPL_MIN_HOP_RANK_INCREASE;
@@ -649,8 +649,8 @@ int8_t ws_cfg_phy_set(protocol_interface_info_entry_t *cur, ws_phy_cfg_t *cfg, w
649649
static int8_t ws_cfg_timing_default_set(ws_timing_cfg_t *cfg)
650650
{
651651
// Configure the Wi-SUN timing trickle parameters
652-
cfg->disc_trickle_imin = TRICKLE_IMIN_30_SECS; // 30 seconds
653-
cfg->disc_trickle_imax = TRICKLE_IMIN_30_SECS << 5; // 960 seconds; 16 minutes
652+
cfg->disc_trickle_imin = TRICKLE_IMIN_60_SECS; // 60 seconds
653+
cfg->disc_trickle_imax = TRICKLE_IMIN_60_SECS << 4; // 960 seconds; 16 minutes
654654
cfg->disc_trickle_k = 1;
655655
cfg->pan_timeout = PAN_VERSION_MEDIUM_NETWORK_TIMEOUT;
656656
cfg->temp_link_min_timeout = WS_NEIGHBOR_TEMPORARY_LINK_MIN_TIMEOUT_SMALL;
@@ -727,13 +727,13 @@ int8_t ws_cfg_timing_set(protocol_interface_info_entry_t *cur, ws_timing_cfg_t *
727727
static int8_t ws_cfg_bbr_default_set(ws_bbr_cfg_t *cfg)
728728
{
729729
// Something in between
730-
// imin: 15 (32s)
731-
// doublings:5 (960s)
730+
// imin: 17 (128s)
731+
// doublings:3 (1024s)
732732
// redundancy; 10
733-
//ws_bbr_rpl_config(cur, 15, 5, 10, WS_RPL_MAX_HOP_RANK_INCREASE, WS_RPL_MIN_HOP_RANK_INCREASE);
733+
//ws_bbr_rpl_config(cur, 17, 3, 10, WS_RPL_MAX_HOP_RANK_INCREASE, WS_RPL_MIN_HOP_RANK_INCREASE);
734734

735-
cfg->dio_interval_min = 15; // 32s
736-
cfg->dio_interval_doublings = 5; // 1024s
735+
cfg->dio_interval_min = WS_RPL_DIO_IMIN_MEDIUM; // 128s
736+
cfg->dio_interval_doublings = WS_RPL_DIO_DOUBLING_MEDIUM; // 1024s
737737
cfg->dio_redundancy_constant = 10;
738738
cfg->dag_max_rank_increase = WS_RPL_MAX_HOP_RANK_INCREASE;
739739
cfg->min_hop_rank_increase = WS_RPL_MIN_HOP_RANK_INCREASE;

source/6LoWPAN/ws/ws_config.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,12 @@
3131
#define WS_RPL_DIO_DOUBLING_SMALL 2
3232
#define WS_RPL_DIO_REDUNDANCY_SMALL 0
3333

34-
#define WS_RPL_DIO_IMIN_MEDIUM 15
35-
#define WS_RPL_DIO_DOUBLING_MEDIUM 5
34+
#define WS_RPL_DIO_IMIN_MEDIUM 17
35+
#define WS_RPL_DIO_DOUBLING_MEDIUM 3
3636
#define WS_RPL_DIO_REDUNDANCY_MEDIUM 10
3737

38-
#define WS_RPL_DIO_IMIN_LARGE 19
39-
#define WS_RPL_DIO_DOUBLING_LARGE 1
38+
#define WS_RPL_DIO_IMIN_LARGE 18
39+
#define WS_RPL_DIO_DOUBLING_LARGE 3
4040
#define WS_RPL_DIO_REDUNDANCY_LARGE 10 // May need some tuning still
4141

4242
#define WS_RPL_DIO_IMIN_AUTOMATIC 14

test/nanostack/unittest/6LoWPAN/ws_cfg_settings/test_ws_cfg_settings.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@ static const ws_cfg_t ws_cfg_defaults_medium = {
5656
.phy.operating_class = 2,
5757
.phy.operating_mode = 3,
5858

59-
.timing.disc_trickle_imin = 30, // network size affects
59+
.timing.disc_trickle_imin = 60, // network size affects
6060
.timing.disc_trickle_imax = 960, // network size affects
6161
.timing.disc_trickle_k = 1, // network size affects
6262
.timing.pan_timeout = 3840, // network size affects
6363
.timing.temp_link_min_timeout = 260, // network size affects
6464
.timing.temp_eapol_min_timeout = 330,
6565

66-
.bbr.dio_interval_min = 15, // network size affects
67-
.bbr.dio_interval_doublings = 5, // network size affects
66+
.bbr.dio_interval_min = 17, // network size affects
67+
.bbr.dio_interval_doublings = 3, // network size affects
6868
.bbr.dio_redundancy_constant = 10, // network size affects
6969
.bbr.dag_max_rank_increase = 2048, // network size affects
7070
.bbr.min_hop_rank_increase = 196, // network size affects
@@ -194,15 +194,15 @@ static const ws_cfg_t ws_cfg_defaults_large = {
194194
.phy.operating_class = 2,
195195
.phy.operating_mode = 3,
196196

197-
.timing.disc_trickle_imin = 60, // network size affects
198-
.timing.disc_trickle_imax = 960, // network size affects
197+
.timing.disc_trickle_imin = 240, // network size affects
198+
.timing.disc_trickle_imax = 1536, // network size affects
199199
.timing.disc_trickle_k = 1, // network size affects
200200
.timing.pan_timeout = 5400, // network size affects
201201
.timing.temp_link_min_timeout = 520, // network size affects
202202
.timing.temp_eapol_min_timeout = 750,
203203

204-
.bbr.dio_interval_min = 19, // network size affects
205-
.bbr.dio_interval_doublings = 1, // network size affects
204+
.bbr.dio_interval_min = 18, // network size affects
205+
.bbr.dio_interval_doublings = 3, // network size affects
206206
.bbr.dio_redundancy_constant = 10, // network size affects
207207
.bbr.dag_max_rank_increase = 2048, // network size affects
208208
.bbr.min_hop_rank_increase = 196, // network size affects

0 commit comments

Comments
 (0)