Abstract: A method and system for remote processing of data in a peripheral electronic device connected to a local host via a network from a remote host is provided. The method includes broad casting a presence of the data on the peripheral electronic device by the local host on a network neighborhood of the network. The method also includes identifying a service and a capability of a plurality of remote hosts in the network by the local host during broad casting. Further the method includes selecting the remote host from among the remote hosts by the local host based on the identification. Furthermore, the method includes transferring the data to the selected remote host for remote processing. The system includes the peripheral device connected to the local host. The system also includes the local host for identifying a service and capability and the remote host in communication with the local host.
METHOD AND SYSTEM FOR REMOTE PROCESSING OF DATA IN A PERIPHERAL ELECTRONIC DEVICE CONNECTED TO A LOCAL HOST FROM A REMOTE HOST
FIELD
[0002] The present disclosure generally relates to the field of data processing, and more particularly it relates to the field of a method and system for remote processing of data in a peripheral electronic device connected to a local host from a remote host.
BACKGROUND
[0003] In a current scenario, one or more peripheral electronic devices including, for
example, a universal serial board drive, a Bluetooth device, a multimedia player, a
mobile communication device are connected to one or more local hosts, for example, a
computer, and a digital television to perform one or more operations on the data. In
order to perform operations on the data it is required to process the data in the local
2
hosts. Some of the local hosts lack a capability to process data in the peripheral electronic devices. Consider, for example, a computer without a real player cannot process a multimedia file in a real player format. In order to process the data, the peripheral electronic devices need to be directly connected to one or more remote hosts capable of processing the data in the peripheral devices, causing inconvenience during situations when the data needs to be processed within the local hosts for performing the operations on the data in the local host devices.
[0004] In light of the foregoing discussion there is a need for a method and a system for for remote processing of data in a peripheral electronic device from a remote host.
SUMMARY
[0005] Embodiments of the present disclosure described herein provide a method and a system for remote processing of data in a peripheral electronic device from a remote host.
[0006] An example of a method for remote processing of data in a peripheral electronic device from a remote host includes broad casting a presence of the data on the peripheral electronic device by the local host on a network neighborhood of the network. The method also includes identifying a service and a capability of a plurality of remote hosts in the network by the local host during broad casting. Further the method includes selecting the remote host from among the plurality of remote hosts by the local host based on the identification. Furthermore, the method includes transferring the data on the peripheral electronic device to the selected remote host for remote processing.
3
[0007] An example of system for remote processing of data in a peripheral electronic device from a remote host includes the peripheral electronic device connected to the local host. The system also includes the local host. The local host includes a processor. The processor includes a broadcast unit for broad casting a presence of the data on the peripheral electronic device by the local host on a network neighborhood of the network, an identification unit for identifying a service and a capability of a plurality of remote hosts in the network by the local host during broad casting, a selection unit for selecting the remote host from among the plurality of remote hosts by the local host based on the identification, and a transfer unit for transferring the data on the peripheral electronic device to the selected remote host for remote processing. The system further includes the remote host in communication with the local host via the network for remote processing of data in a peripheral electronic device.
BRIEF DESCRIPTION OF FIGURES
[0008] The accompanying figures, similar reference numerals may refer to identical or functionally similar elements. These reference numerals are used in the detailed description to illustrate various embodiments and to explain various aspects and advantages of the present disclosure.
[0009] FIG. 1 is a block diagram of a local host for remote processing of data in a peripheral electronic device connected to the local host from a remote host via a network, in accordance with one embodiment; and
4
[0010] FIG. 2 is a flow chart illustrating a method for remote processing of data in a peripheral electronic device connected to a local host from a remote host via a network, in accordance with one embodiment.
[0011] Persons skilled in the art will appreciate that elements in the figures are illustrated for simplicity and clarity and may have not been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present disclosure.
DETAILED DESCRIPTION
[0012] It should be observed that method steps and system components have been represented by conventional symbols in the figures, showing only specific details that are relevant for an understanding of the present disclosure. Further, details that may be readily apparent to person ordinarily skilled in the art may not have been disclosed. In the present disclosure, relational terms such as primary and secondary, first and second, and the like, may be used to distinguish one entity from another entity, without necessarily implying any actual relationship or order between such entities.
[0013] Embodiments of the present disclosure described herein provide a method and a system for remote processing of data in a peripheral electronic device connected to a local host from a remote host via a network. The system includes the peripheral device connected to the local host. The system further includes the remote host in communication with the local host via the network for remote processing of data in a
5
peripheral electronic device. The peripheral electronic device includes, but is not limited to any electronic device connectable to the local host. Examples of the peripheral electronic device includes, but is not limited to, a computing device, for example, a laptop, a personal computer, electronic communication devices, for example, a mobile communication device, a personal digital assitant, portable electronic devices, for example,a universal serial bus drive, a Bluetooth device, a portable multimedia player, and digital electronic devices, for example, a digital television, a digital printer. The local host and the remote host includes, but is not limited to any electronic device.
[0014] FIG. 1 is a block diagram of a local host 105 including various units for remote processing of data in a peripheral electronic device connected to the local host 105 from a remote host. The local host 105 includes a processor 110 operatively coupled with a bus 115 . The processor 110 controls and processes various functionalities of the local host 105. The processor 110 includes a broadcast unit 120 for broad casting a presence of the data on the peripheral electronic device by the local host 105 on a network neighborhood of the network. The processor 110 also includes an identification unit 125 for identifying a service and a capability of a plurality of remote hosts in the network by the local host 105 during broad casting. The processor 110 further includes a selection unit 130 for selecting the remote host from among the plurality of remote hosts by the local host 105 based on the identification. Furthermore, the processor 110 includes a transfer unit 135 for transferring the data on the peripheral electronic device to the selected remote host for remote processing. In some embodiments, the processor 110
6
also includes a reception unit for receiving information regarding service and capability from the remote hosts and a determination unit for determining suitability of the received information by the local host 105 for remote processing of the data.
[0015] The local host 105 also includes a memory such as a random access memory (RAM) or other dynamic storage device, coupled to the bus 115 for storing information which can be used by the processor 110. The memory can be used for storing any temporary information required. The local host 105 further includes a read only memory (ROM) or other static storage device coupled to the bus 115 for storing static information for the processor 110.
[0016] The local host 105 can be coupled via the bus 115 to a display unit 150, such as a cathode ray tube (CRT), a liquid crystal display (LCD) or a light emitting diode (LED) display, for rendering the display images to one or more users. An input device including alphanumeric and other keys, is coupled to the bus 115 for communicating an input to the processor 110. The input device can be included in the local host 105. Another type of user input device is a cursor control, such as a mouse, a trackball, or cursor direction keys for communicating the input to the processor 110 and for controlling cursor movement on the display unit 150. The input device can also be included in the display unit 150, for example a touch screen. In some embodiments the local host 105 is coupled via the bus 115 to a user interface 160.
7
[0017] Various embodiments are related to the use of the local host 105 for implementing the techniques described herein. In one embodiment, the techniques are performed by the processor 110 using information included in the memory. The information can be read into the memory from another machine-readable medium, such as a storage unit.The term “machine-readable medium” as used herein refers to any medium that participates in providing data that causes a machine to operate in a specific fashion. In an embodiment implemented using the local host 105, various machine-readable medium are involved, for example, in providing information to the processor 110. The machine-readable medium can be a storage media. Storage media includes both non-volatile media and volatile media.
[0018] FIG. 2 is a flow chart illustrating a method for remote processing of data in a peripheral electronic device connected to a local host from a remote host via a network, in accordance with one embodiment. The peripheral electronic device includes, but is not limited to any electronic device connectable to the local host. Examples of the peripheral electronic device includes, but is not limited to, a computing device, for example, a laptop, a personal computer, electronic communication devices, for example, a mobile communication device, a personal digital assistant, portable electronic devices, for example,a universal serial bus drive, a Bluetooth device, a portable multimedia player, and digital electronic devices, for example, a digital television, a digital printer.
8
[0019] The method starts at step 205.
[0020] At step 210, a presence of the data on the peripheral electronic device is broadcasted by the local host on a network neighborhood of the network.
[0021] During announcement of the newly connected peripheral electronic device, a local host broadcasts presence of the peripheral electronic device on the network, on being ready to enable access to the remote host. Consider, for example, in case of bluetooth devices, announcement of the newly connected peripheral device is done using an inquiry and response protocol, and also considers a sleep and hold time intervals for better power management. For allowing the access to data of the peripheral electronic device, a peripheral electronic device driver on the local host generates a device description request packet, tees off the device description request packet into the network stack, after encapsulating device description request packet in a network-specific frame. The network specific frame is intended for a single remote-host selected using a user-input and/or media-capability description shared during the network setup. Alternatively, the frame is multi-cast on the network by, for example, using one or more native capabilities or by a repeat transmission using a network stack modification. All the remote hosts respond to the device description request packet. One or more device description request packets for enumeration procedure are filtered by the primary host, taking a cue from user input and/or the media-capability description from a database server.
[0022] A network data packet containing the device request packets when received
by a target stack on a server of the network are treated similar to the any of the normal
9
network-data packets till the network data packet reach a session layer. In the session layer an application server, for example, a peripheral electronic device entity, receives and records the device request packets. Also, the peripheral electronic device entity performs one or more operations and routes the device request packets to the host controller driver with a pre-configured software interrupt.
[0023] During the enumeration process, on reception of the encapsulated device description request packet, the peripheral electronic device entity generates a pseudo-interrupt for the peripheral electronic device stack. The pseudo interrupt triggers the enumeration process on the remote host. The remote host then continues to enumerate the peripheral electronic device. On the peripheral electronic device stack on the remote host, the host controller driver routes all the data packets to the network stack, adhering to one or more protocol frame requirements of the network. All the encapsulated enumeration device description request packets are marked for the local host and routed back from the network stack to the peripheral electronic device stack via the peripheral electronic device entity. The transfer of device description request packets between the local host and remote host can continue as many times as needed for the peripheral electronic device connection to be set up. All the device description request packets flow through the peripheral electronic device entity, that allows filtering and controlling of the incoming requests and out-flowing data by the user.
[0024] Each remote host in the network is equipped with a suitable peripheral
electronic device stack and a network stack, suitably adapted to support remote
10
processing of data in the peripheral electronic device. The peripheral electronic device stack allows an auto detection mechanism to be launched using a psuedo interrupt to initiate detection of the peripheral electronic device by one or more remote hosts. The detection of the peripheral electronic device is triggered by an enumeration process on the pseudo interrupt. The auto detection mechanism involves generation of an external interrupt that announces a peripheral electronic device event to the remote host. The processor of the remote host responds with an identification of capability for processing the data in the peripheral electronic device, thereby setting up a session with the local host. Consider for example, a procedure of USB function discovery is triggered by an electrical signal, is generated when a physical connection of the USB function acts like an electrical sink for a ‘D+’ line on the local host, maintained at +5V level causing causing a high to low transition.
[0025] The high to low transition generates an interrupt on the processor. The interrupt is handled by a host controller driver in a USB stack, which further notifies a USB core layer of the USB stack. The USB core layer then responds to the interrupt by sending a reset signal to USB function. A USB enumeration process is started that ends with activation of an appropriate USB class driver above the USB core layer and creation of a data and command pipe between host HCI and a function device driver. The network stack on the remote host can be modified without using any additional device or hardware, for example, an adapter. The peripheral electronic device stack on the remote host allows teeing multiple device request packets to the network stack.
11
[0026] The device request packets include, but are not limited to, upstream device request packets and downstream device request packets. The peripheral electronic device stack of the remote host should be able to copy the upstream device request packets or the downstream device request packets and route to another network stack. A capability of a peripheral electronic device driver is needed for exchange of a response between the remote host and the peripheral electronic device and for transfer of data between the remote host, the peripheral electronic device, and the local host. Also, appropriate protocol encapsulation, for example, one or more network data representation headers, are generated for the device-request packets, so that the device request packets impersonate one or more normal packets on the network. The network stack allows insertion of transmission data from multiple sources.
[0027] In some embodiments the network stack carries the encapsulated device request packets and allows a data flow mechanism to serve multiple data-producers to enable data flow across one or more protocol boundaries. The data flow across one or more protocol boundries does not violate a protocol syntax as the device request packets are encapsulated to appear identical to normal network data.
[0028] At steo 215, a service and a capability of a plurality of remote hosts in the
network is identified by the local host during broad casting. To identify service and
capability of the remote hosts, information regarding service and capability is received
from the remote hosts by the local host and a suitability of the received information for
remote processing of the data is determined by the local host.
12
[0029] To allow identification of service and capability of the remote host the operation of the network includes network set up, providing access to the data of the peripheral electronic device to the remote host, and exchange of media capability information. The network setup pertains to the initialization of one or more communication channels among the remote hosts on the network. The network setup includes network node discovery and exchange of media description. The network node discovery is for example, broadcasting capability of the remote hosts to one or more devices in the network through service discovery in devices with a Bluetooth. Providing access to data in the peripheral electronic device to a remote host includes hand off by the local host and take over by the remote host. During network node discovery each remote host broadcasts the presence to one or more devices in the network using one or more native methods of the network protocol.
[0030] Further, the remote host announces the presence with a unique network signature. The unique network signature is used as a network identity for all communications of the remote hosts. During the exchange of the media capability description the network uses a system of pre-cached media capability to decide the remote hosts that may take over the control of data on the peripheral electronic device, once connected. The media capability description is an extendable set of capability feature, level of capability, and a user readable
13
description. The media capability description is maintained by each network node in a mesh-connected network. However, in star connected networks the media capability descriptions for all remote hosts are maintained on a central media-server, is accessed for deciding upon a set of appropriate remote hosts to be used for transfer of a control.
[0031] In both star connected and mesh connected networks, the remote hosts have an option of storing a set of personal-preferences for each available remote host. Further, both of a pair of data bases including a media description data base and per remote host preference database can be edited by a user using any network, with a required capability, for example, a multimedia player may not be able to provide a user-friendly means of editing a preference data, hence editing of the preference data may then be performed on a personal computer or a smart phone. The editing may be done on the fly if the peripheral electronic device is available on the network or the editing may be done in an offline-basis.
[0032] Each of the remote hosts has a capability to broadcast a remote network identifier on coming alive. In case of Bluetooth devices, the broadcasting is achieved via inquiry and response protocol, and the capability of remote hosts is made known to one or more devices in the network via a service discovery, a logical link , and a connection establishment.
14
[0033] At step 220, the remote host is selected from among the plurality of remote hosts by the local host based on the identification.
[0034] At step 225, the data on the peripheral electronic device is transferred to the selected remote host for remote processing.
[0035] During data transfer between the remote host and the peripheral electronic device function, the flow of device description request packets is maintained to solve problems associated with bulk transfer request. The peripheral electronic devic entity exposes an interface for speed control based on a transfer speed profiles provided in peripheral electronic device protocol specification. This interface also contains suggestions regarding a most appropriate transfer speed profile depending on network connectivity. The suggetsions are enforced during the enumeration process and hence, the rate of data-transfer can be adjusted as per network conditions and media requirements.
[0036] Transferring the data to the remote host is followed by a process of accessing
data on the peripheral electronic device, hand off by the local host, taking over by the
remote host, followed by a supervisor mode of connections. The process of accessing
data on the peripheral electronic device can be initiated either by the local host or by the
remote node. There also exists a case in which the user might want to maintain a
supervisor level permission on all connections being made in the network under
concern. During hand off by the local host, the local host initiates a process of handing
off the access of the data in the peripheral electronic device to an appropriate remote
host. Remote processing of data can be advantageous when a user wishes to move to
15
a different location, and still wants to continue accessing some data from the peripheral electronic device connected to the network and when the local host of the user is incapable of handling the data on peripheral electronic device and another local host possesses the capability or a better degree of capability but is incapable to hosting the peripheral electronic device. During taking over by the remote host, the remote host initiates the process of initiating access of data on peripheral electronic device. During supervisor mode of connections the peripheral electronic device is disconnected followed by the disconnection of the remote host.
[0037] The method stops at 230.
[0038] In the preceding specification, the present disclosure and its advantages have been described with reference to specific embodiments. However, it will be apparent to a person of ordinary skill in the art that various modifications and changes can be made, without departing from the scope of the present disclosure, as set forth in the claims below. Accordingly, the specification and figures are to be regarded as illustrative examples of the present disclosure, rather than in restrictive sense. All such possible modifications are intended to be included within the scope of present disclosure.
16
I/ We claim:
1. A method for remote processing of data in a peripheral electronic device connected
to a local host from a remote host via a network, the method comprising:
broad casting a presence of the data on the peripheral electronic device by the local host on a network neighborhood of the network;
identifying a service and a capability of a plurality of remote hosts in the network by the local host during broad casting;
selecting the remote host from among the plurality of remote hosts by the local host based on the identification; and
transferring the data on the peripheral electronic device to the selected remote host for remote processing.
2. The method of claim 1, wherein identifying the service and the capability of the
remote hosts comprises:
receiving information regarding service and capability from the remote hosts by the local host; and
determining suitability of the received information by the local host for remote processing of the data.
17
3. The method of claim 1, wherein the local host lacks a capability to execute and process the data, and the remote host has the capability to execute and process the data.
4. The method of claim 1, wherein of the remote hosts in the network is equipped with a protocol handler for the peripheral electronic device.
5. The method of claim 1, further comprising:
modifying a network stack on the remote host comprising:
enabling a the peripheral electronic device stack to trigger an enumeration process on a software interrupt.
6. The method of claim 5, wherein a network stack on the remote host is modifiable independent of an additional device and hardware.
7. The method of claim 5, wherein the network stack allows insertion of a transmission data from a plurality of sources.
8. The method of claim 6, wherein the modification of the network stack on the remote host is employed to simulate discovery of the peripheral electronic device on the remote host.
18
9. The method of claim 5, wherein enabling the peripheral electronic device stack
comprises:
teeing of a plurality of device request packets comprising at least one of upstream device request packets and downstream device request packets to a network stack; and
routing the device request packets to another network stack for exchanging a command response between the remote host of the peripheral electronic device and for transfer of data between the remote host and the peripheral device.
10. A system for remote processing of data in a peripheral electronic device connected
to a local host from a remote host via a network, the system comprising:
the peripheral device connected to the local host;
the local host comprising:
a processor comprising:
a broadcast unit for broad casting a presence of the data on the peripheral electronic device by the local host on a network neighborhood of the network;
an identification unit for identifying a service and a capability of a plurality of remote hosts in the network by the local host during broad casting;
19
a selection unit for selecting the remote host from among the plurality of remote hosts by the local host based on the identification; and
a transfer unit for transferring the data on the peripheral electronic device to the selected remote host for remote processing; and
the remote host in communication with the local host via the network for remote processing of data in a peripheral electronic device.
11. The system of claim 10, wherein the peripheral electronic devices comprise one or more of computing devices, electronic communication devices, portable electronic devices, and digital electronic devices.
12. The system of clam 10, wherein the processor further comprises:
a reception unit for receiving information regarding service and capability from the remote hosts; and
a determination unit for determining suitability of the received information by the local host for remote processing of the data.
| # | Name | Date |
|---|---|---|
| 1 | 2955-che-2009 power of attorney 17-05-2010.pdf | 2010-05-17 |
| 1 | 2955-CHE-2009-AbandonedLetter.pdf | 2018-05-07 |
| 2 | 2955-CHE-2009-DUPLICATE-FER-2017-11-01-11-26-11.pdf | 2017-11-01 |
| 2 | 2955-che-2009 form-1 17-05-2010.pdf | 2010-05-17 |
| 3 | 2955-CHE-2009-FER.pdf | 2017-10-25 |
| 3 | 2955-CHE-2009 CORRESPONDENCE OTHERS 27-06-2011.pdf | 2011-06-27 |
| 4 | 2955-CHE-2009 FORM-18 27-06-2011.pdf | 2011-06-27 |
| 4 | Drawings.pdf | 2011-09-04 |
| 5 | Form-1.pdf | 2011-09-04 |
| 5 | 2955-CHE-2009 POWER OF ATTORNEY 27-06-2011.pdf | 2011-06-27 |
| 6 | Power of Authority.pdf | 2011-09-04 |
| 6 | Form-3.pdf | 2011-09-04 |
| 7 | Form-5.pdf | 2011-09-04 |
| 8 | Power of Authority.pdf | 2011-09-04 |
| 8 | Form-3.pdf | 2011-09-04 |
| 9 | Form-1.pdf | 2011-09-04 |
| 9 | 2955-CHE-2009 POWER OF ATTORNEY 27-06-2011.pdf | 2011-06-27 |
| 10 | 2955-CHE-2009 FORM-18 27-06-2011.pdf | 2011-06-27 |
| 10 | Drawings.pdf | 2011-09-04 |
| 11 | 2955-CHE-2009 CORRESPONDENCE OTHERS 27-06-2011.pdf | 2011-06-27 |
| 11 | 2955-CHE-2009-FER.pdf | 2017-10-25 |
| 12 | 2955-CHE-2009-DUPLICATE-FER-2017-11-01-11-26-11.pdf | 2017-11-01 |
| 12 | 2955-che-2009 form-1 17-05-2010.pdf | 2010-05-17 |
| 13 | 2955-CHE-2009-AbandonedLetter.pdf | 2018-05-07 |
| 13 | 2955-che-2009 power of attorney 17-05-2010.pdf | 2010-05-17 |
| 1 | search_2955_10-10-2017.pdf |