Skip to main content

Posts

Simulate TCP Variant Comparison Under Bursty ON/OFF Traffic Model

Recent posts

Simulating ARQ Protocols in ns-3: Comparing Stop-and-Wait, GBN, and Selective Repeat Efficiency

Simulating ARQ Protocols in ns-3: Comparing Stop-and-Wait, GBN, and Selective Repeat Efficiency AIM: To design, implement, and simulate a point-to-point network topology using the NS-3.44 network simulator, and quantitatively compare the throughput efficiency of three Automatic Repeat reQuest (ARQ) protocols — Stop-and-Wait (SAW), Go-Back-N (GBN), and Selective Repeat (SR) — under systematically increasing packet error rates from 0% to 50%, using FlowMonitor statistics and GnuPlot for result visualization. SOURCE CODE: #include "ns3/core-module.h" #include "ns3/network-module.h" #include "ns3/internet-module.h" #include "ns3/point-to-point-module.h" #include "ns3/applications-module.h" #include "ns3/flow-monitor-module.h" #include "ns3/netanim-module.h" #include "ns3/mobility-module.h" using namespace ns3; /* ---- Global throughput tracker ---- */ double g_throughput[3][11] = ...

Web Server Farm Simulation with Load Balancing Using P2P Links

Web-Server Farm Simulation with Load Balancing Using P2P Links Prompt used: Using NS-3 (C++), write a complete simulation file named farm.cc to be placed in the scratch/ folder and run with ./ns3 run scratch/farm.cc . Scenario: Simulate a web-server farm with load balancing using point-to-point links. The topology should have: 1 client node 1 load balancer node 3 backend web-server nodes All links are point-to-point (set data rate to 10Mbps, delay to 2ms) The load balancer distributes UDP traffic from the client across the 3 servers in a round-robin or equal-split fashion using OnOff applications Use UdpClientServerHelper or OnOffApplication + PacketSink on each server Enable NetAnim output ( animation.xml ) so the topology is visible in NetAnim with node labels (Client, LoadBalancer, Server1, Server2, Server3) Enable FlowMonitor and at the end of the simulation print per-flow stats (throughput, delay, packet loss) to the terminal A...

Simulate Stop-and-Wait ARQ over a point-to-point link with varying bit-error rates (0–20%) | NS3 Project 30

Network Congestion and Buffer Overflow Simulating DropTail vs. RED Queue Disciplines in NS-3 1. Introduction Network congestion occurs when the incoming traffic load exceeds the processing or transmission capacity of network resources such as routers or links. In packet-switched networks, routers temporarily store packets in buffers (queues) before forwarding them. When the arrival rate of packets is higher than the departure rate, the queue length increases progressively. Once the buffer reaches its maximum capacity, any additional incoming packets are dropped, resulting in buffer overflow. This leads to packet loss, increased queuing delay, reduced throughput, and overall degradation in network performance. Efficient queue management techniques are therefore essential to control congestion and maintain network stability. 2. Queue Management Techniques: DropTail vs. RED Queue disciplines define how packets are stored and discarded in a router buffer. The design and ...

Simulate and trace TCP Slow-Start, Congestion Avoidance, and Fast Recovery phases | NS3 Project 29

Analysis of TCP Congestion Control Phases Simulating TCP NewReno on a Dumbbell Topology in NS-3 1. Project Overview This project simulates a Dumbbell Topology to observe how TCP NewReno manages network congestion. By creating a bottleneck link with limited bandwidth (1 Mbps), we force the TCP protocol to transition through its three primary phases: Slow-Start, Congestion Avoidance, and Fast Recovery. 2. LLM Source Documentation To develop the source code ( 24bps1052.cc ), the following AI assistant was utilised: LLM Used: Gemini 3 Flash (Google) Prompt Provided: "Hey, can you help me write an ns-3.44 script for my networking lab? I need to save it as scratch/23bps1xxx.cc. I need a Dumbbell Topology with 4 nodes: Node 0 and 1 connect to Node 2 (the router), and Node 2 connects to Node 3. Set the link between 2 and 3 to 1Mbps so it becomes a bottleneck. Use TCP NewReno for the simulation. I need to generate a trace file called cwnd_...