Foreword.
Terminology and Definitions.
Acronyms and Abbreviations.
Acknowledgement.
1 Introduction.
1.1 General Introduction.
1.2 On Voice over IP and Telephony over IP.
1.3 Context.
1.4 Enhancement Strategies to Solve SIP Issues.
1.5 IAX: Towards Lightweight Telephony Architectures.
1.6 IAX and Standardisation.
1.7 Rationale.
1.8 What This Book is Not.
1.9 Structure of the Book.
2 The IAX Protocol at a Glance.
2.1 What Does IAX Stand For?
2.2 Is IAX Specific to the Asterisk Platform?
2.3 What is the Difference between IAX2 and IAX?
2.4 Why another New VoIP Protocol?
2.5 How Does IAX Solve VoIP Pains?
2.6 How is Calls Multiplexing Achieved?
2.7 And What About Demultiplexing?
2.8 What Port Number Does IAX Use?
2.9 What Transport Protocol Does IAX Use?
2.10 Is IAX a Reliable Protocol?
2.11 How Does IAX Ensure Reliability?
2.12 Is there an IAX Registration Procedure?
2.13 Does IAX Registration Differ from SIP Registration?
2.14 How Are Media Streams Transported in IAX?
2.15 Is CODEC Negotiation Supported by IAX?
2.16 Is On-Fly CODEC Change Possible During a Call?
2.17 IAX: a Path-Coupled or Decoupled Protocol?
2.18 Can IAX be Aware of the Status of the Network Load?
2.19 What About Security?
2.20 Could IAX Devices Be Managed?
2.21 Is Firmware Version Updating Supported by IAX?
2.22 Can IAX Be Extended to Offer New Features?
2.23 How is an IAX Resource Identified?
2.24 What Does an IAX URI Look Like?
2.25 Is it Possible to Set a Call Involving Several IAX
Servers?
2.26 Is it Possible to Discover the Location of an IAX
Resource?
2.27 What Is DUNDi?
2.28 What Is TRIP?
2.29 What Is ENUM?
References.
Further Reading.
Part One: IAX Protocol Specifications.
3 IAX Uniform Resource Identifier.
3.1 Introduction.
3.2 Format of IAX Uniform Resource Identifiers.
3.3 Examples of IAX Uniform Resource Identifiers.
3.4 Comparing IAX Uniform Resource Identifiers.
3.5 IAX Uniform Resource Identifiers and ENUM.
References.
Further Reading.
4 IAX Frames.
4.1 Introduction.
4.2 Full Frames.
4.3 Mini Frames.
4.4 Meta Frames.
4.5 Encrypted Frames.
4.6 Conclusion.
References.
Further Reading.
5 IAX Information Elements.
5.1 Introduction.
5.2 List of IAX Information Elements.
5.3 Example of IAX Information Element Traces.
References.
Further Reading.
6 IAX Messages.
6.1 Introduction.
6.2 Taxonomy of IAX Messages.
6.3 IAX Requests/Responses.
6.4 IAX Functional Categories.
6.5 IAX Media Frames.
6.6 IAX Reliable/Unreliable Messages.
References.
Further Reading.
7 IAX Connectivity Considerations.
7.1 Introduction.
7.2 IAX Transport Protocol.
7.3 IAX Port Number.
7.4 IAX Call Multiplexing and Demultiplexing.
7.5 IAX Reliability Mechanism.
7.6 Authentication and Encryption.
7.7 Conclusion.
References.
Further Reading.
8 IAX Operations.
8.1 Introduction.
8.2 Provisioning and Firmware Download.
8.3 Registration.
8.4 Call Setup.
8.5 Call Tear-Down.
8.6 Call Monitoring.
8.7 Call Optimisation.
8.8 Conclusion.
References.
Further Reading.
Part Two: Discussion and Analysis.
9 IAX and Advanced Services.
9.1 Introduction.
9.2 CODEC Negotiation.
9.3 Video Sessions.
9.4 Negotiation of Several Media Types in the Same IAX
Session.
9.5 Presence Services.
9.6 Instant Messaging.
9.7 Topology Hiding.
9.8 Mobility.
9.9 Miscellaneous.
9.10 Conclusion.
References.
Further Reading.
10 Multi-IAX Servers Environment.
10.1 Introduction.
10.2 Focus.
10.3 Discovery of IAX Resources.
10.4 Setting End-to-End Calls.
10.5 Load Balancing.
10.6 Path-Coupled and Path-Decoupled Discussion.
10.7 Forking.
10.8 Route Symmetry.
10.9 Conclusion.
References.
11 IAX and NAT Traversal.
11.1 Introduction.
11.2 Structure.
11.3 NAT Types.
11.4 IAX and NAT Traversal Discussion.
11.5 Operational Considerations.
11.6 Conclusion.
References.
Further Reading.
12 IAX and Peer-to-Peer Deployment Scenarios.
12.1 Introduction.
12.2 Scope.
12.3 A P2P Solution for Corporate Customers.
12.4 Conclusion.
References.
Further Reading.
13 IAX and IPv6.
13.1 Introduction.
13.2 Context and Assumptions.
13.3 Service Migration to IPv6.
13.4 Structure.
13.5 The IP Address Exhaustion Problem.
13.6 IPv6: a Long-Term Solution.
13.7 Why IPv6 May Be Problematic for Telephony Signalling
Protocols: the SIP Example.
13.8 IAX: an IP Version-Agnostic Protocol?
13.9 Deployment of IAX Services in a ?Pure? IPv6
Environment.
13.10 Heterogeneous Environment.
13.11 Conclusion.
References.
Further Reading.
14 IAX: Towards a Lightweight SBC?.
14.1 Introduction.
14.2 IP Telephony Administrative Domain.
14.3 Deployment Scenarios.
14.4 Deployment Contexts.
14.5 Service Limitations Caused by SBCs.
14.6 Functional Decomposition.
14.7 Taxonomy of SBC Functions in an SIP Environment.
14.8 Validity of these Functions in an IAX Architecture.
14.9 Conclusion.
References.
Further Reading.
Part Three: Deployment Scenarios in SIP-Based
Environments.
15 Scenarios for the Deployment of IAX-Based Conversational
Services.
15.1 SIP Complications.
15.2 Structure.
15.3 Beyond the ?SIP-Centric? Era.
15.4 Methodology.
15.5 Overall Context.
15.6 Architectural Requirements.
15.7 Brief Comparison.
15.8 Taxonomy.
15.9 Introducing IAX into Operational Networks.
15.10 Conclusion.
References.
16 IAX in the Access Segment of SIP-Based Service
Architectures.
16.1 Introduction.
16.2 A ?High-Level? Description of the Interworking
Function.
16.3 Examples of Call Flows.
16.4 Bandwidth Optimisation: An Extension to SIP.
16.5 Conclusion.
References.
17 Validation Scenario.
17.1 Overview.
17.2 Configuring Asterisk Servers.
17.3 Configuring the SIP Express Router (SER).
17.4 User Agent Configuration.
17.5 Conclusion.
Further Reading.
Index.