IAX Settings User Guide

 

 

Overview

IAX stands for Inter-Asterisk eXchange protocol. The IAX protocol is most commonly used to link Asterisk systems together. IAX uses a single port for call signaling and transmission of a VoIP audio stream. Where SIP uses multiple different ports for signalling and audio traffic. This single port configuration allows for easier management of securing the VoIP network. IAX default port configuration is UDP port (4569). The PBX allows configuration of IAX trunks and IAX extensions, (note that the IAX protocol for phones and endpoint devices is limited and not currently widely adopted). The IAX Settings module defines the rules that your PBX will use to establish IAX connections to other devices and servers.

The term IAX is used ambiguously. The technology used is IAX2 but no one uses IAX1 so it is generically referred to as IAX

 

Logging in

  • From the top menu click Settings

  • In the drop down click Asterisk IAX Settings

Settings

Audio Codecs

This section defines which codecs will be available for codec priority rules and for the IAX to connect

Codecs

Check the desired codecs and all others will be disabled unless explicitly enabled in a device or trunks configurations. Drag to re-order.

ulaw

G.711-u-law (64 Kbps, used in US). Using this codec will give the best voice quality, since it is the same codec used by the PSTN network. It takes more bandwidth than other codecs, up to 84 Kpbs including all the UDP and IP overhead.

alaw

G.711-a-law (64 Kbps, used in Europe). a-law provides more dynamic range as opposed to ulaw.

gsm

13kbps 9full rate, 20ms frame size

siren14

G.722.1 annex C, licensed from Polycom

lpc10

Not recommended, voice signal is clear but sounds robotic

speex

2.15 to 44.2 Kbps, flexible opensource codec, consumes large amounts of CPU

g722

48/56/64 Kbpx ADPCM 7Khz audio bandwidth

adpcm

Adaptive Differential Pulse Code Modulations

siren7

G.722.1, Siren7 is licensed from Polycom

g723

5.3/6.3 Kbpx, 30ms frame size, use of this codec requires licensing

slin

16 bit Signed Linear PCM

g726

16/24/32/40 Kbps (Asterisk only supports 32 kbps,) like g.711 it has its origins in the PSTN network

g729

8 Kbpx, 10ms frame size, may require a license unless using pass-thru

ilbc

15 Kbps, 20ms frame size and 13.3 Kbps, 30ms frame size

g726aal2

Asterisk specific version of G.726

 

Codec Priority

Controls the codec negotiation of an inbound IAX call. This option is inherited to all user entities. It can also be defined in each user entity separately, which will override the setting here. The valid values are:

Host

Consider the host’s preferred order ahead of the caller’s.

Caller

Consider the caller’s preferred order ahead of the host’s.

Disabled

Disable the consideration of codec preference altogether. (This was the original behaviour before preferences were added).

Reqonly

Same as disabled, only do not consider capabilities if the requested format is not available. The call will only be accepted if the requested format is available.

Bandwidth

Specify bandwidth of low, medium, or high to control which codecs are used in general

Video Support

This section allows you to disable or enable video support and define which video codecs will be used by the system.

Check to enable or disable video support and select desired codecs when enabled.

Codecs

h264

most commonly used format for HD video

h263p

an enhanced version of H.263 with better video quality

h263

lower bit rates designed for video conferencing

h261

basically obsolete, but remains for backwards-compatibility mode in some video conferencing systems and some types of internet video

Registration Settings

Define the minimum and maximum length of time that IAX peers can request as a registration expiration interval (in seconds).

  • minregexpire - default 60

  • maxregexpire - default 3600

Jitter Buffer Settings

This section allows you to disable or enable the jitter buffer. You can adjust several parameters relating to the jitter buffer. The jitter buffer’s function is to compensate for varying network delay. The jitter buffer works for INCOMING audio – the outbound audio will be dejittered by the jitter buffer at the other end.

Jitter Buffer

This is where you enable or disable the jitter buffer.

Force Jitter Buffer

Enable or Disable. Forces the use of a jitter buffer on the receive side of an IAX channel. Normally the jitter buffer will not be used if receiving a jittery channel. It will send it off to another channel, such as a SIP channel, to an endpoint where there is typically a jitter buffer at the far end. This will force the use of the jitter buffer before sending the stream on. This is not typically desired as it adds additional latency into the stream.

Jitter Buffer Size

  • maxjitterbuffer - default 200, max length of the jitterbuffer in milliseconds

  • resyncthreshold - default 1000. When the jitter buffer notices a significant change in delay that continues over a few frames, it will resync, assuming that the change in delay was caused by a timestamping mix-up. The threshold for noticing a change in delay is measured as twice the measured jitter plus this resync threshold. Resyncing can be disabled by setting this parameter to -1.

Max Interpolations

The maximum number of interpolation frames the jitter buffer should return in a row. Since some clients do not send CNG/DTX frames to indicate silence, the jitter buffer will assume silence has begun after returning this many interpolations. This prevents interpolating throughout a long silence.

Advanced General Settings

Language

This is the default language for a channel.

Bind Address

The IP address to bind to and listen for calls on the bind port. If set to 0.0.0.0, Asterisk will listen on all addresses. To bind to multiple IP addresses or ports, use the “Other IAX Settings” field below where you can put a setting such as “bindaddr=192.168.10.100:4555.” It is recommended to leave this blank.

Bind Port

Local incoming UDP port that Asterisk will bind to and is listed for IAX messages. The IAX standard is “4569” and in most cases this is what you want. It is recommended to leave this blank.

Delay Auth Rejects

Enable or Disable. For increased security against brute force password attacks, enable this to delay the sending of authentication. Reject for REGREQ or AUTHREP if there is a password.

 

Other IAX Settings

 

You may set any other IAX setting not present here that is allowed to be configured in the General section of IAX.conf. There will be no error checking against these settings, so check them carefully. They should be entered as “[setting] = [value]” in the available boxes. Click the “Add” field box to add additional fields. Blank boxes will be deleted when submitted.

Save

Make sure to press the “Submit” button when done. The PBX IAX connections will now be defined by the settings in this module.

Return to Documentation Home I Return to Sangoma Support