VoLTE Call 的建立
對於VoLTE call 來說,MO Call 和 MT Call 的過程基本是一致的。這裏假設主叫UE和被叫UE已經在IMS網絡中註冊成功了。
並且兩個UE都處於RRC Idle狀態。
呼叫的過程可以大致分爲下面 4 個階段
- MO-MT VoLTE Call Initiation
- MO-MT VoLTE Call Proceeding
- MO-MT VoLTE Call Alerting and Answer
- MO-MT VoLTE Call Release
MO-MT VoLTE Call Initiation
呼叫的初始化階段:
- 源UE構造SIP:INVITE消息,其中包括Qos preconditions 和 audio codec的順序
- SIP:INVITE消息由IPSec pakcage封裝,發送到EUTRAN。
- IMS Core 發送 SIP:100 trying到源UE。
- 目標UE在SIP:183 progress中指示codec choice。
MO-MT VoLTE Call Proceeding
信令繼續進行,下面的紅色框圖部分。
- SIP:183觸發了網絡在源UE和目標UE間建立dedicated EPS承載。當SIP:183到達IMS Core(P-CSCF)時,它便觸發了網絡側開始建立承載的過程。
- 源UE發送SIP:PRACK,來標識 codec selection和pre-conditions。(call 開始前的Qos需求)
- 目的UE發送SIP:200 OK來響應 SIP:PRACK。
MO-MT VoLTE Call Alerting and Answer
呼叫由Call Proceeding 繼續進行,由SIP:200OK是接上一步。
- 源UE發送SIP:UPDATE消息來確認資源預定完成
- 目標UE在本地振鈴,並通過SIP:180 Ringing向源UE發送back tone。
- 當用戶接起電話後,目的UE向源UE發送SIP:200 OK,這個200OK是與INVITE匹配的
- 源UE發送SIP:ACK
- 媒體流建立完成
VoLTE Call 與 Internet Data 併發
VoLTE支持在對話過程中同時使用其他的數據業務。這裏給了一個例子是當兩個手機在進行對話的過程中,其中的一個又同時進行了上網操作。
1 開始狀態MO UE和MT UE都已經attached,處於Idle狀態,並且在IMS中註冊完畢。
在開始Attach過程中,UE連接了2個不同的PDN,一個是用於Internet一個是IMS Service。
2 MO UE發起呼叫,MT UE被尋呼。
3 建立VoLTE call,並且開始對話。RTP每隔20ms進行一次數據交換。
4 MO UE用戶在對話同時開始用手機上網。資源被同時分配給對話和上網操作。
5 VoLTE call結束。由於MO UE還在繼續上網,所以他的DRB 仍然處於active狀態,MT UE沒有其他操作,釋放RRC連接,並且進入Idle狀態。
6 MO UE繼續數據傳輸。
VoLTE Call 與 SMS 併發
這個場景是在VoLTE Call 對話進行中,UE1向UE2發送短消息的過程。
1 開始狀態MO UE和MT UE都已經attached,處於Idle狀態,並且在IMS中註冊完畢。
2 MO UE發起呼叫,MT UE被尋呼。
3 建立VoLTE call,並且開始對話。RTP每隔20ms進行一次數據交換。
4 MO UE向MT UE發送了一條短信。
5 MT UE收到了短信,並返回200 OK給IMS Core,IMS Core向UE1 發送202 OK。
6 MO UE收到了202 OK。
7 MT UE 掛掉電話,發送SIP:BYT給MO UE。通話結束。兩個UE都釋放RRC連接,並進入Idle狀態。過程結束。
在IMS Core中,有個模塊叫做IP-Short-Message-Gatwary,IMS網絡中的短消息是由它進行處理的。