An independent storage node is disclosed that includes a processor and transport
hardware in communication with the processor that is capable of communicating data
via a transport connection. Executing on the processor is modular storage software
that comprises a plurality of software modules and a module interface. The module
interface allows dynamic binding of the software modules and is capable of executing
on a plurality of processor types by using particular software modules related
to a specific processor type.