This document describes the Inter-Asterisk eXchange protocol, Version
2, (IAX2) an application-layer control and media protocol for
creating, modifying, and terminating multimedia sessions over Internet
Protocol (IP) networks. IAX2 was developed by the open source
community for the Asterisk PBX and is targeted primarily at Voice over
Internet Protocol (VoIP) call control, but it can be used with
streaming video or any other type of multimedia. IAX2 is an "all in
one" protocol for handling multimedia in IP networks. It combines both
control and media services in the same protocol. In addition, IAX2
uses a single UDP data stream on a static port greatly simplifying
Network Address Translation (NAT) gateway traversal, eliminating the
need for other protocols to work around NAT, and simplifying network
and firewall management. IAX2 employs a compact encoding which
decreases bandwidth usage and is well suited for Internet telephony
service. In addition, its open nature permits new payload types
additions needed to support additional services.