Diameter

Book description

Presents the principles, design, development and applications of the Diameter protocol suite

The Diameter protocol was born in the Internet Engineering Task Force (IETF) and designed to be a general-purpose Authentication, Authorization, and Accounting (AAA) protocol applicable to many network environments. This book is for everyone who wants to understand the Diameter protocol and its applications. This book explains the place Diameter holds in global telecommunication networks and teaches system architects and designers how to incorporate Diameter into their network environments. 

Diameter: New Generation AAA Protocol - Design, Practice and Applications begins by describing the foundation of Diameter step-by-step, starting with building blocks of the protocol, and progressing from a simple two-party exchange to a multi-party exchange involving complex routing. It discusses the motivation for using Diameter, talks about its predecessor, RADIUS, and introduces the open source Diameter implementation, freeDiameter. The book expands beyond protocol basics to cover end-to-end communication, security functionality, and real-world applications, extending to the backend infrastructure of mobile telecommunications. In addition, an advanced chapter teaches readers how to develop Diameter extensions for their own AAA applications. 

  • Written by an experienced author team who are members of the group that standardized Diameter in the IETF and are at the forefront of this cutting-edge technology
  • Presents the still-developing topic of Diameter from both introductory and advanced levels
  • Makes available for download a virtual machine containing the open source implementation: https://diameter-book.info
  • Provides hands-on experience via freeDiameter examples and exercises throughout the book

Diameter: New Generation AAA Protocol - Design, Practice and Applications will appeal to system architects and system designers, programmers, standardization experts new to Diameter, students and researchers interested in technology that is deployed by many network operators. 

Table of contents

  1. Cover
  2. Disclaimer
  3. About the Authors
  4. Foreword
  5. Preface
    1. Why Did We Write This Book?
    2. What Does This Book Provide?
    3. Who is the Intended Audience?
    4. Book Structure
  6. Acknowledgements
  7. List of Abbreviations
  8. 1 Introduction
    1. 1.1 What is AAA?
    2. 1.2 Open Standards and the IETF
    3. 1.3 What is Diameter?
    4. 1.4 What is freeDiameter?
    5. References
  9. 2 Fundamental Diameter Concepts and Building Blocks
    1. 2.1 Introduction
    2. 2.2 Diameter Nodes
    3. 2.3 Diameter Protocol Structure
    4. 2.4 Diameter Applications
    5. 2.5 Connections
    6. 2.6 Diameter Message Overview
    7. 2.7 Diameter Sessions
    8. 2.8 Transaction Results
    9. 2.9 Diameter Agents
    10. References
  10. 3 Communication between Neighboring Peers
    1. 3.1 Introduction
    2. 3.2 Peer Connections and Diameter Sessions
    3. 3.3 The DiameterIdentity
    4. 3.4 Peer Discovery
    5. 3.5 Connection Establishment
    6. 3.6 Capabilities Exchange
    7. 3.7 The Peer Table
    8. 3.8 Peer Connection Maintenance
    9. 3.9 Advanced Transport and Peer Topics
    10. References
  11. 4 Diameter End‐to‐End Communication
    1. 4.1 Introduction
    2. 4.2 The Routing Table
    3. 4.3 Diameter Request Routing
    4. 4.4 Request Routing Error Handling
    5. 4.5 Answer Message Routing
    6. 4.6 Intra‐Realm versus Inter‐Realm Communication
    7. 4.7 Diameter Routing and Inter‐Connection Networks
    8. 4.8 Diameter Overload Control
    9. References
  12. 5 Diameter Security
    1. 5.1 Introduction
    2. 5.2 Background
    3. 5.3 Security Threats
    4. 5.4 Security Services
    5. 5.5 PKI Example Configuration in freeDiameter
    6. 5.6 Security Evolution
    7. References
  13. 6 Diameter Applications
    1. 6.1 Introduction
    2. 6.2 Base Accounting
    3. 6.3 Credit Control
    4. 6.4 Quality of Service
    5. 6.5 Interworking RADIUS and Diameter
    6. 6.6 S6a Interface
    7. References
  14. 7 Guidelines for Extending Diameter
    1. 7.1 Introduction
    2. 7.2 Registration Policies
    3. 7.3 Overview of Extension Strategies
    4. 7.4 Extending Attribute–Value Pairs
    5. 7.5 Extending Commands
    6. 7.6 Creating New Applications
    7. 7.7 Lessons Learned
    8. 7.8 Vendor‐specific Extensions
    9. 7.9 Prototyping with freeDiameter
    10. References
  15. Appendix A: freeDiameter Tutorial
    1. A.1 Introduction to Virtual Machines
    2. A.2 Installing the Virtualization Software
    3. A.3 Creating Your Own Environment
    4. A.4 Downloading the VM Image
    5. A.5 Installing and Starting the Master VM freeDiameter
    6. A.6 Creating a Connection Between Two Diameter Peers
  16. Appendix B: freeDiameter from Sources
    1. B.1 Introduction
    2. B.2 Tools and Dependencies
    3. B.3 Obtaining freeDiameter Source Code
    4. B.4 Configuring the Build
    5. B.5 Compiling freeDiameter
    6. B.6 Installing freeDiameter
    7. B.7 freeDiameter Configuration File
    8. B.8 Running and Debugging freeDiameter
    9. B.9 Extensions for Debug Support
    10. B.10 Further Reading
    11. Reference
  17. Appendix C: The freeDiameter Framework
    1. C.1 Introduction
    2. C.2 Framework Modules
    3. C.3 freeDiameter API Overview
    4. C.4 freeDiameter Architectures
    5. Reference
  18. Glossary
  19. Index
  20. End User License Agreement

Product information

  • Title: Diameter
  • Author(s): Hannes Tschofenig, Sébastien Decugis, Jean Mahoney, Jouni Korhonen
  • Release date: June 2019
  • Publisher(s): Wiley
  • ISBN: 9781118875902