The UNH-iSCSI project consists of vendor-independent reference implementations of both a software initiator and a software target emulator for the latest draft (20) of the new IETF protocol for Storage Area Networks (SANs) called iSCSI. The initiator and target are implemented as independently loadable modules for the Linux kernel, versions 2.4.18 or later. The software performs extensive checking for conformance to the standard during operation. It supports almost all components of the iSCSI standard, and development is underway to provide support for the remaining components. Although these modules have been developed and tested together, they operate independently of one another, and do not have to be used together. That is, the unh-iscsi initiator is capable of connecting with a target from any vendor, and the unh-iscsi target is capable of accepting connections from any vendor's initiator.