DIAMETER Protocol in IMS Network Architecture Notes

DIAMETER Protocol in IMS Network Architecture

Introduction

  • DIAMETER is a next-generation protocol in IP Multimedia Subsystem (IMS) architecture and LTE networks.
  • It provides higher data rates, increased throughput, and AAA (Authentication, Authorization, and Accounting) services.
  • Developed by the Internet Engineering Task Force (IETF) and Third Generation Partnership Project (3GPP).
  • DIAMETER evolved from the RADIUS protocol, offering flexibility for new access features.
  • It operates on both SCTP and TCP using port 3868 for reliable communication between diameter nodes.
  • Each message received by a DIAMETER node is acknowledged with a positive or negative answer message.
  • Supports interfaces like s6a, Gx, Gy, Gz, Sd, Rf, and Ro, extending attributes support, security, network-access servers accounting, and resource management.

DIAMETER Protocol

Diameter Client and Server
  • DIAMETER can act as both a client and a server in a peer-to-peer architecture.
  • A DIAMETER node receiving a request acts as a client (e.g., a network access server).
  • After obtaining user credentials, the client node sends an access request to a DIAMETER server node.
  • The server responds with user privileges based on the request information.
Agent Support
  • Relay agents: Forward DIAMETER request and answer messages based on Attribute Value Pairs (AVPs) related to routing. They aggregate messages from different realms, reducing server configuration burdens.
  • Proxy agents: Make policy decisions and modify message contents to provision network resources. They can reject or originate messages if policies are violated, requiring understanding of message contents.
  • Redirect agents: Act as centralized repositories for all DIAMETER nodes, aiding servers that cannot maintain routing lists locally. They handle different message types.
  • Translation agents: Convert messages between different AAA protocols, useful for integrating user databases from different domains and providing backward compatibility during migration.
DIAMETER vs RADIUS
  • DIAMETER provides additional features and flexibility in offering AAA services compared to RADIUS.
Handling of Errors
  • DIAMETER nodes handle application errors and protocol errors.
  • Application errors indicate issues within the protocol itself.
  • Nodes check the result code AVP to proceed with message processing.
  • Result codes provide status information:
    • 1XXX: More information needed to grant the service.
    • 2XXX: Request processed with no errors.
    • 3XXX: Protocol error detected; messages redirected to an alternate peer.
    • 4XXX: Service cannot be processed due to a transient failure.
    • 5XXX: Permanent failure; service request completely denied.

Implementation

  • DIAMETER is implemented in LTE/4G networks above the SCTP/TCP layer.
  • It provides communication between different entities in the LTE architecture.
  • The DIAMETER protocol sits between the application interface and other DIAMETER peers to provide AAA services.
  • Monitoring processes maintain messages in a queue for future processing as part of the DIAMETER protocol.
  • Gx interface elements are mapped onto attribute value pairs (AVPs) in the call flow.

Results

  • The implementation uses a Linux machine with RHEL 7.1.
  • Results are verified using Wireshark traces, a packet analyzer for network troubleshooting, analysis, and protocol development.
  • Wireshark captures all traffic visible on a particular interface.
  • Real-time working of the Gx interface DIAMETER is observed with 12k TPS (Transactions per second) calls, each lasting 30 seconds.
Configuration Information
  • Interface: Gx
  • Timers:
    • Auth Time Out: 400400
    • Life Time out: 200200
    • Grace Time out: 100100
  • AT Timers:
    • NOACTIVITYTIMER: 55
    • ACTIVITYRETRYCOUNT: 22
    • ACTIVITYRESPONSETIMEOUT: 22
  • Transport: SCTP on DIAMETER
  • Load: 72k72k TPS for 12 Hours
Load Run Information
  • Duration: 12 hours
  • Simulator: Gx Simulator
  • Call Rate: Burst size of 300 messages every 10 milliseconds from one client to four servers
  • Interface: GX on Diameter
  • Load: 72k72k TPS
Memory Utilization
  • Resident and Virtual memory utilization is measured for a load of 72k72k TPS over 12 hours.
CPU Utilization
  • System CPU utilization by IWF (SUT) is measured for a load of 500500 TPS over 2 hours, with maximum CPU utilization below 3030%.
Active Sessions
  • The number of active sessions is measured for a load of 72k72k TPS over 12 hours, with a maximum of 39003900 sessions handled.

Conclusion

  • DIAMETER agents (e.g., relay, proxy) provide flexibility in message sending and receiving with proper result codes.
  • DIAMETER nodes offer Authentication, Authorization, and Accounting services with error handling.
  • The protocol provides high throughput and data rates in both service and control planes.
  • Reference points between entities in IMS architecture exchange roaming details, accounting information, and user credentials.
  • Interfaces like s6a, Gx, and Gy use DIAMETER for client notification and subscription purposes via defined attributes.
  • Performance test results demonstrate DIAMETER's capability to handle messages under high load conditions, optimize memory utilization, and provide AAA services efficiently.