This repository contains simulation projects completed as coursework for a wireless system design class. The goal was to analyze network performance under various conditions using NS3.
- Objective: Analyze the performance of a two-node point-to-point topology by varying parameters.
- Modified Parameters:
- Propagation Delay: 1ms
- Packet Transmission Interval: 0.5s
- Maximum Packets: 200
- Data Rates: 1Mbps, 5Mbps, 10Mbps, 15Mbps, 20Mbps, 25Mbps
- Results:
- Throughput: Constant at 160bps across all data rates.
- End-to-End Delay: Reduced significantly as the data rate increased.

Throughput remains constant across all data rates and e2edelay reduces as datarate increases.
- Objective: Extend the topology to four nodes and analyze the impact on performance.
- Configuration:
- Source: Node 0
- Destination: Node 3
- Same parameters as Task One.
- Results:
- Throughput: Constant at 320bps for all data rates.
- End-to-End Delay: Increased due to the additional nodes.

Higher throughput and delay compared to Task One due to doubled node count.

Task Two shows double throughput compared to Task One.

Task Two experiences higher delays due to increased node count.
- Higher data rates significantly reduce end-to-end delay in both tasks.
- Increasing the number of nodes negatively impacts system performance, leading to higher delays.
- Throughput remains constant as no packet drops occur during the simulation.
- Network Simulator 3 (NS3): Ensure NS3 is installed and configured.
- Required Python Libraries: Run
pip install matplotlibfor plotting.
firstT1.sh: Bash script for automating data rate testing in Task One.pyfirst1.py: Python script for parsing results, calculating metrics, and generating graphs.firstT2.sh: Bash script for automating data rate testing in Task Two.pyfirst2.py: Python script for parsing results, calculating metrics, and generating graphs for Task Two.
- Clone the repository:
git clone https://github.com/Coldsummers/cwt1-2.git cd cwt1-2 - Grant execution permissions to run shell scripts:
chmod +x firstT1.sh chmod +x firstT2.sh
- Run the shell scripts to execute the simulation:
./firstT1.sh ./firstT2.sh
This project is licensed under the MIT License.