Part 3: Networks & Protocols used by Skype® for Business 2015 - (Lync® 2013)
This paper provides details of the Networks & Protocols used by Microsoft® Skype for Business 2015 - (Lync 2013) and is Part 3 of a series that specifically looks at Microsoft Skype for Business 2015 (Lync 2013) and the challenges and solutions for integrating Skype for Business 2015 with H.323 or SIP standards compliant videoconferencing systems. Hence, it will focus on the communications used in A/V Conferencing and Application Sharing.
We will show the communications links and indicate the various protocols used between servers and devices by Skype for Business 2015 when A/V Conferencing and Application Sharing. This will form the basis for understanding the challenges that must be overcome when integrating with H.323 or SIP based systems.
Within these papers the terms, Lync, Skype, Skype for Business and SfB, unless stated otherwise, all refer to Skype for Business Server 2015. The paper is specifically based on Skype for Business 2015. Whilst Lync 2013 has now been renamed Skype for Business 2015, it is generally backwards compatible with Lync Server 2013.
It is recommended that you look all the papers listed below for a background into Skype for Business and a detailed explanation about the Codecs, Protocols, Procedures and some of the available solutions.
- Part 1: How Skype for Business 2015 - (Lync 2013) can be Deployed.
- Part 2: Skype for Business 2015 Servers, Roles and their Functions.
- Part 4: Lifesize Cloud integration with Skype for Business 2015 - (Lync 2013).
- Part 5: Polycom Endpoints Native Integration with Skype for Business 2015.
- Part 6: Polycom RealConnect Interoperability with Skype for Business 2015.
- Appendix A: H.264 Video Codecs and UCConfig Modes.
- Appendix B: Skype for Business Video and Audio Codecs.
- Appendix C: Video and Audio Codecs used by H.323 and SIP Compliant VC systems.
- Appendix D: How to check what Skype for Business codecs your PC supports.
- Appendix E: How well does your PC support Skype for Business 2015 H.264/SVC.
Microsoft Lync is an evolutionary product for Unified Communications (UC). The initial product; Live Communications Server 2003, was only an Instant Messaging (IM) server. This then evolved through several interactions of Live Communications Server to Office Communications Server and then to Lync Server 2010; when a PBX replacement function was added. It then evolved even further to Lync Server 2013 which added much more including video conferencing, web and audio conferencing, softphone and PBX replacement and/or integration. Now, Microsoft have renamed Lync to Skype for Business.
IP Networks and the SIP Stack:
As mentioned above, Skype for Business 2015 is UC application based on Microsofts specific implementation of the Session Initiation Protocol, (SIP) standard. In Part 2: Skype for Business Servers, Roles and their Functions, we've shown all the servers and discussed their roles and functions, so now let's take a closer look at the SIP Stack, and then how all the Skype for Business servers communicate with each other and with the local and remote SfB clients.
The above diagram shows the TCP/IP model layers, the corresponding OSI model layers and how both the SIP Stack and the H.323 Stack fit into the TCP/IP protocol.
You can clearly see that the H.323 Protocol Stack encompasses all the elements that make up the complete H.323 protocol. For example, the H.323 Standard defines that only the G.7XX Audio and H.26X Video codecs can be used. Hence it is called an 'Umbrella' standard.
By contrast, in terms of multimedia applications, SIP is essentially a signalling protocol. It is not an Umbrella standard and you are free to use whatever Audio and Video codecs that are available and common to the conferencing endpoints. SIP uses the SDP - Session Description Protocol to perform the capability exchange between endpoints during call setup; this includes negotiating what common parameters (such as audio and video codecs, ports and bitrates) to use.
Skype for Business Networks & Protocols:
Now let's look at Skype for Business 2015 and specifically at the communications traffic involved with A/V Conferencing and Application Sharing
The above diagram shows the traffic and protocols between the various SfB Servers and clients during A/V Conferencing.
The above diagram shows the traffic and protocols during Application Sharing.
Skype for Business Communications Environment:
To successfully establish a video call between two Skype for Business clients, a sequence of events must take place between the various Skype for Business servers and client devices over a variety connections that use a variety of protocols.
From the above diagrams, we can see that Skype for Business is based on Microsofts implementation of SIP and that the Skype for Business A/V communications are basically comprised of two separate streams; namely SIP Signalling and Media streams. Furthermore, the Skype for Business environment creates a network of trusted servers and ensures that all communications within this network are encrypted.
The Skype for Business environment uses TLS (Transport Layer Security) and MTLS (Mutual Transport Layer Security) to encrypt communications and provide endpoint authentication over the Internet. As the diagrams show, all SIP communications (signalling) between Skype for Business Servers use MTLS whilst SIP communications (signalling) between Skype for Business Servers and clients uses TLS. You can also see that within the Skype for Business environment, the Edge Server uses ICE (Interactive Connectivity Establishment) and STUN (Simple Traversal Utilities for NAT) to deal with NAT and traverse any Firewalls and that the Reverse Proxy uses HTTPS (HTTP over TLS) to provide secure access to Skype for Business services.
Much more information about TLS, MTLS, ICE and STUN can be found in other papers in this series.
SIP Signalling is primarily the control traffic, via the SfB Servers, that facilitates the call between the endpoints.
Media is a separate stream that may or may not follow the same path as the SIP signalling traffic.
Typically, with Peer-to-Peer calls between Skype for Business clients, the media traffic bypasses the SfB Servers and goes directly between the two clients; whilst the SIP signalling still goes via the SfB Servers.
However, in a Skype for Business Multipoint call, both the SIP signalling and media streams are routed via the AVMCU in the Front End Server Pool as depicted in the above diagrams.
There are basically two methods for integrating Skype for Business with other SIP or H.323 standards compliant videoconferencing systems; namely Native or Gateway.
As mentioned, Skype for Business uses Microsofts implementation of SIP that includes a number of unique extensions. Hence, for Native integration, the other endpoints must be able to fully understand Microsofts SIP (MS-SIP) and all these unique extensions.
Alternatively, endpoints that cannot talk MS-SIP must use a Gateway that can translate between MS-SIP and the other standards based communications protocols such as H.323 or 'vanilla' SIP.
So straight away, we can conclude that it is not possible to have Native integration between a Skype for Business 2015 or Lync 2013 client and any videoconferencing system that only supports H.323.
But for Native integration, you also have to include the Media streams as well as the Signalling. With SIP communications, the Session Description Protocol - SDP information that is embedded in the SIP Signalling actually controls the negotiations (media capabilities exchange) between the two SIP endpoints that allows them to determine which of the common media codecs to use as well as what IP addresses and Ports to send the Media streams.
However, as the previous SIP Protocol Stack diagram shows, the complete Media stream is made up of not just the actual media (audio and video). It also includes the transport and corresponding transport control. Media streams in Skype for Business 2015 and Lync 2013 use RTP - Real-time Transport Protocol along with RTCP - Real-time Transport Control Protocol or their secure relatives SRTP and SRTCP.
RTP (or SRTP) carries the media codecs streams whilst RTCP (or SRTCP) facilitates and controls the media streams. Just because two endpoints might support common media codecs, it does not mean that they also use compatible transport protocols.
RTP (SRTP) and RTCP (SRTCP) would normally use UDP - Universal Datagram Protocol as their transport, but it's possible to use TCP - Transmission Control Protocol instead. By contrast, we know that the SIP Signalling streams use TLS or MTLS (TCP) as their transport.
In summary, if the endpoint can talk MS-SIP with native registration to the Skype for Business Server and also supports common media codecs that use compatible transport protocols, then the Media streams will be able to go directly between the endpoint and other Skype for Business clients. This is a 'Native' integration solution which is supported by Polycom and their latest RealPresence Group series of endpoints.
Alternatively, if the endpoint only supports H.323, has no common codecs, or has common codecs that use incompatible transport protocols, then a Gateway is required that can transcode the complete media streams between the two endpoints as well as transcoding the signalling.
For example, if a Skype for Business 2015 client tries to initiate a call to a SIP endpoint that only supports the old H.263 video codec, then they have no common video codec and would need a Gateway to transcode video between the two endpoints. Such a Gateway, acting as an intermediary, would have to support a video codec in common with the Skype for Business 2015 client as well as the H.263 video codec in common with the other SIP endpoint. As the Media traffic passed through the Gateway, it would transcoded between the video codecs. The Gateway would also need to take care of the SIP signalling between clients.
Both Cisco and Avaya (Radvision) use the Gateway method for integrating with Skype for Business. Some Gateways can handle both Media and Signalling traffic, whilst other Gateways are specific to handling either Media or Signalling.
Lifesize Cloud Premium users can fully interoperate with all derivatives of Skype for Business 2015 and Lync 2013 clients (On-Premise, Hosted, Online and Hybrid). It is effectively a hosted Gateway solution that performs all the necessary Media and Signalling transcoding.
In essence, for successful interoperability between Skype for Business 2015 clients and other endpoints, if your endpoints cannot directly talk MS-SIP and register with the Skype for Business Server, then you need a Gateway that can translate between MS-SIP and your specific endpoints.
For a complete picture, please take a closer look at all the other papers in this series about Skype for Business 2015.
Technical diagrams for Skype for Business Server 2015 "https://technet.microsoft.com/EN-US/library/dn594589.aspx"
Microsoft Lync Server 2013 Unleashed. ISBN-13 978-0-672-33615-7