sun microsystems Systems Architecture Committee _________________________________________________________________ Subject: N_Port_ID Virtualization for Solaris Submitted by: Aaron Dailey File: PSARC/2007/501/opinion.ms Date: February 20th, 2008. Committee: Mark Carlson (opinion written by Garrett D'Amore), Kais Belgaied. Product Approval Committee: Solaris PAC solaris-pac-opinion@sun.com 1. Summary N_Port_ID Virtualization (NPIV) allows one Fibre Channel port to represent many physical ports, thus virtualizing the hardware. NPIV is especially useful for virtual machine environments. 2. Decision & Precedence Information The project is approved as specified in reference [1]. The project may be delivered in a minor release of the ON consolidation. 3. Interfaces The project exports the following interfaces. _____________________________________________________________________________ | Interfaces Exported | |______________________|_________________|__________________________________| |Interface | Classification | Comments | |______________________|_________________|__________________________________| |FCA | Project Private| Specified in [2]. | |HBA-API extensions | Project Private| Specified in [3]. | |fcadm command line | Committed | See [4]. | |fcadm output | Uncommitted | See [4]. | |fcinfo output | Uncommitted | See [4]. | |fcadm SCF | Project Private| Storage for NPIV WWWN. | |xenstore | Volatile | Changes for existen Xen database| |______________________|_________________|__________________________________| PSARC/2007/501 Copyright 2008 Sun Microsystems - 2 - _____________________________________________________________________________ | Interfaces Exported | |______________________|_________________|__________________________________| |Interface | Classification | Comments | |______________________|_________________|__________________________________| |xm input/output | Volatile | Xen CLI | |/usr/lib/xennpivd file| Project Private| Xen reconfiguration daemon | |xnpivd file | Project Private| Xen reconfiguration driver | |______________________|_________________|__________________________________| The project imports the following interfaces. ____________________________________________________________ | Interfaces Imported | |________________|________________|________________________| |Interface | Classification| Comments | |________________|________________|________________________| |T11 NPIV Specs | Standard | From the T11 web site.| |libhbaaapi(3LIB)| Standard | Derived from T11 FC-MI| |________________|________________|________________________| 4. Opinion 4.1. Configuration and Locking During inception, several questions were raised about a con- figuration file, and locking of the configuration database. The project team decided to change to use standard libscf(3LIB) APIs for this, resolving the issue suitably. 4.2. Daemon Startup During inception, a question was raised pertaining to daemon startup. The project team's response is that SMF is used to start the deamon, and only for Xen. 4.3. NPIV Configuration and Zones During inception a member asked what the administrative experience would be for a zone when an NPIV device is con- figured for the zone, but the underlying HBA doesn't support NPIV. Offline, the project team decided to reduce the scope of the project to exclude zones. This question will need to be answered in another case if/when the project team revisits support for zones. 4.4. Relationship to Other Virtualized IO Projects A member raised a concern about the relationship of this project to other projects, such as Crossbow, which are also providing facilities for IO virtualization. The project PSARC/2007/501 Copyright 2008 Sun Microsystems - 3 - team examined Crossbow in particular, and found some simi- larities, but there were enough differences as well. No action to unify interfaces between networking and storage virtualization was requested, and none was taken. 5. Minority Opinion(s) None. 6. Advisory Information None. 7. Appendices 7.1. Appendix A: Technical Changes Required None. 7.2. Appendix B: Technical Changes Advised None. 7.3. Appendix C: Reference Material Unless stated otherwise, path names are relative to the case directory PSARC/2007/501. 1 Functional specifcation. File: commitment.materials/NPIV_Func_spec.pdf 2 FCA Interface Changs to Support NPIV. File: commitment.materials/NPIV_FCA_Interface_Doc- 0.2.1.pdf 3 fcinfo, fcadm manual page with changes. File: commitment.materials/fcinfo.man 4 PSARC 20 Questions. File: commitment.materials/psarc_20q_npiv 5 npivxend manual page. File: commitment.materials/npivxend.man 6 xenstore manual page. File: commitment.materials/xenstore.man 7 xm manual page. File: commitment.materials/xm.man 8 Issues file. File: issues PSARC/2007/501 Copyright 2008 Sun Microsystems