UE-A begins candidate transport address collection by performing a request for a transport address for each media flow from the STUN server.
The STUN server reserves one of its transport addresses for each media flow and sends the reserved transport address information back to the UE. The STUN server also reflects the source transport address of the original request for a transport address.
If the UE fails to identify STUN servers it concludes that ICE and Outbound procedures are not supported by the network and defaults to operation using the procedures described in clause G.4
UE-A repeats the procedures for requesting a transport address for each RTCP flow. These steps may be executed in parallel with steps 1. - 2. or in series.
With its three candidates (locally assigned, server reflected and relay) UE-A forms an offer and forwards to its assigned P-CSCF. The UE includes the SP cand-type, SP rel-addr and SP rel-port in the candidate attribute as defined in RFC 5245
To ensure subsequent responses to the offer are allowed through the NAT, the P-CSCF stores the transport address information received in the transport header of the offer.
The P-CSCF forwards the Offer to UE-B using one of the previously established flows.
UE-B performs the candidate gathering procedures as outlined in steps 1. - 4. above.
With its three candidates (locally assigned, server reflected and relay) UE-B forms an answer and forwards to its assigned P-CSCF.
The P-CSCF for UE-A forwards the Answer to UE-A based on the previously stored transport address information. Media can being to flow at this point using the default transport addresses (recommended to be the STUN Relay provided address).
Both UE-A and UE-B perform connectivity tests on each received transport address to determine which of the received transport addresses are actually reachable.
After the connectivity tests are concluded UE-A sends an updated SDP Offer indicating the agreed to transport address.
The P-CSCF forwards the Offer according to normal routing procedures.
UE-B sends an Answer indicating the agreed to transport address.
The P-CSCF forwards the Answer according to normal routing procedures. Media can begin flowing using the newly identified addresses.
STUN Relay allocated transport addresses are released by the UE once a more efficient address has been identified and the session updated.