This networking project for CST311: Introduction to Computer Networks involved the design and implementation of a virtualized network environment and a distributed chat application. I focused on building a secure, multi-router topology and extending it with a custom socket-based communication service. Key features include:
- Network Topology: Building a legacy-style multi-router network using Mininet, featuring multiple subnets and static routing.
- Connectivity Verification: Assigning IP addresses and configuring static routes to ensure full end-to-end connectivity across all hosts.
- Socket Programming: Extending a custom Python socket-based system into a three-client group chat application.
- Automated Deployment: Programmatically launching the server and clients across different network hosts within the Mininet environment.
The project showcases the integration of virtualized infrastructure with real-time distributed application development. Understanding low-level routing and socket communication is essential for building any robust distributed system.