Download IOCOM Whitepaper:

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Distributed firewall wikipedia , lookup

Dynamic Host Configuration Protocol wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Video on demand wikipedia , lookup

Real-Time Messaging Protocol wikipedia , lookup

Remote Desktop Services wikipedia , lookup

Lag wikipedia , lookup

Transcript
IOCOM Whitepaper:
Scalability, Redundancy, and Network Efficiency
September 2008
IOCOM • www.IOCOM.com • 312-786-9169
Table of Contents
1.
Executive Summary
2.
Introduction
3.
Single Server Deployment
4.
Small Grid Server Deployment
5.
Large Grid Server Deployment
6.
Federation
7.
Conclusion
8.
Appendices
I. Server Specifications
II. Setting Up the Server
III. Bandwidth Calculations
IV. Estimated User-To-Server Table
Executive Summary
The IOCOM Grid (IG) multimedia collaboration platform
is a scalable, adaptable, software solution enabling geographically distant users to easily and reliably meet faceto-face in rich collaboration environments. The IG software platform is an IP network based client and server
application. The IG Unified Collaboration Server (UCS)
runs on commodity hardware running the Linux operating system. The grid architecture can be readily scaled
across commodity hardware to increase capacity while
functioning as a single centralized system. The IG UCS
can also be federated with additional IG UCS systems to
expand the network within or outside of internal firewalls.
This document details the IOCOM server architecture
with emphasis on scalability, redundancy, and network
efficiency.
Introduction
IOCOM takes a fundamentally different approach to
multi-point visual communication. Whereas traditional
approaches mix multipoint video into a combined stream
the IG manages each video stream independently. The
IG Multiple Stream Client/Server thus has a number of
unique advantages over traditional approaches:
Telepresence. The market for high end multi-codec
rooms has dramatically grown over the past
few years, IOCOM overall architecture allows
telepresence experience at a fraction of the
cost of other telepresence systems while connecting to laptop and mobile computing devices.
Integration. True audio, video, data integration in
the same application, with a consistent interface, whether on a PC, laptop, or in a conference room, running over any standard network.
Inclusiveness. Software and/or web-browser
based interface makes it easy to bring in additional people for multipoint conferences with
minimal setup, little expense, and no lost time.
Furthermore, traditional approaches like video conferencing hardware present the following challenges:
Closed systems. The proprietary hardware and
software requirements of traditional conferencing systems results in:

Increased support costs, requiring
specially trained technicians

Extremely high costs for redundancy and backups

Inconsistent user interfaces and
product features, requiring additional user training for each device
Reliability. Peer-to-peer approaches are unreliable, plagued by broken or degraded connections, no central management, billing
procedures, QOS, or SLA’s.
Limitation of experience. Most conferencing
tools are only able to send and receive one
video stream. This severely limits inclusiveness, efficiency, reach, and user experience.
Through the use of Grid computing and IOCOM's
unique federation approach to stream management,
the IG overcomes the challenges preventing other
client/server applications from scaling. The IOCOM
network servers can be deployed in a variety of
ways, scaling from a single stand alone Unified Collaboration Server (UCS) to a federated, large grid
deployment. This scalable, redundant, and flexible
design gives any size organization or service provider the tools it needs to meet all of their visual communication needs.
Single Server Deployment
The core strength of the IG platform is the ability to
run on a single server running the IOCOM Unified
Collaboration Server software (see Appendix 1 for
current UCS hardware/software specifications) . In
such deployments, all endpoints authenticate to the
single server (UCS), which bridges all audio, video,
and data traffic. The UCS is easily installed on all
standard networks (see Appendix 2) and is responsible for:

Bridging

Signaling .

Managing Media Streams

Audio Compositing

Presence Management

Meeting Recorder

Web Conferencing

H.323/SIP Transcoding/Interoperation

Usage Statistics Manager

Administrative Monitor
All of these functions can run concurrently on a sin-
A standard IOCOM UCS license supports up to 100
registered users with 10 concurrent IG clients and 10
concurrent web clients. A physical server can support
2 licenses for a total of 200 register users with 20/20
concurrent IG/Web client users.
Small Grid Server Deployment
The IOCOM server platform is designed to scale upward into grid deployments. In a small grid deployment,
additional UCS systems can be added to balance the
load and expand the user base. The grid provides redundancy. In the event of a failed server, the processes
will be redistributed to another server in the grid.
gle server. In grid deployments, the processes are
load balanced across multiple server.
Bridging manages the signaling between clients and
other servers in the grid. Bridging functions also include routing media streams through the UCS/grid to
provide ultimate reliability and the flexibility of independent streams. Media is managed at the server
level to ensure efficient bandwidth allocation (e.g.
when one site turns off a video stream, the stream is
no longer sent from the server to that site thus conserving bandwidth).
The Presence Manager maintains the master presence list of users connected to the IOCOM Grid, reflected in the Invite list at the end user, thus allowing
for users to see who among their contacts is online
and invite them directly into a meeting.
The Meeting Recorder allows authorized users to
record meetings with full audio/video/data for playback at a later time.
Web Conferencing powers a set of collaborative
tools, including Chat, Whiteboard, File Transfer, and
shared Web Browsing.
The H.323/SIP features on the UCS allow for interoperation with these protocols.
Finally, the server stores meeting detail records
which include meeting participants, duration, bandwidth usage and details on collaborative tool usage
(such as Chat, File Transfer etc.). The Administrative
Monitor tracks server utilization such as CPU, network usage, and memory usage.
In a Small Grid Deployment, all UCS systems continue
to perform all UCS tasks:

Bridging

Signaling

Managing Media Streams

Audio Compositing

Presence Management

Meeting Recorder

Web Conferencing

H.323/SIP Transcoding/Interoperation

Usage Statistics Manager

Administrative Monitor
The resource load balances across all servers equally.
The number of registered users and concurrent usage
is determined by the number of servers in the grid.
Please reference Appendix 4 for a User-to-Server table.
Large Grid Server Deployment
In a large grid deployment, two servers are set as designated entry points into the grid . The designated entry
point servers distribute the workload to the remainder
of the servers in the grid, which balance the load
equally. The grid provides redundancy. In the event of
a failed server, the processes will be redistributed to
another servers in the grid.
As large grid deployments scale, the entry point servers
By using the UCS system or UCS Grid in a regional data
center, traffic is localized and traffic efficiency optimized.
Only one copy of video streams is sent between grids.
Also, if no clients from a remote grid are viewing a video
stream then the stream is not transmitted to the remote
grid,. Instructions for setting up UCS system or UCS
Grid Federation has been included in Appendix 5.
can distribute processes to secondary workload distribution servers that then distribute the workload
throughout their sub-section of the servers in the grid,
which then balance the distributed load equally.
Federation
Any of the above deployment scenarios can be federated across networks or data centers. Federated UCS
systems or Server Grids allow for scaling across multiple data centers. Federated grids transparently share
user presence information. All audio/video/data
streams are routed from the clients through the local
UCS/grid to the remote UCS/grid and then down to the
remote client endpoint.
Conclusion
The IOCOM Grid delivers a complete communication
solution. Through the unique, flexible architecture of the
IOCOM UCS and UCS Grid, companies can scale their
solution to fit their needs, their resources, and the size of
their organization. The IG software or web-browser
based interface provides secure, full-featured visual
communication for everyone in your company, without
the expense and limitations of traditional approaches to
video conferencing and without having to worry about
scaling your solution as your company grows and
changes.
Appendices
Appendix 1: Server Specifications
CPU: Single Quad-Core IntelR XeonR or Single IntelR CoreTM 2 DuoR
RAM: 2 Gigs of RAM or 1 Gig of RAM (At Least)
Hard Disk: We recommend setting up at least a RAID 1 (Mirror) but our server software does not require it. But we
do recommend a consider sized drive for UCS recordings. Meeting recording are generally large sized files.
Network: 100Mbs NICs and Uplinks (Server NICs should always be set to Full-Duplex and network uplinks to UCS
server should always support no less than 100Mbs.
Server OS: RedHat Version 4 Update 6 (I've included a text file which lists the required rpm packages to be installed
in order for our UCS server software to function properly.)
Backups: We have a backup utility "igbackup" which you can create backups of your ucs database as well as your
license file. These backups are saved to /root on your server. We recommend that you store these backups to an
offsite server or location. Again recommended but not required!
Appendix 2: Setting up the Server
Our Redhat iso's can be downloaded from: http://customer.insors.net/ig-isos/
The require iso's files to perform a basic install are:
IG-RHEL4.6-i386-ES-disc1.iso
RHEL4.6-i386-ES-disc2.iso
RHEL4.6-i386-ES-disc3.iso
RHEL4.6-i386-ES-disc4.iso
Here are some simple instructions on using our kickstart file from our iso images to install RHEL:
1. At boot: prompt type the following command:
linux ks=cdrom:/ks.cfg
2. If prompted to specify source media location, select CDROM.
Install will proceed and likewise prompt you to insert others discs
along the way. Insert appropriate discs when prompted. After install
completes, you should be able to log into the system with the default
root password. Once the new OS has been fully installed you can log into
the box with the following root passwd: insors#4ucs
UCS Server Software
After the OS installation is complete, install the same version of the
UCS software release that you installed previously on this UCS.
Download the lastest server release from the following URL: http://release.insors.net/ucs
iocom-ucg-installer-RHEL-{20080726 or greater}.tgz
Now, we can unzip the the new server release with the following command and proceed with the UCS installation:
[root@ucs ~]# tar -zxvf /root/iocom-ucg-installer-RHEL-{20080726 or greater}.tgz
Install the UCS software by entering the following: [root@ucs ~]# sh /root/iocom-ucg-installer-RHEL-{20080726 or
greater}/setup.sh
Answer NO when you are prompted to specify a license key during the UCS installation process.
Configure UCS Networking via IGNETCONFIG
UCS networking via our ignetconfig utility: /var/www/html/iocom_ucs/manage/utilities/ignetconfig
We'll need the following information before we continue with this utility:
Server Hostname
Server IP Address
Server Netmask
Server Gateway
DNS Server/Servers your UCS will use
Enter the command: [root@ucs ~]# ignetconfig
This is an IOCOM utility to change the IP address and hostname of your server.
Do you wish to continue? [no] yes
This server is running: Red Hat Enterprise Linux ES release 4 (Nahant Update 6)
Enter this server's hostname (e.g. server.company.com): {SERVER_HOSTNAME}
Resolving {SERVER_HOSTNAME}...
The host name you entered resolves to: XXX.XXX.XXX.XXX
Do you want to use this address for this host? [yes]
Enter the NETMASK for this server: XXX.XXX.XXX.XXX
The gateway for this network would typically be: XXX.XXX.XXX.XXX
Do you want to use this gateway address for this system? [yes]
Do you want to use the default name servers (4.2.2.6, 209.244.0.4)?
[yes]: NO
WARNING: you may lose your SSH network connection if you apply these
changes!
Do you want to APPLY your changes and restart networking? [no] : yes
License UCS Server
Now you can license your server. You'll need to obtain a license number from [email protected]. Once you've
obtained a valid ucs license you can install it via our iglicense utility on your ucs.
Enter the following command: [root@ucs ~]# iglicense
iglicense : 6.0.080729 - Jul 29 2008 - 18:40:35
Licensing System Server ID: XXX.XXX.XXX.XXX,XX:XX:XX:XX:XX:XX
Enter your license key: {ENTER LICENSE HERE}
Restart the UCS by entering the following: [root@ucs ~]# service igmaster restart
Configure UCS via web frontend
You can configure your ucs via our php web frontend at: http://{usc_ip or ucs_hostname}/manage
The default login information is:
User: igadmin
Pass: igcmgr01
Once you accessed the /manage page you see several sections that are self-explanatory:
User Manager
Manage UCS Users
Room Manager
Manage UCS Meeting Rooms
Limits Manager
Configure UCS and Set Meeting Limits
Federation Manager
Configure UCS Federation
Gateway Manager
Configure UCS Gateways
Client Software
Manage the Client Software Download Area
Usage Viewer
Review Meeting Usage
Call Detail Viewer
Review Gateway Usage
Server Graphs
Review Server Usage Graphs
Version Manager
UCS Executable Versions
Service Manager
UCS Service Status and Control
Diagnostics
UCS Diagnostics Page
The Service Manager will allow you to restart specific nodes of the UCS as well as restart the igmaster (all nodes).
The Gateway Manager allows you to allow add a SIP, H323, or IAX trunk to your UCS.
How to Perform an IG Backup
From a shell on your UCS server you'll to run the following command: [root@ucs ~]# igbackup
The backup file will be copied to your ucs server /root directory. The file is usually named: {ucs_hostname}_IG_
{current_date}.tgz
The included backed up files are:
/version.txt
/images/
/images/calendar.png
/email.png
/images/cal.gif
/images/iocom_logo-sm.png
/images/iocom_logo.png
/ucsdb/
/ucsdb/config.xml
/ucsdb/insors.db
/insors.lic
/venue/
/venue/manual.php
/venue/igpix
/venue/index.php
/venue/images
/venue/novenue.html
/venue/venue.cgi
/venue/venue_header.html
/venue/manage
/venue/venue_footer.html
/igdiags.txt
/igmeeting.log
Appendix 3: Bandwidth Calculations
Assumptions:
The following assumptions will be made for calculating bandwidth over 3 scenarios

Each camera is set to H.264 medium using a maximum of 256 Kbps of bandwidth. This is a worst case as
actual bandwidth usage will be lower and varies based on movement within the video image.

Audio is set to “standard” which uses 64 Kbps of bandwidth

IP headers for audio streams are assumed to consume 36 Kbps of bandwidth.

IGPix is assumed to consume 20 Kbps of bandwidth

Conference Room A is simultaneously transmitting 2 PTZ cameras views

Desktops endpoints are transmitting one USB video image

Upstream and downstream bandwidth numbers are shown for reference in asymmetric networks.

The UCS is on a symmetrical IP connection and the total bandwidth required number is the greater of the
upstream and downstream usage.
Conference Room = 632 Kbps Upstream
Stream
Qty
Bandwidth Per
Extended
Video – H.264 medium
2
256 Kbps
512 Kbps
Audio
1
64 Kbps
64 Kbps
IP Headers
1
36 Kbps
36 Kbps
IGPIX
1
20 Kbps
20 Kbps
Total
632 Kbps
Desktop System = 376 Kbps Upstream
Stream
Qty
Bandwidth Per
Extended
Video – H.264 medium
1
256 Kbps
256 Kbps
Audio
1
64 Kbps
64 Kbps
IP Headers
1
36 Kbps
36 Kbps
IGPIX
1
20 Kbps
20 Kbps
Total
376 Kbps
Scenario 1: Two desktops in a meeting (Kbps)
Upstream
Downstream
Total
Desktop 1
376
376
376
Desktop 2
376
376
376
UCS
752
752
752
This connection would require 376Kbps of bandwidth for each desktop endpoint and 752Kbps for the UCS.
Scenario 2: Three Desktops in the same meeting (Kbps)
Assumes each endpoint views both remote video views.
Upstream
Downstream
Total
Desktop 1
376
632
632
Desktop 2
376
632
632
Desktop 3
376
632
632
UCS
1128
1896
1896
The down stream bandwidth for each endpoint is increased by the additional video image (632 = 376 + 256).
Scenario 3: Conference A and three desktops
Assumes each endpoint views all video images
Upstream
Downstream
Total
Desktop 1
376
1144
1144
Desktop 2
376
1144
1144
Desktop 3
376
1114
1144
Conference Rm A
632
888
888
UCS
1760
4320
4320
The downstream bandwidth for each desktop increases by 512 Kbps to account for the two additional video views
from the conference room. This scenario assumes that each desktop would be viewing 4 remote images. (Local images are still displayed but do not use bandwidth) The conference room would only be viewing 3 remote desktop images, therefore it’s downstream usage would be 888 Kbps, (888 = 1114 -256)
Scenario 4: Conference A and three desktops – Selected Video
Assumes that the first desktop is viewing one of the four available video images, the second desktop is viewing two
video images, and the Conference Room and third desktop are viewing all available images.
Upstream
Downstream
Total
Desktop 1 (view 1 video images)
376
376
376
Desktop 2 (view 2 video images)
376
632
632
Desktop 3 (view all 4 video images)
376
1114
1114
Conference Rm A (view all 3 remote videos)
632
888
888
UCS
1760
3010
3010
Appendix 4: Estimated User-to-Server Table
# of
Users
100
500
2000
5000
10000
20000
50000
100000
500000
# of
servers
1
2
7
16
32
63
157
313
1563
# of Infrastructure
Servers
1
1
1
2
4
7
17
35
178
Total
Servers
2
3
8
18
36
70
174
348
1741