This document provides a deep dive into Lync and Skype interoperability version 2. It discusses the architectural improvements between versions 1 and 2, including using a new Skype cloud for call setup and control and a gateway to connect the Skype cloud to Lync Online. It describes the call connectivity flows and lists supported clients. Key technology improvements with version 2 are direct media connectivity between Lync and Skype clients using the SILK audio codec and H.264 video codec, as well as the use of ICE, STUN, TURN for improved NAT traversal. Steps for setting up Lync-Skype connectivity through domain registration and Lync server configuration are also outlined.
4. Agenda
Skype & Lync How is Lync
different from
Skype?
Architecture &
Media
Enhancements
Lync / Skype
Interop V2
Implementing
Lync-Skype
connectivity
Lync Server
Office 365
8. Individuals
Teams &
Small Organizations
Medium-sized & Large
Organizations
Specialized by need, universal by reach
Connecting everyone with rich communications
Microsoft provides Universal Communications: enabling any person to reach
anyone, from anywhere, on any device, and in the way they choose.
12. Skype Meetings
The Organizer initiates the call (25 Audio-only, 10 with Video/Screen share)
❶ Set up the group chat in the
conference room, adding
external participants
❷ Save the Chat
and give it a
useful name
❸ Start the call
remote attendee
scenarios
Call forwarding
Online Number
Persistent Chat
By saving the meeting:
– everyone can meet at the click of a button
– Scroll back through the chat history to see what happened
– Keep each other updated between meetings (chats, files)
– Some Skype chats have lasted for years
13. Lync/Exchange Calendar Integration
Unlike Skype, Lync is tightly
integrated with other Office
applications
So a calendar appointment
becomes a Lync meeting with a
single click.
Select <Lync Meeting>
This will add links to your
invitation Including:
1. Link to attend online
2. Dial-in numbers
3. Conference ID
14. Extending B2C scenarios more
securely
Users own accounts
and settings
User-controlled privacy
settings
Communication modes
are controlled by the
user
AES256 for signaling,
Chat and media
Personal archiving only
Accounts and licenses
belong to business
Allow Federation per
user, group
Control communication
modes and domains by
user, group
Supports industry-
standard encryption:
TLS Signaling, sRTP
Media (AES128)
Data-retention policies
set per user, group
Authentication Access Control Authorization Encryption Compliance
Consumer controls
Enterprise controls
20. How do I add a Lync contact to Skype?
To add a Lync contact
– Type the Lync user address in Skype Search
– Select the Lync contact
– Select <Add to Contacts>
user@microsoft.com
Log in with MSA
21. How do I add a Skype contact to Lync?
• Add Contact -> Add a Contact Not in My Organization
• Select Skype
• Type in MSA
• Assign a Group
22. Presence Expectations
• Skype Presence Modes
– Online
– Away
– Do Not Disturb
– Invisible
– Offline
– Auto (“Show me as Away when I’ve been
Inactive from <<fill-in>> minutes”)
• Lync Presence Modes
– Available
– Away
– Busy
– Do Not Disturb
– Be Right Back
– Off Work
– Appear Away
23.
24. Lync & Skype Interop Enhancements
Lync-Skype Audio (v1)
• Add to contact list/Block users [Lync to
MSA]
• Block Skype Connectivity
• Instant Messages and Presence Updates
• P2P Audio Call
• Escalate IM session to Audio Call
• Hold/Resume, Mute/UnMute, Transfer
Lync-Skype Video (v2)
• Everything in v1
• Make Audio + Video Calls
• Reject Video for inbound calls
• Escalate Audio only calls by adding video
• Pause/Resume Video
25.
26.
27.
28. Connectivity v1 call flow
Lync Online – Office 365
Federation Cloud
signal path
media path
Legend
Call initiated with connection details
Call accepted and returns connection details
Media connection is established
29. Lync-Skype Connectivity V1
Contacts
MSAs)
Sessions
Not included:
Router
Lync-Skype Connectivity opens a new communications door for enterprises searching for inventive and
differentiated opportunities for new customer acquisition, customer retention, and business-to-
consumer communications.
chat&audio
Chat&Audio
30.
31. Audio SDP Offers & Codecs
m=audio 51819 RTP/AVP 117 114 104 9 112 111 0 8 116 115 103 97 13 118 101
a=rtpmap:117 G722/8000/2
a=rtpmap:114 x-msrta/16000
a=rtpmap:104 SILK/16000
a=rtpmap:9 G722/8000
a=rtpmap:112 G7221/16000
a=rtpmap:111 SIREN/16000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:116 AAL2-G726-32/8000
a=rtpmap:115 x-msrta/8000
a=rtpmap:103 SILK/8000
a=rtpmap:97 RED/8000
a=rtpmap:13 CN/8000
a=rtpmap:118 CN/16000
a=rtpmap:101 telephone-event/8000
Preference Order
Even though the actual sampling rate for G.722 audio is 16,000 Hz, the RTP clock
rate for the G722 payload format is 8,000 Hz because that value was erroneously
assigned in RFC 1890 and must remain unchanged for backward compatibility. The
octet rate or sample-pair rate is 8,000 Hz.
(4.5.2 G.722)
WidebandNarrowband
RTAudio Wideband & Narrowband
Skype Codec Wideband & Narrowband
G.711
The redundant audio payload format "RED" is specified by RFC 2198 [17]. It defines
a means by which multiple redundant copies of an audio packet may be
transmitted in a single RTP stream (4.5.16 RED)
http://tools.ietf.org/html/rfc3551 RTP Profile for Audio and Video Conferences with Minimal Control
36. Architecture improvements
• New Skype cloud for improved call set up and control.
• New gateway connects Skype cloud to Lync Online for
signaling and call control.
• Uses Lync’s federation access architecture that routes to
both v1 and v2 clouds.
• V1 connectivity will continue to exist as traffic gradually
increases on V2 connectivity.
37. Connectivity v2 call flow
Lync Online – Office 365
Federation Cloud
signal path
media path
Legend
Call initiated with connection details
Call accepted and returns connection details
Media connection is established
38. Call connectivity
• All AV calls flow through the same federation environment set up in v1
• Lync SIP/SDP signalling is terminated at the Skype Cloud edge and translated
into Skype proprietary protocols and vice versa
• Lync to Skype Calls
– AV calls are forked internally to both v1 and v2 clients
– Mediation server supports only Audio
– New Lync Gateway services all v2 calls.
• Skype to Lync Calls
– v2 clients will route calls through v2 Skype Cloud > Lync federation environment >
Lync client
– v1 clients will route calls through v1 Skype Cloud > Lync federation environment >
Lync client
39. Lync-Skype Connectivity V2
Contacts
MSAs
Sessions
voice (SILK) Video (H.264)
• Encryptionwith TLS and sRTP
• NATTraversal with Stun/Turn/Ice
Not included:
Router
With version 2, we now use standard NAT traversal protocols, Signalling is encrypted with TLS and
media uses sRTP directly between callers. We’ve standardized Codecs between the clients and have
added Video !!
Chat,audio,
Video
Chat,Audio,
Video
40. Platform Support at GA
MICROSOFT CONFIDENTIAL – INTERNAL ONLYMICROSOFT CONFIDENTIAL – INTERNAL ONLY
Client v1 v2 Notes
Skype Win32 yes yes Summer
Skype MAC OSX yes yes Summer
Skype Win Modern yes yes Future Release
Skype iOS yes yes Future Release
Skype Android yes yes Future Release
Skype WinPhone 8 yes yes Future Release
Skype Xbox yes yes Future Release
Skype Outlook.com yes yes Future Release
Lync 2013 CU4 yes yes
Released with SILK audio codec
support - (ver 15.0.4551.1005) -
Windows Desktop Client Only
Lync MAC yes no H.264 not supported, investigating
Lync iOS yes yes Future Release
Lync Android yes yes Future Release
Lync WinPhone 8 yes yes Future Release
Lync Win Modern yes yes Future Release
Lync Web App no no Out of Scope
44. Technology improvements
Direct media connectivity between Lync and Skype clients
SILK has been ported over to Lync desktop client. Coming to other Lync
clients soon.
– SILK will currently only used in Lync-Skype Interop Calls
– G.722 and G.711 remain on the list of common codecs
Video using H.264 SVC
Media connectivity using ICE - ICE v19 support added to Skype client
– Along with STUNTURN for NAT traversal
45. Enterprise NAT Traversal Mechanism
Stun/Turn/ICE
Router
❶ Host Candidate – Likely to fail
❷ STUN Candidate
❸ TURN Candidate – Edge Relay
❶❷
❸
SIP uses the source and target IP addresses to establish a session. Network Address
Translation (NAT) modifies IP addresses as packets transit onto the public internet and
thereby renders the INVITE invalid. STUN, TURN and ICE resolve such session/NAT
issues.
46. SILK Codec
Lync-Skype Connectivity v2, SILK WB with a target bit-rate
of 36 kbps will be the default audio codec for Lync-Skype
calls
SILK integration for Lync desktop client was released Lync
2013 CU4 update (Nov 2013).
Older clients will continue using G.722 @ 64kbps.
47. SILK Codec: bit-rate and MOS
Network conditions SILK 36 kbps G.722 64 kbps
Ideal 4.42 4.31
5% random loss 4.35 4.12
5% burst loss 4.0 3.68
MOS calculated using
ITU-T P.863 POLQA
Codec Scenario Audio
payload
(kbps)
Audio payload +
IP header (kbps)
Audio payload +
IP, UDP, RTP
(kbps)
Audio payload + IP,
UDP, RTP + FEC (kbps)
G.722 p2p 64 80 92 156
SILK p2p 36 52 64 100
RTAw p2p 29 45 57 86
48. SILK Codec: FEC
Lync supports out of band FEC (PT:97, RED)
Lync Skype v1 calls did not support FEC end-to-end
Lync Skype v2 calls will use in-band FEC.
50. H.264 UCConfig Modes
UCConfig Mode 0: Non‐scalable single layer AVC
bitstream with Simulcast
(number of simulcast streams >= 1).
UCConfig Mode 1: SVC temporal scalability with
hierarchical P with Simulcast
(number of simulcast streams >= 1).
51. H.264 UC Config Mode 0
In this UCConfig Mode, one reference frame is used to
constitute the single layer bitstream.
Each P frame uses the immediate previously reconstru
cted frame as the reference frame.
52. H.264 UC Config Mode 1
If the maximum frame rate of the source is 30fps,
then Layer 0, or the base layer, has frame rate of 15fps.
Layer 1, or the enhancement layer has frame rate of
15fps too. Decoding of Layer 0 and Layer 1
results in 30fps.
53.
54. Setting up Lync-Skype Connectivity
• Domain:
– Provision your organization for federation using
https://pic.lync.com, provide your domain(s) & FQDN(s).
• Certificate:
– Set up your Lync edge for federation, including public
certificate.
• Policies:
– Use the Lync Server Control Panel or PowerShell to enable
public IM connectivity, partner discovery, partner domain
discovery.
Note1: If you have Messenger connectivity working already, you’re done!
Note2: There is no additional charge for activating Lync-Skype Connectivity
55. Step 1. Register your domain
This tells our service where to send inbound
messages and tells Skype & Messenger that your
Lync domain is available for connectivity.
Go to https://pic.lync.com to provision your domain for Skype connectivity.
56. Step 2: Set up Lync Edge for Public IM Connectivity
Note: there is no difference in the way the customer requests and assigns a certificate for Skype from
other PIC (MSN, AoL, Yahoo)
1. In the Deployment Wizard, on the Deploy Edge Server page, next to
Step 3: Request, Install, or Assign Certificates, click Run again.
2. On the Available Certificate Tasks page, click Import a certificate from
a .p7b, pfx or .cer file.
Public
Certificate
Authority
Import the certificate
57. Step 3: Lync Server Control Panel: External Access Policy
Set up at least one External Access Policy to enable communications with public users.
You can also assign External Access Policy to an individual user via the Users tab.
58. Lync Server Control Panel: Access Edge Configuration
Enable federation and public IM connectivity
59. Lync Server Control Panel: Enable Provider
Under “SIP Federated Providers” select “Skype”
Check “Enable communications with this provider”
Important: Ensure you are happy with the “Default verification level”. We recommend keeping this to allow
communications only with those you’ve added to your Contact List unless you want to allow any
Skype/Messenger users to contact any of your Lync users. The user can override this from the Lync client.