Desktop Sharing Architecture
Microsoft Office Communications Server 2007 and Microsoft Office Communications Server 2007 R2 will reach end of support on January 9, 2018. To stay supported, you will need to upgrade. For more information, see Resources to help you upgrade your Office 2007 servers and clients.
Office Communications Server 2007 R2 supports adding desktop sharing to peer-to-peer conversations of two participants, and to conference scenarios. For details about supported functionality, see New Desktop Sharing Feature in New Server Features in the Getting Started documentation.
Components
The framework for sharing desktops includes the following principal components:
Application Sharing Server
The Application Sharing Server, which resides on the Front End Server, is responsible for managing and streaming data for conferences that require desktop sharing.
The Application Sharing Server communicates with other conferencing components on the Front End Server by using the Centralized Conferencing Control Protocol (C3P) over HTTP. The Focus forwards Session Description Protocol (SDP) information from clients and to the various conferencing servers participating in the conference, including the Application Sharing Server. The C3P messages contain information necessary for adding a conference, adding a user, deleting a user, and modifying other conference settings. The SDP information describes client capabilities, such as what settings are enabled for desktop sharing. Together the C3P and SDP messages provide all the information required by the Application Sharing Server to manage the conference and handle application sharing data streams appropriately. Application-sharing data is transmitted using Microsoft’s Remote Desktop Protocol (RDP) over Secure Real-Time Transport Protocol (SRTP).
Office Communicator client
The Microsoft Office Communicator 2007 R2 client contains the hosting and viewing components for desktop sharing. The hosting component drives the desktop sharing session, and it sends graphical data directly to the other Office Communicator participants in peer-to-peer sessions or to the Application Sharing Server for multiparty and Communicator Web Access sessions. The viewing component displays the graphical data from the desktop sharing session to the user. The viewer can also send keyboard and mouse data to the host, either directly, for peer-to-peer Office Communicator sessions, or by way of the Application Sharing Server, for multiparty and Communicator Web Access sessions. When sharing is initiated, meeting participants are invited to view the sharer’s desktop. If they accept, Office Communicator launches a new viewing pane. Participants who use Office Communicator 2007 R2 can launch the viewing pane directly from Office Communicator. Each Office Communicator participant receives graphical data from the Application Sharing Server or from the other Office Communicator client in peer-to-peer sessions.
Communicator Web Access client
The 2007 R2 version of Communicator Web Access client contains the hosting and viewing components for desktop sharing. The hosting component drives the desktop sharing session, and it sends graphical data directly to the Application Sharing Server. The viewing component receives DHTML and image files from the Communicator Web Access server and displays the graphical data to the user. The viewer can also send keyboard and mouse data to the host, by way of the Communicator Web Access server and the Application Sharing Server.
When sharing is initiated, meeting participants are invited to view the sharer’s desktop. If they accept, the Communicator Web Access client launches a new viewing pane. Each Communicator Web Access participant receives graphical data from the Communicator Web Access server, which in turn receives it from the Application Sharing Server.
For Communicator Web Access clients, the hosting component is actually part of the Microsoft Office Communicator Web Access Plug-in, which must be installed by the user.
Microsoft Office Communicator Web Access Plug-in
Because the desktop sharing client is browser-based, interaction with the underlying operating system has to be implemented through a native plug-in. The plug-in is required only for users who share out their desktops; it is not required for viewing. The first time a user initiates desktop sharing, Communicator Web Access runs the installer for the plug-in. Authenticated users who share their desktop can access the plug-in installer files on the Communicator Web Access server, and anonymous users can download the plug-in installer files from the Microsoft Download Center.
Communicator Web Access server
The Communicator Web Access server is responsible for setting up, tearing down, and controlling the desktop sharing session for Communicator Web Access clients. The Communicator Web Access server also sends and receives sharing data to and from these clients. The Communicator Web Access server handles media only for Communicator Web Access viewers.
Architecture
The desktop sharing host connects to the Application Sharing Server and sends it the graphical data directly (or, in the case of external users, by way of the A/V Edge service). Office Communicator participants receive data from the Application Sharing Server, and Communicator Web Access participants receive data from the Communicator Web Access server, which receives the data from the Application Sharing Server.
In Office Communications Server 2007 R2, desktop sharing components use RDP. Desktop sharing sessions that use RDP cannot support participants who are running earlier versions of Office Communications Server clients, nor can they include users of the Live Meeting service. However, any other participants, even those who don’t run Office Communications Server clients or have Office Communications Server accounts, can be invited to a desktop sharing session and join that session by navigating to a meeting URL hosted on the Communicator Web Access server, by using a supported Internet browser. For details about supported browsers, see Supported Clients in the Supported Topologies and Infrastructure Requirements documentation.
Figure 1. Desktop sharing architecture
Scenarios
Peer-to-Peer Desktop Sharing
In peer-to-peer scenarios, if either participant is running the Communicator Web Access client, starting a desktop sharing session escalates the conversation to a two-party conference involving the Application Sharing Server. This escalation is necessary because the Communicator Web Access client relies on an RDP connection with the Application Sharing Server. After a session escalates to a conference, it cannot revert to a peer-to-peer conversation.
Multiparty Conference Desktop Sharing
If the conference organizer initiates the conference with desktop sharing as the initial mode, the organizer’s client first joins the Focus, and then it joins the Application Sharing Server as a “sharer.” Then, the organizer’s client invites other parties to join the conference. They, in turn, join the Focus, and then they join the Application Sharing Server.
If application sharing is introduced in an ongoing conference that began in a different mode, the sharer joins the Application Sharing Server, which causes the Focus to send a roster update to other participants. This roster update includes an invitation to view the sharer’s desktop.