Programming Assignment 3 Sloiding Window Protocol Implementation of a reliable data transfer protocol on top of UDP sockets using Go-Back-N protocol with window size equal to 4 packets. Build a simple File Transfer Service that consists of a client and server.
The server exports a set of files from the computer on which it runs to be downloaded on the client computer. That is: a client requests a file from the server and the server responds to the client by sending the file. Client will request one file at a time. Server will send the contents of the file followed by the end-of-transmission packet and then exits. Client must save the file on the local computer with the same file name.
Server records all file download activities in a log file. You should build
your MFTP on UDP ports. Use sequence number on data blocks to enforce reliability.
The message from the client and the response from the server are transmitted as the content of
UDP datagrams. Each message is identified by a packet type as follows: