Mark, I am a little concerned about the Interface section:
> 4.5. Interfaces: > Imported: > Interfaces to load iBFT info on x86, TBD. > Exported: > Properties in OBP for Solaris OS to load/save iSCSI > boot parameters, TBD. I would think that there would be a little more detail and not have TBDs since this is self review. Do you have a completed Interface description or table with taxonomy classifications? Thanks, John Mark A. Carlson wrote: > I am sponsoring this case for Jack Meng. It requests a patch > binding for iSCSI boot, updating PSARC 2008/427 as a result. > I do not expect this to be controversial so I have marked it > Self Review, but am happy to start a timer if an ARC member > so desires or significant discussion ensues. > > -- mark > > Template Version: @(#)onepager.txt 1.35 07/11/07 SMI > Copyright 2008 Sun Microsystems > > 1. Introduction > 1.1. Project/Component Working Name: > iSCSI Boot in Solaris with iBFT/OBP > > 1.2. Name of Document Author/Supplier: > Jack Meng (jack.meng at sun.com) > > 1.3. Date of This Document: > 01/08/10 > > 1.3.1. Date this project was conceived: > N/A > > 1.4. Name of Major Document Customer(s)/Consumer(s): > 1.4.1. The PAC or CPT you expect to review your project: > Solaris PAC > 1.4.2. The ARC(s) you expect to review your project: > PSARC > 1.4.3. The Director/VP who is "Sponsoring" this project: > Scott.Tracy at Sun.Com > 1.4.4. The name of your business unit: > Archive Software > > 1.5. Email Aliases: > 1.5.1. Responsible Manager: Grant.Zhang at sun.com > 1.5.2. Responsible Engineer: iscsi-boot-iteam at sun.com > 1.5.3. Marketing Manager: margaret.hamburger at sun.com > 1.5.4. Interest List: iscsi-interest at sun.com > > 2. Project Summary > 2.1. Project Description: > This project is to enable Solaris to boot off iSCSI luns via regular > network > adapters. Different approaches, iBFT/OBP, are adopted to implement > this feature > on x86/sparc platforms. This case supersedes PSARC/2007/450, iSCSI > Software boot. > > 2.2. Risks and Assumptions: > On x86 platform, iSCSI boot depends on NIC's firmware to implement > its own iSCSI initiator and to support iBFT to pass boot info to OS. > That means the solution on x86 needs dedicated hardware/firmware. > Currently Intel 1G/10G Pro. series NICs support this feature along with > Broadcom in their high-end NICs. > > On Sparc platform, iSCSI boot depends on OBP to implement its own > iSCSI stack > to connect to the iSCSI target, load boot archive, and pass the boot > info to > Solaris OS via standard OBP properties. A suite of standard > properties need > to be defined in OBP. > > iSCSI disk will still be incapable of being a dump device with this > project. > > 3. Business Summary > 3.1. Problem Area: > Currently Solaris is unable to be boot-off from iSCSI disk. This > is a drawback which limits Solaris' competency in iSCSI SAN > environment, diskless clients and so on. > > 3.2. Market/Requester: > System Group > > 3.3. Business Justification: > iSCSI boot is required on Solaris in FY09, both on x86 and SPARC > platform, > because: > 1) Sun customers are requesting iSCSI boot options on our Ethernet > cards and Storages > 2) Intel has iSCSI boot option on their standard NIC for Windows > and Linux OS, and Sun can offer this today if we have iSCSI boot > on Solaris > 3) iSCSI boot is supported on Linux and Windows; therefore we need > to reach parity on Solaris > 4) iSCSI boot will be the replacement for PXE boot > 5) The plan allows iSCSI boot on the standard Network > cards without using expensive TOE HBAs. > > Justification from System Marketing team. > > 3.4. Competitive Analysis: > Linux and Microsoft Windows are capable of booting-off iSCSI disk > with the support to iBFT and few other ways(PXE/Boot server). > > Solaris is significantly behind them in this area and this project > is the > effort to pace up with those competitors with feasible solutions > both for > x86 and Sparc. > > 3.5. Opportunity Window/Exposure: > N/A > > 3.6. How will you know when you are done?: > Solaris is able to boot off iSCSI disk with IBFT NIC on x86, and with > OBP on SPARC. > > 4. Technical Description: > 4.1. Details: > This project enables Solaris to directly boot off iSCSI disk both on > x86 and > Sparc platform. For doing that it modifies the 'Kernel' stage of > Solaris' booting > process to enumerate the iSCSI disk with and then mount the rootfs > there. Therefore > the info of the boot iSCSI target is essential for the kernel to > achieve this, and > there are completely different ways on x86 and Sparc platform, > iBFT/OBP respectively, > to pass the info to the ramdisk/kernel. However that info will be > unified to the same set > of properties so the rest procedure of iSCSI boot is the same for > x86 and Sparc. > > 4.1.1 iBFT on x86 > > On x86, iBFT is chosen as the method of passing iSCSI boot > parameters. > iBFT(iSCSI Boot Firmware Table) is defined in ACPI 3.0b > specification and > is a block of information that contains various parameters > that are useful > to the iSCSI Boot process. For Solaris by scanning the low > memory, it > is able to know if it is doing an iSCSI boot and loading > necessary > parameters then. It is iBF's responsibility to present the > iSCSI disk > to load OS boot loader and then the ramdisk. > > 4.1.2 OBP on Sparc > > On Sparc, kernel reads properties of the boot iSCSI lun from > OBP if OBP indicates > this is an iSCSI boot. Before that, OBP constructs an iSCSI > boot disk with its > own iSCSI/TCP/IP stack and loads/executes the booter from > there, and then the > kernel is loaded and started. > > Overall, for the Solaris kernel, the only difference > regarding iSCSI boot > on x86 and Sparc is the way to retrieve info of the boot > iSCSI lun > as described above. Afterwards it is the same routine to > plumb/configure the NIC, load/initialize the iscsi initiator > driver, wait for > iscsi initiator to discovery the boot target and then mount > the rootfs from there. > > 4.1.3 Security > > For booting, it is loading OS specific data so the > important thing is to make sure > that data come from the authenticated server/target. > Solaris iSCSI boot uses CHAP > (Challenge-handshake authentication protocol, RFC1994) > to do ensure the data iSCSI > initiator received for booting comes from the target it > claims to have come from. > IPsec in initiator side is not available during the boot > but will take effect > after Solaris fully starts up. > > However, despite the security put in place for this > project, Sun will still require > customers to have a physically secured network for iSCSI > boot, similar to the FC > situation. > > 4.1.4 Dump > > iSCSI disk is incapable of being the dump device in Solaris, > and this project will > not address this issue. This is a decision after evaluating > benefits/risks of each > possible solution. > > 4.1.5 Installation > Both LEGACY and NEW installer (Caiman) will be supported to > configure iSCSI disk. > The project team are working with the installer team to draft a > design. > > Currently Solaris is able to be installed on iSCSI disk with the > LEGACY installer if > applying a workaround. > > 4.1.6 stmsboot > stmsboot will be supporting iSCSI along with this project. > > 4.1.7 Note > This project doesn't apply to RFC 4173 and doesn't mean to. > > 4.2. Bug/RFE Number(s): > 6701045 iSCSI boot on X86 > 6714847 iSCSI boot on Sparc, driver part > 6717072 stmsboot needs to support iscsi > 6713364 iscsi needs to support PSARC 2008/337 scsi-self-identifying > 6422549 delay nl7c_init() call until after the root is mounted > > 4.3. In Scope: > Solaris Kernel, Solaris iSCSI Software Initiator, stmsboot > > 4.4. Out of Scope: > OBP, Solaris Installer > > 4.5. Interfaces: > Imported: > Interfaces to load iBFT info on x86, TBD. > Exported: > Properties in OBP for Solaris OS to load/save iSCSI > boot parameters, TBD. > > 4.6. Doc Impact: > TBD > > 4.7. Admin/Config Impact: > Administrator needs to learn how to configure iBFT/BIOS on x86 > platform and/or > OBP properties on Sparc to enable iSCSI boot. > > 4.8. HA Impact: > Solaris cluster should be able to boot off iSCSI luns, will work > with cluster > team if they have any special requirement. > > On x86, Intel's NIC support failover during booting if multiple > ports exist > and are configured to connect the same target. > > 4.9. I18N/L10N Impact: > N/A > > 4.10. Packaging& Delivery: > N/A > > 4.11. Security Impact: > iSCSI is based on TCP/IP which may expose security vulnerabilities. > Please refer to > 4.1.3 for more details of the solution. > > 4.12. Dependencies: > Support to Sparc platform depends on case FWSAC 2008/466 which > enables iSCSI boot on OBP. > > 5. Reference Documents: > new-boot sparc http://sac.sfbay/PSARC/2006/525 > Solaris Boot Architecture http://sac.sfbay/PSARC/2004/454 > scsi-self-identifying > http://sac.eng.sun.com/PSARC/2008/337 > iSCSI Software boot http://sac.sfbay/PSARC/2007/450 > Intel iSCSI Boot Support > http://www.intel.com/network/connectivity/products/iscsiboot.htm > IBFT Specification > http://www.microsoft.com/whdc/system/platform/firmware/ibft.mspx > Challenge Handshake Authentication Protocol > http://www.ietf.org/rfc/rfc1994.txt > > 6. Resources and Schedule: > 6.1. Projected Availability: > Q2 FY 2009 for iBFT support (x86 solution) > Q3 FY 2009 for OBP support (Sparc solution) and iSCSI support in > Solaris installer > > 6.2. Cost of Effort: > 12 engineering months > > 6.3. Cost of Capital Resources: > Approx. capital of $5000 for one LSI iSCSI array. > > 6.4. Product Approval Committee requested information: > 6.4.1. Consolidation or Component Name: > ON, NWS > 6.4.3. Type of CPT Review and Approval expected: > Standard > 6.4.4. Project Boundary Conditions: > N/A > 6.4.5. Is this a necessary project for OEM agreements: > N/A > 6.4.6. Notes: > 6.4.7. Target RTI Date/Release/Binding: > Solaris Nevada B104 for x86 > Solaris Nevada B127 for Sparc > Solaris Update 9 for both x86 and Sparc > This feature is required to be backported to S10U9 and requires > a patch binding. > 6.4.8. Target Code Design Review Date: > Aug. 15 2008 > > 6.5. ARC review type: > Standard > 6.6. ARC Exposure: > open > 6.6.1. Rationale: > N/A > > 7. Prototype Availability: > 7.1. Prototype Availability: > Prototype done by Jun 10 2008 > > 7.2. Prototype Cost: > 4 engineering months > > > _______________________________________________ > opensolaris-arc mailing list > opensolaris-arc at opensolaris.org