Generic selectors
Exact matches only
Search in title
Search in content

Reply To: need help about question

#29806
Abhishek Singh
Guest

1)UDP has an 8 byte header, and TCP usually has a 20 byte header.
Let payload is x bytes

Throughput of voip will be given by formula:
(Payload+ udp/tcp header + rtp header + ip header) * 8 * (voip bitrate/payload in bits)

Terms :
Payload is constant as specified in problem
BitRate = bitrate defined by codec (ex. 8Kbps in G.729 )
Packets per second= (bitrate / payload in bits )
Num of packets required(dependent on payload) to send per second to maintain bitrate .
Header = RTP header( 12 bytes) + TCP/UDP header(20/8 bytes) + IP header(20 bytes).

Effective BW required by Voip call = (pay load + headers) * 8 * packets per second
= (payload + rtp header + IP header+ TCP/UDP header) *8 * (bitrate / (payload *8))
= ( pay load + 12+20+ TCP/UDP header) * 8 *(bitrate / (payload *8))

BW gain = 1-{( pay load + 32+ 8) * 8 *(bitrate / (payload *8))}/{ ( pay load + 32+20) * 8 *(bitrate / (payload *8))}
Bw gain=1-{pay load + 40}/{payload+52}
Lets take payload = 20 bytes as in case of G.729
Bw gain= 1-60/72
=.1666
=16.66% is the gain by using udp over tcp
(gain is calculated over tcp)
2) for each packet send tcp receives a ACK packet .
this features wastes BW in case of real time applications like VOIP and media streaming
because packet will be discarded at receiver if it is received late , but even then ACK packet will be sent by TCP. There is no such problem in UDP.

3) Udp never decreses its send rate . while TCP can decrease its send rate because of its congestion control algorithm, which is an overhead in case of VOIP.