NS3 MULTICAST PROJECTS

NS3 MULTICAST PROJECTS is very useful for streaming media. Multicasting is the networking technique of delivering the same packet simultaneously to a group of clients. Multicast means that one or more than one sender is sending data to multiple recipients, but only sending a single copy.

 

Types of multicasting projects using NS3:

  • IP multicasting.
  • Mapping IP multicast to Ethernet multicast.
  • Hardware/Ethernet multicasting.

 

Techniques of  NS3 MULTICAST PROJECTS :

 

  • Link-state multicast protocol.
  • Core based protocol.
  • Flood and prune routing protocol.

 

Multicast routing protocols are:

  • Protocol independent multicast.
  • Multicast Border Gateway .
  • Hierarchical Distance Vector Multicast routing protocol (HDVMRP).
  • PIM-DM.
  • PIM-SM .

 

Merits of multicast routing:

  • Computation at forwarding points simplifies support for higher level functionality
  • Quick deployment
  • All multicast state in end systems
  • Used for streaming multimedia and video conferencing applications
  • A shared white board is also one of the applications of multicast routing.

 

Architecture of multicast routing (video streaming applications):

NS3 MULTICAST PROJECTS

Sample code for ns3 multicast projects:
This is code for main function of multicast routing.
int main (int argc, char *argv[])
{

Config::SetDefault (“ns3::CsmaNetDevice::EncapsulationMode”, StringValue (“Dix”));
CommandLine cmd;
cmd.Parse (argc, argv);
NS_LOG_INFO (“Create nodes.”);
NodeContainer c;
c.Create (5);
NodeContainer c0 = NodeContainer (c.Get (0), c.Get (1), c.Get (2));
NodeContainer c1 = NodeContainer (c.Get (2), c.Get (3), c.Get (4));
NS_LOG_INFO (“Build Topology.”);
CsmaHelper csma;
csma.SetChannelAttribute (“DataRate”, DataRateValue (DataRate (5000000)));
csma.SetChannelAttribute (“Delay”, TimeValue (MilliSeconds (2)));
NetDeviceContainer nd0 = csma.Install (c0); // First LAN
NetDeviceContainer nd1 = csma.Install (c1); // Second LAN

NS_LOG_INFO (“Add IP Stack.”);
InternetStackHelper internet;
internet.Install (c);
NS_LOG_INFO (“Assign IP Addresses.”);
Ipv4AddressHelper ipv4Addr;
ipv4Addr.SetBase (“10.1.1.0”, “255.255.255.0”);
ipv4Addr.Assign (nd0);
ipv4Addr.SetBase (“10.1.2.0”, “255.255.255.0”);
ipv4Addr.Assign (nd1);
NS_LOG_INFO (“Configure multicasting.”);
Ipv4Address multicastSource (“10.1.1.1”);
Ipv4Address multicastGroup (“225.1.2.4”);
Ipv4StaticRoutingHelper multicast;
Ptr multicastRouter = c.Get (2); // The node in question
Ptr inputIf = nd0.Get (2); // The input NetDevice
NetDeviceContainer outputDevices; // A container of output NetDevices
outputDevices.Add (nd1.Get (0)); // (we only need one NetDevice here)
multicast.AddMulticastRoute (multicastRouter, multicastSource,
multicastGroup, inputIf, outputDevices);

Ptr sender = c.Get (0);
Ptr senderIf = nd0.Get (0);
multicast.SetDefaultMulticastRoute (sender, senderIf);
NS_LOG_INFO (“Create Applications.”);
uint16_t multicastPort = 9; // Discard port (RFC 863)
OnOffHelper onoff (“ns3::UdpSocketFactory”,
Address (InetSocketAddress (multicastGroup, multicastPort)));
onoff.SetConstantRate (DataRate (“255b/s”));
onoff.SetAttribute (“PacketSize”, UintegerValue (128));
ApplicationContainer srcC = onoff.Install (c0.Get (0));
srcC.Start (Seconds (1.));
srcC.Stop (Seconds (10.));
PacketSinkHelper sink (“ns3::UdpSocketFactory”,
InetSocketAddress (Ipv4Address::GetAny (), multicastPort));
ApplicationContainer sinkC = sink.Install (c1.Get (2)); // Node n4
sinkC.Start (Seconds (1.0));
sinkC.Stop (Seconds (10.0));
NS_LOG_INFO (“Configure Tracing.”);

AsciiTraceHelper ascii;
csma.EnableAsciiAll (ascii.CreateFileStream (“csma-multicast.tr”));

csma.EnablePcapAll (“csma-multicast”, false);

NS_LOG_INFO (“Run Simulation.”);
Simulator::Run ();
Simulator::Destroy ();
NS_LOG_INFO (“Done.”);
}

Current Work progress

NS3 Projects for MS Students

NS3 Projects for B.E,B.Tech students

NS3 Projects for M.E,M.Tech Students

NS3 Projects for PhD Scholars

We assist PhD Scholars in Publishing Papers in Reputed journals for NS3 Simulator Projects.

NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR
NS3 SIMULATOR