aboutsummaryrefslogtreecommitdiffstats
path: root/src/pcu_vty.c
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2015-05-28 16:11:19 +0200
committerJacob Erlbeck <jerlbeck@sysmocom.de>2015-05-28 17:40:15 +0200
commita098c19b5531e175a308fbe4aee39c54cb3c71f1 (patch)
tree797e16ad6adc9fc5a54d47a34a90d9f1cf557d13 /src/pcu_vty.c
parentd9e102472a97c767cba1bd5687db30028436d623 (diff)
tbf: Set MS timeout
This commit sets the MS timeout when the MS object is created. The value is taken from the ms_idle_sec field in gprs_rlcmac_bts which can be changed by the VTY commands shown below. The following VTY commands are added to the config-pcu node: - ms-idle-time <1-7200> Set the timeout in seconds - no ms-idle-time Disable the timeout Another timer that is related is T3314 (Ready Timer, default 44s, GSM 24.008, 11.2.2) which requires the SGSN to use paging after its expiry. Longer timeouts can help if adaptive coding scheme selection is used (not yet implemented). On the other hand, measurement values (TA, signal quality) can get invalid after some time, especially with a moving MS. So a value slightly above T3314 is probably a good value to start with. Sponsored-by: On-Waves ehf
Diffstat (limited to 'src/pcu_vty.c')
-rw-r--r--src/pcu_vty.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/pcu_vty.c b/src/pcu_vty.c
index a08ec36..9490664 100644
--- a/src/pcu_vty.c
+++ b/src/pcu_vty.c
@@ -483,6 +483,31 @@ DEFUN(cfg_pcu_no_dl_tbf_idle_time,
return CMD_SUCCESS;
}
+#define MS_IDLE_TIME_STR "keep an idle MS object alive for the time given\n"
+DEFUN(cfg_pcu_ms_idle_time,
+ cfg_pcu_ms_idle_time_cmd,
+ "ms-idle-time <1-7200>",
+ MS_IDLE_TIME_STR "idle time in sec")
+{
+ struct gprs_rlcmac_bts *bts = bts_main_data();
+
+ bts->ms_idle_sec = atoi(argv[0]);
+
+ return CMD_SUCCESS;
+}
+
+DEFUN(cfg_pcu_no_ms_idle_time,
+ cfg_pcu_no_ms_idle_time_cmd,
+ "no ms-idle-time",
+ NO_STR MS_IDLE_TIME_STR)
+{
+ struct gprs_rlcmac_bts *bts = bts_main_data();
+
+ bts->ms_idle_sec = 0;
+
+ return CMD_SUCCESS;
+}
+
DEFUN(show_tbf,
show_tbf_cmd,
"show tbf all",
@@ -555,6 +580,8 @@ int pcu_vty_init(const struct log_info *cat)
install_element(PCU_NODE, &cfg_pcu_gamma_cmd);
install_element(PCU_NODE, &cfg_pcu_dl_tbf_idle_time_cmd);
install_element(PCU_NODE, &cfg_pcu_no_dl_tbf_idle_time_cmd);
+ install_element(PCU_NODE, &cfg_pcu_ms_idle_time_cmd);
+ install_element(PCU_NODE, &cfg_pcu_no_ms_idle_time_cmd);
install_element_ve(&show_bts_stats_cmd);
install_element_ve(&show_tbf_cmd);