Skip to content

abdulkk49/netprog-assignment

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Network Programming Assignment

Done in partial fulfillment of the course Network Programming(netprog), IS F462, BITS Pilani, Pilani.

1. Local Shell : UNIX Programming : Fork, Processes

We implement a basic bash-like shell with support for job control, process chaining using pipes, input-output redirection, and some custom commands such as double pipes, triple pipes and shortcut mode.[probem statement][design statement]

2. Cluster Shell : UNIX Programming : TCP Sockets

We implement a cluster shell with support for process chaining using pipes, use of * operator, and cd command.[probem statement][design statement]

3. Group Messaging System : UNIX Programming : System V Message Queues

We implement a group messaging system using message queues with support for creating, joining and listing groups, sending and receiving messages to and from private users and groups and auto delete messages.[probem statement][design statement]

1. Dummy Ping System Utility - RTT : UNIX Programming : Raw Sockets

We implement a ping system utility for IPv4 and IPv6 addresses, with features of simultaneous RTT calculations for a bulk of IP addresses, using I/O multiplexing.[probem statement][design statement]

2. Preforked Server Model : UNIX Programming : Server Models

We implement a preforked server model with dynamic handling of child servers to balance the traffic, with the help of UNIX domain sockets for inter-process communication.[probem statement][design statement]

3. Group Messaging on LAN : UNIX Programming : Multicasting, Broadcasting

We implement a P2P group messaging system for LAN users using multicasting and broadasting, with support for creating, joining and listing groups, sending and receiving messages, and filelists.[probem statement][design statement]

Small Lab Exercises as given in the problem statements are also implemeted as a part of the course.[1][2][3]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 99.3%
  • Makefile 0.7%