In this chapter we shall look at VoLTE IMS Invite Call Flow.
Below image shows in brief of INVITE request if both UE are in same IMS Network
Below image shows in brief of INVITE request if both UE are in same IMS Network
Before UE sends INVITE request, UE has to attach to LTE network.
High level messages exchanged between the 2 UA are shown below:
Step 1: UA A will initiate a VoLTE call by sending a SIP INVITE request.
It will have SDP offer, it will have required codec for a VoLTE call.
UA A will send IMPU and IMPI details to know who is making the call.
UA A will include tel-uri of UA B, so that S-CSCF will know to whom the message should be forwarded.
It will have a “Route” header that will have P-CSCF and S-CSCF IP address.
Step 2: SIP server will send 100 Trying to UA A.
This is a provisional response, so that the originator will stop the re-transmission of INVITE request.
Step 3: UA B will send 183 Session In Progress it will have a SDP.
By this time, dedicated bearer will be established at both sides.
As there is a mis-match in Codec Supported by UA B.
Hence UA B cannot send 180 Ringing.
Step 4: UA A will send PRACK
PRACK = Provisional Response ACK to 183 Session Progress message.
It will have a SDP to communicate final codec selected.
Step 5: UA B will send 200 OK for PRACK.
UA B will send 200 OK for PRACK.
Both the parties have final agreement on the codec to be used.
Step 6: UA A will send SIP UPDATE with new new resources.
It is used to reserve the resources.
There will no changes in codec.
Step 7: UA B will respond back with 200OK for update.
UA B will also reserve resources and sends 200OK for UPDATE.
Step 8: UA B will send 180 Ringing
It means that a alert has been sent to UA B mobile phone.
Step 9: UA B will send 200 OK for INVITE.
It means UA B has picked up the call.
Step 10: UA A will send SIP ACK.
UA A will send ACK to UA B.
Now there will be RTP packets flowing between 2 users.
Now we shall see detailed signaling call flow between 2 users.