From 94f880ad23c8ac7e6650226fdf22088d7ffb18d8 Mon Sep 17 00:00:00 2001
From: Cedric Roux <cedric.roux@eurecom.fr>
Date: Mon, 10 Apr 2017 17:31:21 +0200
Subject: [PATCH] bugfix: increase RLC UM header size

The constant RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU is set to 24. This is
too low. Running a downlink TCP iperf with a 10MHz or 20MHz cell
leads to lots of the following warning in the log:

[RLC][W][SN 792] Bad RLC header! Discard this RLC PDU (size=618)

The problem is that the uplink RLC PDU contains a lot of TCP ack.
We can see much more than 24 of them. The RLC layer is not happy
and discards the PDU.

Putting 256 for RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU (arbitrarily chosen,
big but not too big) solves the problem, at least for 10MHz.
---
 openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h
index 2d0a875edb..acd94fa205 100644
--- a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h
+++ b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h
@@ -53,7 +53,7 @@
 // UM_Window_Size = 512 when a 10 bit SN is configured and UM_Window_Size = 0
 // when the receiving UM RLC entity is configured for MCCH or MTCH.
 // li field (values shifted 1 bit left)
-#        define RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU            24
+#        define RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU            256
 //----------------------------------------------------------
 // Events defined for state model of the acknowledged mode entity
 /** Internal event defined for state model of the RLC UM. */
-- 
GitLab