This repository comprises assignments and practical projects from Computer Networks 2, aligned with Kurose & Ross's 'Computer Networking: A Top-Down Approach, 8th edition'.
This assignment explores the following key topics: #DistanceVectorRouting, #LinkStateRouting, #DijkstrasAlgorithm, and #ShortestPathRouting.
In this assignment, I delve into: #IPForwarding, #FlowTables, #NetworkSwitches, and #PacketScheduling.
The assignment covers topics such as: #InteriorGatewayProtocols, #AutonomousSystems, and #iBGP_vs_eBGP.
The focus here is on: #TCPStreamEstablishment, #UDPvsTCP, and #CongestionControl.
This assignment explores deeper into congestion control with topics like: #CongestionWindow, #SlowStart, and #CongestionAvoidance.
In this assignment, I study: #BorderGatewayProtocol, #RouteAdvertisement, and #ASPaths.
The final assignment revolves around queue management and scheduling with topics like: #WeightedFairQueueing, #BufferManagement, and #QueueScheduling.
This project focuses on utilizing Mininet, a network emulator, to create various network topologies such as single, linear, and tree structures. It involves employing commands like nodes, net, and dump to observe and investigate the emulated network.
The objective of this project is to evaluate the connectivity and bandwidth performance of Mininet hosts using ICMP ping and Iperf networking tools. It involves analyzing the implementation of OpenFlow and TCP protocols, which facilitate communication within the network.
This project delves into the utilization of Mininet for constructing a network topology comprising 12 hosts and 11 switches. It further explores the programmable definition of flow rules on the switches to direct traffic between specific host IP addresses, employing the OpenFlow protocol. Additionally, the project explores the realm of software-defined networking within the utilization of the Floodlight controller on the Unix operating system.