Jump to content

Sprint's Casting Call of Voice Over Actors: An in depth analysis of VoLTE, Calling+, and VoWiFi


ingenium

13,726 views

Josh Hill
Sprint 4G Rollout Updates
Friday, April 5, 2019 - 3:06 AM PDT

Now that VoLTE is actually rolling out on Sprint, it's a good time to dive into what exactly is VoLTE, and how is it different from Calling+ and VoWiFi (Wifi Calling). 

Background Terms 

E-UTRA or EUTRA: Stands for Evolved Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access. This is the technical name for the actual LTE airlink. 

QoS: Quality of Service. This is a way of tagging / flagging certain types of traffic to have priority above or below other traffic. When traffic has a QoS tag higher than other traffic, network equipment (the tower, routers, etc) will drop or ignore lower priority traffic to ensure that this traffic goes through instead. The equipment can also be configured to reserve a certain amount of bandwidth to only be used by traffic with a particular QoS tag. For example, if a router has 10 Mbps available, it can allocate 1 Mbps for a certain QoS tag. Normal traffic will only be able to use 9 Mbps, with 1 Mbps reserved for that QoS tag. The number of QoS priorities / tags varies between equipment vendors, but can be in excess of 256 priority levels.

QCI: QoS Class Identifier. This is a value that an LTE / E-UTRA session can be assigned that corresponds to a particular QoS tag and specific attributes of that particular QoS queue. For example, it may or may not specify a guaranteed/dedicated bandwidth allocation (GBR).

APN: The APN is the name of the gateway on a mobile network. It identifies the packet data network that should be used for that E-UTRA session.

IMS: IP Multimedia Subsystem. It is a method for sending SMS over LTE, along with setting up VoLTE calls and other signaling.

eCSFB: Circuit Switched Fall Back. For phones / UEs that can only listen on either LTE or CDMA rather than both simultaneously, it is a method for the LTE network to tell the device that a call is coming in, and to switch over to CDMA to process it. 

SRLTE: Single Radio LTE. This is a capability of newer devices that allows them to listen on both CDMA and LTE at the same time, but only transmit on one at a time. This replaces the need for eCSFB, allowing the device to see a call coming in over CDMA while it’s using LTE. It is also more reliable and reduces the number of missed calls due to failed fallback. When a call is active, the LTE session is stopped / paused.

SIP: Session Initialization Protocol. This is the standard protocol for VoIP in telecom networks.

How VoLTE Works

While we typically think of LTE as a single connection, multiple E-UTRA “sessions” can actually be established, creating what are essentially virtual/multiple LTE interfaces, each with their own IP address, QoS level, APN, etc. Each session has a numerical QCI assigned that dictates the actual QoS priority and whether or not it has a GBR (Guaranteed Bitrate).

QCI Resource Type QoS Priority Packet Delay Budget Packet Error Loss Rate Example Services
1 GBR 2 100ms 10−2 Conversational Voice
2 GBR 4 150ms 10−3 Conversational Video (Live Streaming)
3 GBR 3 50ms 10−3 Real Time Gaming, V2X messages
4 GBR 5 300ms 10−6 Non-Conversational Video (Buffered Streaming)
65 GBR 0.7 75ms 10−2 Mission Critical user plane Push To Talk voice (e.g., MCPTT)
66 GBR 2 100ms 10−2 Non-Mission-Critical user plane Push To Talk voice
75 GBR 2.5 50ms 10−2 V2X messages
5 non-GBR 1 100ms 10−6 IMS Signalling
6 non-GBR 6 300ms 10−6 Video (Buffered Streaming) TCP-Based (for example, www, email, chat, ftp, p2p and the like)
7 non-GBR 7 100ms 10−3 Voice, Video (Live Streaming), Interactive Gaming
8 non-GBR 8 300ms 10−6 Video (Buffered Streaming) TCP-Based (for example, www, email, chat, ftp, p2p and the like)
9 non-GBR 9 300ms 10−6 Video (Buffered Streaming) TCP-Based (for example, www, email, chat, ftp, p2p and the like). Typically used as default bearer
69 non-GBR 0.5 60ms 10−6 Mission Critical delay sensitive signalling (e.g., MC-PTT signalling)
70 non-GBR 5.5 200ms 10−6 Mission Critical Data (e.g. example services are the same as QCI 6/8/9)
79 non-GBR 6.5 50ms 10−2 V2X messages

(source: https://en.wikipedia.org/wiki/QoS_Class_Identifier)

As you can see in the above table, the QCI does not necessarily correspond to the QoS level. For example, QCI 1 has a QoS priority of 2, but QCI 5 has a QoS priority of 1, making it actually higher priority traffic.

On Sprint, traditionally one E-UTRA session was used, with a QCI of 9 and QoS priority of 9. This is the lowest QoS priority, and does not have a guaranteed bitrate. On devices which use eCSFB or VoLTE, another E-UTRA session is established for the IMS APN using a QCI of 5 and QoS priority of 1, and is used for IMS. This session also does not have a guaranteed bitrate, but it has the highest QoS priority. IMS is used for SMS over LTE, along with setting up VoLTE calls. eCSFB devices use it for SMS, and likely also for triggering eCSFB. On newer device which instead use SRLTE, IMS is not used unless VoLTE is enabled, and they instead use CDMA 1x for SMS, so an IMS E-UTRA session is often not setup.

When a VoLTE call is initiated, a third E-UTRA session is established, also using the IMS APN. This session has a QCI of 1 and QoS priority of 2. Unlike the other two sessions, this one does have a guaranteed bitrate. For Sprint, this bitrate is 39 Kbps. The screenshot below shows all 3 sessions:

VoLTE E-UTRA sessions
VoLTE E-UTRA sessions

This is how VoLTE calls are prioritized over regular data. Normal data usage, such as loading a web page or watching a video, will still use the lower, default QoS (QCI of 9), while the data for the VoLTE call will be at the second highest priority (QCI 1), just after IMS signaling (QCI 5). The tower / eNB will ensure that the VoIP session always is able to use up to 39 Kbps by reserving that bandwidth and dedicating it to the call.

This is in contrast to “Calling+”, which does not establish a separate E-UTRA session, and instead uses the normal QCI 9 session. The below screenshot shows an active Calling+ call. Note the presence of only a single E-UTRA session.

Calling+ E-UTRA sessions
Calling+ E-UTRA sessions

So now that we have the airlink for VoLTE, what happens? VoLTE, Calling+, and VoWiFi are essentially standard SIP VoIP calls. The below screenshots show the SIP details for an active call, and the LTE Signaling messages that setup and then end the SIP call.

VoLTE SIP details VoLTE Signaling
VoLTE SIP details VoLTE Signaling

For VoLTE, the traffic for the SIP call goes over the QCI 1 E-UTRA session instead of the normal QCI 9 session. This means that the eNB (tower) will reserve and guarantee 39 kbps for the call, but other traffic from the same device will not be prioritized and will use the normal session. So starting a VoLTE call will not make the rest of your traffic prioritized, it will apply only to the VoLTE call.

So as a recap, when VoLTE is enabled, the UE / phone establishes multiple E-UTRA sessions. One is used for normal usage, one is used for texting and signaling, and one is used for the VoLTE call. Think of these like separate virtual ethernet cables. On the QoS prioritized and guaranteed bitrate VoLTE session, the UE establishes a SIP VoIP connection for a call. On Calling+ devices, the same SIP connection is used, however it runs over the default QCI 9 session instead, and therefore isn’t prioritized and doesn't have a guaranteed bandwidth. This is why Calling+ calls are more likely to cut out or not sound as good.

VoLTE call Calling+ call
VoLTE call Calling+ call

VoWiFi (Wifi calling) operates almost the same way. Like VoLTE and Calling+, it also uses the same SIP connection for calls and presumably IMS for signaling, but instead of using an LTE E-UTRA session, the phone establishes an IKEv2 IPsec VPN connection to Sprint. This is an encrypted connection that allows data to be tunneled directly into Sprint’s network. The SIP and IMS traffic are then routed over this VPN to Sprint, but not other, normal traffic. From a QoS perspective, VoWiFi is identical to Calling+, in that neither are prioritized above other traffic.

ULogPkG.png
VoWiFi call

Because VoLTE, Calling+, and VoWiFi all use the same SIP servers and connections, under normal conditions they sound the same and can technically hand off to one another. They can all take advantage of HD Voice codecs and should sound the same, since the call itself is identical across all three. The difference is how the data for that call makes it to Sprint. VoLTE is able to use a dedicated, guaranteed airlink to ensure that congestion on the network (LTE or WiFi) won’t adversely affect the call. 

One final performance benefit is that VoLTE is able to take advantage of something called RoHC (Robust Header Compression), seen in the above 3 screenshots. This compresses the IP, TCP, UDP, and RTP headers from 60 bytes to 1-3 bytes, resulting in up to 60% bandwidth savings. It’s only possible on a dedicated link, which is why VoLTE has it but Calling+ and VoWiFi do not. So not only does VoLTE have guaranteed, dedicated bandwidth, it will use potentially half as much, which matters a lot for maintaining the call in edge of cell scenarios.
 

  • Like 18
  • Love 5
  • Thanks 2

7 Comments


Recommended Comments

" VoLTE is able to use a dedicated, guaranteed airlink to ensure that congestion on the network (LTE or WiFi) won’t adversely affect the call."

Dont know if adding wifi to that statement was in error but if not, how would sprint handle call affecting congestion on someones wifi network or ISP which is completely out of their hands?

Link to comment

Great article!

Just one question; Since Sprint usage is prioritized over MVNO usage (at least that's what most MVNOs state in their fine print), are MVNO users assigned a different QCI that gives them lower QoS priority?

It would be interesting to see if plans such as Sprint's Kickstart, T-Mobile Essentials, and Verizon's goUnlimited also have a different QCI.

  • Thanks 1
Link to comment
37 minutes ago, mattp said:

one question is that app avable to download  how to find it 

SignalCheck Pro. You can get it on the Play store. 

  • Like 1
Link to comment
On 4/9/2019 at 4:16 AM, greenbastard said:

Great article!

Just one question; Since Sprint usage is prioritized over MVNO usage (at least that's what most MVNOs state in their fine print), are MVNO users assigned a different QCI that gives them lower QoS priority?

It would be interesting to see if plans such as Sprint's Kickstart, T-Mobile Essentials, and Verizon's goUnlimited also have a different QCI.

For some very interesting comments on this, see


Unlimited Basic is treated like Kickstart, as is Boost. [QVI 8 to start, then QCI 9 above 50 GB]

Unlimited Premium/Plus/etc is prioritized for the first 50GB (QCI 7) then deprioritized. Older plans like ED, SERO, etc are also QCI 7 for the first 50 GB, then deprioritized.

I believe (but can't confirm) that prioritized plans are only penalized with QCI 8 (after 50GB), and only hit QCI 9 on hotspot.


If the plan says "at times of heavy traffic, Sprint may deprioritize" then it's deprioritized out of the gate.

If it says "after 50GB, Sprint may slow speeds when the network is busy" or something to that effect, then it's QCI 7 (prioritized) out of the gate.

The wording is key because Plus/Premium/etc are prioritized at 50GB, so you get the best effort of all consumer data with those plans at the start of each bill cycle.

Kickstart/Basic/Boost are also hit with even more depro at 50GB, but importantly, start off deprioritized, so they move to QCI 9 at the 50GB point.

 

Link to comment

am i the only one who think unlimit shuld go away i some what think it is sort of not worth the mony rahter know how much data i have  and then be able to pay for more money i perfer if there a provider where you pay a acces fee each moth just to have phone number and such then pay per x amount of data and minun and tex message big group  you have to tell it to pay they never expire   instead  of this pay for 2 gb and not use all of it in one month and fell like you pay  for data you did not get to use or end up with so much extar data and voice and tex becase you need more sevice  day 

Link to comment
On 5/13/2019 at 11:15 PM, Brad The Beast said:

SignalCheck Pro. You can get it on the Play store. 

That's not SCP.. that's Network Signal Guru..

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...