From 1751c62c980f8d6ed965e08fcb9ad1af485d8854 Mon Sep 17 00:00:00 2001 From: Jacob Erlbeck Date: Thu, 4 Jun 2015 12:12:32 +0200 Subject: tbf: Add adaptive DL CS adjustment To cope with transmission failures due to bad radio conditions, a different coding scheme with more redundance can be used. This commit adds an implemenation that is based on the Ack/Nack ratio per PACKET DOWNLINK ACK/NACK message received from the MS. Basically the CS level is decreased, if the block error rate goes above cs_adj_upper_limit (default 33%), and it is increased, if the rate drops below cs_adj_lower_limit (default 10%). Only blocks that have been encoded with the current CS are taken into account. Note that this approach doesn't measure the MS->BTS conditions and that the measurement values reported by the MS are not taken into account. Ticket: #1739 Sponsored-by: On-Waves ehf --- src/bts.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/bts.h') diff --git a/src/bts.h b/src/bts.h index af66dfc8..b31db5fc 100644 --- a/src/bts.h +++ b/src/bts.h @@ -142,6 +142,9 @@ struct gprs_rlcmac_bts { uint8_t alpha, gamma; uint32_t dl_tbf_idle_msec; /* hold time for idle DL TBFs */ uint32_t ms_idle_sec; + uint8_t cs_adj_enabled; + uint8_t cs_adj_upper_limit; + uint8_t cs_adj_lower_limit; /* TBF handling, make private or move into TBFController */ /* list of uplink TBFs */ -- cgit v1.2.3