Link to home
Start Free TrialLog in
Avatar of jaxrpc
jaxrpc

asked on

Multi media streaming with UDP and related protocols

Hi,

I was reading about TCP vs UDP and how UDP is mostly used for real time applications when data loss can be compromised and compensated using algorithms to compensate the data loss. But i have also read about RTP (real time transport protocol) and SIP (Session Initiation protocol) and SDP (Session Description protocol) and it was mentioned that they work in conjuction with the UDP. I dont understand the part of how they work with UDP? Could someone explain it to me?

thanks alot
Avatar of Graham N.
Graham N.
Flag of United Arab Emirates image

Some background first on UDP - which is typically used where packet loss is not detrimental to the overall transmission.

Essentially UDP continues to transmit packets one after the other to the receiver without checking whether the packet was correctly received - whereas with TCP each packet is verified and if needed it is resent.

In general terms this is why UDP is NOT used in data sensitive applications and is often referred to as a "real-time" protocol - where the primary concern is speed and not data integrity.

The similarity between UDP and RTP/SIP/SDP  is that applications that use these protocols can still function through packet loss - typically multimedia streaming (RTP) and VoIP (SIP). In these environments the loss/corruption of one packet does not affect the other packets and the "application" can continue to provide the functionality for which it was intended.

Be careful not to misinterpret the meaning of "real-time applications" in that these protocols should NEVER be used where data integrity is required. The algorithms you are talking about simply compensate for the lost packets by "skipping" over them. Obviously in a data sensitive application this would be completely unacceptable, but in the case of streaming (video or music for instance) the packet loss simply manifests itself as a gap in the stream that is skipped over (i.e. a jittery picture or silence)

So to your specific question - where RTP/SIP/SDP will be the final tranmission layer the initial interaction between the end user application and the server is performed over UDP channels - and subsequent "keep-alive" requests will be actioned in a similar manner.


Avatar of jaxrpc
jaxrpc

ASKER

hi thanks for the explanation.... what is meant by RTP running on top of UDP? does it means...it still uses UDP but adds in extra support like number sequencing?
ASKER CERTIFIED SOLUTION
Avatar of Graham N.
Graham N.
Flag of United Arab Emirates image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial