By: Taha Fareed & Casper Feldmann
BiWeekly Update 1
In the First Biweely update we’ve developed a testing framework to evaluate the performance of Client/Server (C/S) and Peer-to-Peer (P2P) chat systems under real-world network conditions. Using Mininet and iPerf, we simulate varying levels of latency, bandwidth, and packet loss to measure key metrics like Round Trip Time (RTT), message success rate, bandwidth consumption, and setup time. So far, we’ve successfully configured our environment and implemented automated pipelines to ensure consistent data collection and analysis.
BiWeekly Update 2
Over the past two weeks, we focused on collecting data for key performance metrics (RTT, success rate, bandwidth usage, and setup time) across both Client/Server and Peer-to-Peer architectures. We simulated real-world conditions including packet loss, bandwidth limitations, and latency. We configured user loads and tested scenarios like server overload and peer disconnects. Our findings show that C/S performs well under stable conditions, while P2P adapts more effectively to congestion and dynamic environments.
BiWeekly Update 3
We completed full data collection for both architectures across baseline and impaired network scenarios. Using color-coded time series plots, we analyzed how each model performs. Our findings show that while C/S excels in clean networks with lower RTT and faster setup times, P2P consistently outperforms under high latency, packet loss, and low bandwidth. Overall, P2P proves more resilient in unpredictable conditions, while C/S remains optimal for structured, high-throughput systems.
Final Presentation
In our final video presentation, we explore the real-world performance differences between Client/Server and Peer-to-Peer chat systems. Using Mininet and automated Python scripts, we tested both models under conditions like high latency, packet loss, and low bandwidth. We analyzed four key metrics (RTT, success rate, bandwidth consumption, and setup time) and found that while C/S excels in stable networks, P2P offers greater reliability in unpredictable environments. The video walks through our methodology, findings, and implications for real-world messaging platforms.
Final Report
In our final project, we conducted an in-depth comparison between Client/Server and Peer-to-Peer architectures in chat systems. Using Mininet and a custom Python automation script, we simulated real-world conditions like latency, bandwidth throttling, and packet loss. We focused on four key metrics RTT, success rate, bandwidth consumption, and setup time across 500+ tests. Our results showed that while C/S performs best in stable, centralized environments, P2P is more resilient under network stress. The project offers insights into how chat platforms can optimize for reliability, efficiency, or a hybrid of both.