summaryrefslogtreecommitdiff
path: root/ns3-simulations/ns3-simulator/main.cc
diff options
context:
space:
mode:
authorLoic Guegan <manzerberdes@gmx.com>2019-04-25 15:51:05 +0200
committerLoic Guegan <manzerberdes@gmx.com>2019-04-25 15:51:05 +0200
commita6e70544bb28c209891ea5335be0d2939f0737d6 (patch)
tree361f3989128bff0633fd956b00f10ce7ee629003 /ns3-simulations/ns3-simulator/main.cc
parent1399886f4d56370d713ba3262b83df1df008d2a7 (diff)
Start some simulation tests
Diffstat (limited to 'ns3-simulations/ns3-simulator/main.cc')
-rw-r--r--ns3-simulations/ns3-simulator/main.cc24
1 files changed, 20 insertions, 4 deletions
diff --git a/ns3-simulations/ns3-simulator/main.cc b/ns3-simulations/ns3-simulator/main.cc
index 7d9338c..f3800ca 100644
--- a/ns3-simulations/ns3-simulator/main.cc
+++ b/ns3-simulations/ns3-simulator/main.cc
@@ -37,12 +37,28 @@ int main(int argc, char* argv[]){
// Don't forget the following
Ipv4GlobalRoutingHelper::PopulateRoutingTables ();
- // Run Simulations
+
+ // Setup Logs
uint32_t nNode=ns3::NodeList::GetNNodes();
- NS_LOG_UNCOND("Starting simulation with "<< nNode << " nodes");
- Simulator::Stop (Seconds (20));
+ FlowMonitorHelper flowmon;
+ Ptr<FlowMonitor> monitor = flowmon.InstallAll();
+ Ptr<Ipv4FlowClassifier> classifier = DynamicCast<Ipv4FlowClassifier> (flowmon.GetClassifier ());
+
+ // Run Simulations
+ Simulator::Stop (Seconds (30));
Simulator::Run ();
- Simulator::Destroy ();
+ // Print logs
+ NS_LOG_UNCOND("NS-3 Version " << NS3_VERSION);
+ NS_LOG_UNCOND("Simulation used "<< nNode << " nodes");
+ std::map<FlowId, FlowMonitor::FlowStats> stats = monitor->GetFlowStats ();
+ for (std::map< FlowId, FlowMonitor::FlowStats>::iterator flow=stats.begin(); flow!=stats.end(); flow++)
+ {
+ Ipv4FlowClassifier::FiveTuple t = classifier->FindFlow(flow->first);
+ NS_LOG_UNCOND("Flow " <<t.sourceAddress<< " -> "<< t.destinationAddress << " delay = " <<flow->second.delaySum.GetSeconds());
+ }
+
+ // Finish
+ Simulator::Destroy ();
return(0);
}