Implement RDT 1.0 over a reliable UDP channel.
Project description: The TCP/IP stack has five layers, namely application, transport, network, link, and physical. In PHase 1, each of you implemented the standard user datagram protocol (UDP) sockets. In Phase 2, the intention is to transfer a file (say BMP) between a UDP client process and a UDP server process. In Phase 2, we will provide reliable data transfer (RDT) service assuming that the underlying layer is perfectly reliable using UDP connection developed in Phase 1. Each group must implement the RDT 1.0 protocol described in Section 3.4.1 of the course textbook.