A common question is whether Skype for Business and other VoIP telephony software can be used on a Cloud-Hosted Desktop? This application offers three types of communication:
- Instant Messaging
- Voice Calls
- Video Calls.
For Instant Messaging it is fine, but for voice and video calls the experience is generally not as good as running the application locally on a PC or thin client device.
This is because of the way that Microsoft Remote Desktop Services handles network traffic compared to Voice over IP (VoIP) or video services e.g. iPlayer, Skype video or Netflix.
Microsoft Remote Desktop Services typically uses the TCP network protocol; this is designed to guarantee successful delivery of network packets. Data is sent, once received a message is sent back to acknowledge successful delivery of the information. If the acknowledgement isn’t received the information is resent until an acknowledgement is received, or a timeout threshold is reached. This is the way you would expect a remote desktop to work, if you press a key you expect the information to be delivered. If some data being sent wasn’t received. then things like keypresses or mouse clicks would be lost leading to a poor user experience.
Voice and video network applications use a network protocol called UDP, this is typically faster to send information because it doesn’t use acknowledgements and doesn’t cater for re-sending information it just assumes that it is delivered. This is used where absolute accuracy of data is not required, for example, if on a voice call you could hear 95% of words you probably wouldn’t notice the 5% of missing data as the human brain fills in the missing parts of words from experience. The same goes for a video service such as BBC iPlayer. If you pause iPlayer and carefully look at the pixels on screen you will notice that the occasional pixel is wrong, but because the majority of pixels surrounding it are correct you don’t normally notice when watching. So where 100% accuracy of data is not required, the UDP network protocol is sufficient.
Skype for Business and other VoIP client software uses the UDP protocol, but when it runs on a Cloud-Hosted Server the communication between the application and the user of the service is via TCP which means that “stuttering” can occur on voice and video if packets must be resent if they fail to be delivered successfully. This leads to a poorer experience than running Skype for Business on a local computer where the UDP network protocol can be utilised.
Our recommended method of deploying Skype for Business where more than instant messaging is required is to install on both the remote desktop and the local PC. The same user login is used for both installations (in most cases it is the username and password used to access email). This means that messaging can be used effectively on the Cloud-Hosted Desktop but should a voice or video call be required then the Cloud-Hosted Desktop can be minimised and Skype for Business run on the local PC where the UDP protocol can be fully utilised.