The Diameter Routing Function supports the routing functions of a Diameter Relay Agent.
The Diameter Routing Function is responsible for the following functions:
- Message routing to local DSR Applications based upon user-defined Application Routing Rules
- Message routing to Peer Nodes based upon user-defined Peer Routing Rules, Route Lists, Route Groups, priorities, and capacities
The Diameter Routing Function method for routing request messages to Peer Nodes is loosely based upon DNS load sharing. A Route List is comprised of a prioritized list of Peer Nodes and/or Diameter connections to which a message can be routed. Each Peer Node and Diameter connection must be assigned a “capacity” that defines the weighted distribution of messages among peers or connections with the same Priority. A set of Peer Nodes and Diameter connections within a Route List of equal Priority is called a Route Group.
- Message routing to Peer Nodes with multiple Diameter connections
- Message Copy
The Diameter Routing Function can forward to a Diameter Application Server (DAS) a copy of a Diameter Request message, and optionally the Answer message, that is received by or routed through the DSR . Diameter Message Copy can be triggered by any processing functions acting on the messages, including Diameter Mediation, MAP-Diameter IWF, DSR Applications (such as the Charging Proxy Application - CPA), and Peer Routing Rules.
- Topology Hiding triggered by Diameter and DSR Applications
- Message rerouting on failures
Rerouting is attempted for the following types of failures:
- Diameter connection failure
- Diameter connection Watchdog failure
- Negative Answer response
- Peer-to-Peer Pending Answer Timer expiration
The following types of rerouting can be attempted:
- Alternate Implicit Routing
Instead of a message being routed directly to an available Peer Node, the message is routed on an “alternate implicit route” that is chosen from a Route List that has been selected in the Peer Node configuration.
- Reroute on Answer
The DSR supports alternate routing of a Request message when an Answer response is received with a configured error code.
- Interfacing with the Diameter Transport Function
- Processing Diameter connection status events received from the Diameter Transport Function
- Issuing Diameter connection management events to the Diameter Transport Function
- Routing Diameter messages received from Peer Nodes through the Diameter Transport Function
- Sending Diameter messages to the Diameter Transport Function for forwarding on Diameter connections
- Interfacing with DSR Applications
- Processing Operational Status events from DSR Applications
- Routing Diameter messages received from Peer Nodes to DSR Applications
- Routing Diameter messages received from DSR Applications to Peer Nodes
- Providing Egress Throttle Groups functions across DA-MPs
- Updating routing information based on connection and DSR Application status changes and on OAM configuration and state changes
- Processing routing configuration and maintenance changes from OAM
- Updating alarm, event, KPI, and measurements data for routing configuration components