1. A storage array comprising: (a) a communication path that provides an interface to receive a packet from a source external to the array; (b) a first and second storage node, each including a processing unit and having an addressable storage area with an associated storage medium located on a storage device; (c) a storage map stored in a computer readable memory that associates a data block ID to a data block location within the storage area of the first and second storage node; (d) a packet processor including a processing unit that extracts control information from the packet; and (e) a topology implemented according to a policy that is stored in a computer readable memory between the nodes that is re-configurable as a function of the control information.