[asterisk-users] Bandwidth requirements

Erik erik at infopact.nl
Thu Oct 5 00:39:09 MST 2006


Let me paste my old reply to this:

Let's do some calculations on that:

g729a 20ms results in 20 bytes RTP payload in each packet, in order to traverse the OSI model there's some headers that need to be added,
as RTP gets an RTP header, the RTP packet gets an UDP header and the UDP datagram gets an IP header:
So add a 12 byte RTP header, 8 byte UDP header and a 20 Byte IP header

This results in:
20 byte RTP payload + 12 byte RTP header + 8 byte UDP header + 20 byte IP header=60 byte on the ip layer.
Thats a 40 byte overhead (so 2/3 of the packet is just headers :) and were still only on the IP layer now)

So to transmit just 1 RTP packet you are actualy transmitting 60 bytes on the IP layer, so in order to get the real used bandwidth we
need to knowhow many packets we are sending and on which medium (DSL/ethernet/slip/smokesignals):

20 ms results in 50 packets/s so: 50 packet/s *60 bytes/packet=3000 bytes/s
that's 300*8=24000 bit/s total bandwidth on the IP layer so the overhead is 24000-8000=16000 bit/s.

The fun starts if you are going to send this over DSL, let's continue the calculation:

50 packets of 60 byte IP, add the 2 byte PPPoA header for DSL= 62 bytes per packet.
However, DSL operates with 53 bytes ATM cells, in which you can fit 48 bytes payload (and a 5 byte header) so in order to transmit the 62 bytes of
data you need: 62/48=2 ATM cells.

Why 2 cells you say? Because ATM can't utilize the unused part of cells, so to transmit 62 bytes you use the same amount of bandwith (on dsl) as you
would use to transmit 96 (48*2) bytes.

So 1 RTP packet uses 96 bytes on the DSL line, as you already know we have 50 packets/s so that's 50 packets/s*2 cells=100 Cells/s
100 cells/s * 53 byte = 5300 bytes/s on the DSL line thats 42400 bits/s to transmit a 8 kbit/s stream :)

So in order to use 5 simultaneous calls you would need a 1:1 DSL line of at least 5*42400=212000 bps so a 256/256 DSL would do, however if
you need 20 calls that would be 20*42400=848000 bps so that would be a 1M/1M line (and some bandwidth to spare)

Erik Versaevel


hugolivude wrote:
> Hi,
> 
> Age old question it seems but I haven't been able to get a handle on it
> yet.  Let's assume I'm using a g729 codec.  If I wanted to handle 20
> simultaneous calls, how much bandwidth would I need?  Is there a general
> formula for this?
> 
> I tried this caluclator:
> http://www.voip-calculator.com/calculator/eipb/
> 
> I wasn't sure what "Packet Duration to select so I took the default 20ms
> (2 samples) - whatever that means.  I plugged in 5 for the BHT (20
> customers, each getting 3 X 5 minute calls/hour = 5 Erlangs) and the
> default 0.01 for the Blocking.  It worked out to 264 kbps.  Does this
> sound reasonable?  If so great!  A business DSL could support this.
> 
> Comments welcome!
> 
> Cheers,
> H
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> --Bandwidth and Colocation provided by Easynews.com --
> 
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-users



Erik Versaevel


More information about the asterisk-users mailing list