Patent ID: 7904539
Filing Date: 2011-03-08
Classification: G06F,H04L

Abstract:
1. A method for servicing inquiry commands, comprising: at a router connected to sequential target devices on a storage area network (SAN), receiving from a host device an inquiry command for information about a target device; determining whether or not the information about the target device is stored in a cache memory coupled to the router; if the information about the target device is in the cache memory, retrieving the information about the target device from the cache memory and returning the retrieved information about the target device to the host device in response to the inquiry command regardless of whether or not the target device is busy; if the information about the target device is not in the cache memory, determining whether or not the target device is busy; if the target device is not busy, forwarding the inquiry command from the host device to the target device; and if the target device is busy, placing the inquiry command from the host device in a queue at the router, holding the inquiry command from the host device in the queue at the router until the target device becomes available, and forwarding the inquiry command from the host device to the target device for processing by the target device when the target device becomes available, thereby keeping the inquiry command from the host device from timing out, the method further comprising: at the router, determining whether a first command received from a first host device coupled to the router comprises a first inquiry command for static or near-static data about a first target device on the SAN; if the first command from the first host device comprises the first inquiry command for the static or near-static data about the first target device, reading the static or near-static data about the first target device from the cache memory and providing the static or near-static data about the first target device to the first host device in response to the first inquiry command from the first host device; and if the first command from the first host device does not comprise the first inquiry command for the static or near-static data about the first target device, forwarding the first command to the first target device for execution of the first command.