Commit Graph
4289 Commits
Author SHA1 Message Date
Cedric Roux 1a8d81ba57 cleanup MAC PDU generation (plus some general cleanup)
The code was very unclear and potentially buggy.
This new version is more robust.

We can waste up to 2 bytes because the last header in the MAC PDU
does not contain a length field and when we request data from RLC
we suppose a 3-bytes MAC header. This might be optimized at some
point, but the benefit would be low.

This commit also contains some general cleanup:
- formatting
- variables' types: let's use 'int' instead of trying to be clever
  by using small types that may generate bugs if the value is
  too big
- remove 'tpc_accumulated' which was globally used for all UEs
  and has no purpose other than logging. We may want to rework
  a bit the TPC machinery at some point. As the code is today
  we may repeatedly send TPC over and over without caring about
  the 3GPP limits, in which case no one knows how the UE is
  supposed to behave: does it clamp the current max value or does
  it accumulate over and over and take the clamped value to compute
  its actual power? If we send a reverse TPC (reduce power instead
  of increase) does it do it immediately or does it have to decrease
  n+1 times if we previously ordered it to increase n times?)

We do not address the problem of prioritizing LCIDs. As of today there
is only one dedicated traffic channel (DTCH), so it's not a problem
at this point.

What has been tested:
- monolithic eNB 5/10/20MHz with one cots UE, TCP/UDP UL/DL. At 20MHz the
  machine used was not capable of keeping up, generating lots of Us
  and Ls when the throughput reaches 60Mb/s. USRP B210 was used.
2018-03-08 10:04:18 +01:00
Wu Jing d45572446c fix mcs when retranssmission 2018-03-08 12:38:54 +09:00
Wu Jing 8a89a16fde fix issue about att_rx and att_tx config 2018-03-08 12:01:43 +09:00
Wu Jing 45655197eb merge ues_test branch into sp3_tdd_config1 2018-03-07 13:42:05 +09:00
Wu Jing 54cf2d9aef fix TBS_UL data_type from uint8_t to uint16_t 2018-03-06 16:15:24 +09:00
Wang Tsu-Han 23f5628735 changing into double sided signal for pipeline 2018-03-05 11:20:51 +01:00
Robert Schmidt 4924b18ebd FlexRAN: send RNTI in protobuf mac_stats_reply message 2018-03-02 17:36:43 +01:00
Robert Schmidt 8cace6537e correctly check for MAC presence in FlexRAN RAN API 2018-03-02 17:36:43 +01:00
Cedric Roux 307e2f299a Merge remote-tracking branch 'origin/hotfix-rlc-2018-w09' into develop 2018-03-02 15:29:36 +01:00
Cedric Roux 26d68e9c5e hotfix: fix bad RLC UM packet creation
Running TCP DL traffic with one connected UE showed a lot of
fluctuations in throughput. After analysis it was found that
sometimes the RLC UM PDU was not correct. It contained one byte
more than it should. On the receiver side, the TCP packet
contained in the RLC packet seems to be rejected by the TCP
stack of the UE (it has one byte more than it should),
leading to a brutal reduction of the throughput, probably due
to some congestion detection in the TCP implementation.
Or something.

This hotfix seems to solve the problem. Using iperf in downlink
with a 5MHz eNB, we see no more fluctuations, the traffic is
very steady at 16.8Mb/s, as reported by the iperf server running
on the phone. (17.5 in the PHY plot of the T tracer.)

A rewrite of both the MAC and RLC UM packet generation is needed.
The code is way too complex for what it does and may contain
several similar problems that only trigger in specific rare
conditions.
2018-03-02 12:02:06 +01:00
naoi 7f03a6e32a Fix: log argument issue. 2018-03-01 19:21:21 +09:00
naoi 1f9a6c1369 Fix: improve success rate of lower layer re-establishment. 2018-03-01 17:12:36 +09:00
Robert Schmidt 7d8d1588c3 remove unnecessary function declaration
has been introduced in commit 365ca71a4a
2018-03-01 09:04:41 +01:00
naoi 4b02d81839 Fix: Random access information may not release if msg3_round initial value is not zero. 2018-03-01 16:21:32 +09:00
naoi 95f677f735 Fix: pucch procedures moves after UE removed. 2018-02-28 19:34:20 +09:00
naoi 3d1b8a9cef Fix: S1-U Bearers is generated incorrectly when PDCCH order re-establishment succeeded. 2018-02-28 17:50:10 +09:00
naoi af6ca15020 Fix: Random access information is not released when Msg3(response to PDCCH order) re-transmission fails. 2018-02-28 17:11:37 +09:00
jftt_wangshanshan 87fb55c792 Fix a bug in previous commit Fix:harq_pid.... 2018-02-27 11:55:53 +08:00
Xu Bo dab82a2705 fix for-loop index in pdate_ul_dci 2018-02-27 11:24:44 +09:00
Wang.shanshan 5808ce3934 Fix:harq_pid for TDD is not completely fixed in pre processer. 2018-02-26 20:21:16 +09:00
Cedric Roux 9f1530c3c9 Merge remote-tracking branch 'origin/fix-centos-network-device-compilation' into develop_integration_2018_w08 2018-02-26 11:34:36 +01:00
jftt_wangshanshan 9f31d41b44 Add the setting ofharq_information_rel10_tdd.n_pucch_1_0 for tdd in allocate_CCEs 2018-02-26 17:31:43 +08:00
jftt_wangshanshan 699bbcb80f simplify source of ulsch_scheduler_pre_processor 2018-02-24 17:27:18 +08:00
Wu Jing 0504659eb8 fix RM778 PRACH failure by adding reset RA when CRNTI_ACK in extract_harq 2018-02-24 15:16:17 +09:00
khadraou de5e5beee1 Merge remote-tracking branch 'origin/develop' into ru_rau_enhancement 2018-02-22 17:11:44 +01:00
Raymond Knopp dc0638d7f6 added compilation directives for nasmesh and ue_ip kernel modules to allow for building on RHEL systems. 2018-02-22 16:45:18 +01:00
Cedric Roux 37425ee967 bugfix: revert bad change
Without this revert, the following does not compile:

    ./build_oai --oaisim
2018-02-22 16:03:45 +01:00
Wang Tsu-Han cb4dc53042 adding wait stage for every wakeup 2018-02-22 15:59:23 +01:00
Cedric Roux b23a8ad0fe integation fix: minor typo 2018-02-22 15:04:09 +01:00
Cedric Roux 365ca71a4a remove compilation warnings 2018-02-22 15:03:45 +01:00
Cedric Roux 8ca5fb4ef2 integration: cleanup
- remove spaces at the end of lines
- remove useless dead code
  use: git show -p <this commit> -w
  to see it clearly
2018-02-22 15:03:09 +01:00
Cedric Roux d5e179fa1f Merge remote-tracking branch 'origin/flexran-mac-stats' into develop_integration_2018_w08 2018-02-22 15:02:15 +01:00
Cedric Roux 4fb2e609fd Merge remote-tracking branch 'origin/enhancement-preprocessor' into develop_integration_2018_w08 2018-02-22 15:02:04 +01:00
Masayuki HARADA 2d975ca61b Change scheduling priority : UL-SCH == MAC-CE 2018-02-22 22:11:44 +09:00
Robert Schmidt e66bd0e2b1 RAN API: unify style, declare missing function in header 2018-02-22 12:03:10 +01:00
tomita 2f4c21ced3 Fix to avoid Segmemtation Fault in case of physicalConfigDedicated is NULL. 2018-02-22 17:10:21 +09:00
tomita 1008080e31 Bug fix for harq_pid calculation in MAC layer. 2018-02-22 16:40:27 +09:00
Masayuki HARADA 5d91a36ebc Merge branch 'ues_test' of http://10.37.145.15:8000/gitlab/vran/release_enb into ues_test 2018-02-22 11:28:36 +09:00
Masayuki HARADA 59623646cf Avoid NULL access in rrc_eNB_process_RRCConnectionReestablishmentComplete. 2018-02-22 11:11:15 +09:00
naoi 497a3275c6 fix: drop reestablishment request after UL failure is detected in layer2.
eNB should be keep UE context longer than T311 timer after UL failure is detected in layer2.
Configuration file(GENERIC-LTE-EPC) sets T311 to 10s, so eNB keep UE context up to 20s.
2018-02-22 10:17:34 +09:00
Wang Tsu-Han 56a32a22d4 changing emulate-rf into an executional option instead of compiler option 2018-02-21 18:13:34 +01:00
shahab SHARIAT BAGHERI 9a9c867a75 additional Mac stats and Improvements 2018-02-20 15:09:24 +01:00
Wang Tsu-Han 869b9a5c6f fix for phy-test UL and adding wakeup_txfh 2018-02-20 15:05:00 +01:00
tomita 19509f08eb Changed log level. 2018-02-20 18:40:05 +09:00
Niccolò Iardella 10e91d4e2f Move the accounting phase of the DL pre-processor in a separate procedure 2018-02-19 15:48:17 +01:00
tomita ea3aecf486 Bug fix about harq_pid calculation (harq_pid is calculated less than 0). 2018-02-19 19:42:06 +09:00
tomita a53e22c294 Fixed harq_pid calculation. 2018-02-19 19:31:09 +09:00
tomita c80246a9a5 Changed log level. 2018-02-19 19:18:15 +09:00
Wolfgang A. Mozart 2194bc8564 fixed timing issue for phy-test scheduling UL. UL is broken after first execution of dlsch decoding 2018-02-19 10:45:34 +01:00
Raymond Knopp da83df84f1 Merge remote-tracking branch 'origin/develop' into dlsim-ulsim-fix
Conflicts:
	openair1/PHY/INIT/lte_init.c
2018-02-18 01:39:36 -08:00