Selection Process without SLRM
The capabilities-oriented S-CSCF selection algorithm on the Oracle CSM and Oracle USM S-CSCF include selections based on mandatory and optional capabilities information received from HSS and the configured S-CSCF Capabilities Database.
The general approach to selection within this scenario include the following principles:
- Only S-CSCFs with all mandatory capabilities can be selected.
- The process gives priority to the S-CSCF with the most optional capabilities.
- The process gives priority to the local S-CSCF.
- The system attempts to spread assignments to remote S-CSCFs of the same priority.
The capabilities-oriented S-CSCF selection algorithm uses the following high-level 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.
 
- Identify potential S-CSCFs, which must support all mandatory capabilities: 
		  
                     - Ensure the S-CSCF capabilities database is configured.
- Build capable S-CSCF list. This list contains all S-CSCFs from the S-CSCF capabilities 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.
 
- Ensure that the I-CSCF is not SLRM.
-  Complete capabilities selection process using optional capabilities as criteria: 
		  
                     - An S-CSCF has the most optional capabilities. 
				
                           (If so, forward.) 
- The local S-CSCF can take on more users, has all mandatory capabilities, and has most optional capabilities. 
				
                           (If so, forward locally.) 
- Use round robin to select the S-CSCF that has most optional capabilities. 
				
                           (If so, forward.) 
 
- 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 capabilities selection process using optional capabilities as criteria again.