Abstract: The embodiments disclosed herein relate to a method and system for enabling use of I/O devices associated with the client system in a virtual communication network. The I/O devices to be used are connected to the physical interface associated with the client systems. The system splits the device driver corresponding to the connected system into a real part and a virtual part. The real part of the device driver is installed in the client system and the virtual part of the device driver is installed in the virtual server system. Further the real part of device drivers and the virtual part of device drivers are connected to each other through a high speed access channel. The virtual device driver emulates the type of interface as a result of which the specific device can be installed in the virtual server system without any changes. FIG. 3
FORM 2
The Patent Act 1970
(39 of 1970)
&
The Patent Rules 2005
COMPLETE SPECIFICATION
(SEE SECTION 10 AND RULE 13)
TITLE OF THE INVENTION
“Local I/O Device Connection in Virtual PC”
APPLICANT:
Name Nationality Address
Alcatel Lucent France 3 avenue Octave Greard 75007 Paris
The following specification particularly describes and ascertains the nature of this invention and the manner in which it is to be performed:-
TECHNICAL FIELD
[001] The embodiments herein relate to communication and more particularly to a system and method for enabling use of Input/Output (I/O) devices connected to the local system in a virtual communication network.
BACKGROUND
[002] In the past few decades computers have undergone a gradual change from a luxury symbol to a common man’s necessity. Computers are being used in most of the households for purposes like data storage entertainment purposes such as watching movies and playing songs and games accessing internet for information retrieval and communication online shopping and so on.
[003] However computers are provided with fixed storage capacity. The limited memory of computers further limits the amount of data that can be stored in the computer. Various softwares demand use of large system memory for the purpose of installation. Further reduced system memory may even affect the system performance adversely.
[004] The method of virtual computing has an important role in this situation. In a virtual computing network multiple client systems are connected with a central virtual server. The central virtual server has large storage capacity. Further all the software applications required for a group of users for example employees in an organization is installed into the central virtual server. The client systems can access the softwares being installed in the central virtual server without actually installing the softwares in the client systems. Further the central virtual server can also store the data backup from the client systems which can be accessed by the client systems at a later stage. By means of this mechanism the virtual computing network can compromise the storage space requirement of the client systems. Further the cost associated with installing softwares in each computer of an organization can be reduced by implementing virtual computing method.
[005] Therefore the virtual communication networks improve system performance by providing virtual storage space to the client systems. The virtual communication systems further reduces the installation cost associated with various software and hardware requirements of the client systems.
[006] However the virtual communication network has certain disadvantages. They do not enable the use of Input/Output (I/O) devices such as webcam audio devices and so on associated with the local client systems and hence the user will not be able to connect and use any I/O device with their own system. This creates a usage gap between client computer and the virtual server computer.
SUMMARY
In view of the foregoing an embodiment herein provides a method for enabling a user of a virtual server to use local I/O devices on the virtual server the method comprising of splitting drivers of an I/O device into a real part (where the real part of the drivers is generic with respect to interface being used by the I/O device) and a virtual part by a client system connected to the client system where the client system is used by the user to connect to the virtual server; installing the real part of the drivers in the client system; and installing the virtual part of the drivers in the virtual server. The virtual part of the drivers emulates type of interface being used by the I/O device. The method further comprises of installing driver of the I/O device in the virtual server wherein the driver is installed above the virtual part of the driver.
[007] Also disclosed herein is a system for enabling a user of a virtual server to use local I/O devices on the virtual server the system comprising of at least one means configured for splitting drivers of an I/O device into a real part and a virtual part connected to the client system where the client system is used by the user to connect to the virtual server; installing the real part of the drivers in the client system; and installing the virtual part of the drivers in the virtual server. The system is further configured for emulating type of interface being used by the I/O device using the virtual part of the drivers. The system is further configured for installing driver of the I/O device in the virtual server wherein the driver is installed above the virtual part of the driver.
[008] These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings.
BRIEF DESCRIPTION OF THE FIGURES
[009] The embodiments herein will be better understood from the following detailed description with reference to the drawings in which:
[0010] FIG. 1 illustrates a general block diagram of the virtual communication network as disclosed in the embodiments herein;
[0011] FIG. 2 illustrates a block diagram which describes the proposed virtual communication system as disclosed in the embodiments herein; and
[0012] FIG. 3 illustrates a flow diagram which describes the process of enabling Input/Output (I/O) devices in a virtual communication network as disclosed in the embodiments herein.
DETAILED DESCRIPTION OF EMBODIMENTS
[0013] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly the examples should not be construed as limiting the scope of the embodiments herein.
[0014] The embodiments herein disclose a system and method for enabling I/O devices in a virtual communication network by splitting the device drivers of Input/Output (I/O) devices to real and virtual parts. Referring now to the drawings and more particularly to FIGS. 1 through 3 where similar reference characters denote corresponding features consistently throughout the figures there are shown embodiments.
[0015] FIG. 1 illustrates a general block diagram of the virtual communication network as disclosed in the embodiments herein. The system comprises at least one client system 101 a channel 102 a network 104 and a virtual server 103. The client system 101 is located at the user end. The client system 101 may be a computing device such as a laptop desktop tablet PDA or any other device capable of accessing a virtual server using a suitable network. The client systems 101 can access the virtual server 103 through a channel 102. The client systems 101 can remotely access the services and/or applications from the virtual server 103. The channel 102 may be wireless and/or a wired channel via a suitable network 104. The channel 102 may be a high speed access channel such as xDSL GPON Ethernet and/or any such suitable high speed channels. The network 104 may be the internet a Local Area Network a Wide Area Network a cellular communication network based network or any other network capable of enabling the client system 101 access the virtual server. Various softwares and application programs may be installed in the virtual server 103. The services and/or applications present in the virtual server 103 may comprise of operating and utility systems storage memory software allocation and reassignment of input or output data backup automated problem solving and troubleshooting monitoring and management tools and/or any such services being offered by the virtual server 103. Either a single client system 101 or a plurality of client systems 101 can access the services from the virtual server 103 at a time.
[0016] FIG. 2 illustrates a block diagram which describes the proposed virtual communication system as disclosed in the embodiments herein. The system comprises of the client system 101 the channel 102 and the virtual server 103. The client system 101 further comprises of a plurality of physical interfaces (pI) 201 and corresponding Device Drivers (DD) 202. The virtual server 103 further comprises of an operating system (OS) 204 and associated virtual device drivers (VD) 203. The client system 101 is connected to the virtual server 103 through the channel 102 and 104. The I/O devices may be connected to the client system 101 through the physical interfaces 201. In another embodiment the physical interface 201 may refer to a serial port a parallel port a USB connector a card interface (where the card may be a SD card a Memory Stick a compact flash card XD card and so on) mic and/or any such suitable interface. Further the physical interfaces 201 are connected to the corresponding device drivers (DD) 202. In one embodiment the device driver may be software and/or a program that facilitates a communication between high level computer programs and the hardware I/O devices connected at the physical interface 201. The device drivers (DD) 202 may issue commands for the physical device connected at the physical interface 201. The device drivers (DD) 202 are generic with respect to the type of interface. The DD 202 may treats all devices connected to the physical interface 201 as belonging to the same category and may not distinguish the type of the device being connected. The device drivers DD 202 packetizes the data received from the I/O devices and sends the packetized data to the virtual server system 103. Further the device drivers (DD) 202 are connected to virtual device drivers (VD) 203 associated with the Operating system (OS) 204 of the virtual server system 103. In one embodiment the VD 203 may be generic and may emulate the type of interface on the virtual server system 103. Further the device driver for a particular I/O device is installed on the virtual server system 203 above the virtual driver VD 203. Further as the virtual part of the driver emulates the type of interface the driver for that particular device can be installed on the virtual server system 103 without making any changes. The VD 203 accepts the packetized data from the DD 202 and depacketizes the received data. As a result of this mechanism the virtual server system 103 recognizes the I/O device connected to the client system 101.
[0017] FIG. 3 illustrates a flow diagram which describes the process of enabling I/O devices in a virtual communication network as disclosed in the embodiments herein. A user may attempt to connect (301) the I/O devices such as webcam mic headphone speaker and/or any such devices to the client system 101 through a suitable physical interface 201. The system recognizes the presence of an I/O device at the physical interface and splits (302) the device driver corresponding to the recognized I/O device into two parts; a real part and a virtual part. Further the real part of the device driver DD 202 is installed (303) in the client system 101 and the virtual part of the device driver VD 203 is installed (304) in the operating system of the virtual server system 103. In one embodiment the real part of the device driver DD 202 may be generic with respect to the type of interface. The real part of the device driver DD 202 being generic may treat all devices connected to the physical interface 201 as belonging to the same category and may not distinguish the type of the device. In another embodiment the virtual part of the device driver VD 203 may be generic and may emulate the type of interface on the virtual server system 103 as a result of which the device driver for that particular device can be installed on the virtual server system 103 without any changes. Further using this method a user can connect any I/O device to the client system 101 and the corresponding server can be installed in the virtual server system 103. Further the user can access (305) the I/O devices connected to own computer and at the same time benefits of virtualizations can also be enjoyed. In another embodiment the proposed system may support applications such as video conferencing gaming audio conferencing and so on at the client side by enabling use of I/O devices at the client end. The device driver DD 202 packetizes the data communicated by the associated I/O devices transmits the packetized data to the virtual server system 103. The virtual device drivers VD 203 associated with the virtual server system 103 depacketizes the received data packets to facilitate further processing of the data at the virtual server system 103. This helps the virtual device driver VD 203 to emulate the type of interface which inturn helps the installation of driver at the virtual server system 103 without any changes. The various actions in method 300 may be performed in the order presented in a different order or simultaneously. Further in some embodiments some actions listed in FIG. 3 may be omitted.
[0018] The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the network elements. The network elements shown in Fig. 2 include blocks which can be at least one of a hardware device or a combination of hardware device and software module.
[0019] The embodiment disclosed herein specifies a system for enabling use of I/O devices in a virtual communication network. The mechanism allows use of I/O devices associated with the client systems in a virtual communication network providing a system thereof. Therefore it is understood that the scope of the protection is extended to such a program and in addition to a computer readable means having a message therein such computer readable storage means contain program code means for implementation of one or more steps of the method when the program runs on a server or mobile device or any suitable programmable device. The method is implemented in a preferred embodiment through or together with a software program written in e.g. Very high speed integrated circuit Hardware Description Language (VHDL) another programming language or implemented by one or more VHDL or several software modules being executed on at least one hardware device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer or the like or any combination thereof e.g. one processor and two FPGAs. The device may also include means which could be e.g. hardware means like e.g. an ASIC or a combination of hardware and software means e.g. an ASIC and an FPGA or at least one microprocessor and at least one memory with software modules located therein. Thus the means are at least one hardware means and/or at least one software means. The method embodiments described herein could be implemented in pure hardware or partly in hardware and partly in software. The device may also include only software means. Alternatively the invention may be implemented on different hardware devices e.g. using a plurality of CPUs.
[0020] The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can by applying current knowledge readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept and therefore such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore while the embodiments herein have been described in terms of preferred embodiments those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the claims as described herein.
CLAIMS
We claim:
1. A method for enabling a user of a virtual server to use local I/O devices on said virtual server said method comprising of
Splitting drivers of an I/O device into a real part and a virtual part by a client system connected to said client system where said client system is used by said user to connect to said virtual server;
Installing said real part of said drivers in said client system; and
Installing said virtual part of said drivers in said virtual server.
2. The method as claimed in claim 1 wherein said real part of said drivers is generic with respect to interface being used by said I/O device.
3. The method as claimed in claim 1 wherein said virtual part of said drivers emulates type of interface being used by said I/O device.
4. The method as claimed in claim 1 wherein said method further comprises of installing driver of said I/O device in said virtual server wherein said driver is installed above said virtual part of said driver.
5. A system for enabling a user of a virtual server to use local I/O devices on said virtual server said system comprising of at least one means configured for
Splitting drivers of an I/O device into a real part and a virtual part connected to said client system where said client system is used by said user to connect to said virtual server;
Installing said real part of said drivers in said client system; and
Installing said virtual part of said drivers in said virtual server.
6. The system as claimed in claim 5 wherein said system is further configured for emulating type of interface being used by said I/O device using said virtual part of said drivers.
7. The system as claimed in claim 5 wherein said system is further configured for installing driver of said I/O device in said virtual server wherein said driver is installed above said virtual part of said driver.
Date : 15th March 2012 Dr. Kalyan Chakravarthy
Patent Agent
ABSTRACT
The embodiments disclosed herein relate to a method and system for enabling use of I/O devices associated with the client system in a virtual communication network. The I/O devices to be used are connected to the physical interface associated with the client systems. The system splits the device driver corresponding to the connected system into a real part and a virtual part. The real part of the device driver is installed in the client system and the virtual part of the device driver is installed in the virtual server system. Further the real part of device drivers and the virtual part of device drivers are connected to each other through a high speed access channel. The virtual device driver emulates the type of interface as a result of which the specific device can be installed in the virtual server system without any changes.
FIG. 3
| # | Name | Date |
|---|---|---|
| 1 | abstract970-CHE-2012.jpg | 2013-04-11 |
| 1 | Power of Authority.pdf | 2012-03-20 |
| 2 | Drawings.pdf | 2012-03-20 |
| 2 | Form-5.pdf | 2012-03-20 |
| 3 | Form-1.pdf | 2012-03-20 |
| 3 | Form-3.pdf | 2012-03-20 |
| 4 | Form-1.pdf | 2012-03-20 |
| 4 | Form-3.pdf | 2012-03-20 |
| 5 | Drawings.pdf | 2012-03-20 |
| 5 | Form-5.pdf | 2012-03-20 |
| 6 | abstract970-CHE-2012.jpg | 2013-04-11 |
| 6 | Power of Authority.pdf | 2012-03-20 |