From sac-owner Tue Nov  4 06:43:33 2008
Received: from sunmail4.singapore.sun.com (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id mA4EhW2B017479
	for <one-pager@sac.eng.Sun.COM>; Tue, 4 Nov 2008 06:43:33 -0800 (PST)
Received: from sunmail4.singapore.sun.com (localhost [127.0.0.1])
	by sunmail4.singapore.sun.com (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id mA4EhWke000684
	for <one-pager-not-2b-used-directly@sunmail4.singapore.sun.com>; Tue, 4 Nov 2008 22:43:32 +0800 (SGT)
Received: (from noaccess@localhost)
	by sunmail4.singapore.sun.com (8.13.4+Sun/8.13.3/Submit) id mA4EhVQK000683
	for one-pager-not-2b-used-directly; Tue, 4 Nov 2008 22:43:31 +0800 (SGT)
Received: from nwk-avmta-1.SFBay.Sun.COM (nwk-avmta-1.SFBay.Sun.COM [129.146.11.74])
	by sunmail4.singapore.sun.com (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id mA4EhJ6W000612
	for <@sunmail2sca.sfbay.sun.com:one-pager@sun.com>; Tue, 4 Nov 2008 22:43:31 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-1.sfbay.Sun.COM by
 nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0K9T0090NCWEZA00@nwk-avmta-1.sfbay.Sun.COM> for one-pager@sun.com
 (ORCPT one-pager@sun.com); Tue, 04 Nov 2008 06:43:26 -0800 (PST)
Received: from brmea-mail-1.sun.com ([192.18.98.31])
 by nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0K9T001GXCWDGIE0@nwk-avmta-1.sfbay.Sun.COM> for
 one-pager@sun.com (ORCPT one-pager@sun.com); Tue,
 04 Nov 2008 06:43:26 -0800 (PST)
Received: from fe-amer-09.sun.com ([192.18.109.79])
	by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id mA4EhPNL023124	for
 <one-pager@sun.com>; Tue, 04 Nov 2008 14:43:25 +0000 (GMT)
Received: from conversion-daemon.mail-amer.sun.com by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0K9T00B01CBGUX00@mail-amer.sun.com>
 (original mail from Jim.Langston@Sun.COM)
 for one-pager@sun.com (ORCPT one-pager@sun.com); Tue,
 04 Nov 2008 07:43:25 -0700 (MST)
Received: from [129.152.210.8] by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0K9T002NMCW24P10@mail-amer.sun.com> for one-pager@sun.com
 (ORCPT one-pager@sun.com); Tue, 04 Nov 2008 07:43:23 -0700 (MST)
Date: Tue, 04 Nov 2008 09:43:14 -0500
From: Jim Langston <Jim.Langston@Sun.Com>
Subject: [2008/684]LIBSDP
Sender: Jim.Langston@Sun.Com
To: one-pager@Sun.Com
Message-id: <49105F82.1090102@Sun.COM>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
User-Agent: Thunderbird 2.0.0.14 (X11/20080505)
Status: RO
Content-Length: 6915

Template Version: @(#)onepager.txt 1.35 07/11/07 SMI
Copyright 2007 Sun Microsystems

1. Introduction
   1.1. Project/Component Working Name:

        LIBSDP

   1.2. Name of Document Author/Supplier:

        Jim Langston, Senior Software Engineer
        ISV Open Source Engineering


   1.3. Date of This Document:
        10/28/2008

        1.3.1. Date this project was conceived:
                01/24/2008

   1.4. Name of Major Document Customer(s)/Consumer(s):
        1.4.1. The PAC or CPT you expect to review your project:
        1.4.2. The ARC(s) you expect to review your project:
        1.4.3. The Director/VP who is "Sponsoring" this project:
                carl.hensler.Doe@Sun.Com
        1.4.4. The name of your business unit:
                ISV Engineering

   1.5. Email Aliases:
        1.5.1. Responsible Manager:  cynthia.hardenbrook@sun.com
        1.5.2. Responsible Engineer: jim.langston@sun.com
        1.5.3. Marketing Manager:
        1.5.4. Interest List:

2. Project Summary
   2.1. Project Description:
        libsdp is a LD_PRELOAD-able library that can be used to migrate 
existing
        applications use InfiniBand Sockets Direct Protocol (SDP) instead of
        TCP sockets, transparently and without recompilations.

   2.2. Risks and Assumptions:
        Technical risks:
                As per the description, libsdp is dependent on Solaris, this
                work should be checked from release to release of Solaris.
                NetTCP is ideal for testing the library.

                Limitations:
                        1. Applications statically linked with libc will 
not allow dynamic
                           pre-loading to port these applications to use 
SDP one needs to
                           replace specific socket calls (within the 
application) with AF_INET_SDP
                           and recompile.
                        2. If for some reason the dynamic linker fail to 
pre-load libc before
                           the libsdp.so is initialized or it does not 
support RTDL_NEXT, libsdp
                           will fail to find the libc socket API. To 
overcome this situation a
                           simple implementation of hijacking "socket" 
call is provided in
                           libsdp_sys. This partial implementation does 
not support any
                           configuration and is limited to i386 
architecture.
                        3. Non-blocking connect in "both" mode defaults 
to SDP. Specific rules
                           might be needed for applications to operate 
properly.

3. Business Summary

        We have an urgent, immediate need to port an OFA library to 
Solaris to enable Fidelity Investments to
        qualify Solaris IB.  The Solaris networking org implemented SDP 
(Sockets Direct Protocol), which is a
        high performance TCP equivalent over IB.  Using it requires 
opening a socket specifying the SDP protocol.
        There is an OFA library that enables running unmodified 
applications that use TCP over SDP.  We need
        someone to port this library to Solaris.  It should be just a 
download, build and test exercise.  It
        would be a great opportunity for you to get some experience with 
IB technology.  There is other OFA user
        level code that you could port after that.

   3.1. Problem Area:
        An application can utilize InfiniBand SDP instead of TCP socket 
seemlessly in
        two ways, the first by setting LD_PRELOAD and the second by 
adding the library
        in /etc/ld.so.preload. This is done transparently and without 
recompilations.

   3.2. Market/Requester:

        Fidelity Investments

   3.3. Business Justification:

   3.4. Competitive Analysis:

   3.5. Opportunity Window/Exposure:

   3.6. How will you know when you are done?:
        This library has currently been tested by a customer in the 
field. All
        performance analysis has been done via NetTCP which generates 
timings
        on the InfiniBand interface.

4. Technical Description:
    4.1. Details:
        libsdp is open source from OFA (Open Fabrics Alliance) and this 
project
        involved porting the source to Solaris and testing completed by 
customer
        in field. The application is ported with Sun Studio 12 with all 
latest
        patches. Open Solaris is the build and testing environment. The 
application
        has been tested on x86 and SPARC.

    4.2. Bug/RFE Number(s):
        No Bug/RFE

    4.3. In Scope:

    4.4. Out of Scope:

    4.5. Interfaces:
        libsdp intercedes and replaces socket calls, the socket calls 
effected are:

        ioctl
        fcntl
        socket
        setsockopt
        connect
        listen
        bind
        close
        dup
        dup2
        getpeername
        getsockname
        accept
        select
        pselect
        poll


    4.6. Doc Impact:

        No man pages are included

    4.7. Admin/Config Impact:
        libsdp is dependant on libsdp.conf which is installed with the
        libraries, by default this configuration file will contain the
        correct configuration to run on Solaris

    4.8. HA Impact:
        No impact

    4.9. I18N/L10N Impact:
        No impact

    4.10. Packaging & Delivery:
        No impact

    4.11. Security Impact:
        No impact

    4.12. Dependencies:
        libsdp is open source and was ported with Sun Studio 12. The
        interfaces have been fixed within the source code to adhere to
        Solaris requirements.

5. Reference Documents:
        All reference documents are located @ OFA.
        http://www.openfabrics.org

6. Resources and Schedule:
   6.1. Projected Availability:
        Currently available

   6.2. Cost of Effort:

   6.3. Cost of Capital Resources:

   6.4. Product Approval Committee requested information:
        6.4.1. Consolidation or Component Name:
                libsdp
        6.4.3. Type of CPT Review and Approval expected:
                   FastTrack
        6.4.4. Project Boundary Conditions:
                http://www.openfabrics.org
        6.4.5. Is this a necessary project for OEM agreements:
                No
        6.4.6. Notes:
                This port was done with a specific target of Open 
Solaris, both
                SPARC and x86. The library has been tested on Sparc and
                x86 with NetTCP for performance analysis, it has also 
been given
                to customers to evaluate.
        6.4.7. Target RTI Date/Release:

        6.4.8. Target Code Design Review Date:

        6.4.9. Update approval addition:

   6.5. ARC review type:
                FastTrack
   6.6. ARC Exposure:
                   open
       6.6.1. Rationale:

7. Prototype Availability:
   7.1. Prototype Availability:

   7.2. Prototype Cost:


