RMTP also supports a simple congestion control strategy that modulates the sender's window to limit its transmission rate. Your assignment is to implement a RMTP sender and all of the required services.
Data flows in the forward direction and acknowledgements flow in the reverse direction.
Data packets cannot be sent from the receiver to the sender and acknowledgements cannot be sent from the sender to the receiver. Recall that UDP is stateless and unreliable. In order to implement reliability on top of UDP, an RMTP conversation requires connection state at both comminucation end-points. Hence, RMTP must be a connection-oriented protocol and must include phases for connection setup and teardown. You will format RMTP packet headers on top of the simple UDP socket interface.