RDT 1.0 works on completely (perfectly) reliable channel. For building a Reliable Data Transfer of protocol over a layer we firstly take the simple case of transferring data over a completely reliable channel, the RDT 1.0 is a trivial protocol. This transfer of data is shown by using FSM (finite state machine) which consist of FSM of sender and receiver separately. In RDT 1.0 there is only one state each for sender and receiver, here arrow indicates the transition of protocol from one state to another.
RDT is simple it takes the data from the above layer in the for of segments it remove the segment header and make the data in the form of packet using make_pkt and sends the packet into the channel using udt_send (unreliable data transfer).
RDT receives a packet from the underlying channel via the rdt_rcv (packet) removes the data from the packet using extract (packet, data) and passes the data up to the upper-layer. The rdt_rcv (packet)event result from a procedure call i.e. from rdt_rcv() packet from the lower layer of the protocol.
In this protocol there is no difference between a unit of data and a packet, in this all the packets flow from sender to receiver in a uniform manner hence no feedback is required from the receiver side to tell the sender whether the packet is received or not.