IZZY, Leibovich (400 Cottontail Lane, Somerset, NJ, 08873, US)
NEWMAN, Paul (400 Cottontail Lane, Somerset, NJ, 08873, US)
MCGINNIS, Martin (9th Floor, 12-20 Camomile Street, London EC3A 7EX, GB)
HOERL, David (9 Kensington Court, Warren, NJ, 07059, US)
IZZY, Leibovich (400 Cottontail Lane, Somerset, NJ, 08873, US)
NEWMAN, Paul (400 Cottontail Lane, Somerset, NJ, 08873, US)
MCGINNIS, Martin (9th Floor, 12-20 Camomile Street, London EC3A 7EX, GB)
CLAIMS What is claimed is:
L A system for providing wireless monitoring and control of remote devices, said system comprising: at least one networking device; at least one user workstation comprising a keyboard, video monitor, and cursor control device and which communicates with said at least one networking device via a first network; a plurality of remote devices; and a plurality of transceivers couple to at least one of said remote devices for receiving and converting video signals from said remote devices and for transmitting said converted signals to said at least one networking device via a second network; wherein said at least one networking device bi-directionally communicates with said plurality of transceivers and said at least one user workstation; wherein said user workstation transmits keyboard and cursor control device data from said keyboard and cursor control device to said at least one networking device; and wherein each of said plurality of transceivers comprises a wireless communications device.
WIRELESS MANAGEMENT SYSTEM FOR CONTROL OF REMOTE
DEVICES CROSS-REFERENCE TO RELATED APPLICATIONS This application is a continuation-in-part application of United States Patent Application Ser. No. 10/799,349, which was filed on March 12, 2004.
FIELD OF THE INVENTION The present invention relates generally to the field of keyboard, video, and mouse ("KVM") over Internet Protocol ("IP") ("KVMoIP"). In particular, the present invention relates to a non-intrusive solution for accessing and controlling remote devices, such as critical server systems, preferably via a wireless fidelity ("WiFi") connection. The present invention captures and converts keyboard and cursor control device signals from a local user workstation and transmits the converted signals to a selected remote device. Further, the present invention captures, digitizes, and compresses video from the selected remote device and transmits it with keyboard and cursor control device signals from the remote device to a local user workstation.
BACKGROUND OF THE INVENTION In a typical computer environment, a Local Area Network ("LAN") allows for one or more computer servers to be connected to several computers such that the resources of each server are available to each of the connected computers. The LAN is typically comprised of networking equipment such as routers, hubs, switches, etc. In this networked environment, a dedicated keyboard, video monitor and mouse may be employed for each computer and server.
To maintain proper operation of the LAN, the system administrator must maintain and monitor the individual networking equipment, servers, and computers. This maintenance frequently requires the system administrator to perform numerous tasks from a user console connected to the networking equipment, server, or computer. For example, to reboot a computer or to add or delete files, the system administrator is often required to operate the server or computer from its local user console, which may be located at a substantial distance from the system administrator's computer and from other computers or servers connected to the LAN. Therefore, to accomplish the task of system administration, the system administrator must often physically relocate to access the local user consoles of remotely located servers and computers. As an alternative, dedicated cables may be installed from each remotely located server and computer to the system administrator's user console to allow the system administrator to fully access and operate the remote computer equipment. However, this alternative requires substantial wiring and wire harnessing, both of which may require tremendous cost. Additionally, there is generally an inverse relationship between the distance from the system administrator's user console to the remote computer equipment and the quality of the transmitted signal (i.e., as the distance increases the quality of the transmitted signal decreases). Thus, dedicated cables between the system administrator's user console and remote computer equipment may not be a feasible alternative. In some situations, it is desirable to manage the networking equipment, servers, and computers remotely located from the system administrator. For example, a software program such as pcAnywhere may be utilized to access a remote computer over the
Internet or a LAN utilizing the keyboard, video monitor, and cursor control device (e.g., a mouse) attached to a local user workstation. Remote computer access programs typically require that host software installed on the remote computer and client software installed on the user workstation. To access a remote computer, a user of the user workstation selects the desired remote computer from a list and enters the appropriate user name and password. Once access has been granted to the remote computer, the user utilizes the keyboard, video monitor, and cursor control device attached to the local user workstation to access and operate the remote computer. Hardware solutions also exist for operating a remote computer from a user workstation over a LAN or through a dedicated network. In contrast to the software solutions, the hardware solutions do not typically require host or client software. Instead, the hardware solutions typically utilize a keyboard, video monitor, and mouse ("KVM") switch accessible over a LAN via a common protocol, such as Transfer Control Protocol/ Internet Protocol ("TCP/IP"). Generally, a user or system administrator accesses the remote computers attached to the KVM switch via an Internet browser or client software associated with the KVM switch. Once the remote computer has been selected, the remote computer's video signal is routed to the user workstation's video monitor and a user may then utilize a keyboard and mouse to control the remote computer. The KVM switch may additionally include a connection to the power source of the remote computer for a hard reboot in case of system failure. The aforementioned hardware and software solutions generally utilize a compression algorithm to reduce the necessary bandwidth required to transmit the video signals. For example, the wireless remote network management system of the present
invention may utilize the compression algorithm disclosed in application serial no.
10/898,001, which is incorporated in its entirety herein by reference, to reduce and compress the digital data that must be transmitted from remote devices with video. Alternatively, the system of the present invention may utilize standard video compression algorithms such as MPEG-2 or MPEG-4. A KVM switching system may be utilized to allow one or more user workstations to select and control any one of a plurality of remote computers, such as servers, via a central switching unit. Such systems are well known in the art and have been used by system administrators for several years. KVM switching systems allow system users to control remote computers using one or more local user workstations' keyboard, video monitor, and cursor control device as if these local devices are directly connected to the remote computer. In this manner, a system user may access and control any of a plurality of remote computers from a single location (i.e., the location of the user workstation). The system user may select a specific remote computer to access and control using any one of a variety of methods known in the art including pushing a button that corresponds with the desired remote computer and is located on the face of a computer management system component, selecting the computer from a list displayed on a computer management system component's LCD or LED display, pressing one or more "hot keys" on the local user workstation's keyboard (e.g., Fl , ALT-Fl , F2, etc.), selecting the remote computer from a list displayed on the user workstation's monitor by pointing to it or scrolling to it using the user workstation's keyboard or cursor control device. Recently, KVM devices have begun utilizing Internet Protocol ("IP") in order to allow users at a local computer to communicate with and control remote devices.
Keyboard, Video, and Mouse over Internet Protocol ("KVMoIP") technology utilizes conventional network infrastructures to permit remote access and control of computers
and other devices. KVMoIP devices offer several advantages over traditional KVM switches. In traditional KVM switches, one generally has to run cables from each server to switch chassis, then run more dedicated cables from switch-to-switch, and run still more cables from switches to each end-user console. The cabling is not only costly, but also laborious and requires both effort and knowledge in larger systems. Additionally, space becomes a consideration as these systems generally take up a large amount of room. KVMoIP systems offer a simplified solution to this cabling problem. The KVMoIP equipment can be anywhere the computers are, with short cables from the KVMoIP unit to the local computers. Only one CAT5 cable need be run from the KVMoIP unit to an Ethernet hub. Additionally, KVMoIP systems make it easier to add more computers to the existing network. When computers need to be added, they do not have to be located in the same room or even same building as in traditional analog based KVM equipment. All that is necessary is to plug in the KVMoIP unit into an accessible network. This design eliminates the need for more switch-to-switch wire runs, or other cable extenders. KVMoIP devices generally connect directly to an IP network via a Network Interface Card ("NIC"). Users accessing the KVMoIP device can select one or more of the switch inputs at any time and a number of independent user sessions are supported. In traditional KVM switches, only one switch computer can be displayed at any time. Many KVMoIP systems incorporate software, which is often proprietary and features one or more methods of accessing a KVMoIP device. Other systems known in
the art access KVMoIP devices via web browsers, Virtual Network Computing ("VNC")
clients, etc. Generally, local consoles, dial-up, and serial connections offer a backup. There has also been a proliferation of wireless technologies to enable computers to communicate and share resources. For example, the Bluetooth and IEEE 802.11 standards are two rapidly developing technologies that allow computers to wirelessly communicate. Devices are commercially available that comply with the 802.11 standard and enable wireless TCP/IP communications over distances of up to three hundred (300) feet. For example, Personal Computer Memory Card International Association ("PCMCIA") wireless cards enable laptops to communicate utilizing the TCP/IP protocol. Further, many newer laptops come standard with wireless communication access devices. 802.11 compatible wireless local area networks ("WLANs") are now often utilized in lieu of, or in conjunction with, LANs. Bluetooth devices are generally utilized for shorter-range communication, utilizing lower transmission rates than 802.11 compliant devices. The 802.11 standard, ratified by the Institute of Electrical and Electronics Engineers ("IEEE") in 1997, is a wireless communications standard generally utilized for networking, file sharing and Internet connection sharing. In 1999, two extensions to the 802.11 standard were added, 802.11a and 802.11b. The 802.11a standard operates in a frequency range of 5 Gigahertz (GHz) at speeds of up to 54 Megabits per second (Mbps). The 802.1 Ib standard, was designed to be more affordable, and operates in the 2.4 GHz range at speeds of up to 11 Mbps. With the proliferation of 802.1 Ib devices, the 802. Hg standard was recently ratified which allows for 802.1 Ia speeds in 802.1 Ib compatible frequencies.
All 802.11 standards allow for computers to communicate wirelessly without the
need for hubs, routers, switches, etc. The 802.11 standard allows for the creation of WLANs, which use the same TCP/IP communication protocols as traditional wired LANs. With commercially available wireless communication devices, two computers can communicate from up to three hundred (300) feet away, although with repeaters, stronger antennae, signal boosters, etc., this range maybe increased. Today, wireless networks are available in airports, coffee shops, college campuses, etc. Importantly, the 802.11 standard allows for at least two different network configurations: (1) an infrastructure mode in which all traffic passes through a wireless access point, and (2) an "ad-hoc" mode (or "peer-to-peer" mode) in which computers communicate without any central device. Independent of the mode, the 802.11 standard supports wireless networks that offer the same communications (e.g., TCP/IP, file sharing, Internet sharing, etc.) as a wired connection. In the infrastructure mode, devices communicate through a wireless access point. An access point is similar to a hub, or router (but without wires), in that it receives and transmits all data between wireless devices. Advantages of the infrastructure mode include increased scalability, increased range of communication, and access to a wired network. Specifically, by adding access points, the network can grow without undo burden on any one device. An access point can also be utilized to increase the range of communications. Cascading access points and signal boosters can overcome the three hundred (300) foot communication limit of most 802.11 devices. Finally, traditional access points also offer access to a wired network. Therefore, an infrastructure network easily adapts to communicate with an Ethernet LAN or an Internet connection.
An ad-hoc network is more dynamic - it can be created and torn-down easily without any additional hardware. Computers can enter and leave the network so long as the computer is configured to access a wireless network with the same service set identifier ("SSID") as the other computers in the network. Generally, an SSID is a sequence of alphanumeric characters that identifies the ad-hoc network. An ad-hoc network also has the advantage that it requires no external hardware and can be created with multiple computers alone, so long as each computer has a WiFi compatible communications device. An important feature of the 802.11 standard is the availability of multiple channels of communications, utilizing Direct Sequence Spread Spectrum ("DSSS") technology. DSSS allows for the transmission of data over a range of frequencies thus decreasing the power utilized at any one frequency. Therefore, DSSS allows for fast communications with little interference and permits an 802.11 network to include multiple communications channels. Further, the wireless network can co-exist with other wireless devices that operate in similar frequency ranges. Generally, in an ad-hoc network, one of the available channels (the FCC currently allows for eleven (11) total channels) is utilized as a "broadcast" channel. The broadcast channel allows devices to "discover" other devices in range of communication and to transmit messages that are received by all devices. Thus, the broadcast channel is a critical feature of the 802.11 standard that allows for the creation of ad-hoc networks in which devices can automatically join and leave the network. The network then utilizes one of a variety of algorithms such as a spokesman election algorithm ("SEA") or a broadcast/ flooding algorithm for all other communications. In SEA, one computer is
"elected" to head the network and tracks the addition of other computers to and from the network. In a broadcast/ flooding algorithm, generally all messages are sent to all computers. If an access point is utilized, then no such algorithms are necessary, and instead, the access point may be utilized to ensure that all messages reach the correct destination. Systems that enable wireless access of a remote computer are currently known in the art of computer management. For example, one such system comprises a single receiver and a single transmitter that, together, allow a user to access a remote computer using a keyboard, video monitor, and mouse. In this system, both the receiver and the transmitter are enabled for wireless communication. The receiver, coupled to the keyboard and mouse, receives keyboard and mouse data and wirelessly transmits this data to the transmitter. The transmitter is coupled to a remote computer and supplies the data to the keyboard and mouse ports of this remote computer. Simultaneously, the transmitter receives video data from the remote computer and transmits this data wirelessly to the receiver where it is displayed on the video monitor coupled to the receiver. Thus, this system enables extended length access of a single remote computer through a wireless connection. Another known system consists of a switching device for controlling multiple remote computers where the switching device comprises a wireless transmitter and a wireless receiver. The switching device is configured to enable a user to select from among multiple computing devices and wirelessly link a peripheral device with a selected computing device for user interaction. In this system, the switching device initially develops a list of available computing devices. A user chooses from this list and the
switching device establishes a wireless link with the corresponding computing device. Thus, this wireless switch only enables one connection between a user and a remote computer at any instance. Further, each of the computing devices must also have wireless communications capabilities to enable wireless communication with the switch. A method for switching the utilization of a shared set of wireless input/output ("I/O") devices between multiple computers is also known. This method includes the utilization of a software-based switching mechanism where wireless protocols enable the sharing of wireless peripheral devices between multiple computers. A wireless data packet (a "token") is utilized to transfer control of the I/O devices utilizing a master/slave relationship for the transfer of control. The token is the computer-to-computer wireless command utilized to transfer control of a wireless peripheral device from one device to another. Thus, in this known system, server-to-server communications are necessary for transferring the control of a wireless peripheral. Further, in this system only one computer can control a set of wireless peripherals at a time. In another known system for accessing computer systems in a computer network, each computer system provides and receives operator interface data signals containing user output and input information. Central to this system is a wireless administrator device that allows a system operator to remotely control a plurality of computer systems interconnected through a communications network. The wireless administrator device includes a wireless communications module that operates in "transmit" and "receive" modes to communicate with the wireless communication modules coupled to the computer systems. The wireless administrator device includes an operator interface with a video display, mouse and keyboard to enable user interaction in a selection mode or a
control mode. The interface includes a manual connect button that allows the administrator to display on the video a list of available computer systems that may be accessed. Upon selection of a computer, the administrator remotely controls the computer through the operator interface. Finally, systems are also known that provide a wireless interface between a remote host computer and a personal digital assistant ("PDA"). In one such system, the PDA presents the user with a graphical user interface ("GUI") allowing for input by way of a passive stylus, which can be used in a pen or mouse mode. The PDA also includes a transceiver that communicates wirelessly with the transceiver of a remote computer. The transceivers allow the wireless device to access the remote host computer over a wireless LAN or through a peer-to-peer network. The system also allows a user to view available remote host computers through the GUI of the wireless device and to access the programs and files of the remote computer. The remote computer in turn, transmits display commands to the wireless device. A similar system utilizes Bluetooth communications to enable a PDA to recognize and identify all compliant remote devices by transmitting a broadcast message that is received by compliant remote devices. In this system, the PDA includes a GUI to display a rendering of a mechanism that can be utilized to control a remote device. For example, the rendering might be of an on/off switch. The PDA receives input from a stylus, and translates this input into a command for the remote device. In view of the foregoing, a need clearly exists for a wireless remote network management system capable of non- intrusive, secure, wireless operation and control of networking equipment, servers, computers, and other remote devices. Furthermore, such
as system should enable digital remote KVM access via IP networks such as WLAN,
LAN, and the Internet. The system should also allow a user to view all available remote computers via an on-screen user interface and to choose one of these computers to monitor and control. Finally, the system should capture, digitize, compress and transmit video with keyboard and mouse signals to and from a variety of remote devices.
SUMMARY OF THE INVENTION It is often convenient to control one or more connected computers from one local set of peripheral devices (i.e., keyboard, video monitor, cursor control device, etc.). Since the majority of computers in use today incorporate or are designed to be compatible with commonly known and used computer technologies (e.g., IBM, Apple, Sun, etc.), many computers use identical or similar electrical connectors to connect a peripheral device. Also, a computer typically contains a dedicated electrical connector for each type of peripheral device to which the computer will be connected. Generally, the cables connecting such peripheral devices to a computer are approximately six (6) feet in length, thereby limiting the distance from the computer at which the peripheral devices may be located. . In many circumstances, it is desirable to separate the peripheral devices from the computer due to space constraints. However, one skilled in the art may readily appreciate that separating a computer from its peripheral devices may make it difficult to locate the remote computers because they are commonly located in another area of the building, such as in a data center, server-farm, etc. Unless each device is clearly labeled, there exists no means of differentiating computers without their attached peripheral devices.
1 In addition to extending the distance between a computer and its peripheral
2 devices, it is also convenient to access and operate more than one computer from one set
3 of peripheral devices. Again, this feature is desirable when space is limited. It may also
4 be desirable to access a computer through wireless communications. In many situations
5 it is difficult to run wires from the location of a server to its set of peripherals. Further,
6 the utilization of longer wires necessarily leads to the degradation of the signals
7 transmitted. For example, the high frequency components of such transmitted signals are
8 often severely attenuated.
9 The present invention provides a wireless remote computer management system 1.0 for administrating remote computers and devices from one or more local workstations,
11 which may be any workstation with Internet connectivity. Examples of workstations,
12 include, but are not limited to, desktop computers, laptops, PDAs, and tablet PCs. The
13 present invention may include a network switch or hub for connectivity to the LAN. An
14 access point is preferably utilized to increase the scalability of the invention. The access
15 point may be further connected to a hub, switch, router, etc. as necessary. The present
16 invention also enables users to access and control remote devices via the Internet.
17 In the system of the present invention, a user workstation preferably comprises a
18 wireless-enabled user station ("WUST") coupled to peripheral devices such as a 9 keyboard, monitor, and cursor control device (e.g., a mouse). The WUST utilizes 0 wireless communications to communicate with a wireless-enabled computer interface 1 module ("WCIM"), which is interfaced with a remote computer via one or more access 2 points. Further, the WCIM includes wireless capabilities and connects to the keyboard, 3 monitor and cursor control device ports of a remote computer. It is foreseeable that other
connections may be included as necessary to interface with different remote devices. The
WCIM is compatible with both ad-hoc and infrastructure networks and operates within a broadcast or non-broadcast mode. The present invention allows a user to view a list of available remote computers and other devices and to select a remote device from this list for control. In ad-hoc mode, the list may be automatically updated as remote devices enter or exit the wireless network. In the present invention, each remote device (e.g., networking equipment, server, computer, etc.) is preferably connected to a WCIM. The WCIM may also have serial ports for connection to the networking equipment as well as keyboard, video, and cursor control device ports for connection to the servers and computers. Additionally, the WCIM may contain Universal Serial Bus ("USB") ports, parallel ports, etc., and a port for connection to a power supply capable of controlling the power to the networking equipment, server, or computer. Standard cabling is utilized to connect the networking equipment, server, or computer to the appropriate ports on the WCIM. The WCIM is preferably powered via the remote device it is connected to, thus requiring no additional power sources or cabling. Alternatively, the WCIM may be powered by a power pack included within the WCIM or via a power supply connected to the WCIM. It is foreseeable that the WCIM may be internal to the remote device (e.g., internal to a server) thus alleviating any power issues that arise with an external WCIM design. Central to the present invention is the wireless communications that enable the WUSTs to communicate with the WCIMs. Preferably, the WUST and WCIM utilize 802.11 protocol, such as 802.1 lb/g/a, and 802.11 compliant hardware to communicate via one or more access points, switches, routers, etc. through a wireless network. This
communication is utilized by the WUST to request a connection to the WCIM, and upon completion of the connection, to receive compressed video data from the WCIM. In turn, the WUST sends data including keyboard and cursor control device data packets, serial data, USB control data, etc. to the WCIM via the network. The WCIM utilizes this data to emulate mouse, keyboard, USB, etc., signals to the associated remote device. In ad- hoc mode, the WUST and WCIM may communicate directly. Utilizing this communication, the WUSTs are automatically "aware" of all available remote computers coupled to WCIMs. ' The user workstation requests connection to a remote device connected to a WCIM via the access point. After the request is granted, the WCIM receives video signals from the remote computer, digitizes and compresses the video signals, and transmits compressed video information to the user workstation via an access point. The information may be transmitted over a network, the Internet, etc. In turn, the user workstation (e.g., a desktop computer, laptop, PDA, tablet PC, etc.) transmits keyboard and cursor control device data to the WCIM via a network through an access point. The WCIM uses this data to provide emulated keyboard and cursor control device data to the keyboard and cursor control device ports of the remote computer. The user workstation decompresses the video information and provides video signals to the local monitor. In this manner, a user of the workstation can control the remote computer by utilizing the local keyboard and cursor control device, while viewing video signals from the remote computer on the local monitor. In ad-hoc mode, the WUST and WCIM utilize the broadcast channel to set up a connection. The WUST requests a connection by sending a message over the broadcast
channel, and the WCIM either accepts or denies the request. After a connection is established, the WUST and WCIM communicate on a non-broadcast channel. Preferably, this channel is selected by the WUST and identified as part of a request message. An important feature of the present invention is the ability to display a list of available remote devices to a user on the user's local monitor. A variety of methods may be utilized to generate and display the option menu. Preferably, the WUST includes a central processing unit ("CPU") that generates an option menu. Alternatively, an on- screen display ("OSD") processor may be utilized. In one embodiment the WUST can be implemented as a purely software solution, and can be run on any computer, laptop, PDA, etc. that has wireless (802.11) communication capabilities. In this embodiment, the option menu may be implemented as part of the WUST software, and may take advantage of existing APIs to display the option menu in a user- friendly fashion. In infrastructure mode, the WUST and WCIM communicate through an access point, or a wireless KVM switch. Importantly, the wireless KVM switch may be a hybrid switch thus supporting both wired and wireless connections. In this configuration, a WUST can communicate with a WCIM, even if the WCIM does not have wireless capabilities. That is, the WCIM can connect to the hybrid switch utilizing traditional cabling, and, in turn, the switch can communicate over an 802.11 connection with the WUST. Also, this configuration enables users at workstations to be hardwired to the hybrid switch and thus access and control remote devices connected to a WCIM. Because both the wired and wireless communication devices utilize TCP/IP communications, the hybrid switch does not need to interpret or translate the data.
Another advantage of the utilization of an access point is the ability of the access point to connect to the Internet. Thus, a user workstation with Internet connectivity can connect to the access point remotely and in turn, control a remote device. In this embodiment there is no restriction on the location of the user workstation. Further, the user workstation is not required to have wireless capabilities. Therefore, it is an object of the present invention to provide an improved wireless device management system that enables a user to control remote computers and other remote devices from local user workstations. It is also an object of the present invention to provide digital remote KVM access via IP networks such as a LAN, WLAN, or the Internet. It is another object of the present invention to provide non-intrusive remote access and control of remote devices. It is still another object of the present invention to require no additional software to run on the remote device in order to eliminate any potential interference with the remote device's operation or network performance. Further, it is an object of the present invention to provide a wireless device management system that allows one or more local user workstations to access and control remote devices utilizing an infrastructure or ad-hoc wireless network mode. It is yet another object of the present invention to provide a secure, wireless device management system that allows a local user workstation to wirelessly control a remote device utilizing a local keyboard and cursor control device, and to wirelessly receive video signals from the remote device.
Additionally, it is an object of the present invention to provide a wireless KVM network that enables a user workstation to provide a list of available remote computers
and devices. Further, it is an object of the present invention to provide a secure modular, wireless, device management system that allows one or more sets of peripheral devices to access and operate one or more remote computers as if the local peripheral devices were directly connected to the remote devices. A different object of the present invention is to operate under broadcast and non- broadcast modes. Furthermore, it is an object of the present invention to allow information technology ("IT") personnel to easily manage a volume of servers for both small-scale and large-scale computer centers such as data-centers, server-farms, web-hosting facilities, and call-centers. In addition, it is an object of the present invention to provide a wireless modular computer management system that eliminates the need for a set of peripheral devices for each remote computer thereby minimizing the space required to house the remote computers. It is yet another object of the present invention to be platform independent thus simultaneously supporting a variety of platforms. It is still yet another object of the present invention to automatically sense video resolution to optimize screen capture. Further, it is an object of the present invention to provide high performance mouse tracking and synchronization.
Finally, it is an object of the present invention enable a DHCP or static
configuration. Other objects, features, and characteristics of the present invention, as well as the methods of operation and functions of the related elements of the structure, and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following detailed description with reference to the accompanying drawings, all of which form a part of this specification.
BRIEF DESCRIPTION OF THE DRAWINGS A further understanding of the present invention can be obtained by reference to a preferred embodiment set forth in the illustrations of the accompanying drawings. Although the illustrated embodiment is merely exemplary of systems for carrying out the present invention, both the organization and method of operation of the invention, in general, together with further objectives and advantages thereof, may be more easily understood by reference to the drawings and the following description. The drawings are not intended to limit the scope of this invention, which is set forth with particularity in the claims as appended or as subsequently amended, but merely to clarify and exemplify the invention. For a more complete understanding of the present invention, reference is now made to the following drawings in which: FIG. 1 is a schematic representation of the wireless remote device management system according to the preferred embodiment of the present invention illustrating the connection of user workstations to a remote computer, where each user workstation is
coupled to a keyboard, monitor and cursor control device and each remote computer is directly connected to a wireless-enabled computer interface module ("WCIM"). FIG. 2 is a schematic representation of a wireless-enabled user station ("WUST") as shown in FIG. 1 according to the preferred embodiment of the present invention illustrating a block diagram of the internal structure of the WUST and connectors for a keyboard, video monitor, and cursor control device. FIG. 3 is a schematic representation of the WCIM shown in FIG. 1 according to the preferred embodiment of the present invention illustrating a block diagram of the internal structure of the WCIM and connectors for a keyboard port, a video monitor port, and a cursor control device port. FIG. 4 is a schematic representation of the remote device management system in ad-hoc mode illustrating the wireless connection of a user workstation to a remote device, where each user workstation comprises a WUST coupled to a keyboard, monitor and cursor control device and each remote device is directly connected to a WCIM. FIG. 5 is a flow chart that details the exchange of information between a WCIM and WUST to setup a connection between a user workstation and a remote device in ad- hoc mode. FIG. 6 is a schematic representation of the remote device management system according to an alternate embodiment of the present invention illustrating the connection of multiple remote devices to one composite WCIM, which communicates wirelessly to multiple WUSTs. FIG. 7 is a schematic representation of the composite WCIM shown in FIG. 6 illustrating a block diagram of the internal structure of the composite WCIM and
connectors for multiple keyboard ports, video monitor ports, and cursor control device
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT As required, a detailed illustrative embodiment of the present invention is disclosed herein. However, techniques, systems and operating structures in accordance with the present invention may be embodied in a wide variety of forms and modes, some of which may be quite different from those in the disclosed embodiment. Consequently, the specific structural and functional details disclosed herein are merely representative, yet in that regard, they are deemed to afford the best embodiment for purposes of disclosure and to provide a basis for the claims herein, which define the scope of the present invention. The following presents a detailed description of the preferred embodiment (as well as some alternative embodiments) of the present invention. Referring first to FIG. 1, depicted is the architecture of the preferred wireless remote device management system in accordance with the present invention. The system shown includes multiple wireless user workstations 100 each having a wireless-enabled user station (WUST 115) coupled to a keyboard 119, video monitor 117, and cursor control device 121. Each WUST 115 includes a wireless communications device 1 13 that is preferably an 802.11 compliant device, although other known standards may be utilized. The system also includes a plurality of remote devices 101. For simplicity, only two (2) user workstations 100 and three (3) remote devices 101 are shown. However, one of skill in the art will readily appreciate that the present invention may include many more user workstations 100 and remote devices 101. Further, the remote devices may be
of several types, including but not limited to, computers, servers, network printers, and
other networking devices. Each remote device 101 is directly connected to an associated wireless computer interface module (WCIM 105). Each WCIM 105 has a wireless communications device 107 to communicate with access point 111 and one of a plurality of WUSTs 115. Although only one access point 111 is shown, a plurality of access points may be implemented within the system. Preferably, in such a configuration, the access points are cascaded to increase the distance of communication. During operation, WUST 115, using wireless communications device 113, communicates wirelessly with any one of the plurality of WCIMs 105 over a network through access point 111. Specifically, WUST 115 transmits keyboard and cursor control device signals, preferably as TCP/IP data packets, over wireless communications path 109 to a select WCIM 105 via access point 111. Simultaneously, WCIM 105 transmits compressed video data signals along with keyboard and cursor control device signals as necessary, alsp preferably as TCP/IP data packets, over wireless communications path 109 to WUST 115. Thus, the system of the present invention enables a user at user workstation 100 to view and control any one of a plurality of remote devices 101 via wireless communications path 109. Although 802.11 compliant wireless communications is the preferred wireless standard for use with the present invention, other types of wireless connections such as 802.15.3, infrared, or Bluetooth compliant communications may be utilized, depending on the specific needs of the system user. The 802.11 standard enables communications over extended distances where the speed of the signal can automatically be reduced as the
distance increases thus avoiding excessive degradation of the signal. Additionally, standard radio communications utilized in 802.11 standards do not require line-of-site communications. Finally, the 802.11 standard enables the system of the present invention to utilize TCP/IP communications, therefore enabling the establishment of a WLAN network without extensive software development. Regardless of the type of wireless network utilized, one of primary purposes of the present invention is to allow a user at a user workstation 100 (as well as at user workstations 102 and 104 as discussed below) to select and subsequently control a remote device 101. This selection may be accomplished through a variety of methods. In one embodiment, a menu or list of available remote devices 101 is displayed on the screen of video monitor 117. WUST 115 can utilize information provided by the wireless network to update the option menu displayed to the user with a list of available remote devices. The WCIM 105 automatically senses the video resolution of remote device 101 to enable the best possible screen capture. Additionally, the option menu may give the user the ability to manually adjust video settings to improve the quality of the transmitted video. In ad-hoc mode, the WCIMs 105 and WUSTs 115 can automatically "discover" other devices within range of communications. Also connected to access point 11.1 is switch 125 via connection 123. Connection 123 is generally a hardwired connection such as a standard CAT5 cable. Although shown separately for the purposes of the drawing, access point 111 and switch 125 may be easily integrated into a wireless access point router. Switch 125 also supports Internet connectivity. For example, switch 125 may include a NIC to connect to Internet 129 through Internet connection 126, which may be a cable modem, DSL line, Tl line, etc.
Advantageously, this connection allows remote access from any user workstation equipped with Internet connectivity. For example, user workstation 104 (comprising
video monitor 117, computer 133, keyboard 119, and cursor control device 121) is connected to Internet 129 through Internet connection 131. User workstation 104 can thus access and communicate with switch 125 utilizing TCP/IP protocol. Hence, user workstation 104 can communicate with any remote device 101, regardless of the location or wireless capabilities of user workstation 104. Switch 125 is also connected to user workstation 102 via hardwired connection 127, which is preferably CAT5 cabling. User workstation 102 (comprising video monitor 117, keyboard 119, cursor control device 121, and computer 131) can manage and control any of the plurality of remote devices 101. Further, user workstation 102 bi-directionally communicates with and controls any one of the plurality of remote devices 101. Although only one (1) user workstation 102 and 104 is shown, one of skill in the art will readily appreciate that the present invention enables remote access via a multitude of user workstations 102 and 104. User workstations 102 and 104 preferably utilize an on-screen menu as previously discussed to control remote devices 101. Referring next to FIG. 2, depicted is a block diagram of the preferred embodiment of WUST 115. WUST 115 interfaces with video monitor 117, keyboard 119, and cursor control device 121 (although other peripheral devices may also be used such as USB peripherals, serial devices, etc.) in order to control any of a plurality of remote devices 101. Keyboard 119, video monitor 117, and cursor control device 121 are preferably connected to keyboard port 201, video port 203 and cursor control device port 205 of WUST 115, respectively, using industry standard connectors and cabling. For example,
the keyboard and cursor control device may be connected utilizing PS/2 connectors, serial connectors, USB connectors, etc. Monitors are typically connected to a computer through a DB- 15 port, but may be connected utilizing other connectors as necessary. During operation, WUST CPU 207 receives the keyboard and cursor control device signals generated by keyboard 119 and cursor control device 121, respectively, at the local user workstation 100 via keyboard port 201 and cursor control device port 205, respectively. WUST CPU 207 interprets these signals and generates data packets that include data representative of the keyboard and cursor control device information from the received keyboard and cursor control device signals. The data packets are combined with other information (such as destination information) and are included in TCP/IP communications sent by wireless device 113 over wireless communications path 109 to access point 111 and subsequently to WCIM 105 also via wireless communications path 109. Wireless device 113 may receive the packets from CPU 207 through a buffer (i.e., buffer-out 209). Alternatively, CPU 207 may directly connect to wireless device 113. Keyboard and cursor control device signals may be transmitted bi-directionally in the wireless remote device management system of the present invention. That is, these signals can also be transmitted from remote device 101 to user workstation 100. In this direction of transmission, keyboard and cursor control device signals are received as part of the data transmitted to wireless device 113 over wireless communications path 109, and can be temporarily stored in buffer-in 211. WUST CPU 207 uses this information to emulate or interpret the keyboard and cursor control device signals from remote device 101. These signals can be utilized to, inter alia, determine if the remote device is responsive to the user's cursor control device and keyboard. ■
Unidirectional digital compressed video signals are received by wireless device 113 as part of TCP/IP data. As discussed below (FIG. 3), WCIM 105 includes hardware and software to digitize and compress video received from remote device 101. This compressed data is received by wireless device 113, and may be temporarily stored in buffer-in 211. WUST CPU 207 receives the compressed video data and transmits this data to video conditioning circuit 204 where it is decompressed and converted to an analog format compatible with video monitor 117. The system of the present invention may utilize the decompression method described in application serial no. 10/898,001. The analog video data is sent to video monitor 1 17 through video port 203. The user selects a device for control by choosing from the devices on the menu. Preferably, WUST CPU 207 is a general-purpose processor that can be programmed to output an option menu to monitor 117. A general-purpose processor can utilize existing application program interfaces ("APIs") to present a user- friendly (e.g., with extensive graphics) interface to the user. Alternatively, the option menu can be generated by circuitry within WUST 115. For example, WUST 115 may include an OSD processor. The OSD can be instructed by a microprocessor to display a list of available remote devices 101. However, because most commercially available OSDs are character based, providing only a rudimentary interface to the user, a general-purpose processor is preferred. One of skill in the art will recognize that similar communication occurs between remote devices 101 and user workstations 102 and 104. For the sake of brevity, discussion of this communication is omitted.
A feature of the present invention is the ability to include a list of remote devices that are available for control. Preferably, the list is generated utilizing identification
information transmitted with a message by WCIM 105 to access point 1 11. For example, the identification information may include the name of the remote device, the type of device, or other identification information (e.g., the IP address of the device). This identification information can also be used to logically arrange the available remote devices 101 in groups or trees to present an efficient interface for the user to search for and select a remote device. The option menu may also display information about devices currently controlled by other user workstations. To switch to another connected device, the user preferably depresses a "hotkey" on keyboard 119 such as "printscreen" or "Fl " on keyboard 119 at any one of user workstations 100, 102, or 104. This causes the user workstation to display the option menu on video monitor 117 thus allowing a user to select a new remote device 101. The option menu may refresh every time a user wishes to be interfaced with a different remote device 101 or any time the list is updated. Although depicted as a hardware device, WUST 115 may be a standard personal computer, laptop, PDA, tablet PC, etc. that utilizes a standard operating system such as Microsoft Windows, UNIX, LINUX, etc. In this embodiment, WUST 115 is a computer equipped with wireless capabilities. Video monitor 117, keyboard 119, and cursor control device 121 communicate with WUST 115 utilizing standard connections well known in the art. Instead of utilizing WUST CPU 207, the functionality of WUST 115 is implemented as a software program. Specifically, the software program utilizes WLAN
capabilities to determine what remote devices 101 are available. The software receives messages from its wireless connection and generates an option menu for the user. An advantage of a software based implementation is that standard software APIs can be utilized to generate the option menu. Further, the menu may have a look and feel that is more familiar to the user (e.g., if Microsoft development software or Java APIs are utilized, the menu will resemble other Windows or Java applications). Utilizing commonly available APIs, the option menu can have graphics, icons, pull-down menus, etc. to present a user- friendlier interface. As with the hardware solution, the software recognizes the user's selection of remote device 101 , and transmits a request to the appropriate WCIM 105. The WCIM 105 can accept or deny the request. If the request is accepted, the WCIM 105 and WUST 115 communicate over a network. Referring next to FIG. 3, depicted is the preferred embodiment of WCIM 105 according to the present invention. WCIM 105 includes KVM port 301 to communicate with video port 303, keyboard port 305, and cursor control device port 307 of remote device 101. During normal operation, WCIM 105 receives unidirectional video signals from remote device 101 through cable 103. If remote device 101 is not a device with video (e.g., a network printer), one of skill in the art will recognize that no video is transmitted. WCIM 105 also transmits keyboard and cursor control device signals to keyboard port 305 and cursor control port 307 through cable 103. Alternatively, each of video port 303, keyboard port 305 and cursor control device port 307 can be connected to WCIM 105 utilizing separate cables for each port. Additional connections, e.g., serial, USB, parallel port, etc. may also be utilized.
Keyboard and cursor control device signals are wirelessly transmitted bi- directi onally between remote device 101 and WUST 115. Video signals are preferably unidirectionally transmitted from remote device 101 to WUST 115 (assuming remote device 101 includes video). In certain circumstances, however, video signals may be bi- directi onally transmitted. To accomplish the transmission of video, keyboard, and cursor control device data, WCIM 105 preferably includes video conditioning circuit 309, WCIM CPU 311, buffer-in 313, buffer-out 315, UART 317, memory 319, and wireless device 107. Wireless device 107 enables WCIM 105 to communicate over wireless communications path 109 with a WUST 115 via access point 111. During operation, video signals are transmitted from video port 303 of remote device 101 to KVM port 301 of WCIM 105 via cable 103. From KVM port 301, the unidirectional video signals are transmitted to video conditioning circuitry 309, which converts the analog video to compressed digital video data as wireless communications path 109 has a limited bandwidth (e.g., 54 megabits/second) and is therefore limited to the transmission of digital data. Thus, video conditioning circuit 309 is necessary to enable transmission of video data in accordance with the system of the present invention. Video conditioning circuit 309 preferably utilizes the compression method and hardware described in the aforementioned co-pending application 10/898,001. This method utilizes a compression algorithm that takes advantage of the spatial and temporal redundancies typical of the video output of a remote computer. The method also utilizes algorithms that encode the red, green and blue components of the video signal for transmission over a digital connection. The digitized and compressed video, which may be temporarily
stored in buffer-out 315, are transmitted by wireless device 107 to WUST 115 over wireless communications path 109 via access point 111.
Keyboard and cursor control device signals received from keyboard port 305 and cursor control device port 307, respectively, are transmitted via cable 103 to KVM port 301 , whereupon the signals are sent to WCIM CPU 311. WCIM CPU 311 creates data packets based upon information received from keyboard port 305 and cursor control device port 307. These data packets, which may be temporarily stored in buffer-out 315, are transmitted to WUST 115 by wireless device 107 utilizing TCP/IP data sent over wireless communications path 109 via access point 111. Conversely, wireless device 107 receives data packets from WUST 115 through wireless communications path 109 that contain data related to a user's utilization of keyboard 119 and cursor control device 121. These data packets may be temporarily stored in buffer-in 313 , and are ultimately sent to WCIM CPU 311. WCIM CPU 311 interprets the data packets received from WUST 115 and generates emulated keyboard and cursor control device signals. These emulated signals are sent to KVM port 301 through UART 317. Specifically, UART 317 converts data from WCIM CPU 311 into a serial protocol understood by keyboard port 305 and cursor control device 307. One of skill in the art will recognize that a similar method may be used for bi-directional communication between user workstations 102 and 104 and remote devices 101. WCIM 105 also contains memory unit 319, which stores identification information for WCIM 105 and its connected remote device 101 including the assigned name, group, address, etc. This identification information, especially important in ad-hoc mode, is sent by wireless device 107 to WUST 115 for purposes of providing the user a
list of available remote devices 101. Further, the identification information can be utilized in the routing of wireless data to the correct WCIM 105. In the preferred embodiment, remote device 101 provides power to WCIM 105. Thus, the equipment and cabling required for a dedicated WCIM power source is eliminated saving space and money. Alternatively, WCIM 105 may include a separate connector for connecting to a power supply or a battery pack. Preferably, WCIM 105 is compatible with all commonly used computer operating systems and protocols, including but not limited to those manufactured by Microsoft (Windows), Apple (Macintosh), Sun (Solaris), DEC, Compaq (Alpha), IBM (RS/6000), HP (HP9000) and SGI (IRIX). Additionally, local devices may communicate with remote computers via a variety of protocols including Universal Serial Bus ("USB"), American Standard Code for Information Interchange ("ASCII") and Recommend Standard-232 ("RS-232"). WUST 115 and WCIM 105 also are compatible with, and preferably implement, encrypted or secure wireless transmission. Various standards for secure wireless transmission of data are known in the art. For example, the system of the present invention may utilize the wired equivalent privacy ("WEP") protocol, which adds security to WLANs based on the 802.11 Wi-Fi standard. WEP is an OSI data link layer security technology that can be turned "on" or "off." WEP is designed to give wireless networks the equivalent level of privacy protection as comparable wired networks. WEP is based on the RC4 security scheme that utilizes a combination of secret user keys and system- generated values. The original implementations of WEP supported 40-bit encryption; however, newer versions have 128-bit (or better) encryption. Of course,
other methods of ensuring secure wireless transmission of data can be utilized such as the WiFi Protected Access (WPA) protocol, the Extensible Authentication Protocol (EAP),
the Advanced Encryption Standard (AES), etc. Next, FIG. 4 depicts the architecture of the wireless remote device management system in ad-hoc mode according to the present invention. The system includes workstations 100 each having a WUST 115 coupled to a keyboard 119, video monitor 117, and cursor control device 121. Each WUST 115 includes a wireless communications device 113 that is preferably an 802.11 compliant device, although other known standards may be utilized. User workstations 100 communicate directly with a plurality of remote devices 101, each directly connected to an associated wireless computer interface module (WCIM 105). Each WCIM 105 has a wireless communications device 107 to communicate with one of a plurality of WUSTs 115. Although shown as a desktop user workstation, one of skill in the art will recognize that user workstation 100 may also be a portable device such as a laptop, PDA, or tablet PC. Advantageously, utilizing a portable device enables a user to move around within range of the remote devices and still maintain access and control. A crash cart or mesh topology technique may easily be implemented in such a setup. During operation, WUST 115, using the wireless communications device 113, communicates wirelessly with any one of the plurality of WCIMs 105. Specifically, WUST 115 transmits keyboard and cursor control device signals, preferably as TCP/IP data packets, over wireless communications path 109 to a select WCIM 105. Simultaneously, WCIM 105 transmits compressed video data signals, also preferably as TCP/IP data packets, over wireless communications path 109 to WUST 115. Thus, the
system of the present invention enables a user at user workstation 100 to view and control any one of a plurality of remote devices 101 via wireless communications path 109.
Although 802.1 1 compliant wireless communications is the preferred wireless standard for use with the present invention, other types of wireless connections such as infrared communications or Bluetooth compliant communications may be utilized, depending on the specific needs of the system user. 802.11 compliant communications is preferred because it allows for the creation of a peer-to-peer wireless local area network ("WLAN"), where devices (e.g., WUSTs 115) automatically discover other devices (e.g., WCIMs 105) in the network. In ad-hoc, any one of a number of user workstations 100 can connect with any one of a number of remote devices 101. By configuring all WCIMs 105 and WUSTs 115 with the same service set identifier (SSID), WCIMs 105 and WUSTs 115 can automatically "discover" other devices within range of communications. For many commercially available 802.11 compliant devices, the maximum range of communications is three hundred (300) feet. The selection and control of remote devices 101 by user workstations 100 is accomplished through a variety of methods . A menu or list of available remote computers 117 is displayed on the screen of video monitor 105. WUST 1 15 can utilize information provided by the wireless network to update the option menu displayed to the user with a list of available remote computers. The option menu may also give the user the ability to manually adjust video settings to improve the quality of the transmitted video.
Referring next to FIG. 5, depicted is a flow chart that details the exchange of
information between a WCIM 105 and WUST 115 in ad-hoc mode necessary to establish
a connection between a user workstation 100 (including WUST 115, keyboard 119, monitor 121, and cursor control device 121) and a remote device 101. The flow chart begins with WCIM 105 (coupled to remote device 101 ) and WUST 115 (with associated keyboard 119, monitor 117 and cursor control device 121) also entering the same network (steps 401 and 403). Entering the network may simply entail coming within a range of communications, being powered-on, etc. As described above, the 802.11 standard supports ad-hoc dynamic networks where wireless devices can automatically enter a wireless network. In step 405, WCIM 105 sends a broadcast message 406 that preferably includes identification information related to its associated remote device 101. WCIM 105 may be configured to periodically send these broadcast messages to alert WUSTs 115 entering the network of the availability of the associated remote device. Immediately after entering the network, WUST 115 enters a state in which it listens for these broadcast messages (step 407). Upon receipt of a broadcast message, WUST 115 updates the list of available devices displayed to the user on video monitor 117 (step 409). In an alternative embodiment, WUSTs 115 send broadcast messages that request responses from WCIMs 105. Upon receipt of the broadcast message, WCIM 105 responds with identification information about its associated remote device 101. WUST 115 updates the list of available servers utilizing the identification information. WUST 115 displays a list of available remote devices 101 to the user, which is updated upon detection of any WCIM 105 entering or leaving the network (step 409). If
the user selects a remote device 101 from this list (step 411), WUST 115 sends a connection request 414 over the broadcast channel (step 413). WCIM 105, which is in a
waiting state (step 415), can deny the request or accept the request (step 417). For example, if the associated remote device 101 of WCIM 105 is under control of a different WUST 115, WCIM 105 denies the request. If WCIM 105 denies the request, a denial message is sent to WUST 115. IfWCIM 105 accepts the request, WCIM 105 sends an acknowledgment message to WUST 115 (acknowledgment message 419). Once WUST 115 sends connection request 414, it enters a waiting state (step 421) where it remains until it receives acknowledgment message 419. Preferably, connection request 414 includes a channel ID, selected by WUST 115, through which WUST 115 and WCIM 105 communicate upon acceptance and acknowledgement of request 414. As described earlier, an advantage of the 802.11 standard is that it allows for multiple channels of communication within the same network. Upon acceptance of the connection, WCIM 105 sends acknowledgment message 419 on the requested channel. WUST 115 then begins to transmit TCP/IP data 424, which includes keyboard and cursor control device data from keyboard 119, and cursor control device 121 (step 423). WUST 115 sends this data over wireless communications path 109 to WCIM 105 through the selected channel. WCIM 105 receives the data and utilizes this data to generate signals for the keyboard port 305 and cursor control device port 307 of the remote device 101. WCIM 105 begins to receive video data from its associated remote device 101. WCIM 105 receives the video data, digitizes the data, and communicates the data,
preferably as TCP/IP data 422, through wireless communications path 109 (step 421). This communication continues until the user of WUST 115 selects a different remote
device 101 to control. To choose a different remote device 101, a user at WUST 115 enters a command on keyboard 1 19 or via cursor control device 121. This command instructs WUST 115 to display an option menu of available remote devices 101 on monitor 117. The option menu includes a list of available remote devices 101 , as determined by the receipt of the broadcast messages from associated WCIMs 105 (step 409). As previously discussed, the option menu may also be a GUI, which can include groups and descriptions of available servers, icons representing each server, etc. If the option menu is developed with software, it can have the look and feel of a standard environment (e.g., Windows, Macintosh, Java, etc). A user can select a remote device 101 from the option menu, which initiates transmission of a connection request (step 413) over the broadcast channel. FIG. 6 is another embodiment of the present invention, in which multiple remote devices 101 are interfaced to one composite WCIM 601. Composite WCIM 601 is similar to WCIM 105, but with increased capabilities (e.g., additional KVM ports and additional wireless devices). Advantageously, composite WCIM 601 enables the present invention to connect multiple remote devices 101 with minimal hardware. Although the architecture of a composite WCIM 601 can vary, one example is shown in FIG. 7. Notably, composite WCIM 601 comprises similar components to WCIM 105 (FIG. 3), including WCIM CPU 711, buffer-in 713, buffer-out 715, and memory 719. To accommodate multiple remote devices 101 (three (3) are shown in FIG.
7, but more could be accommodated), composite WCIM 601 comprises multiple KVM ports 701, multiple UARTs 717 and multiple video conditioning circuits 709. WCIM CPU 711 must have the capability to receive input from multiple sources and memory 719 must be capable of storing identification information for each attached remote device 101. Finally, composite WCIM 601 may have multiple wireless devices 107 to increase available bandwidth for communication to WUSTs 115 (FIG. 1). While the present invention has been described with reference to the preferred embodiments and several alternative embodiments, which embodiments have been set forth in considerable detail for the purposes of making a complete disclosure of the invention, such embodiments are merely exemplary and are not intended to be limiting or represent an exhaustive enumeration of all aspects of the invention. The scope of the invention, therefore, shall be defined solely by the following claims. Further, it will be apparent to those of skill in the art that numerous changes may be made in such details without departing from the spirit and the principles of the invention. It should be appreciated that the present invention is capable of being embodied in other forms without departing from its essential characteristics.
Next Patent: REDUCED-REFERENCE VISUAL COMMUNICATION QUALITY ASSESSMENT USING DATA HIDING