SinghCoder/Computer-Networks ↗
Created Feb 12, 2021 · View the SinghCoder/Computer-Networks repository page
The repository contains lab work done as a part of Computer Networks course at BITS Pilani
Want this for your repo?
Render a free sample of any GitHub repo in seconds.
Contributors
2
Lines of Code
262
From
Mar 10, 2020
To
Dec 12, 2020
About SinghCoder/Computer-Networks
This repository contains coursework and lab assignments from a Computer Networks course at BITS Pilani, implemented primarily in C. The project serves as educational material covering fundamental networking concepts and practical socket programming, starting with protocol analysis using Wireshark and progressing to implementing custom network applications.
The labs build progressively in complexity, beginning with passive analysis of real-world protocols like DNS, FTP, and traceroute, then moving into active socket programming. Students create their own TCP and UDP client-server applications, ranging from simple message exchange programs to more sophisticated implementations like concurrent servers handling multiple clients simultaneously, file transfer protocols with resume capabilities, and a game server. The later labs focus on reliable protocol design, with implementations of the Stop and Wait protocol both with and without simulated packet loss scenarios.
The repository is structured as a learning progression suitable for undergraduate students beginning their study of networking. All code is written in C using Linux system calls, emphasizing low-level network programming fundamentals. The inclusion of a commit history visualizer video demonstrates the development process across the various lab assignments.



