I am trying to send some data with RTP with C in RedHat Linux 9.0. I have gone through rfc3550. It told that the rtp packet will be a payload of (typically) UDP packet and it is the lower layers which will ensure the real time transfer (though not guaranteed). The thing that is puzzling me is that, I can not uderstand how and who will ensure the transfer. If I send a UDP packet from one application to another another copy of that application running in some other machine in the network, it will be treated as a UDP packet and nobody is going to look into the payload of UDP, it is my understanding till now. And I am not sending the packet to any server or any intermediate entity who will ensure the timely delivery. Please somebody help me to understand this.
Also, I need help which library functions I have to use (e.g. socket(), bind(), sendto(), recvfrom()).
Thanks in advance.