Step 1.
UE#1 inserts the codec(s) to a SDP payload. The inserted codec(s) shall reflect the UE#1's terminal capabilities and user preferences for the session capable of supporting for this session. It builds a SDP containing bandwidth requirements and characteristics of each, and assigns local port numbers for each possible media flow. Multiple media flows may be offered, and for each media flow (m= line in SDP), there may be multiple codec choices offered.
Step 2.
UE#1 sends the initial INVITE message to P-CSCF#1 containing this SDP
Step 3.
P-CSCF#1 examines the media parameters. If P-CSCF#1 finds media parameters not allowed to be used within an IMS session (based on P-CSCF local policies, or if available bandwidth authorization limitation information coming from the PCRF/PCF), it rejects the session initiation attempt. This rejection shall contain sufficient information for the originating UE to re-attempt session initiation with media parameters that are allowed by local policy of P-CSCF#1's network according to the procedures specified in
RFC 3261.
In this flow described in
Figure 5.30 above the P-CSCF#1 allows the initial session initiation attempt to continue.
Step 4.
P-CSCF#1 forwards the INVITE message to S-CSCF#1
Step 5.
S-CSCF#1 examines the media parameters. If S-CSCF#1 finds media parameters that local policy or the originating user's subscriber profile does not allow to be used within an IMS session, it rejects the session initiation attempt. This rejection shall contain sufficient information for the originating UE to re-attempt session initiation with media parameters that are allowed by the originating user's subscriber profile and by local policy of S-CSCF#1's network according to the procedures specified in
RFC 3261.
In this flow described in
Figure 5.30 above the S-CSCF#1 allows the initial session initiation attempt to continue.
Step 6.
S-CSCF#1 forwards the INVITE, through the S-S Session Flow Procedures, to S-CSCF#2
Step 7.
S-CSCF#2 examines the media parameters. If S-CSCF#2 finds media parameters that local policy or the terminating user's subscriber profile does not allow to be used within an IMS session, it rejects the session initiation attempt. This rejection shall contain sufficient information for the originating UE to re-attempt session initiation with media parameters that are allowed by the terminating user's subscriber profile and by local policy of S-CSCF#2's network according to the procedures specified in
RFC 3261.
In this flow described in
Figure 5.30 above the S-CSCF#2 allows the initial session initiation attempt to continue.
Step 8.
S-CSCF#2 forwards the INVITE message to P-CSCF#2.
Step 9.
P-CSCF#2 examines the media parameters. If P-CSCF#2 finds media parameters not allowed to be used within an IMS session (based on P-CSCF local policies, or if available bandwidth authorization limitation information coming from the PCRF/PCF), it rejects the session initiation attempt. This rejection shall contain sufficient information for the originating UE to re-attempt session initiation with media parameters that are allowed by local policy of P-CSCF#2's network according to the procedures specified in
RFC 3261.
In this flow described in
Figure 5.30 above the P-CSCF#2 allows the initial session initiation attempt to continue.
Step 10.
P-CSCF#2 forwards the INVITE message to UE#2.
Step 11.
UE#2 determines the complete set of codecs that it is capable of supporting for this session. It determines the intersection with those appearing in the SDP in the INVITE message. For each media flow that is not supported, UE#2 inserts a SDP entry for media (m= line) with port=0. For each media flow that is supported, UE#2 inserts a SDP entry with an assigned port and with the codecs in common with those in the SDP from UE#1.
Step 12.
UE#2 returns the SDP listing common media flows and codecs to P-CSCF#2
Step 13.
P-CSCF#2 authorizes the QoS resources for the remaining media flows and codec choices.
Step 14.
P-CSCF#2 forwards the SDP response to S-CSCF#2.
Step 15.
S-CSCF#2 forwards the SDP response to S-CSCF#1.
Step 16.
S-CSCF#1 forwards the SDP response to P-CSCF#1.
Step 17.
P-CSCF#1 authorizes the QoS resources for the remaining media flows and codec choices.
Step 18.
P-CSCF#1 forwards the SDP response to UE#1.
Step 19.
UE#1 determines which media flows should be used for this session, and which codecs should be used for each of those media flows. If there was more than one media flow, or if there was more than one choice of codec for a media flow, then UE#1 need to renegotiate the codecs by sending another offer to reduce codec to one with the UE#2.
Step 20-24.
UE#1 sends the "Offered SDP" message to UE#2, along the signalling path established by the INVITE request
The remainder of the multi-media session completes identically to a single media/single codec session, if the negotiation results in a single codec per media.