Preferential Routing
The Oracle Communications Core Session Manager routes using UA capabilities only when acting as S-CSCF. It calculates preferred forwarding and forking using this information in conjunction with UA requests. This calculation is based on Preferential Routing, as defined in RFC3841. Note that the q value is used in this calculation.
Using Preferential Routing, the Oracle Communications Core Session Manager creates a target UA list from applicable contacts by matching capabilities with preferences. After creating the match list, it scores UEs based on how closely they match the preferred criteria. The system determines the forwarding order referring to the q value first and then the routing score. UEs for which both scores are equal are forwarded at the same time. All remaining UEs are forwarded sequentially.
The table below presents an example wherein the result of matching and scoring calculations causes the Oracle Communications Core Session Manager to forwards sequentially to UE3, then UE2, then UE1.
User Agent | q Value | Preferential Score |
---|---|---|
UE3 | 1000 | 1000 |
UE1 | 500 | 1000 |
UE2 | 1000 | 700 |
UAs may or may not include capability request information in their messages. Preferential routing processing accounts for this by defining both explicit and implicit feature preference processing procedures.