ErwinLi opened issue #1064: Possibility of Custom RB Numbers in LTE Bandwidth for Granular Spectrum Control at nsnam / ns-3-dev

ErwinLi
2024-04-11T18:22:09Z

Hello NS-3 Team,

I am engaging in a project that involves LTE RAN network slicing with a focus on dynamic spectrum allocation algorithms. My project's goal is to implement and evaluate resource allocation strategies that necessitate granular control over the LTE spectrum resources, specifically the number of Resource Blocks (RBs) within a given bandwidth.

I have observed that in the current implementation of the NS-3 LTE model, particularly within the LteEnbNetDevice::SetUlBandwidth method, there are strict checks against the RB numbers, limiting them to predefined values: 6, 15, 25, 50, 75, and 100. Here is the code segment enforcing this restriction:

// lte-enb-net-device.cc
void LteEnbNetDevice::SetUlBandwidth(uint16_t bw) {
NS_LOG_FUNCTION(this << bw);
switch (bw) {
case 6:
case 15:
case 25:
case 50:
case 75:
case 100:
m_ulBandwidth = bw;
break;

default:
NS_FATAL_ERROR("invalid bandwidth value " << bw);
break;
}
}

For the purposes of my research, it would be highly beneficial to adjust the number of RBs to values beyond these constraints, allowing for a more nuanced simulation of LTE network slicing and spectrum management.

Question: Is it feasible to delete the RB number checks code in the NS-3 LTE model without compromising the simulation's integrity or accuracy? I am worried that it will break the simulation process.

Understanding that these limitations might be in place to align with LTE standards or reflect physical layer modeling constraints, any insights or suggestions on how to achieve more flexible control over RB numbers would be greatly appreciated.

Thank you very much for your assistance and for your ongoing work on NS-3.