Selection Process with an SLRM
The capabilities-oriented S-CSCF selection algorithm on the Oracle SLRM uses standard Oracle CSM selection criteria in addition to capabilities criteria. This criteria includes cluster configuration, S-CSCF resource utilization and SLRM synchronization.
The general approach to selection within this scenario include the following principles:
- Only Oracle CSMs with all mandatory capabilities can be selected.
- The process gives priority to the Oracle CSMs in the cluster with the most optional capabilities, and is best able to take on new users.
The capabilities-oriented S-CSCF selection algorithm uses the following high-level steps, including the SLRM's selection steps, within the I-CSCF function to arrive at a selection:
- Determine that the capabilities algorithm is required: 
		  - No server-name in the LIA or UAA.
- Capability list exists.
- Assigned S-CSCF flag is not set.
- Mandatory/Optional Capabilities received in UAA/LIA.
 
- Execute capabilities selection: 
		  - Ensure the S-CSCF capabilities database is configured.
- Build capable S-CSCF list. This list contains all S-CSCFs from the S-CSCF capability database that support the Mandatory capabilities.
- Ensure that the capable S-CSCF list is not empty. If the capable S-CSCF list is empty, return an error to the UE.
 
- 
Execute SLRM's selection procedure, cycle through all Oracle CSMs in the cluster: - Identify applicable cluster. Begin to cycle through cluster.
- Determine whether Oracle CSM is in capable list.
- Determine whether Oracle CSM is at 100% utilization.
- Determine whether the next Oracle CSM support more optional capabilities.
- Determine whether the selected Oracle CSM is synchronized.
- Determine whether the next Oracle CSM using fewer resources.
 
-  Complete capabilities selection process using optional capabilities as criteria: 
		  - An S-CSCF has the most optional capabilities. 
				(If so, forward message.) 
- The local S-CSCF can take on more users and has all mandatory capabilities and most optional capabilities. 
				(If so, forward message locally.) 
- Use round robin to select the S-CSCF that has most optional capabilities. 
				(If so, forward message.) 
 
- An S-CSCF has the most optional capabilities. 
				
-  Forward message: 
		  - Forward to selected S-CSCF.
- Remove selected S-CSCF from capabilities list.
- If there is an error, for example, the SIP response requires a re-assignment, check the assigned flag.
- If the assigned flag is set, return to the top. 
				If the assigned is not set, return to the step that checks whether the capable S-CSCF list is empty. 
- If the capable S-CSCF list is empty, return an error to the UE. 
				If the capable S-CSCF list is not empty yet, perform SLRM's selection procedure again. 
 


 
