Skip to content

devekar/RUDP

Repository files navigation

Vaibhav Devekar(devekar.1@osu.edu)
Gaurav Soni

How to run program
------------------
...



FILE DESCRIPTIONS
-----------------

user_library.h
Contains the interface to the TCP daemon for use by client programs ftpc and ftps.

ftps.c
Contains the program for server which accepts a file and saves it to a particular location.

ftpc.c
Contains the program for client which sends a file from a particular location.


tcp.h & tcp.cpp 
Contains TCP packet structure and helper methods for creating and working with packets.       


tcpd.cpp  
Contains the code for the TCP daemon. It contains code for interacting with client processes, timer, peer daemon, sending and receiving data and connection shutdown.

buffer.h sendbuffer.h recvbuffer.h
These files implement the buffer and window management used by tcpd.

constants.h types.h    
Contain common constant and type definitions.

timeoutCalculator.h  
Contains code for calculating RTO using Jacobson's algorithm used by tcpd.


delta-list\
Folder containing the timer implementation and associated files.

delta-list\delta-list.h 
Contains implementation of delta-list using a sorted linked list.

delta-list\functions.h and delta-list\functions.cpp
Contain helper functions with error handling

delta-list\types.h 
Contain common type definitions.

delta-list\timer-client.h 
Contains information required by a process to use the timer process.

delta-list\timer.h and timer.cpp
These files implement the timer. The timer runs in a loop. Each iteration of the loop is called a tick and happens once every few constant ms. Every tick cycle, the tick count of the head of the delta list is decremented. Once the count reaches 0, a message is sent to the output port the head moves on. We also check for pending requests once every tick.

Releases

No releases published

Packages

No packages published