rmartin5 / aqua-sim-ng Goto Github PK
View Code? Open in Web Editor NEWAqua-Sim on NS3
Aqua-Sim on NS3
Hello!
During the experiment, I found that occasional packet loss occurred. Like this, node A sends a packet that Node B can receive, but node C does not. Nodes A, B, and C are usually able to communicate with each other, and packet loss is only a small probability event. The channel setting in the experiment is the default setting and the noise interference is AquaSimConstNoiseGen. I am not sure if this situation is caused by noise interference or by the node sending and receiving data conflicts. I would be very grateful if you can give your suggestion.
Thank you!
Hi Robert,
I have installed the Aqua-Sim-NG with ns-3.26 on Ubuntu 16.04, but I have met some problems when I tried to run the examples.
My work path is: ~/eclipse-workspace/NS3
bMAC.cc
the command line is: ./waf --run src/aqua-sim-ng/examples/bMAC
It generated a trace file called "bMAC-trace.asc", but it didn't print any "Received a packet." sentence which is bind with the callback function (according to the line 177 in bMAC.cc). Below is the output:
-----------Initializing simulation-----------
Creating Nodes
-----------Running Simulation-----------
fin.
floodtest.cc
the command line is: ./waf --run src/aqua-sim-ng/examples/floodtest
But it seems like that the transmissions are not successful, and the callback function didn't work. Below is the output:
-----------Initializing simulation-----------
Creating Nodes
Node: 0x10fee00 newDevice: 0x10e85b0 Position:(0,0,0) freq:25
Node: 0x10ff690 newDevice: 0x10e9170 Position:(0,2000,0) freq:25
Node: 0x10ff7d0 newDevice: 0x10e9d30 Position:(2000,0,0) freq:25
Node: 0x10ff900 newDevice: 0x10eaaa0 Position:(2000,2000,0) freq:25
Sink: 0x10ffa30 newDevice: 0x10eb820 Position:(4000,1000,0)
-----------Running Simulation-----------
-----------Printing Simulation Results-----------
Channel Counters= SendUpFromChannel(35) AllRecvers(should be =n*sendup)(175) SchedPhyRecv(140)
Sent Pkts(Source_NetDevice->Stack):
(NetworkTotal) 0
SendUp Pkts(Sink_RoutingLayer):
(NetworkTotal) 0
Recv Pkts(@Phylayer):
(NetworkTotal) 0
End.
GOAL_string.cc
the command line is ./waf --run src/aqua-sim-ng/examples/GOAL_string
It generated errors, below is the output:
-----------Initializing simulation-----------
Creating Nodes
-----------Running Simulation-----------
assert failed. cond="tAbsolute >= TimeStep (m_currentTs)", file=../src/core/model/default-simulator-impl.cc, line=236
terminate called without an active exception
Command ['/home/mac/eclipse-workspace/NS3/build/src/aqua-sim-ng/examples/ns3.26-GOAL_string-debug'] terminated with signal SIGIOT. Run it under a debugger to get more information (./waf --run --command-template="gdb --args %s ").
I'm sorry for bothering you, but it really confused me, look forward to your reply.
Thanks,
Yiqian Xia
I set the transmission range of node A to 3500m, but sometimes the nodes outside 4000m receive requests directly sent by node A. Every time node A sends a request packet, I print its transmission range , which is always 3500m, but that's what happened. Here is my code.
AquaSimChannelHelper channel = AquaSimChannelHelper::Default();
if (range>0){
channel.SetPropagation("ns3::AquaSimRangePropagation");
}
AquaSimHelper asHelper = AquaSimHelper::Default();
Ptr c = channel.Create();
asHelper.SetChannel(c);
....
if (range>0){
sink->GetPhy()->SetTransRange(range);
dev1->GetPhy()->SetTransRange(range);
dev2->GetPhy()->SetTransRange(range);
dev3->GetPhy()->SetTransRange(range);
dev4->GetPhy()->SetTransRange(range);
Dear Robert Martin sir
I'm unable to implement HH-VBF using "aqua-sim-routing-vbf.cc" model.
Please help me out. Your help is highly appreciated.
aqua-sim-ng/model/aqua-sim-net-device.cc
Line 177 in 0e89076
Hi!
I am trying to run NDN modules, and I just add one line codes, "SendPkt(packet);", in line 133 of named-data.cc, to send the packet form application layer. But some error occurs when run "named_data_example" and the gdb message are as follows:
-----------Initializing simulation-----------
Creating Nodes
Node: 0x6c1350 newDevice: 0x6c4a20 Position: 0,0,0 freq:25 addr:1
Node: 0x6c0e20 newDevice: 0x6c56e0 Position: 2000,0,0 freq:25 addr:2
Node: 0x6c0480 newDevice: 0x6c64b0 Position: 4000,0,0 freq:25 addr:3
-----------Running Simulation-----------
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff42ba598 in ns3::AquaSimPhyCmn::Decodable (this=0x6c5840,
noise=0.39500000000000002, ps=0.39500000000000002)
at ../src/aqua-sim-ng/model/aqua-sim-phy-cmn.cc:309
309 return m_sinrChecker->Decodable(ps / noise);
(gdb)
How can I fix this fault?
Thank you for your attention and I look forward to your help。
I made my scratch file that is similar to BroadcastMAC_example.
but it doesn't send data packet after receive CTS packet.
how can i fix it?
aqua-sim-signal-cache.cc file does not complile.
error: 'creal' was not declared in this scope (line 423)
error: 'cexp' was not declared in this scope (line 429)
Would you know why I get this error?
I try to run it on Virtualbox (Fedora 30).
Hello,
Trying to compile the git version of aqua-sim-ng with ns-3.27 and got the following:
../src/aqua-sim-ng/model/aqua-sim-mac-goal.cc: In member function ‘void ns3::AquaSimGoal::ProcessAckPkt(ns3::Ptrns3::Packet)’:
../src/aqua-sim-ng/model/aqua-sim-mac-goal.cc:1161:10: error: ‘class ns3::Packet’ has no member named ‘Cleanup’
pkt->Cleanup();
^~~~~~~
Any help is much appreciated.
Thank you
Hi Robert,
I have some problems with the AquaSimMultiPathSignalCache class:
AquaSimSignalCache
to AquaSimMultiPathSignalCache
?Ptr<AquaSimMultiPathSignalCache> sC = CreateObject<AquaSimMultiPathSignalCache> ();
asHelper.SetPhy ("ns3::AquaSimPhyCmn",
"PT", DoubleValue (5), /* W */
"Frequency", DoubleValue (3), /* kHz */
"SignalCache", PointerValue (sC));
or
Ptr<AquaSimMultiPathSignalCache> sC = CreateObject<AquaSimMultiPathSignalCache> ();
// or: Ptr<AquaSimSignalCache> sC = CreateObject<AquaSimSignalCache> ();
Ptr<AquaSimNetDevice> newDevice = CreateObject<AquaSimNetDevice> ();
newDevice->GetPhy()->SetSignalCache (sC);
sadly, neither are successful.
AquaSimMultiPathSignalCache
, I will get a vector of various paths associated with MultiPathInfo
structure from the GetPaths()
function, but how to use it?You may be very busy with your research, I am really sorry to trouble you with these problems.
Would it be possible to give me some advice to use the AquaSimMultiPathSignalCache
class in AquaSim-NG?
Thank you, and I look forward to hearing from you.
Best regards,
Yiqian Xia
Dear Robert Martin,
In fact, it is not at all a bug or issue. Simply it is a doubt. I could not find any other person who can provide an answer to this doubt. So, I am raising it as a 'Issue' here. -Sorry.
The README.md mentioned about new localization feature available in aquasim-ng.
It seems that the 'aqua-sim-localization.cc' has AquaSimRBLocalization (Range-based localization) and it can be used to set a node as RefNode" to "Set as a reference node for localization" - but there is confusion in using this since there is no documentation available for it.
But, readme.md as well as the pdf documents of aquasim-ng were not showing any example case of using localization in a simulation.
Of course, it may be possible to use localization features on a trial-and-error basis. But, your answers may help one to use them in a correct, authentic way.
Charles Pandian
In fama.cc , CTSTimer is not working.
I set delay for timer, but it does not work.
how can i fix it?
Hi, When run DBR with trace on we have noticed occasionally that in different transmission and receiving events there are multiple of a single header type. Specifically we have seen duplicates aqua-sim header and DBR header (different information within each). What maybe the cause of this and what does it mean?
Thanks and hope to hear from you soon.
I would like to save the pcap file for the ddos.cc script. Currently, it is not present. Could you kindly help me capture the pcap file?
Is there a transmission range between the nodes? If so, what is the transmission range? Can I set it?
Hi
I am trying to install aquasim ; but I am getting build error
I have installed NS3.34 on ubuntu20.04
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.