LTE-ADVANCED ON NS3 / LENA

1,073 views
Skip to first unread message

Rajarajan Sivaraj

unread,
Jul 5, 2011, 6:42:08 PM7/5/11
to ns-3-users
This is Rajarajan Sivaraj, a first-year PhD student in the Computer
Science Department at the University of California, Davis. I research
with scheduling issues in LTE-Advanced, and I find the LTE model on
NS3 with the LENA support to be the best-suited simulation platform
available today to carry out my relevant research. The model is so
good and it is no nice to use the same. However, I would like to get
clarified on a couple of doubts:

1. The computation of path loss, AMC: CQI, MCS and TBS are all fine.
But, could you tell me what is the exact use of TBS and how would you
compute throughput from the TBS ?

For eg:, I use 110 Physical Resource Blocks, consider all these PRBs
allocated to a UE which is at a very short distance from the eNB
(Distance ranging from 1 m to 1 km), the UE gets a good modulation
code of 29. From the ITBS table, this 29 corresponds to an ITBS value
of 26 and transportBlockTableSize[109][26] gives a peak TBS value of
75376 (max).

Now, since I use LTE-Advanced, I use more than one frequency bands.
i.e. 700 MHz, 900 MHz, 1.8 GHz, 2.1 GHz, 2.6 GHz etc.

In lte-spectrum-value-helper.cc, I include the following in the
static_LteDownlinkSpectrumModel_initializer constructor,
freqs1.push_back(0.7+(i*0.00018)*1e9), freqs2.push_back(0.9+
(i*0.00018)*1e9), freqs2.push_back(1.8+(i*0.00018)*1e9),
freqs2.push_back(2.1+(i*0.00018)*1e9), freqs2.push_back(2.6+
(i*0.00018)*1e9),

110 PRBs on each of these bands constitute 20 MHz bandwidth; and for
initial experiments, I consider all the 110 PRBs to be allocated to
the single UE. So, at a shorter distance, the TBS value on each of
these bands is 75376 (TransportBlockSizeTable[109][26]), so if all
these are aggregated, we get 414568. And is throughput = 414568/1 ms =
414e+06, yielding 414 Mbps? Is it the right way to do the same?

In rr-ff-mac-scheduler.cc, I was able to find how you have computed
the TransportBlockSize; you compute the rbgNum, rbgSize, noOfFlows,
determine the nPRB and compute the TBS(MCS,nPRB). But I'm inquisitive
to know how to determine the TransportBlockSetSize and determine the
throughput our of it?

2. And now, if I don't consider all these 110 PRBs, but only a single
PRB, is the TBS based on the MCS alone, which means is TBS gonna be
any one of these values: 0, 18, 23, ..., 640, 667 TBSfromMCS[mcs]? In
that case, can you add the TBS on each of the N PRBs (1<=N<=110), you
use, to get the net TBS on the N PRBs?

3. I happened to see that you set the DoSetBandwidth(uint8_t
ulbandwidth,unint8_t dlbandwidth) as DoSetBandwidth(25,25)? In this
case, what do you exactly mean? 25 Mbps uplink/25 Mbps downlink or
does it convey any other meaning? Is it possible to adaptively set
these bandwidth values based on your traffic requirements?

My next step is to carry on channel-aware CC assignment based on path
loss in LTE-Advanced, and I feel it really nice using NS3. Continue
your good work. I'm willing to extend help from my end for the
development of your NS3 project. If we develop a full-fledged LTE
Advanced model in NS3, it would be highly appreciable. Kindly
acknowledge.

BR,

Rajarajan Sivaraj,
PhD candidate in Computer Science,
UC Davis,
Davis, CA - 95616,
Mob. No : (001)5309032017.

Nicola Baldo

unread,
Jul 7, 2011, 11:47:41 AM7/7/11
to ns-3-users
Hi Rajarajan,

On Jul 6, 12:42 am, Rajarajan Sivaraj <rajax....@gmail.com> wrote:
> This is Rajarajan Sivaraj, a first-year PhD student in the Computer
> Science Department at the University of California, Davis. I research
> with scheduling issues in LTE-Advanced, and I find the LTE model on
> NS3 with theLENAsupport to be the best-suited simulation platform
> available today to carry out my relevant research. The model is so
> good and it is no nice to use the same. However, I would like to get
> clarified on a couple of doubts:
>
> 1. The computation of path loss, AMC: CQI, MCS and TBS are all fine.
> But, could you tell me what is the exact use of TBS and how would you
> compute throughput from the TBS ?
>
>  For eg:, I use 110 Physical Resource Blocks, consider all these PRBs
> allocated to a UE which is at a very short distance from the eNB
> (Distance ranging from 1 m to 1 km), the UE gets a good modulation
> code of 29. From the ITBS table, this 29 corresponds to an ITBS value
> of 26 and transportBlockTableSize[109][26] gives a peak TBS value of
> 75376 (max).

you mean a MCS of 28, right? That's the maximum.
You are right, this corresponds to an ITBS of 26, and a TBS of 75376
bytes. This is the size of the RLC PDU that would be created.

>
>   Now, since I use LTE-Advanced, I use more than one frequency bands.
> i.e. 700 MHz, 900 MHz, 1.8 GHz, 2.1 GHz, 2.6 GHz etc.
>
> In lte-spectrum-value-helper.cc, I include the following in the
> static_LteDownlinkSpectrumModel_initializer constructor,
> freqs1.push_back(0.7+(i*0.00018)*1e9), freqs2.push_back(0.9+
> (i*0.00018)*1e9), freqs2.push_back(1.8+(i*0.00018)*1e9),
> freqs2.push_back(2.1+(i*0.00018)*1e9), freqs2.push_back(2.6+
> (i*0.00018)*1e9),

If I remember correctly the
static_LteDownlinkSpectrumModel_initializer is in the ns-3-dev code
(it comes from the GSoC code), but has been replaced in our LENA code.

>
>  110 PRBs on each of these bands constitute 20 MHz bandwidth; and for
> initial experiments, I consider all the 110 PRBs to be allocated to
> the single UE. So, at a shorter distance, the TBS value on each of
> these bands is 75376 (TransportBlockSizeTable[109][26]), so if all
> these are aggregated, we get 414568. And is throughput = 414568/1 ms =
> 414e+06, yielding 414 Mbps? Is it the right way to do the same?

Frankly speaking I am not sure, our LENA code focuses on plain LTE
only, I am not very familiar with LTE-A. The TBS table comes from 3GPP
TS 36.213 Release 8, you might want to check the same document for
Release 10 (which is LTE-A).

>
>   In rr-ff-mac-scheduler.cc, I was able to find how you have computed
> the TransportBlockSize; you compute the rbgNum, rbgSize, noOfFlows,
> determine the nPRB and compute the TBS(MCS,nPRB). But I'm inquisitive
> to know how to determine the TransportBlockSetSize and determine the
> throughput our of it?

If you want throughput stats, I suggest to have a look at our RLC
trace sources, and also at the RLC stats helper. There is at least one
example program using it.

>
> 2.  And now, if I don't consider all these 110 PRBs, but only a single
> PRB, is the TBS based on the MCS alone, which means is TBS gonna be
> any one of these values: 0, 18, 23, ..., 640, 667 TBSfromMCS[mcs]? In
> that case, can you add the TBS on each of the N PRBs (1<=N<=110), you
> use, to get the net TBS on the N PRBs?

To my knowledge the TBS does not linearly depend on the PRBs, so you
can't do that.

>
> 3. I happened to see that you set the DoSetBandwidth(uint8_t
> ulbandwidth,unint8_t dlbandwidth) as DoSetBandwidth(25,25)? In this
> case, what do you exactly mean? 25 Mbps uplink/25 Mbps downlink or
> does it convey any other meaning?

See the Femto Forum API specs which are referenced in our
documentation. Anyway, the bandwidth is in number of PRBs.

> Is it possible to adaptively set
> these bandwidth values based on your traffic requirements?

No, you can't do this, at least accordingly to what the FF API specs
say.


>
> My next step is to carry on channel-aware CC assignment based on path
> loss in LTE-Advanced, and I feel it really nice using NS3. Continue
> your good work. I'm willing to extend help from my end for the
> development of your NS3 project. If we develop a full-fledged LTE
> Advanced model in NS3, it would be highly appreciable. Kindly
> acknowledge.

I'm glad you are finding both ns-3 and our LENA code useful!

Regards,

Nicola

svsanan...@gmail.com

unread,
Jan 7, 2013, 10:59:22 PM1/7/13
to ns-3-...@googlegroups.com, raja...@gmail.com
Hello Mr, Rajarajan & Mr. Nicola Baldo,

I am a beginner in LTE and i have taken RACH optimization as my final semester project. now i want to create a code for UE and want to check how it will be behaving when it is getting accessed with the eNB. so is there any opensource code for UE in NS3.

I have installed NS3 on my ubuntu 11.04 machine. do i require any other hardware requirements apart from this. 

it might be silly for you people but please help me out in this. thank you for spending your time on this.

Thanking You in Advance.
Reply all
Reply to author
Forward
0 new messages