Supported Platforms
Related Documentation
Diameter Base Protocol Overview
The Diameter protocol is defined in RFC 3588, Diameter Base Protocol, and provides an alternative to RADIUS that is more flexible and extensible. The Diameter base protocol provides basic services to one or more applications (also called functions) that each runs in a different Diameter instance. The individual application provides the extended AAA functionality. Applications that use Diameter include Gx-Plus, JSRC, and PTSP.
Diameter peers communicate over a reliable TCP transport layer connection by exchanging Diameter messages that convey status, requests, and acknowledgments by means of standard Diameter AVPs and application-specific AVPs. The Diameter transport layer configuration is based on Diameter network elements (DNEs); multiple DNEs per Diameter instance are supported. Currently only the predefined master Diameter instance is supported, but you can configure alternative values for many of the master Diameter instance values.
Each DNE consists of a prioritized list of peers and a set of routes that define how traffic is forwarded. Each route associates a destination with a function, a function partition, and a metric. When an application sends a message to a routed destination, all routes within the Diameter instance are examined for a match. When the best route to the destination has been selected, the message is forwarded by means of the DNE that includes that route.
Multiple routes to the same destination can exist within a given DNE and in different DNEs. In the case of multiple routes that match a request for forwarding, the best route is selected as follows:
- The route with the lowest metric is selected.
- In the event of a tie, the route with the highest specification score is selected.
- In the event of another tie, then the names of the DNEs are compared in lexicographical order. The route in the DNE with the lowest value is selected. For example, dne-austin has a lower value than dne-boston.
- If the routes are tied within the same DNE, then the route names are compared in lexicographical order. The route with the lowest value is selected.
The specification score of a route is 0 by default. Points are added to the score as follows:
- If the destination realm matches the request, add 1.
- If the destination host matches the request, add 2.
- If the function matches the request, add 3.
- If the function partition matches the request, add 4.
When the state of any DNE changes, the route lookup for all destinations is reevaluated. All outstanding messages to routed destinations are rerouted as needed, or discarded.
To configure a Diameter network element, include the network-element statement at the [edit diameter] hierarchy level. Include the route statement at the [edit diameter network-element element-name forwarding] hierarchy level.
To configure a route for the DNE, include the destination (optional), function (optional), and metric statements at the [edit diameter network-element element-name forwarding route dne-route-name] hierarchy level.
Specify the Diameter peers associated with the DNE by including one or more peer statements at the [edit diameter network-element element-name] hierarchy level.
Set the priority for each peer with the priority statement at the [edit diameter network-element element-name peer peer-name] hierarchy level.
Diameter requires you to configure information about the origin node; this is the endpoint node that originates Diameter for the Diameter instance. Include the host and realm statements at the [edit diameter] hierarchy level to configure the Diameter origin.
You can optionally configure one or more transports to specify the source (local) address of the transport layer connection. To configure a Diameter transport, include the transport statement at the [edit diameter] hierarchy level. Then include the address statement at the [edit diameter transport transport-name] hierarchy level.
You can optionally specify a logical system and routing instance for the connection by including the logical-system and routing-instance statements at the [edit diameter transport transport-name] hierarchy level. By default, Diameter uses the default logical system and master routing instance. The logical system and routing instance for the transport connection must match that for the peer, or a configuration error is reported.
Each Diameter peer is specified by a name. Peer attributes include address and the destination TCP port used by active connections to this peer. To configure a Diameter peer, include the peer statement at the [edit diameter] hierarchy level, and then include the address and connect-actively statements at the [edit diameter peer peer-name] hierarchy level.
To configure the active connection, include the port and transport statements at the [edit diameter peer peer-name connect-actively] hierarchy level. The assigned transport identifies the transport layer source address used to establish active connections to the peers. transport statements.