2.6.15.10.7 DOIC Interaction with Routing

As mentioned above, abatement includes both throttling and diversion. The additional data collected at the TTP level for the DOIC throttling is also used to improve routing decisions, this includes:

  • If all Hosts on a DSR for a given AppID are congested, do not send traffic to the mate DSR if it’s also congested.
  • Between Peers in a Route Group distribute traffic by both static capacity (also reflecting availability), and by DOIC loss level.
  • When selecting Route Groups in a Route List, “bypass” Route Groups that exceed a loss threshold (equivalent to “minimum Route Group weight”).
  • When selecting a connection or a peer within a Route Group, take into account the overload condition of the underlying TTPs.
  • Provide distinct Diameter error leg (user configurable) for requests that failed due to DOIC congestion.

In general all of the existing DSR routing capabilities remain unchanged, but the following optional capabilities are added:

  • At the Route List it is possible to “skip” Route Groups that have too high of a DOIC loss rate.
  • Within Peer Route Groups traffic is balanced between peers by both their static weighting (existing functionality) and their DOIC loss rates.
  • Within Connection Route Groups traffic is balanced between connections by both their static weighting (existing functionality) and their DOIC loss rates.
  • Implicit Routing first looks for a matching TTP (more specific, since it’s both HostID and an AppID) before it looks for a matching Peer. There is also a new Alternate Implicit Route List associated with a TTP.
  • A new error leg for DOIC congestion is defined for when all of the Route Groups in a Route List are skipped due to not meeting the DOIC loss rate cutoff, or when a request message is rejected at the TTP level due to DOIC throttling. This same error code is also used for requests blocked at the TTP level by the Priority/Color algorithm rejecting requests to meet a DOIC abatement request.

Note:

The DOIC capabilities layer on top of the existing routing functions. Unless specifically noted, all of the current DSR routing functions continue to operate.