A protocol for facilitating access to a local input/output device of a remote
node
across a network. The local input/output device is configured according to a local
communication technology (e.g., PCI-Peripheral Component Interconnect), but is
accessed remotely (e.g., across a set of InfiniBand (IB) communication links).
A host server or other computer (e.g., an InfiniBand host) includes a channel adapter
and a nexus driver for conveying or retrieving an instruction of a device driver
for the local device across the network. The remote node includes a local/remote
bridge (e.g., an IB/PCI bridge). The host connects to the remote node and determines
a configuration of the node's local communication bus and the local input/output
device. A host memory address is mapped to a local bus address and is used by the
input/output device to exchange data with the host.