Problem in throughput LTE

193 views
Skip to first unread message

Stefanos Bakirtzis

unread,
Dec 16, 2017, 9:35:38 AM12/16/17
to ns-3-users
Hello everyone,
I am running a simulation with an LTE network (4 enbs up to 2000 ues). Every Ue sends one packet (400 bytes) every one second to a remote host and the host redirects this messages to some users. I am manually counting the throughput the pdr and the delay. Due to my sending rate, the maximum throughput at a link should be 3.2Kbps ( 400*8) Everything is ok in the simulations but in some time marks, I receive that the average throughput in the links is more than 3.2 Kbps, which means that in certain links there are more than one packets transmitted.After recording the packets, I found out that the surplus of packets is owned to Ues that previously did not manage to transmit their packets. That is to say that if one user did not have resources to send his packets for 5 consecutive seconds, when he eventually be granted resources he will transmit all the five packets. Since those packets are supposed to carry geographic information, I interested only in packets that are up to date and for previous packets.
So am asking
1) Is my hypothesis wright or it could be another problem that accounts for the surplus of packets (handovers or a kind of bug)?
2) If I am wright, is there any way to stop the resending procedure.
       i) I mean if there is some kind of condition that sets the resend procedure off, or to always set the ACK as true
       ii) I guess I could do it manually, by increasing the sequence number of the packets only when the packet is received on the host.
          In these case I would need to set a pointer in the remote host and from this pointer to access each Ue app to increase the sequence number when a packet would be received
          However this would increase progrma's executional time  significantly ( It is a 700 sec simulation with 500->2000 Ues)

Looking forward to a response
Best
Steve
       

Tommaso Pecorella

unread,
Dec 17, 2017, 7:41:36 AM12/17/17
to ns-3-users
Hi,

answers in line


On Saturday, December 16, 2017 at 3:35:38 PM UTC+1, Stefanos Bakirtzis wrote:
Hello everyone,
I am running a simulation with an LTE network (4 enbs up to 2000 ues). Every Ue sends one packet (400 bytes) every one second to a remote host and the host redirects this messages to some users. I am manually counting the throughput the pdr and the delay. Due to my sending rate, the maximum throughput at a link should be 3.2Kbps ( 400*8) Everything is ok in the simulations but in some time marks, I receive that the average throughput in the links is more than 3.2 Kbps, which means that in certain links there are more than one packets transmitted.After recording the packets, I found out that the surplus of packets is owned to Ues that previously did not manage to transmit their packets. That is to say that if one user did not have resources to send his packets for 5 consecutive seconds, when he eventually be granted resources he will transmit all the five packets. Since those packets are supposed to carry geographic information, I interested only in packets that are up to date and for previous packets.
So am asking
1) Is my hypothesis wright or it could be another problem that accounts for the surplus of packets (handovers or a kind of bug)?

There's no bug. The LTE scheduler tries to give a "fair" amount of resources to nodes, eventually rescheduling resources for some nodes later on.
 
2) If I am wright, is there any way to stop the resending procedure.

It depends, but in general no. If your flows are using TCP, hen the answer is definitely NO.
If they use UDP, you can shrink the queue sizes (you'll need to do that in TrafficControl and LTE don't ask me how exactly), and let the old packets being dropped, but it's possible that you'll have to define a new TrafficControl queue.
Another option is to change the LTE priority classes and/or to check if there's an LTE resource scheduler that better fit your needs.
 
       i) I mean if there is some kind of condition that sets the resend procedure off, or to always set the ACK as true

I fear that this idea would be extremely hard to implement.
 
       ii) I guess I could do it manually, by increasing the sequence number of the packets only when the packet is received on the host.
          In these case I would need to set a pointer in the remote host and from this pointer to access each Ue app to increase the sequence number when a packet would be received
          However this would increase progrma's executional time  significantly ( It is a 700 sec simulation with 500->2000 Ues)

See above.

Best,

T. 

Zoraze Ali

unread,
Dec 17, 2017, 8:59:55 AM12/17/17
to ns-3-users
Hi,

I just wanted to add more to what Tommaso said,

 
       i) I mean if there is some kind of condition that sets the resend procedure off, or to always set the ACK as true
 
              If you use UDP, use RLC-UM(unacknowledged mode) with HARQ disabled. 
   
       ii) I guess I could do it manually, by increasing the sequence number of the packets only when the packet is received on the host.
          In these case I would need to set a pointer in the remote host and from this pointer to access each Ue app to increase the sequence number when a packet would be received
          However this would increase progrma's executional time  significantly ( It is a 700 sec simulation with 500->2000 Ues)
  
            You can try to play with the queue at RLC layer to keep the latest packet only, i.e., 1 packet long only. If you would do this you might see losses at PDCP layer, since you would be discarding old PDCP PDUs. You also have to pay extra attention to RLC buffer status reports to MAC and that whenever shceduler assign resouces, RLC queue is not empty. 

Kind regards,
Zoraze

yout...@gmail.com

unread,
Mar 20, 2019, 4:03:48 AM3/20/19
to ns-3-users
您好,我正在使用NS-3来模拟4G网络。因为我的毕业设计需要,我在这个项目上花了很多时间和精力,所以我想帮助你,我希望分享4G模拟的来源。,非常感谢你!电子邮件:youthnizi @ gmail.com

在 2017年12月16日星期六 UTC+8下午10:35:38,Stefanos Bakirtzis写道:
大家好,
我正在使用LTE网络运行模拟(4 enbs高达2000 ues)。每个Ue每秒向远程主机发送一个数据包(400字节),主机将此消息重定向到某些用户。我手动计算pdr的吞吐量和延迟。由于我的发送速率,链路的最大吞吐量应该是3.2Kbps(400 * 8)模拟中一切正常,但在某些时间标记中,我收到链路的平均吞吐量超过3.2 Kbps,这意味着在某些链路中传输了多个数据包。在记录数据包之后,我发现数据包的剩余部分属于以前无法传输数据包的Ues。也就是说,如果一个用户没有资源连续5秒发送他的数据包,当他最终被授予资源时,他将传输所有五个数据包。由于这些数据包应该携带地理信息,我只对最新的数据包和以前的数据包感兴趣。
所以我要问
1)我的假设是正确的还是可能是另一个问题导致数据包过剩(切换或一种错误)?
2)如果我是怀特,有没有办法停止重发程序。
       i)我的意思是,如果有某种条件设置关闭重发程序,或总是将ACK设置为真
       ii)我想我可以通过仅在收到数据包时增加数据包的序列号来手动完成在主持人。
          在这些情况下,我需要在远程主机中设置一个指针,并从该指针访问每个Ue应用程序,以便在收到数据包时增加序列号
          然而,这将显着增加progrma的执行时间(这是一个700秒的模拟,500或2000 Ues)

期待回应
最佳
史蒂夫
       
Reply all
Reply to author
Forward
0 new messages