Unipisa / Simu5G

Simu5G - 5G NR and LTE/LTE-A user-plane simulation model for OMNeT++ & INET
https://simu5g.org
Other
142 stars 81 forks source link

NRPacketFlowManagerGnb::ulMacPduArrived / insertRlcPdu RuntimeError #148

Closed christianquadri closed 1 year ago

christianquadri commented 1 year ago

Hello, I am simulating a platooning scenario in which other vehicles that are not part of the platoon create some background traffic. These vehicles travel alongside the platoon. Each vehicle generates traffic using 2 UPD applications (UdpBasicApp and UdpBasicBurst) while the server runs a simple UdpEchoApp.

I am trying to saturate the gNodeB resources to create congestion conditions at the RAN level.

After some simulation time, that varies according to the different numbers of car and seed, the simulation suddenly stops raising runtime errors.

I observed 2 errors: 1) PacketFlowManagerEnb::insertRlcPdu
line259: throw cRuntimeError("%s::insertRlcPdu - RLC PDU SN %d already present for logical CID %d. Aborting",pfmType.c_str(), rlcSno, lcid);

2) NRPacketFlowManagerGnb::ulMacPduArrived - grant [14170905] for nodeId [2056] not present -- in module (NRMacGnb) MultiBSNetMultiPlatoon.gB1.cellularNic.mac (id=212), at t=90.055s, event #24745669

It is possible that is something related to handover? Because I noticed that this error happens when the vehicles are in between two adjacent BSs. Am I using some wrong parameters?

I have attached the network and .ini file network_ini.zip

Thank you in advance for your time.

Christian

giovanninardini commented 1 year ago

Hello,

have you tried to switch the parameter **.hasRNISupport = true to false? By switching that off, the PacketFlowManager module will not be used, but that should be safe since I noticed that you are not actually using the MEC modules (hence, you are not using the RNIS API)

Best regards. Giovanni

christianquadri commented 1 year ago

Thank you Giovanni for your very quick reply. I have just tried to set RNISupport to false and, as you said, the problem is solved.

In this project, I do not use the MEC modules, but in other projects I am using them. Should I take care of some other parameters to avoid this problem?

Thank you and best regards.

Christian

giovanninardini commented 1 year ago

The part of the RNIS that causes that problem has not been completely implemented, unfortunately.

At the moment the only (not optimal, I know) suggestion I could give you is to follow the advice you can find at this link: https://github.com/Unipisa/Simu5G/issues/137#issuecomment-1500210143 Hopefully we will come up with some better solution in the future...

christianquadri commented 1 year ago

Thank you again Giovanni!

I only imagine the complexity of implementing everything in OMNeT++! I will follow your suggestion for the other projects.

Bye Christian