Tap Bridges and LTE

636 views
Skip to first unread message

Quentin Ricard

unread,
Aug 30, 2018, 12:03:56 PM8/30/18
to ns-3-users
Dear all,
TL;DR [the actual problem is presented after this intro]

INTRO
I'm having trouble understanding how the BridgeNetworkDevice works.
Here's how my simulation is working so far :
  • I want to simulate 20 UE, 1 Enb, 1 Pgw and 1 remote server.
  • I use a pipeline with SUMO in order to provide NS3 the positions of the Ues.
I discovered that NS3 can interact with the real world using containers, after a bit of research on the web I found this framework that allows
me to docker in order to control my containers (as I am more familiar with docker than regular lxc). They provide an example that simulate an ad-hoc network that is based
on an NS3 example provided here.

I wanted to tune this example in order to replace the ad-hoc network part with an LTE.

But then, I read here that BridgeNetDevices work only with WiFi and CSMA, (however I'm having trouble understanding if it also is the case for TapBridgeNetworkDevices).

ACTUALPROBLEM

Which brings me to my problem, I tried the following :
    NS_LOG_UNCOND ("Creating tap bridges");
    std
::string TapBaseName = "emu";
   
TapBridgeHelper tapBridge;
    tapBridge
.SetAttribute ("Mode", StringValue ("UseLocal"));
   
for (int i = 0; i < NODES_NB; i++)
   
{
        std
::stringstream tapName;
        tapName
<< "tap-" << TapBaseName << (i+1) ;
       
// NS_LOG_UNCOND ("Tap bridge = " + tapName.str ());
        tapBridge
.SetAttribute ("DeviceName", StringValue (tapName.str ()));
        tapBridge
.Install (nodePool.Get (i), ueLteDevs.Get (i));
       
/* Error */
   
}

That returns the following :
        msg="TapBridge::SetBridgedDevice: Device does not support eui 48 addresses: cannot be added to bridge.",
        file
=../src/tap-bridge/model/tap-bridge.cc, line=898
And honestly I did not manage to get where this comes from (*I'm sure I'm missing something obvious, please don't throw these rocks at me*), even though I think that it is probably linked to what I said in the introduction.

I found that I could be able to bypass this issue using CsmaNetDevices on top of UeDevice and EnbDevice, however this would add an additional hop and I'm not sure if that is the best way of doing it.

  • Is there a "clean" way to do this or have I to go with the dirty one ?
Thank you for your time, any help is appreciated.

I'm putting my example as an attachment, In the mean time I'm trying to isolate the issue by building a small example that would not require the whole SUMO and NS3DockerEmulator in order to reproduce the error, let me know if you don't need it.


Quentin Ricard.


tap-vm-lte.cc

Quentin Ricard

unread,
Aug 31, 2018, 4:51:23 AM8/31/18
to ns-3-users
As far as I can see, the problem comes from the fact that Lte network devices in NS3 are given a 64bits EUI (Mac address) 
dev->SetAddress (Mac64Address::Allocate ()); //LteHelper::InstallSingleUeDevice

and inside TapBridge it expect a Mac48
// TapBridge::SetBridgedNetDevice()
if (!Mac48Address::IsMatchingType (bridgedDevice->GetAddress ()))
 
{
    NS_FATAL_ERROR
("TapBridge::SetBridgedDevice: Device does not support eui 48 addresses: cannot be added to bridge.");
 
}

Is there a solution to make it work with a mac64 ?

new2ns3

unread,
Mar 13, 2019, 1:22:59 PM3/13/19
to ns-3-users
Did you find any solution ?

Quentin Ricard

unread,
Mar 13, 2019, 3:36:31 PM3/13/19
to ns-3-...@googlegroups.com
Yes I did, however ns3 is not fit for the simulation of many Bridged devices, if you're planning on using it for more than 3 nodes it won't work properly (heavy latency due to the fact that ns3 has to compute too much things for live emulation.

--
Posting to this group should follow these guidelines https://www.nsnam.org/wiki/Ns-3-users-guidelines-for-posting
---
You received this message because you are subscribed to a topic in the Google Groups "ns-3-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ns-3-users/fUqzhlLJvvc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ns-3-users+...@googlegroups.com.
To post to this group, send email to ns-3-...@googlegroups.com.
Visit this group at https://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/d/optout.

Vadim Hapanchak

unread,
Apr 2, 2021, 1:28:46 PM4/2/21
to ns-3-users
Dear Quentin,
What is the solution you've applied to resolve this issue??  have you used CsmaNetDevices on top of UeDevice ??  

среда, 13 марта 2019 г. в 19:36:31 UTC, Quentin Ricard:

ytxi...@gmail.com

unread,
Jun 21, 2021, 4:36:01 AM6/21/21
to ns-3-users
hi,
do you figure it out? It seems that we got a similar question.

Quentin Ricard

unread,
Jun 21, 2021, 4:47:07 AM6/21/21
to ns-3-users
I ended up using another tool than ns3 to simulate the LTE network (docker + netem).
In fact, at the time and to the best of my knowledge, ns3 was not able to produce real-time communications using TapBridgeNetworkDevices. I tried recompiling ns3 without the mac64 check (see previous message from August 2018) with no success due to performances issues.

See the following paper for more details :

Basically, I captured network attributes from a LTE network using a RaspberryPi driving on the road and used netem to manipulate the virtual interfaces from docker containers to emulate LTE network connectivity. 

Best Regards

Vadim Hapanchak

unread,
Jun 21, 2021, 5:08:42 AM6/21/21
to ns-3-users
I faced the same performance issues and problem of latency in real-time simulation using TapBridge or Fdnetdevice. Also i find this emulation approach to be unstable running with additional nodes in simulation. Maybe I need more powerful VM..) 
Thanks for your reply .. 

понедельник, 21 июня 2021 г. в 09:47:07 UTC+1, Quentin Ricard:

ytxi...@gmail.com

unread,
Jun 21, 2021, 5:47:19 AM6/21/21
to ns-3-users
thanks for replying.. There is actually a way to bypass the mac64 problem, which is to add csma channel between a UE and a ghost node, then tap-bridge can be used on the ghost node. Following paper confirms this idea:
Real-Time Video Streaming over NS3-based Emulated LTE Networks
Dockemu: Extension of a Scalable Network Simulation Frameworkbased on Docker and NS3 to Cover IoT Scenarios

I am now stuck in a routing problem instead of the mac one, check the last part of the attached file here.
And my problem is  routing over a LTE network (google.com). I will be appreciated if you have any idea to solve it.

testlte.cc

Quentin Ricard

unread,
Jun 21, 2021, 7:25:13 AM6/21/21
to ns-3-...@googlegroups.com
I reached out to the writers of the two papers that you mentioned but they were not able to emulate more than 5 hosts due to performances issues.

Message has been deleted

ytxi...@gmail.com

unread,
Jun 21, 2021, 7:41:23 AM6/21/21
to ns-3-users
that's a pity, I am trying to use ns3 though because I do not require large scale simulation.

Vadim Hapanchak

unread,
Jun 21, 2021, 9:27:22 AM6/21/21
to ns-3-users
this may be useful fro you : https://groups.google.com/g/ns-3-users/c/Z7Jbw0fFujQ/m/dYYjLB0zBAAJ  

понедельник, 21 июня 2021 г. в 10:47:19 UTC+1, ytxi...@gmail.com:

ytxi...@gmail.com

unread,
Jun 21, 2021, 9:46:40 AM6/21/21
to ns-3-users
ok, so it seems that it is a classic issue.
I am going to modify the epchelper to solve that problem.
And also try to contact the authors of the two papers mentioned above.

ytxi...@gmail.com

unread,
Jun 21, 2021, 9:48:30 AM6/21/21
to ns-3-users
hi, do you finally solve the problem regardless of the performance issue? 

在2021年6月21日星期一 UTC+8 下午7:25:13<Quentin Ricard> 写道:

Quentin Ricard

unread,
Jun 21, 2021, 9:59:50 AM6/21/21
to ns-3-...@googlegroups.com
As I said in a previous email, I ended up using a mix of netem and docker to emulate LTE network properties.

Danial

unread,
Nov 26, 2021, 5:07:37 PM11/26/21
to ns-3-users
Hi,

I am following the same path to establish tap-bridges for LTE network by using the CSMA nodes on top of the LTE devices! for 1 UE and 1 remote host! 

Did you manage to solve the issue!? so far, I understood in your code that the IP addresses inconstancy is one of the main issues! 

ytxi...@gmail.com

unread,
May 30, 2022, 3:58:55 AM5/30/22
to ns-3-users
Hi,

No, I have not solved the issue now. Do you have any idea? By the way, what did you mean by the IP address inconstancy? And since if you solved the problem, do you succeed?

Vadim Hapanchak

unread,
May 31, 2022, 4:43:53 AM5/31/22
to ns-3-users
Take a look at this presentation : 
понедельник, 30 мая 2022 г. в 08:58:55 UTC+1, ytxi...@gmail.com:
Reply all
Reply to author
Forward
0 new messages