Diameter Application Profile

The Diameter Application profile captures a set of AVP and command code definitions that are recognized by the Diameter Stack agent during runtime. The profile is loaded when you start a workflow that depends on it. Changes to the profile become effective when you restart the workflow.

To open the configuration, click the New Configuration button and then select  Diameter Application Profile  from the menu.

The Diameter Application profile

Import Options

Click on the Import button to open the Import Specifications dialog box. 

Import Specifications Dialog box

To Import ABNF Specifications

  1. From the profile screen select Import and select Import ABNF Specifications.
     

  2. Select an ABNF file and click Upload to import the ABNF file to your application profile configuration.

    Note!

    For further information about the ABNF file, see Diameter ABNF Specification Syntax.

To Import XML Specifications

  1. From the profile screen select Import and select Import XML Specifications. 

  2. Select an XML file and click Upload. The XML file is imported to your application profile configuration.

    Note!

    For further information about the XML file, see Diameter XML Specification Syntax.

    For further information about handling specifications (XML or ABNF) that are already included in the application profile, see the section above, Handling Duplicate Specification Files.

Export Options

Export Specifications Dialog box

To Export ABNF Specifications

  1. From the profile select Export and the Export ABNF Specifications.
     

  2. Select an ABNF file and click Upload. The ABNF file (both AVPs and commands) is saved as an export file.

    Note!

    For further information about the ABNF file, see Diameter ABNF Specification Syntax.

To Export XML Specifications

  1. From the profile select Export and Export XML Specifications.

  2. Select an XML file and click Upload. The XML file (both AVPs and commands) is saved as an export file.

    Note!

    For further information about the XML file, see Diameter XML Specification Syntax.


Commands Tab

The commands that you use in the Diameter Application profile are predefined command sets of specific solutions.

The Commands tab in the Diameter Application profile enables you to create and edit command sets that are customized according to your needs.

The Diameter Application profile dialog - Commands Tab

SettingDescription

Name

The command name. For example Credit-Control-Request.

Code

The unique numeric command code. For example, 272. For further information, see Show Base Commands.

Application ID

The numeric representation of the Diameter Application that this command belongs to. For example, 4 - Diameter Credit-Control.

Show Base Commands

Select this check box to view predefined commands, their numeric code, and the Application ID. These are the commands specified in Diameter Base Protocol (RFC 6733).


To Add a Diameter Command Specification

The Add Diameter Command Specification a dialog box is displayed when clicking the Add button in the Commands tab.

The Diameter Commands tab - Add Diameter Command Specification


SettingDescription

Command Name

Enter a unique command name.

When you save the configuration, a UDR type with the specified name will be generated.

Command Code

Enter a numeric command code. Each command that belongs to the same Diameter Application must have a unique code.

Application ID

The numeric representation of the Diameter Application that the command belongs to.

Flags

Select the Request check box to mark the command as a request message (r-bit is set in the Diameter message header); clear the Request check box to mark the command as an answer message.

Select Proxiable to enable the command to support proxy, relay, or redirection (p-bit is set in the Diameter message header). For more information about the Proxiable flag, see the Diameter Base Protocol (RFC 6733). This flag is set by default when a new command is added.

Select Error to mark that the message contains a protocol error (e-bit is set in the Diameter message header) so that the message will not conform to the ABNF described for this command. This flag is typically used for test purposes. If you want to send an error message answer from APL, it is recommended that you use the UDR Diameter.Base.Error_Answer_Message.

Auto-Populate

Click on this button to automatically fill out the AVP Layout table with data, based on your Flags selection. The Category of the AVP data is set to  Required .

Note!

To manually modify the data in the table cells double-click a cell.

Setting Flags to Request and Proxiable, auto-populates the AVP Layout table with the following AVPs:

  • Origin-Realm

  • Origin-Host

  • Destination-Realm

Setting Flags to Proxiable only, auto-populates the AVP Layout table with the following AVPs:

  • Origin-Realm

  • Origin-Host

  • Result-Code

Setting Flags to Error, prevents the AVP Layout table from being auto-populated.

AVP Layout Table

This table includes a list of all the AVPs in a specific command. From the table, you can add, edit, and remove AVPs.

To manually modify the data in the table cells double-click a cell; either a drop-down list button appears and enables you to select a different content, or the cell becomes editable.

ItemDescription

Category

There are three different AVP categories:

  • Fixed AVP must be included in its predefined space in the command.

  • Required AVP must be included but may appear anywhere in the message.

  • An Optional AVP can appear anywhere in the message.

AVP

Enter or modify an AVP name.

Min

Enter the lowest number of AVPs that the command should contain.

Max

Enter the highest number of AVPs that the command should contain.

UDR types are generated for the Diameter Application profile based on the command configuration. When Max is set to 2 or <unbounded> the data type of the UDR field for the AVP will be list<data type>.

AVPs Tab

AVPs carry the data payload in all Diameter messages. While the system recognizes all the AVPs that are defined in the Diameter Base Protocol, it also recognizes your customized AVPs. In the AVPs tab you can define your customized AVPs.

The Diameter Application profile dialog - Diameter AVPs tab


SettingDescription

Auto-Populate

Click this button to enter missing table entries in all the user-defined AVPs of a command in the table.

Note!

Does not apply to base AVPs.

ClearClear this button to clear the list of entries. 

Name

The AVP name

Code

The numeric code that represents the AVP. This number is unique and fixed for every AVP. For further information, see the AVP specifications. For example RFCs.

Type

The AVP data format is specified in the Diameter Base Protocol (RFC 6733). UDR types are generated for the Diameter application profile based on the AVP configuration. The AVP data formats are mapped to the UDR data types as follows:

Address - IP address

DiameterIdentity - string

Enumerated - int

Grouped - list<type>

Float32 - float

Float64 - double

IPFilterRule - IPFilterRuleUDR(Diameter)

OctetString - bytearray

Signed32 - int

Signed64 - long

Time - date

Unsigned32 - int

Unsigned64 - long

UTF8String - string

Vendor

The numeric Vendor ID of the AVP. The vendor ID of all the IETF standard Diameter applications is 0 (zero).

Show Base AVPs

To display all predefined AVP types, check Show Base AVPs. These are the AVPs specified in  Diameter Base Protocol (RFC 6733).

To Add an AVP

To open the Add Diameter AVP Specification configuration, click the Add button at the bottom of the AVP tab.

The Add Diameter AVP Specification dialog

SettingDescription

AVP Name

The name of the AVP.

AVP Code

The numeric id of the AVP.

Vendor ID

The number that represents the vendor. The default value is 0 (zero).

AVP Type

The data type of the AVP.

Selecting Enumeration or Grouped reveals configuration options in the Enumeration/Group Properties table.

Mandatory ('M') Bit

The M-bit allows the sender to indicate to the receiver whether or not understanding the semantics of an AVP and its content is mandatory. If the M-bit is set by the sender and the receiver does not understand the AVP or the values carried within that AVP, then a failure is generated. For further information about the M-bit, see the Diameter Base Protocol (RFC 6733).

The following applies to incoming and outgoing messages that contain the configured AVP:

MUST: The M-bit is set to 1 in outgoing messages and must be set to 1 in incoming messages.

MAY: The M-bit is set to 0 or 1 (configurable in the Advanced tab) in outgoing messages and may be set to 0 or 1 in incoming messages.

SHOULD: The M-bit is set to 0 in outgoing messages and may be set to 0 or 1 in incoming messages.

MUST NOT: The M-bit is set to 0 in outgoing messages and must be set to 0 in incoming messages.

You can change the value of the M-bit from APL if Mandatory ('M') Bit is set to MAY or SHOULD.

Protection ('P') Bit

 The P-bit bit is reserved for future usage of end-to-end security.

Enumeration/Group Properties

This table is accessible for editing only when AVP Type is configured as Enumerated or as Grouped. This table enables you to Add, Edit, or Remove AVPs or enumeration values. For further information about the tables columns and entries, see the section above, To Add a Diameter Command Specification.

To Edit an AVP

To open the Edit Diameter AVP Specification configuration, click the Edit button at the bottom of the AVP's tab.

The Edit Diameter AVP dialog is identical to the Add Diameter AVP Specification dialog. The same description applies to editing an AVP specification.

CER/CEA Tab

The identifiers in this tab define the advertised applications for the capabilities handshake. They are used whenever the Diameter Stack agent initiates or responds to a new transport connection, to negotiate the compatible applications for the link.

For further information about Authentication and Accounting Applications, see Diameter Base Protocol (RFC 6733).

The Diameter Application Profile Editor - CER/CEA Tab

Auto-Populate

Click this button to add Application IDs, that are used in any of the commands, to the Application ID table.

In the Vendor Specific Applications table, available Vendor IDs are extracted from the AVP's tab into the Vendor ID column.

Note!

Auto-Populate cannot populate Vendor ID and Application ID into a Vendor-Specific Applications table if a vendor-specific application command is configured in the command tab. This means that the command includes a Vendor-Specific-Application-Id AVP.

Application IDs Table

ItemDescription

Application ID

Numeric codes of the supported applications.

Authentication

Select and check to flag an application with Authentication.

Accounting

Select and check to flag an application with Accounting.


Vendor-Specific Applications Table

ItemDescription

Vendor ID

Enter the numeric code of the vendor

Auth App ID

Enter the vendor-specific authentication application ID.

Acct App ID

Enter the vendor-specific accounting application ID.

Advanced Tab

The Advanced tab contains additional settings.

The Diameter Application profile - Advanced tab

SettingDescription
Default Outgoing 'M' Bit Set to 1 When Flag Rule MAY Is SelectedWhen this check box is selected and Mandatory ('M') Bit is set to MAY in the AVPs tab, the M-bit will be set to 1 in outgoing messages.