Skip to content

A repo built while I was studying for my 💻🛜Computer Networks Lab Exam. Detailed comments on how the code works are available.

License

Notifications You must be signed in to change notification settings

MathewJobey/S6-Networking_Lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

S6_Networking_Lab

Basic Setup for Windows Users

WSL + VS Code Setup for Networking Labs

This guide will help you set up your environment for networking labs using Linux headers and tools (like <sys/socket.h>, <arpa/inet.h>, etc.) with WSL and VS Code.


Steps

  1. Install WSL & Ubuntu
    Open PowerShell as Administrator and run:

    wsl --install

    This installs WSL 2 along with the default Ubuntu version. Restart your system when prompted.

  2. Verify Ubuntu Installation
    After rebooting, search for Ubuntu in the Start Menu and open it. Set your UNIX username and password.

  3. (Optional) Install a Specific Ubuntu Version
    If you want a specific version (e.g., Ubuntu 22.04), run:

    wsl --install -d Ubuntu-22.04
  4. Install VS Code and WSL Extension

    • Open VS Code and install the Remote - WSL extension from the Extensions tab.
  5. Install Required Tools
    To install essential tools like gedit, gcc, and build-essential, run the following commands in the Ubuntu terminal:

    sudo apt update && sudo apt upgrade -y
    sudo apt install gedit gcc build-essential

    These tools are necessary for compiling and editing your networking programs.


Running Server and Client Programs

You can create two separate WSL terminals for running server and client programs. Here's an example setup:
image


🔗 Video Tutorial

For a detailed walkthrough, check out this YouTube video (only the first half is necessary):
🎥 Install Windows Subsystem for Linux on Windows 11 - YouTube


Now you're all set to run networking code with full Linux support in VS Code on your Windows system 🚀


Experiments

  1. Transmission Control Protocol (TCP)
  2. User Datagram Protocol (UDP)
  3. Stop and Wait ARQ (SnW)
  4. Go Back N ARQ (GbN)
  5. Selective Repeat ARQ (SR)
  6. Distance Vector Routing Protocol Algorithm (DVR)
  7. File Transfer Protocol (FTP)
  8. Leaky Bucket Algorithm (LB)

About

A repo built while I was studying for my 💻🛜Computer Networks Lab Exam. Detailed comments on how the code works are available.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages