| US 7,587,536 B2 | ||
| Method and apparatus for distributing USB hub functions across a network | ||
| John Alexander McLeod, Surrey (Canada) | ||
| Assigned to Icron Technologies Corporation, Burnaby, British Columbia (Canada) | ||
| Filed on Jul. 28, 2006, as Appl. No. 11/460,963. | ||
| Prior Publication US 2008/0028120 A1, Jan. 31, 2008 | ||
| Int. Cl. G06F 13/12 (2006.01) | ||
| U.S. Cl. 710—65 [710/315; 370/401] | 14 Claims |

| 1. A method for transmitting data between a host computer and one or a plurality of USB peripheral devices, wherein said USB
peripheral devices are distributed around a data communications network and wherein the transmission delay across said network
is greater than that normally allowed by the USB specification, said method comprising connecting a host computer to a local
extender device, connecting said local extender device to one or a plurality of remote extender devices through a data communication
network, and connecting said remote extender devices to one or a plurality of USB peripheral devices, wherein signals between
said host computer and said USB peripheral devices are saved, collected, absorbed, or otherwise processed in the local extender
and/or the remote extenders so as to allow the host computer and the USB peripheral devices to operate in the presence of
a round trip delay greater than that normally allowed in the USB specification, and
wherein said method includes the ability to detect the attachment of a USB peripheral device to the system, to detect the
detachment of a USB peripheral device, or includes the ability to determine the network address of a USB function wherein
said USB function may be a USB hub or a USB peripheral device, and
wherein said method provides for transmitting a USB command from a host computer, through a local extender, to a unique network
address on a data communications network, which method comprises:
a) receiving at a local extender a USB command from a host computer;
b) extracting a first USB address from said USB command;
c) using said first USB address to access a first data record within a table of similar records;
d) determining whether said first data record contains a valid network address;
e) extracting from said first data record a second USB address identifying the upstream USB hub through which said first USB
address may be accessed;
f) repeating steps (c) through (e) until a valid network address is found;
g) encapsulating said USB command in a network packet;
h) addressing said network packet to said valid network address; and
i) transmitting said addressed network packet to said data communications network.
|