What is reliable data transfer protocol (rdt)?
Reliable protocols form an abstraction over unreliable channels, to provide a reliable channel.
Under the hood they use:
udt_send()
deliver_data()
They then provide a safe interface for consumers:
rdt_send()
rdt_rcv()