Diameter Protocol Emulator
(Diameter Interfaces Emulation)
The Diameter protocol is intended to provide a framework for Authentication, Authorization and Accounting (AAA) applications such as network access, roaming, and IP mobility. The AAA protocols are used to determine whether the user is allowed to connect to the network (Authentication) and use a particular service (Authorization). It is also used to track network resources used by end-user for accurate billing (Accounting).
AAA protocols such as TACACS and RADIUS were initially deployed to provide dial-up PPP and terminal server access. Over time, with the growth of the Internet and the introduction of new access technologies, including wireless, DSL, Mobile IP and Ethernet, routers and network access servers (NAS) have increased in complexity and density, putting new demands on AAA protocols. As a result, the Diameter protocol has been chosen as the AAA protocol in all next generation fixed and mobile IP- based networks (IMS, LTE). The Diameter protocol is a considerably more sophisticated protocol for mobility management, policy and charging (online and offline) control. It is designed to support data, services, and applications with extreme flexibility and is expected to replace all legacy protocols such as MAP, LDAP, Radius, and others.
Within LTE-IMS network, MAPS™ Diameter can simulate S6a, S6d, S13, Cx/Dx, Gx, Rx, Sh, and Gy/Ro interfaces and test network elements such as the MME (Mobility Management Entity), HSS (Home Subscriber Server), AF (Application Function), PCRF (Policy and Charging Rules Function), CSCF (Call Session Control Function), SGSN (Serving GPRS Support Node), PCEF (Policy and Charging Enforcement Function), EIR (Equipment Identity Register), PDN GW (Packet Data Network Gateway), AS (Application Server), CTF (Charging Trigger Function), and OCS (Online Charging System).
The application is available as -
- MAPS™ Diameter (Item # PKS139) for S6a, S6d, S13, Cx, Dx, Gx, Rx, Sh, and Gy/Ro interfaces
Other interfaces such as, Rf, Dh, Gq, Zh, Zn, Wa, Wd, Wx, Wm, Wg, Pr will also be supported by the application in near future.
The MAPS™ Diameter gives the users the unlimited ability to edit messages on supported interfaces to support various procedures listed below. The application supports both SCTP (Stream Control Transmission) and TCP (Transmission Control Protocol) transport protocol layers for PSTN signalling messages over IP networks.
- MAPS™ Diameter Emulator also includes powerful utilities like Message Editor, Script Editor, and Profile Editor which allow new scenarios to be created or existing scenarios to be modified using Diameter messages and parameters. "Message sequences" are generated through scripts. "Messages" are created using message templates.
MAPS™ also supports an End-to-End 4G LTE Communications Network Labwith all components such as eNodeB, MME, Serving Gateway, PDN Gateway, HSS, SGSN, PCRF, PCEF, AF and others to simulate both E-UTRAN and EPC (Evolved Packet Core), allowing complete testing of the LTE network.
Possible applications include:
- Simulate up to 500 Smartphones (UEs) powering up and down
- Authenticate and confirm security procedures
- Temporary addressing management for mobility and security
GL also provides a GUI based All-IP PacketScan Analyzer for on-line capture and decode of the Diamter signaling in real-time both during tests and as a stand-alone tracer for live systems.
- Supports simulation of real-time LTE network using “MAPS 4G Wireless Lab Suite”.
- Emulator can be configured as MME, HSS, PCRF, PCEF, CSCF, SGSN, PDN GW, EIR, AF, AS, CTF and OCS entities to emulate S6a, S6d, S13, Cx/ Dx, Gx, Rx, Sh, and Gy/Ro interfaces.
- User-friendly GUI for generating hundreds of UE Signaling (Load Testing) over SCTP/TCP Layers.
- Ready scripts for procedures over interfaces such as -
- Procedures over S6a interface
- Location Management, Subscriber Data Handling, Authentication, Fault Recovery, and Notification
- Procedures over Rx interface
- AA-Request/Answer, Re-Auth-Request/Answer, Abort-Session-Request/Answer, and Session-Termination-Request/Answer
- Procedure over Gx interface
- IPCAN Session Establishment and Modification
- Procedure over S13 interface
- ME (Mobile Equipment) Identity Check procedure
- Procedure over Sh interface
- User data handling procedures (User-Data-Update, Subscriber-Notification, User-Data-Pull)
- Procedure over Gy/Ro interface
- Immediate Event Charging (IEC), Event Charging with Unit Reservation (ECUR), Session Charging with Unit Reservation (SCUR)
- CC-Request/Answer, Re-Auth-Request/Answer Procedures
- Impairments can be applied to messages to simulate error conditions
- Supports customization of call flows and message templates using Script editor and Message editor.
- Provides call statistics and associated captured events and error events during call simulation.
- Automation, Remote access, and Schedulers to run tests 24/7
Supported Protocols Standards
Diameter Protocol Stack
||Standard / Specification Used
||IETF RFC 3588
S6a, S6d, S13 - 3GPP TS 29.272 V10.3.0
Rx - 3GGP TS 29214-b10
Cx/Dx - 3GPP TS 29.228 & TS29.229
Gx - 3GPP TS 29.212 & TS 23.203
Sh - 3GGP TS 29.328 & TS 29.329
Gy/Ro (DCCA)- 3GGP TS 32.225, 3GPP TS 32.299 and IETFRFC 4006
The S6a interface enables the transfer of subscriber related data between the MME and the HSS
MAPS™ Diameter Supporting S6a Interface Procedures
(Authentication, Location Update, Notification, Faulty Recovery Procedures)
MAPS™ Diameter at the MME end initiates the following S6a interface procedures:
- initiates the Authentication procedure by sending Authentication-Information-Request message
- initiates the Update Location procedure by sending Update-Location-Request message
- initiates the Purge UE procedure by sending Purge-UE-Request message
Call Generation at MME Node (S6a Interface)
Call Reception at HSS Node (S6a interface)
Rx and Gx interfaces
The following illustrates the Authentication Authorization (AA) procedure in Diameter Rx interface and Gx interface:
MAPS™ Diameter Supporting Rx and Gx Interface Procedures
(Authentication, Authorization – AA Procedures)
The MAPS™ Diameter simulates 3GPP AAA (Authentication Authorization Procedure) call control messages between the AF and PCRF nodes. The following illustrates the call flow between the AF and PCRF nodes for AAA services over Rx interface:
Call Generation (Rx Interface)
Call Reception (Rx Interface)
The following illustrates the User-Data-Handling procedure over Diameter Sh interface:
MAPS™ Diameter Supporting Sh Interface Procedures
MAPS™ Diameter configured as AS (Application Server) function initiates a list of procedures (Diameter_DataUpdate, Diameter_DataPull, Diameter_Subs_Notif) and send requests to HSS.
Call Reception at the HSS terminal and the messages exchanged for the Sh interface Call Control procedures.
Call Control Procedures for Sh interface
Call Reception for Sh interface
Testing CTF and OCS in Gy/Ro interface
Both Gy and Ro interfaces define procedures for online charging in IMS & LTE networks. Ro interface is between IMS entity (CSCF) and Online Charging System (OCS) & Gy interface is between the PCEF (e.g., PDN GW) and the OCS.
The PCEF node in LTE network, and CSCF node in IMS network perform the role of a Charging Trigger Function (CTF) entity to issue charging events to an Online Charging System (OCS). The charging events can be immediate (IEC), event-based (ECUR), or session-based (SCUR). An Online Charging System (OCS), is a functional architecture that provides support for all three levels (service level, subsystem level, and bearer level) of online charging as depicted in the image below.
As provided in the figure below, MAPS™ Diameter can be configured as CTF or OCS, while the other acting as the DUT in the network. If MAPS™ Diameter is configured as CTF, it tests the DUT (OCS) by initiating the messages towards OCS.
Similarly, if MAPS™ Diameter is configured as OCS, it tests the DUT (CTF) by receiving the requests from CTF and sending responses back to the CTF (DUT).
MAPS™ Diameter as CTF and OCS
MAPS™ configured as CTF in GY/RO interface (Session Based Charging)
Session Based Charging is a credit-control process that makes use of several interrogations: the first (INITIAL_REQUEST), a possible intermediate (UPDATE_REQUEST), and the final (TERMINATION_REQUEST). The first interrogation is used to reserve money from the user’s account and to initiate the process. The intermediate interrogations may be needed to request new quota while the service is being rendered. The final interrogation is used to exit the process.
The MAPS™ Diameter as CTF initiates a call by sending a CCR (Credit Control Request) message to the test the OCS. The CCA (Credit Control Answer) response message received back from the DUT (OCS) can be verified as shown in the message sequence window below.
Diameter Gy/Ro Interface Session based Charging Procedure
Call Generation Diameter DCCA Interface for Session Based Charging
MAPS™ configured as OCS in GY/Ro interface (Event Based Charging)
Event Based Charging is a one-time event process used when there is no need to maintain any state in the Diameter credit-control server; for example, enquiring about the price of the service. The use of a one-time event implies that the user has been authenticated and authorized beforehand.
In CTF testing, MAPS™ Diameter is loaded with a set of inbuilt scripts to handle the incoming messages. MAPS™ Diameter acts as OCS and sends response to the one-time event based charging request as shown in the message sequence window below.
Diameter Gy/Ro Interface Session based Charging Procedure
Call Generation Diameter DCCA Interface for Session Based Charging
General MAPS™ Features
- Call Simulation & Control
- Multi-protocol, Multi-interface Simulation
- Script based and protocol independent software architecture
- Auto generate and respond to signaling messages
- Traffic Handling Capabilities (requires additional license)
- Fault Insertion, and Erroneous Call Flows Testing
- Pre-processing tools
- Easy script builder for quick testing to advance testing
- Customization of test configuration profiles
- Unlimited ability to customize the protocol fields and call control scenarios
- Centralized Control and Remote Access
- Command Line Interface (requires additional license)
- Option to send reports to database accessible via web interface
- Centralized control of multiple MAPS™ applications remotely from single client application
- Reports and Statistics
- Call Status, Link Status, and Message Statistics
- Capture Events, and Error Events
Call Simulation and Control
The signaling and traffic simulation in a call is completely implemented using scripts. Commands in the scripts are executed in controlled way to simulate protocol and traffic behavior. Most of the commands used in the scripts are generic and independent of specific protocol.
MAPS™ application acts as either the Caller or resides at the network terminal acting as Callee. The Call Generation feature simulates an outgoing call by sending call control messages to the DUT using scripts and profiles. The profiles allow necessary parameters of call control messages to be changed during runtime. Call generated from other entity can be automatically detected in call reception window by pre-setting the required answer scripts in the Incoming Call Handler.
The call control scripts can also automatically handle the traffic over the established call. MAPS™ supports transmission and detection of various traffic types over IP (RTP, GTP), ATM, & TDM - such as, digits, voice file, single tone, dual tones, fax, sms, email, http, ftp, and video. MAPS™ also includes support for wide range of codec rates – visit www.gl.com/traffic-simulation.html and www.gl.com/voice-codecs.html webpage for more details.
Message Sequence - Each call scenario provides the trace with full decoding of the messages exchanged between the MAPS™ and the DUT, and graphical ladder diagrams of the call flow with time stamp. Impairments can be applied to messages to simulate error conditions that occur in real-time networks.
Event-Driven Control - Scripts execution, being event-based, allows redirection of script execution on-the-go with user-defined events. The custom parameters in the events can also be changed during script execution using event profiles.
Script Contents & Script Flow - The script flow and the contents window displays the Script Name, Sub-script Name, Script line number, and script statements to be successfully executed, which help the users in troubleshooting a particular call scenario.
Bulk Call Simulation and Load Testing
MAPS™ supports automated stress/load testing capabilities through Load Generation and Bulk Call Simulation features. Bulk Call Simulation allows quick configurations to easily create multiple test entries with different scripts and profiles. Multiple tests can be run simultaneously or sequentially (queue up tasks in succession). Load generation feature further allows specifying the patterns with which the bulk calls can be generated. Load generation can be customized with different statistical distribution patterns such as Uniform, Ramp, Sawtooth, Fixed, Normal, Step, and Step-Sawtooth distribution. Call duration also can be randomized using similar statistical distribution. This feature also helps users configure Stress/Load Testing parameters such as Call per second (CPS), Max Active Call, Minimum and Maximum Call Rates, Start Call Rates, and other parameters.
Scheduler can be used to schedule the simulation of bulk calls or manual calls at a specific start time. The pre-saved master configuration files for test setup and call simulation are automatically loaded to automate the test procedure.
Customization of Test Setup Parameters
The test setup profiles (.xml files) allow users to configure the necessary parameters in order to establish communication between MAPS™ and the DUT. It includes configuring parameters of the network nodes, the network properties, and transport related configurations such as T1/E1 timeslots, IP Address and port numbers for both MAPS™ and the DUT.
Once the transport layer is configured properly, protocol specific signaling messages and traffic can be transmitted and received successfully. All parameters setup in test setup are global and are accessible to all scripts. These parameters initialize protocol engines and the transport modules specific to the protocol.
Customization of Test Parameters, Call Flow, and Protocol Messages Using Pre-Processing Tools
- Message Editor - The Message Templates (GL’s proprietary *.HDL files) comprises of protocol encoding parameters with preset values. It is required to create a message template for every message in a protocol. The message templates are called within the scripts to perform scenario based testing.
- Profile Editor – Profiles (*.xml files) are used to change the values of the fields in the messages (i.e. Message Template in MAPS™) during the course of a call. The multiple profiles with varying parameter values that allow users to configure call instances in call generation and to receive calls.
- Script Editor - The script editor allows the user to create / edit scripts and to define variables for the fields in the messages. The script uses pre-defined message templates to build call flow and perform send and receive actions. Script editor provides options to run the test for multiple iterations in sequential or random flow. Commands allow retransmission of messages with specific interval.
Command Line Interface
Supports scripting through a Command Line Interface (CLI) such as the Python, and TCL, using MAPS™ client-server functionality (requires additional license)
MAPS™ can be configured as server-side application, to enable remote controlling of the application through multiple command-line based clients. Supported clients include C++, TCL, Python and others. TCL provides a simple scripting language, with programming facilities such as looping, procedures, and variables. The TCL Client application includes a MapsTclIfc.dll file, a packaged library that enables communication with the Server from a TCL environment.
User can remotely perform all functions such as start test bed setup, load scripts and profiles, apply user events such as send digits/file/tones, detect digits/file/tones, dial, originate call, terminate call, start and stop traffic and so on. User can also generate and receive calls through commands. This client application is distributed along with MAPS™ Server application. Multiple MAPS™ CLI servers can be controlled remotely from single client application (such as TCL, Python, etc).
Call Statistics, Events, Link Status
Call Status & Message Statistics - By default, all call handling scripts (irrespective of the type of the functions) are assessed by MAPS™ to provide statistical information about Total Calls, Active Calls, Completed Calls, Passed Calls, Failed Calls, and Calls/Sec. It is also possible to categorize the statistical information as per the call handling scripts. In addition, Call Generation and Call Reception windows provide useful call status & script execution results.
In addition, Message Stats option for any specific protocol, logs number of times the messages are being transmitted (Tx Count) and received (Rx Count), thus allowing user to monitor the occurring events.
Events Reporting – MAPS™ provides Event Log, Error Events, and Captured Errors windows that log the captured events and errors encountered during the progress of the call.
Link Status - Link Status window indicates transport related information of the protocol, for example, if SCTP is used as transport, it indicates if the association is Up or Down in the Link Status window. MAPS™ IuCS ATM uses SSCOP transport and the associated link status is indicated as Up or Down in the Link Status window.
Please Note: The XX in the Item No. refers to the hardware platform, listed at the bottom of the Buyer's Guide, which the software will be running on. Therefore, XX can either be ETA or EEA (Octal/Quad Boards), PTA or PEA (tProbe Units), UTA or UEA (USB Units), HUT or HUE (Universal Cards), and HDT or HDE (HD cards) depending upon the hardware.