This repository contains local lab programs for the 5th Semester Computer Networks course. The programs cover network simulations using NS-2 (TCL) and network protocols/algorithms implemented in Java.
-
Program 1: Point-to-Point Network
- Simulates a simple point-to-point network topology.
- Demonstrates packet transmission between nodes.
-
Program 2: Ethernet LAN
- Simulates an Ethernet LAN with multiple nodes.
- Demonstrates network traffic and behavior in a LAN environment.
-
Program 3: Ping Utility
- Simulates the functionality of the Ping command.
- Demonstrates connectivity testing between network nodes.
-
Program 4: CRC (Cyclic Redundancy Check)
- Java implementation of the CRC error detection mechanism.
- Calculates the checksum for data integrity verification.
-
Program 5: Sliding Window Protocol (Go-Back-N)
- Implements the Go-Back-N ARQ protocol using Java Sockets.
- Demonstrates reliable data delivery with window-based flow control.
-
Program 6: Go-Back-N Simulation
- Simulates the logic of the Go-Back-N protocol.
- Shows frame transmission, acknowledgement handling, and retransmissions.
-
Program 7: TCP Socket Programming
- Implements a Client-Server model using TCP (Transmission Control Protocol).
- Demonstrates reliable, connection-oriented communication.
-
Program 8: UDP Socket Programming
- Implements a Client-Server model using UDP (User Datagram Protocol).
- Demonstrates connectionless, lower-overhead communication.
-
Program 9: RSA Algorithm
- Java implementation of the RSA (Rivest-Shamir-Adleman) algorithm.
- Demonstrates public-key cryptography for encryption and decryption.
-
Program 10: Leaky Bucket Algorithm
- Implements the Leaky Bucket algorithm for traffic shaping and congestion control.
- Simulates packet processing and buffering.
To run the TCL scripts, you typically use ns:
ns Program1/Point-to-Point.tcl(Note: Requires NS-2 to be installed and configured in your environment)
Compile and run the Java programs using javac and java:
cd Program4
javac CRC1.java
java CRC1