Remote access of peripheral device connected to serial bus
First Claim
1. A system comprising:
- a remote computing device comprising a serial bus, a hardware network component to connect the remote computing device to a network, and a hardware serial component to connect the remote computing device to a peripheral device connected over the serial bus;
a local computing device comprising;
a serial bus and a hardware serial component to connect the local computing device to a peripheral device over the serial bus;
a hardware network component to connect the local computing device to the network and a network driver for the hardware network component;
a first device driver for the peripheral device of the remote computing device;
a second device driver for the peripheral device of the local computing device;
an application computer program to;
generate first communication for the peripheral device of the remote computing device, the application computer program unaware that the peripheral device of the remote computing device is not of the local computing device; and
generate second communication for the peripheral device of the local computing device; and
a serial driver for the hardware serial component and separate from the first device driver and the second device driver, to;
receive from the application computer program the first communication despite the first communication being for the peripheral device of the remote computing device and not for the peripheral device of the local computing device;
after receiving the first communication, determine that the first communication is for the peripheral device of the remote computing device;
in response to determining that the first communication is for the peripheral device of the remote computing device, wrap the first communication within a network packet and send the network packet including the first communication to the network driver for transmission over the network to the hardware network component of the remote computing device for the hardware network component of the remote computing device to relay to the hardware serial component of the remote computing device to send to the peripheral device of the remote computing device over the serial bus of the remote computing device;
receive from the application computer program the second communication;
after receiving the second communication, determine that the second communication is for the peripheral device of the local computing device;
in response to determining that the second communication is for the peripheral device of the local computing device, send the second communication to the peripheral device of the local computing device over the serial bus of the local computing device,and wherein a serial driver of the remote computing device unwraps the first communication from the network packet upon the remote computing device receiving the network packet.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing device includes a hardware network component, a hardware serial component, device drivers, a network driver, and a serial driver. The hardware network component connects the computing device to other computing devices. The hardware serial component connects the computing device to peripheral devices over a serial bus. Each device driver is for one of these peripheral devices or for a peripheral device connected to a serial bus of one of the other computing devices. The network driver is for the hardware network component, and the serial driver is for the hardware serial component. The serial, network, and device drivers interact to permit the computing device to communicate with the peripheral devices of the other computing devices over a network. The device drivers for the peripheral devices of the other computing devices are unaware that these peripheral devices are not connected to the serial bus of the computing device.
38 Citations
18 Claims
-
1. A system comprising:
-
a remote computing device comprising a serial bus, a hardware network component to connect the remote computing device to a network, and a hardware serial component to connect the remote computing device to a peripheral device connected over the serial bus; a local computing device comprising; a serial bus and a hardware serial component to connect the local computing device to a peripheral device over the serial bus; a hardware network component to connect the local computing device to the network and a network driver for the hardware network component; a first device driver for the peripheral device of the remote computing device; a second device driver for the peripheral device of the local computing device; an application computer program to; generate first communication for the peripheral device of the remote computing device, the application computer program unaware that the peripheral device of the remote computing device is not of the local computing device; and generate second communication for the peripheral device of the local computing device; and a serial driver for the hardware serial component and separate from the first device driver and the second device driver, to; receive from the application computer program the first communication despite the first communication being for the peripheral device of the remote computing device and not for the peripheral device of the local computing device; after receiving the first communication, determine that the first communication is for the peripheral device of the remote computing device; in response to determining that the first communication is for the peripheral device of the remote computing device, wrap the first communication within a network packet and send the network packet including the first communication to the network driver for transmission over the network to the hardware network component of the remote computing device for the hardware network component of the remote computing device to relay to the hardware serial component of the remote computing device to send to the peripheral device of the remote computing device over the serial bus of the remote computing device; receive from the application computer program the second communication; after receiving the second communication, determine that the second communication is for the peripheral device of the local computing device; in response to determining that the second communication is for the peripheral device of the local computing device, send the second communication to the peripheral device of the local computing device over the serial bus of the local computing device, and wherein a serial driver of the remote computing device unwraps the first communication from the network packet upon the remote computing device receiving the network packet. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
receiving, by a device driver from an application computer program running on a local computing device for a peripheral device connected over a serial bus of a remote computing device, a communication for the peripheral device from an application computer program running on the local computing device; preparing, by the device driver, a frame including the communication; sending, by the device driver, the frame to a serial driver for a hardware serial component connecting a peripheral device of the local computing device to a serial bus of the local computing device; receiving, by the serial driver from the first driver the frame including the first communication, the application program unaware that the peripheral device of the remote computing device is not connected to a serial bus of the local computing device, the serial driver also receiving other communication for a local peripheral device of the local computing device connected to the hardware serial component; responsive to determining that the communication is for the peripheral device of the remote computing device and not for the local peripheral device of the local computing device, wrapping, by the serial driver, the frame including the communication within a network packet; sending, by the serial driver to a network driver for a hardware network component of the local computing device, the network packet within which the communication has been wrapped, the hardware network component connecting the local computing device to a network to which the remote computing device is connected; in response to the network driver receiving the network packet, relaying, by the network driver, the network packet to a hardware serial component of the remote computing device by which the remote computing device is connected to the network, wherein the peripheral device is connected to a serial bus of the remote computing device, the remote computing device having a hardware serial component to connect the remote computing device to the peripheral device, the remote computing device having a serial driver for the hardware serial component, wherein the serial driver of the remote computing device unwraps the communication from the network packet upon the remote computing device receiving the network packet and sends the communication to the peripheral device over the serial bus, wherein the serial driver and the network driver of the local computing device interact with one another to permit the computing device to communicate with the peripheral device of the remote computing device that is connected to the serial bus of the remote computing device, wherein and such that the serial driver receives both the communication for the peripheral device of the remote computing device and the other communication for the local peripheral device of the local computing device. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A storage device storing computer-readable code executable by a local computing device to:
-
receive from an application computer program running on a local computing device by a serial driver for a hardware serial component of the local computing device, a communication for a peripheral device of a remote computing device, the peripheral device connected to the remote computing device over a serial bus of the remote computing device, the application program unaware that the peripheral device of the remote computing device is not connected to a serial bus of the local computing device, the serial driver also receiving other communication for a local peripheral device of the local computing device connected to the hardware serial component; responsive to determining that the communication is for the peripheral device of the remote computing device and not for the local peripheral device of the local computing device, wrap, by the serial driver, the communication within a network packet; send, by the serial driver to a network driver for a hardware network component of the local computing device, the network packet within which the communication has been wrapped, the hardware network component connecting the local computing device to a network to which the remote computing device is connected; in response to the network driver receiving the network packet, relay, by the network driver, the network packet to a hardware serial component of the remote computing device by which the remote computing device is connected to the network, wherein the peripheral device is connected to a serial bus of the remote computing device, the remote computing device having a hardware serial component to connect the remote computing device to the peripheral device, the remote computing device having a serial driver for the hardware serial component, wherein the serial driver of the remote computing device unwraps the communication from the network packet upon the remote computing device receiving the network packet and sends the communication to the peripheral device over the serial bus, wherein the serial driver and the network driver of the local computing device interact with one another to permit the computing device to communicate with the peripheral device of the remote computing device that is connected to the serial bus of the remote computing device. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification