Step-by-Step Guide to Deploying TAPI IP Multicast Videoconferencing with Windows Telephony
This guide contains sample procedures demonstrating how the TAPI IP multicast videoconferencing capabilities work with the Windows® 2000 operating system. This standards-based service is enabled by the Microsoft® Windows Telephony Applications Programming Interface (TAPI) version 3.0, also included in Windows 2000. Multicast videoconferencing allows multiple participants to engage in audio and videoconferences over local and wide area networks, while using network bandwidth resources efficiently.
On This Page
Setting up a Multicast Videoconference
Setting up the Servers
Setting Up MADCAP
Setting up the Workstations
Setting up Conference Rooms
Using IP Multicast Conferencing
Multicast videoconferencing is the technology that allows multiple participants to engage in virtual conferences over local and wide area networks. Each participant sends out a single stream of audio and video data that is replicated only when necessary (depending on the topology of the network). This is achieved using the IP multicast extensions included in Windows 2000 Server. Because the IP Multicast service in Windows 2000 Server is based on Internet standards, most standard routers and LAN switches currently in use can implement it.
TAPI multicast conferencing is based on a serverless conferencing model in which audio mixing and video switching are performed on individual client computers. IP multicast allows multiple participants to join conferences without using Multipoint Conference Unit (MCU) products, thereby reducing the cost of conferencing. IP multicast complements current H.323-based conferencing solutions and introduces new technologies that enhance team productivity across distances.
Why Should You Deploy It?
Multicast videoconferencing opens up a world of virtual meetings, a breakthrough that can save organizations time and money by reducing the need to travel. Employees can participate in real-time meetings from their offices, take advantage of distance learning or training programs, and collaborate on documents with colleagues based in other locations. The net result: more productive employees.
Requirements and Prerequisites
The network must be multicast-enabled. If this is the first IP multicast deployment in your enterprise, you might be required to configure some routers. If you have previously deployed multicast applications such as Windows MediaTM Services (previously called Microsoft NetShowTM), your network might already be multicast-ready. If it is not enabled, please see Windows 2000 Server Help http://windows.microsoft.com/windows2000/en/server/help/.
The server infrastructure requires an Internet Locator Service (ILS) Site Server service for publishing conference invitations. A Windows 2000 Multicast Address Allocation server (MADCAP, previously known as MDHCP) and a Windows 2000 domain controller with the Active DirectoryTM service can be used for additional functionality.
Windows 2000 comes equipped with Phone Dialer, a TAPI-based application (developed for Microsoft by the Active Voice Corporation) that the client uses to participate in IP multicast conferencing. Each client computer must also be equipped with a video camera, sound card, and audio headset.
No other step-by-step guides are prerequisites to this guide; however, the names used in the examples are based on Part 1 of the "Step-by-Step Guide to a Common Infrastructure for Windows 2000 Server Deployment" http://www.microsoft.com/windows2000/techinfo/planning/server/serversteps.asp.
Virtual Group Meetings
Inviting participants to a conference room at a specified day and time typically initiates a conventional group meeting.
Multicast videoconferencing replaces the physical conference room with a virtual conference room. The conference originator uses the Phone Dialer in Windows 2000 to create a conference object and publish it on an ILS server. All participants in the meeting are then notified by e-mail or scheduling software (such as the Microsoft Outlook® messaging and collaboration client). At the specified time, conference participants use Phone Dialer to join the conference from their own offices or remote locations, using the corporate network. Multicast capabilities must be installed on individual workstations.
Extended Group Meetings
Multicast conferencing can extend the conventional group-meeting model and completely replace conventional conference rooms for meetings involving small groups of people.
Selected conference rooms are set up with multicast conferencing capabilities. Participants located at the same site can physically attend the conference room to participate in the conference. Off-site participants can use multicast conferencing to join the meeting from their respective offices.
When meetings involve two groups of people from two different sites, both groups can meet in conference rooms at their sites and the two conference rooms can be joined using multicast conferencing.
This scenario requires setting up multicast conferencing equipment in conference rooms as well as in individual offices.
The following procedures show the required steps to set up a multicast videoconference.
Setting up a Multicast Videoconference
Configuring the Network Backbone
TAPI IP multicast relies on the ability of the network backbone to carry IP multicast packets. Windows 2000 Professional-based workstations connected to a common Ethernet network can participate in multicast without additional network configuration. If a deployment scenario involves conference participants located on different networks, some router configuration might be required.
If you have previously deployed multicast applications on your site, your network is probably multicast-ready.
Checking the Routers
The MCAST diagnostic tool can send and receive IP multicast packets, helping you to determine which parts of your network are enabled for propagation of IP multicast packets. You can use this tool in *send =*mode to set up multicast sources at different locations on your network, and in receive mode to determine the locations at which multicast traffic from these sources is being received.
To run MCAST as a multicast sender, use the following command line on your Windows2000-based computer:
MCAST /SEND /INTF:172.31.253.55 /GRPS:18.104.22.168 /INTVL:1000 /NUMPKTS:3600
MCAST will start sending multicast packets from the IP address 172.31.253.55 to the multicast group IP address 22.214.171.124 at the rate of 1 packet per every 1,000 milliseconds. A total of 3,600 packets will be sent over a one-hour period.
To run MCAST as a multicast receiver, use a command line as follows:
MCAST /RECV /INTF:172.17.100.98 /GRPS:126.96.36.199
MCAST will start listening for multicast packets on the interface configured with IP address 172.17.100.98 for the multicast group IP address 188.8.131.52. Received packets are displayed on the screen:
Started.... Waiting to receive packets... Received : [GOOD] SRC- 172.31.253.55 GRP- 184.108.40.206 TTL- 5 Len- 256 Received : [GOOD] SRC- 172.31.253.55 GRP- 220.127.116.11 TTL- 5 Len- 256 Received : [GOOD] SRC- 172.31.253.55 GRP- 18.104.22.168 TTL- 5 Len- 256 Received : [GOOD] SRC- 172.31.253.55 GRP- 22.214.171.124 TTL- 5 Len- 256 Received : [GOOD] SRC- 172.31.253.55 GRP- 126.96.36.199 TTL- 5 Len- 256
Configuring the Routers
Enable multicast from a global context.
Determine the interfaces for which multicast is to be enabled.
Enable the use of a multicast routing protocol on the selected interfaces. For example, you might configure one of the following:
Protocol Independent Multicast Sparse Mode (PIM-SM).
PIM-Dense Mode (PIM-DM).
Distance Vector Multicast Routing Protocol (DVMRP).
If access lists are required, consult your router documentation.
Detailed router configuration data is usually available from the router vendor. Certain publications also contain information describing the configuration of routers and how the underlying protocols work. (For a more in-depth description of how the multicast routing protocols work, see Thomas A. Maufer, Deploying IP Multicast in the Enterprise. Prentice-Hall, Inc., 1998.)
Setting up the Servers
TAPI IP multicast conferencing requires one Microsoft Site Server ILS service for publishing conference invitations (included in Windows 2000 Server) on your network. Other Windows 2000 Server-based computers running services such as Windows 2000 MADCAP, and a Windows 2000 domain controller with Active Directory can also be used. In the case of conferencing, Active Directory complements the ILS server, instead of replacing it. Active Directory does not currently support transient / volatile dynamic objects such as conferences. Conference objects are not stored in Active Directory, although Active Directory can automatically locate the ILS server on which conference objects are being published. If Active Directory is unavailable, Phone Dialer must be manually configured with the location of the ILS server.
Microsoft Site Server ILS Service
The Microsoft Site Server ILS Service is an essential component of TAPI IP multicast conferencing. This server represents the meeting place where conference creators and participants go using their client software to find the information they need to participate in a conference. This service can be installed on any Windows 2000-based server in the network.
When a conference originator creates a new conference, Phone Dialer automatically creates a conference object on the selected ILS server. Participants who are granted access to this conference by the conference originator can see the conference in the Phone Dialer view pane, and join it by double-clicking the conference name.
Installing the Site Server ILS Service
The server computer should be running Windows 2000 Server with Internet Information Server (IIS) installed. (IIS is installed by default with Windows 2000 Server. Refer to Windows 2000 Server Help http://windows.microsoft.com/windows2000/en/server/help/ for assistance with installation options.)
To install the Site Server ILS Service
Click Start, point to Settings, and then click Control Panel.
Double-click Add/Remove Programs.
Click Add/Remove Windows Components and Scroll down the component list and select Networking Services as shown in Figure 1 below. Click Details.
Figure 1: Adding Networking Services Component
Click Site Server ILS Services to activate the associated check box, and then click OK.
Click Next in the Windows Component wizard dialog box.
If the wizard prompts you for the Windows 2000 Server CD, insert the CD, specify the correct drive path, and click OK.
The Windows Component wizard will copy files and configure the components. Click Finish and click Close to close Add/Remove Programs. Close Control Panel.
This completes the installation of the ILS Service.
Verifying that the ILS Service Is Running
Right-click the My Computer icon on the desktop, and then click Manage.
Click the + next to Services and Applications in the left pane to expand it.
Scroll to Site Server ILS Service in the right pane. The Status column should display Started, and the Start Up column should display Automatic as shown in Figure 2 below.
Figure 2: Site Server ILS Service Status
Close the Management snap-in.
Setting Up MADCAP
The MADCAP service allows a unique multicast group IP address to be obtained for each conference. Phone Dialer automatically looks for a MADCAP server on the network and requests an address whenever a conference is created.
Although not mandatory for multicast conferencing, installing a Windows 2000 domain controller and Active Directory-based server provides more functionality for multicast conferencing. Operating outside a Windows 2000 domain or without Active Directory prevents Phone Dialer from automatically locating the Site Server ILS Server.
For documentation on installing domain controllers and Active Directory, refer to Windows 2000 Server Help http://windows.microsoft.com/windows2000/en/server/help/. For publishing the location of the ILS service in Active Directory or determining its publication status, use the ILSCFG utility (also documented in Help). The Site Server ILS service is used to publish IP multicast conferences on the network and to publish user IP address mappings for H.323 IP telephony. Use ILSCFG to publish or unpublish servers running Site Server ILS service in Active Directory. You can also use it to list users and conferences that are published on ILS servers. Publishing the Site Server ILS servers enables users to create or join conferences using Phone Dialer or other telephony programs.
The MADCAP service is implemented as part of the Windows 2000 DHCP service. Though DHCP and MADCAP are combined into a single service, the functionality of each is independent of the other. DHCP provides unicast address allocation facilities only, while MADCAP provides multicast address allocation facilities only. MADCAP and DHCP can run on the same computer or on different computers without affecting functionality.
Note: You must be logged on as a user with domain level administrative privileges in order to install a DHCP Service. While DHCP can be installed on domain controller, Enterprise users should install DHCP on a server that is not a DC. For medium-sized and smaller businesses, the MADCAP DHCP service can be installed on the Primary Domain Controller (PDC) in your network without noticeable degradation of performance. Microsoft does not recommend installing the MADCAP DHCP Service on the PDC in an Enterprise environment, due to potential performance issues.
To install the DHCP/MADCAP Services:
Click Start, point to Settings, and then click Control Panel.
Double-click Add/Remove Programs. Click Add/Remove Windows Components.
Scroll down the component list and select Networking Services, then Click Details.
Click Dynamic Host Configuration Protocol (DHCP) to activate the associated check box, and then click OK.
Click Next in the Windows Component wizard dialog box.
If the wizard prompts you for the Windows 2000 Server CD, insert the CD, specify the correct drive path, and click OK. The Windows Component wizard will copy files and configure the components.
Click Finish and click Close to close Add/Remove Programs. Close Control Panel.
Creating Multicast Scopes
Right-click My Computer on the desktop, and then click Manage.
Click the + icon for Server Applications and Services, and again for the DHCP.
Right-click DHCP, and then click New Multicast Scope. Click Next to proceed.
Type a name (in our example, 5 Day Conference), a descriptive comment for the scope, and click Next.
Note: In many cases, multiple scopes are set up for people to choose from for conferencing; therefore, you might find it useful to name the scope something that reflects its duration: for example, 10 Day Scope, 30 Day Scope, etc.
Enter the IP address range for your scope (values between 188.8.131.52 and 184.108.40.206 are valid), and a Time to Live (TTL) value. The TTL value should be larger than the maximum number of hops to any receiver. Using 255 (the maximum possible value) is acceptable, and in many cases recommended. Click Next to continue.
On the next screen, add any addresses you want to exclude from this range, or just click Next to continue.
Select a duration for which addresses will be allocated before they are reclaimed and reused. A value of thirty days is usually sufficient. For our example, set this value to 5 days, and click Next to continue.
You are prompted whether to activate the scope now. Click Yes and click Next.
Click Finish. Repeat this procedure as needed to create additional scopes as shown in Figure 3 below.
Figure 3: Multicast Scopes
Setting up the Workstations
Phone Dialer must know the location of the ILS service to provide conference creation and joining facilities. The "Using the Multicast Conference Management Tool" section later in this guide describes how to set this up.
Phone Dialer can locate this information in Active Directory if the following conditions are fulfilled:
The computer running Phone Dialer is part of a Windows 2000 domain.
The user is logged on to a Windows 2000 domain account.
The ILS server location is published in Active Directory.
Using Active Directory in this way means that users do not need to know the location of the ILS server on their network or manually enter that information into Phone Dialer. This makes using IP multicast conferencing with Windows 2000 even easier, and reduces the total cost of ownership for an organization. For documentation on active directory, refer to Windows 2000 Server Help http://windows.microsoft.com/windows2000/en/server/help/
Windows 2000 TAPI Multicast Support
All the Windows 2000 components required to support TAPI multicast conferencing on a client computer are included by default in Windows 2000 Professional and Windows 2000 Server.
Computer and User Accounts
The computer should be added to a Windows 2000 domain and a computer account should be created for it within the domain. A user account must be created for the user, who then logs on using this domain account. Refer to the Windows 2000 Server http://windows.microsoft.com/windows2000/en/server/help/ documentation for help performing these tasks. Part 1 of the Step-by-Step Guide to a Common Infrastructure for Windows 2000 Server Deployment http://www.microsoft.com/windows2000/techinfo/planning/server/serversteps.asp can also assist you in connecting computers to Windows 2000 domains and adding user accounts.
If computer or user accounts for the Windows 2000 domain are not created, users cannot access the Active Directory service, and must add their ILS servers to Phone Dialer manually. This process is described in a To manually specify a server location. The multicast conferencing capabilities are otherwise available.
Installing Full Duplex Audio
Windows 2000 supports a wide range of audio devices. TAPI conferencing can use a sound card with full duplex audio functions. Such sound cards allow audio to be played back and recorded simultaneously.
Verifying Full Duplex Audio
Click Start, point to Programs, then Accessories, then point to Entertainment, and click Sound Recorder.
Click Record and speak into the microphone to record a one-minute message. Then Click Stop to stop recording. <>Click Rewind to rewind to the starting position.
Repeat step 1 of this procedure to start another copy of the Sound Recorder application.
Play the recording you made by clicking Play on the first instance of Sound Recorder.
Click Record on the second instance of Sound Recorder and speak into the microphone to test audio recording. The changing waveform shown in Figure 4 below confirms that you can record audio while audio is being played back, which means you have full duplex audio working.
Figure 4: Waveform
Acoustic echo is a common problem in audio conferencing systems. It originates in the local audio loop-back that occurs when your microphone picks up an audio signal from your speaker and sends it back to the other participant along with your own voice. Due to acoustic echo, other participants hear an echo of their own voice as they speak. For example:
Alice and Bob are participating in a conference. When Alice speaks into her microphone, it is played on Bob's speakers, and vice versa.
Alice speaks into her microphone.
Bob hears Alice's voice played back on his speaker.
Bob's microphone also picks up Alice's voice.
Whatever Bob's microphone picks up is played back on Alice's speaker, but with a small delay due to transmission time.
Alice can hear her own voice echoing from her speaker.
Normal conversation can become impossible for other participants in the conference when:
Very sensitive microphones are used.
Speaker volume is turned up high.
Microphone and speaker are placed in close proximity to each other.
One of the easiest ways to completely eliminate acoustic echo is to use audio headsets. Audio headsets work by playing audio at low volume next to your ears—eliminating or at least substantially reducing the possibility of the microphone picking up the incoming audio signal.
A wide variety of audio headsets for computers are available with connectors designed to fit into the audio-in and audio-out jacks of a sound card. Some have built-in microphones that enhance audio quality by remaining at a constant distance from the user even when the user changes positions.
A more expensive solution is to use special microphones with built-in echo-canceling capabilities. These microphones scan the incoming signal for acoustic echo and cancel it with digital signal processing. The main advantage they offer is that users can avoid wearing headsets.
Adjusting Sound Settings
If the sound settings are misadjusted, echo can occur even if headsets or echo-canceling microphones are used. The following adjustments correct any remaining echo that you encounter.
Click Start, point to Programs, point to Accessories, then point to Entertainment, and click Volume Control as shown in Figure 5 below.
Figure 5: Volume Control
On the Options menu, click Properties, and then click Playback.
Select the Microphone check box in the window at the bottom of the dialog box (if it is not already checked). You might have to scroll down the window to see this setting as in Figure 6 below. Click OK.
Figure 6: Playback Options
Select the Mute check box in the Microphone column (if it is not already checked). This prevents your speech from being played back through your own speakers (echoed locally).
Click Options, click Properties, and then click Recording. Select all of the check boxes in the window at the bottom of the dialog box. (You might have to scroll through the window to see all of the check boxes.) <>Click OK.
If they are not already checked, select the Mute check boxes in all of the columns except for the Microphone column. Make sure that the Mute check box in Microphone is left unchecked. This allows your speech to be sent to the conference, but prevents other sounds, including those of other conference participants, from being transmitted from your machine.
Close Volume Control.
Installing the Video Camera
A variety of video cameras are designed to connect to and transfer captured video images to a computer. TAPI multicast conferencing components can acquire these images using the interface to which video capture device drivers are written. In the Windows 2000 operating system, these are the WDM (Windows Driver Model) or Video for Windows interfaces that are built into the operating system.
Many older video cameras require a video capture card that fits into an ISA or PCI slot inside a computer, and then connects to the camera with a cable using connectors built into the back of the capture card. Windows 2000 supports many such cameras.
A new generation of camera uses the Universal Serial Bus (USB) interface, which eliminates the need for a video capture card. The camera can be plugged directly into a USB port in the back of a computer. Windows 2000 supports Plug and Play that automatically detects these cameras and installs the necessary device drivers. When selecting a camera, make sure that Windows 2000 drivers are available for the model you choose.
Setting up Conference Rooms
Conference rooms have equipment configurations similar to those previously described for individual workstations. A few differences exist when providing audio and video coverage for a larger group of people.
Using Long-Range Microphones
Because of participation by many people, headsets are not a practical solution for echo-cancellation in conference rooms. Special echo-canceling equipment is used, which contains a combination of multiple long-range microphones and speakers with automatic gain control. Gain control is the technical term for equipment capable of automatically normalizing the volume of an audio signal, leading to a more pleasant user experience. The automatic gain control feature in these phones adjusts microphone sensitivity based on the changing sound volumes that occur during the course of regular conversation. Some devices "follow" people as they walk around the conference room, automatically adjusting the volume gain on microphones to normalize voices before transmission to the other participants.
Connecting a Big-Screen Television
Some conference rooms might be equipped with large screen televisions or projection systems. Connect the video output of the computer to these systems in order to provide a larger image for viewing by a large group of people.
Setting Up Logon Access
When a participant joins a TAPI multicast conference, TAPI automatically determines the name of the currently logged-on user and displays this name to other TAPI multicast conference participants. Since individuals usually log on to a Windows-based computer using their domain accounts, this approach is acceptable for individual workstations. When videoconferencing computers in conference rooms, create a user account with the conference room name, a convenience that lets users log on with the conference room account. Other participants can see the name of the conference room and associate it with its video window.
Using IP Multicast Conferencing
The Windows 2000 operating system includes both server-side components to enable multicast conferencing and a client-side application: Phone Dialer.
Phone Dialer is a flexible, easy-to-use application that uses several call-control and media streaming capabilities provided by TAPI. TAPI is a service that runs in all Windows operating systems so that telephony applications written by one company will work with telephony hardware made by another.
TAPI 3.0 provides streaming media support, so that an application can present itself consistently regardless of the underlying network infrastructure.
Starting and Using Phone Dialer
Click Start, point to Programs, point to Accessories, then point to Communications, and click Phone Dialer. This starts Phone Dialer, as shown in Figure 7 below, and provides access to TAPI IP multicast functionality.
Figure 7: Phone Dialer dialog
The first window consists of two panes: the tree pane on the left contains data elements. The details pane on the right displays details of the data element that is selected in the tree pane.
Contents of the Tree Pane
The contents of the tree pane are broadly divided into two categories:
Directories. List of objects that can be dialed, such as people or conferences.
Conference room. The virtual conference room containing all the participants that have joined a conference.
Three telephone directory types are supported:
Internet directories. These are the Site Server ILS services (ILS servers) that contain objects representing people and conferences. The ILS server titled (My Network) refers to the main ILS server containing people and conferences relevant to your location. Other ILS servers can be added to the Internet Directories group manually.
My network directory. This part of Active Directory contains objects that represent people. Because everyone in your organization might have an object here, this part of the tree is displayed as empty. You can add people to this directory by right clicking (My Network) and then clicking Add User. When people are listed in this pane, they can be selected for a conference.
Speed dial. This contains IP addresses or phone numbers of people you call frequently. You can place these calls more quickly using the speed dial directory.
From the viewpoint of multicast conferencing, the Internet Directories object is most useful. Figure 7 above shows how this object allows us to browse all conferences. Select the Conferences object of any Internet directory and the details pane displays a list of all conferences published on that ILS server.
Adding a Directory
Conferences are always created and published on an ILS server that appears in the Internet Directories object of the tree pane. Typically, your computer automatically locates an ILS server using Active Directory. If the logged-on user or computer does not have a Windows 2000 domain account, access to Active Directory is unavailable and (My Network) in the Internet Directories tree will display empty People and Conferences folders. The icon for (My Network) will be red. Selecting this directory causes an error message to appear in the details pane.
This error condition can be fixed by manually specifying the location of your ILS server to the Phone Dialer.
To manually specify a server location
Right-click Internet Directories in the Phone Dialer dialog box.
Click Add Directory and the Add Directory Server dialog box appears.
Type the computer name or IP address of the ILS server in the text box and click Add. (If you do not know the name of the ILS server, ask your network administrator.) In the example shown in Figure 8 below, the ILS server name is Reskit.com. The directory server will be added to the Internet Directories tree.
Figure 8: New directory added to Phone Dialer
Select an ILS server from the Internet Directories tree. The new conference that you create will be published on the server that you select.
Click New in the toolbar. The Conference Properties dialog box appears as in Figure 9 below. You can specify the conference name, description, start and end times, and select a scope. Be sure to choose a scope that spans the length of time you need for your event.
Figure 9: Conference properties
Click the Permissions tab to specify people who can participate in the conference.
When you start creating a conference, two permissions are automatically created:
Join permission to everyone.
Full range of permissions to the conference creator.
Use Add and Remove to modify these permissions and restrict access as in Figure 10 below. Only people who have permission will be able to see the conference invitation.
Figure 10: Conference permissions
Click OK to finish. All users with permissions to join the conference will see the conference in the details pane when they run Phone Dialer on their computers.
Joining a Conference
To join a multicast conference
Select a conference, listed in the details pane of the Phone Dialer dialog box, on one of the ILS servers that you wish to join.
Click Join. Phone Dialer joins the conference and you can participate by sending and receiving audio and video.
Leaving a Conference
To disconnect from a conference
- Click Leave in the Phone Dialer dialog box to disconnect from the conference.
The conference continues until the last participant leaves, at which time it automatically terminates.
Using the Multicast Conference Management Tool
The Windows 2000 Professional and Server Resource Kits include a tool for managing multicast conferences, CONFMGR.HTM. This tool allows the configuration of advanced conference options, such the desired codec. Refer to the Resource Kit documentation for more information.
The example company, organization, products, people, and events depicted in these step-by-step guides are fictitious. No association with any real company, organization, product, person, or event is intended or should be inferred.
This common infrastructure is designed for use on a private network. The fictitious company name and DNS name used in the common infrastructure are not registered for use on the Internet. Please do not use this name on a public network or Internet.