[cisco-voip] About Voip Technology : RTP over TCP

Jon Carnes jonc at ftnc.net
Sat May 14 12:20:58 EDT 2005


On Fri, 2005-05-13 at 05:10, Atul Thosar wrote:
> hello All
> 
> I am reading information about VoIP technology
> For that i am concentrating on SIP (Session Initiation Protocol) and 
> RTP (Real Time Transport Protocol).
> 
> I am interested in implementing RTP over TCP
> I found that there are some disadvantages of TCP, some are
> 
> 1) TCP doesn't support multicasting.
> 
> 2) Through TCP is reliable, it heavily depends on retransmission of     
> 
>    lost or corrupted packets. That increases Delay. Our aim is real     
> 
>    time delivery of packets not reliability. 
> 
> 3) TCP congestion control mechanism decreases the congestion window    
> 
> when packet losses are detected.
> 
> 
> Apart from these flaws i am interested in implementing RTP over TCP
> 
> Is it possible ?

Of course. Heck folks have proven that TCP works over a Carrier Pigeon
Network. Just because you can, doesn't mean it will be very useful.

>  
> What is feasibility of implementing RTP over TCP ?

If you are going to do it for your own proprietary (nefarious?) purposes
it should work fine as long as you don't have any latency issues or
bandwidth bottle necks. You'll have to modify or write your own voice
apps that encode the transport as TCP. However, you *wont* be compatible
with the rest of the world, unless you also write a gateway that moves
your TCP signal into RTP (utp).

TCP is best used when reliability of the data transport is more
important than timely delivery.  What kind of Voice app demands that? 
Well if you want to record Voice then that would be one application.

Just make sure your Voice server has a lot of buffer available in case
of bandwidth bottle necks.

> 
> One more point is What is feasibility of implementing RTP over TCP in 
> case of NAT (Network Address Translation) is there ?
> 
Both UDP and TCP pass through NAT implementations just fine. The problem
with NAT is that certain VoIP implementations store network/IP
information inside the data portion of the packet. SIP has this problem
as does SCCP. NAT only adjusts the header info of a UDP or TCP packet. 

This problem is best tackled by changing to a VoIP implementation that
uses the packet header info instead of the storing the info inside the
Data portion of the packet. IAX is a fine example of a VoIP
control/transmission protocol that traverses NAT (and Double NAT, etc)
with no problems at all.

Move your narrow focus off of SIP and look at what is going on with IAX.
you will find a lot of valuable information there, that might open your
eyes and give wings to your dreams. :-)

http://www.voip-info.org/wiki-IAX+versus+SIP

> Need your valuable suggestion.
> 
> Thank You !
> 
> Atul Thosar

Take care,

Jon Carnes
FeatureTel, North Carolina's Business VoIP provider
http://www.featuretel.com
 



More information about the cisco-voip mailing list