In this section:

Routing Tables

The primary function for the DSC is to manage and route messages. The DSC utilizes a highly configurable routing definition mechanism allowing operators to define a wide variety of routing scenarios based on multiple parameters within the message. This function significantly extends the capability of only routing on destination realm and application as defined by the specifications. Operators define a set of table-driven routing rules that can be easily linked together to form complex schema.

Routing tables define the particular parameters to examine within the message, the values to look for, and the next table to process or action. The next step can be one of the following:

  • another Routing Table that defines a different search parameter
     
  • a Result Table (for sending the message forward)

  • Default Routing for messages (dsc_default)

  • dsc_error (dsc_error<error_code>/dsc_error<vendor-id>_<error_code>)

Routing Tables may be linked together into powerful arrangements called rule sets (see the following figure). A Modification Table is used to modify or trace a Diameter message. Safeguards are built into the software to ensure that looping conditions are not inadvertently created. Although table types are predefined, the operator has complete control over the table types associated with a particular rule set along with their order of execution or linkage.

For more information about the DSC Routing Tables, refer to Configuring Ribbon DSC Routing Tables.

DSC Routing Table Link Example

Default Routing

The power of the DSC is realized through the ability to define complex routing schemes. There may be instances, however, where routing on only the basic Diameter routing parameters, destination realm and application ID are required. This routing scheme can be accomplished by using the simpler Default Routing mechanism.

Default Routing attempts to relay a message to the best available candidate, but this routing method does not redirect messages. Filtering criteria is applied based on the advertised capability of Adjacent Diameter Nodes (ADNs) to obtain a list of relay candidates, with the most suitable candidates at the front. 

For more information about Default Routing, refer to Default Routing of Diameter Signaling Traffic.

Flow Control and Congestion

The DSC detects congestion by monitoring the transmit queue associated with each Diameter Peer, also referred to as an Adjacent Diameter Node Connection (ADNC). As the queue backs up, the congestion level of the Diameter Peer is increased, alarms are raised and messages may be re-routed. Congestion is detected by monitoring message age, the number of bytes in the queue and the number of messages in the queue. The congestion thresholds are user configurable per Diameter Peer through the configuration of a Capacity Parameter Set that may be applied to any number of ADNCs.

Each Diameter message is assigned an importance (user configurable). If the congestion level of an ADNC is higher than the importance of a message then the message may not be sent on that connection; the message may be re-routed if an alternate path is available, or is returned as a Diameter Error (UNABLE_TO_DELIVER).

A user may also configure rate limits per ADNC: this limits the rate at which Diameter messages that will be sent or accepted from that ADNC. Also, if a rate limit has been configured for an ADNC then alarms are raised when percentages of this rate limit are passed; these thresholds are user configurable and provide warnings of potential future capacity issues.

For more information about congestion, flow control, and message importance, refer to Congestion and Flow Control.

Modification Feature

The DSC Routing Tables provide a rich and flexible syntax for classifying messages; this allows for explicit message routing, but also for Diameter message modification based on message parameters. Similarly, some DSC features may be enabled per-message, as identified by the DSC Routing Tables. The DSC Routing Tables do not need to specify routing rules: they may be used for message classification, modification, and per-message features configuration while still using default routing.

There are two categories of modifications: modification of the message data (for example, flags, AVPs, AVP Data), and modification of message handling in the DSC (for example, trace and count). Other modification features include the ability to modify flag-based AVP contents and per message ingress-filtering, realm accounting, and set-answer-rt.

Two new features are introduced in this release for message routing. One of these features allows users to simplify the modification command to set Destination-Realm AVP from international mobile subscriber identity (ISMI) numbers (refer to Configuring Mobile Codes Definitions and Configuring Modification Commands). The other feature supports Realm-based Diameter message redirection in addition to the Host-based Diameter message redirection that is already supported on the DSC (refer to Realm-based Redirection of Diameter Messages).

For more information about the DSC Modification, refer to Configuring Modification Tables and Records and Configuring Modification Commands in the Ribbon DSC Application Guide.

Diameter Search Utility for Routing and Modification Tables

The Diameter Search Utility allows you to simulate the traversal of a given Diameter test message through the DSC Routing and Modification tables and can assist you with the following:

  • validating the DSC routing and modification tables’ setup concerning the handling of Diameter messages with specific fields  
  • diagnosing a routing simulation error through the DSC routing and modification tables of a previously mishandled Diameter message

After provisioning its attributes and uploading the DSC Search Message file, the Diameter Search Utility generates a report for each parsed routing and modification table and includes the breakdown of the full routing steps.   

Note

  The Diameter Search Utility attributes are the DSC Node Name, Request Incoming ADN Name, Answer Incoming ADN Name, and Initial Routing Table Name.

Note

All relevant attributes corresponding to the Diameter message fields must be provisioned to properly report the associated routing simulation results.

For more information about the Diameter Search Utility, refer to Using the DSC Routing Search Utility.

 

  • No labels