Codec Bandwidth Calculation G711/G729

RTP: Voice payloads are encapsulated by RTP, then by UDP, then by IP. A Layer 2 header of the correct format is applied; the type obviously depends on the link technology in use by each router interface. A single voice call generates two one-way RTP/UDP/IP packet streams. UDP provides multiplexing and checksum capability; RTP provides payload identification, timestamps, and sequence numbering.

Each RTP stream is accompanied by a Real-Time Transport Control Protocol (RTCP) stream. RTCP monitors the quality of the RTP stream, allowing devices to record events such as packet count, delay, loss, and jitter (delay variation). A single voice packet by default contains a payload of 20 msec of voice (either uncompressed or compressed). Because sampling is occurring at 8000 times per second, 20 msec gives us 160 samples. If we divide 8000 by 160, we see that we are generating 50 packets with 160 bytes of payload, per second, for a one-way voice stream.

G711 G729
Payload 160 b 20 b
Codec BW 64kbps 8kbps
L3/L4 header:
RTP 12 12
UDP 8 8
IP 20 20
Protocol Payload 40 40
Total before L2 200 b 60 b
Bamdwidth/call = Payload + Protocol Payload / Payload x CodecBW
BW/call (without L2) (160+40)/160 x 64 = 80kbps (20+40)/20 x 8 = 24kbps
Frame Relay Overhead
Frame Relay 6 b 6 b
Total L2 206 b 66 b
BW/call (160+(40+6))/160 x 64 =82.4 kbps (20+(40+6))/20 x 8 = 26.4kbps
Multilink PPP Overhead
Multilink 6 b 6 b
Total L2 206 b 66 b
BW/call (160+(40+6))/160 x 64 =82.4 kbps (20+(40+6))/20 x 8 = 26.4kbps
Ethernet Overhead
Ethernet 18 b 18 b
Total L2 218 b 78 b
BW/call (160+(40+18))/160 x 64 =87.2 kbps (20+(40+18))/20 x 8 = 31.2kbps
cRTP Applied
CRTP 40 => 4 40 => 4
Before L2 160+4 / 160 x 64 =65.6kbps 20+4 / 20 x 8= 9.6kbps
After L2 160+(4+6) / 160 x 64 =68kbps 20+(4+6) / 20 x 8= 12kbps
% GAIN with cRTP 18% 60%

4 thoughts on “Codec Bandwidth Calculation G711/G729

  1. sir i have a small issue on a simple practical on 1 voice vlan site.
    here is description :-

    R1 –

    ephone 1
    number 2001
    { codec g729 }

    ephone 2
    number 2002
    { codec g711}

    ephone 3
    number 2003
    {codec g711}

    In a lan network in 1 ip phone i m running codec g729 instead of g711.

    when communication between ephone2 & ephone3 happens they use g711 codec but

    when communication between ephone1 & ephone2 happens they use g729 codec. WHY.?

    why it is happening. plz give explanation..?

    Regards –
    Suraj Singh Rana

  2. I have been desperately looking for the equation to find the BW utilization by codecs.This one helped me to understand it while preparing for my preperations …Kudos

  3. for g729 does packet size in ms need be a multiple of 10?

    for piss poor ISP jankiness would decreasing to 10ms result in fewer lost sound chunks?

Leave a Reply to najnin Cancel reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: