Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI This information is Copyright 2009 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: Sun Diameter 1.0 1.2. Name of Document Author/Supplier: Author: Venugopal RaoK 1.3 Date of This Document: 30 November, 2009 4. Technical Description Sun Proprietary/Confidential: Internal Use Only: Engineering Need-to-Know
1. Introduction 1.1. Project/Component Working Name: Sun Diameter 1.0 1.2. Name of Document Author/Supplier: Venugopal Rao K 1.3. Date of This Document: 11/30/09 1.3.1. Date this project was conceived: 07/01/08 1.4. Name of Major Document Customer(s)/Consumer(s): 1.4.1. The PAC or CPT you expect to review your project: Web and Application Platform PAC (WAP PAC) 1.4.2. The ARC(s) you expect to review your project: LSARC 1.4.3. The Director/VP who is "Sponsoring" this project: Thomas Kincaid 1.4.4. The name of your business unit: Software Infrastructure 1.5. Email Aliases: 1.5.1. Responsible Manager:Martin.Matula at Sun.COM 1.5.2. Responsible Engineer:k.Venugopal at sun.com 1.5.3. Marketing Manager: 1.5.4. Interest List: diameterstack at sun.com 2. Project Summary 2.1. Project Description: Sun Diameter stack is an implementation of Diameter base protocol(RFC 3588) intended to provide an Authentication,Authorization and Accounting(AAA) framework for Network access or IP mobility applications running on Sun GlassFish communication Server 2.0 2.2. Risks and Assumptions: Project is in the final stages and there are no anticipated major risks at this time. 3. Business Summary 3.1. Problem Area: Provide Diameter API to enable SIP applications built on Sun GlassFish communication Server 2.0 to embed AAA functionality. 3.2. Market/Requester: Network Equipment Providers and Carriers who create and deploy services for the mobile and fixed line markets. 3.3. Business Justification: Required to provide AAA functionality to applications deployed on Sun GlassFish communication Server.Diameter feature also enables sales to compete with other vendors in this domain. 3.4. Competitive Analysis: Mobicents,Oracle,IBM 3.5. Opportunity Window/Exposure: This opens up the window for sales discussion as some of the carriers are not even interested in a discussion without a Diameter offering 3.6. How will you know when you are done?: The initial delivery of the product will be deemed complete when it passes the agreed quality criteria. 4. Technical Description: 4.1. Details: Sun Diameter stack is based on following RFC and specifications, RFC 3588,4006 3GPP Technical Specification 29.329 v7.5, 29.328 V7.8, 32.260 V 8.2.0 , 32.299 Diameter stack will implement Client as defined by RFC 3588 and will support Sh(User profile ),Ro(Online Charging ), Rf(Offline charging) applications. Diameter stack will use Grizzly and will be exposed to Converged application deployed on Sun Glassfish communication server as a Diameter Resource Adapter. Function Specification provides detailed information on the stack. http://wikihome.sfbay.sun.com/TelcoVertical/attach/Diameter%2Fdiameter_fsd.odt 4.2. Bug/RFE Number(s): Not applicable 4.3. In Scope: 4.3.1 OS Platform Support The primary OS platforms being supported by the project include: Deployment: Solaris10 X86 U7 Solaris10 Sparc U7 SuSE 10 Linux SP2 RedHat Linux 5 Development: Windows XP, Vista, 2008 MAC OS 10.4, 10.5 OpenSolaris 2009.06 4.4. Out of Scope: Diameter applications other than Sh,Rf,Ro are out of scope in this release. 4.5. Interfaces: Exported Interfaces : 1. Name : sun-domain_1_5.dtd Description : includes diameter configuration element definitions. Classification : Committed 2. Name : com.sun.diameter.* package Description: Diameter interfaces exposed to user. Classification : Committed https://sailfin.dev.java.net/nonav/diameter/apidocs/index.html 3. Name : Sun GlassFish communication Server 2.0 Description: Interfaces imported from Sun GlassFish communication Server 2.0 Imported interfaces: 1)Admin interfaces from Sun Communication Server 2.0 com.sun.enterprise.config.ConfigContext; com.sun.enterprise.config.ConfigException; com.sun.enterprise.config.serverbeans.Cluster; com.sun.enterprise.config.serverbeans.ClusterHelper; com.sun.enterprise.config.serverbeans.Config; com.sun.enterprise.config.serverbeans.DiameterService; com.sun.enterprise.config.serverbeans.PeerConfiguration; com.sun.enterprise.config.serverbeans.Server; com.sun.enterprise.config.serverbeans.ServerBeansFactory; com.sun.enterprise.config.serverbeans.ServerHelper; com.sun.enterprise.config.serverbeans.SystemProperty; com.sun.enterprise.server.ApplicationServer; com.sun.enterprise.server.ServerContext; com.sun.enterprise.admin.event.AdminEventListenerException; com.sun.enterprise.admin.event.AdminEventListenerRegistry; com.sun.enterprise.config.ConfigAdd; com.sun.enterprise.config.ConfigContext; com.sun.enterprise.config.ConfigDelete; com.sun.enterprise.config.serverbeans.Application; com.sun.enterprise.config.serverbeans.DiameterApplications; com.sun.enterprise.config.serverbeans.Peer; org.jvnet.glassfish.comms.admin.event.extensions.diameter.DiameterApplicationsEvent; org.jvnet.glassfish.comms.admin.event.extensions.diameter.DiameterApplicationsEventListener; org.jvnet.glassfish.comms.admin.event.extensions.diameter.PeerEvent; org.jvnet.glassfish.comms.admin.event.extensions.diameter.PeerEventListener; 2) Addon installer changes com.sun.appserv.addons.InstallationContext; com.sun.appserv.addons.Installer; com.sun.appserv.addons.AddonVersion; 3) Grizzly interfaces(Grizzly 1.8.6.5) com.sun.grizzly.ControllerStateListener com.sun.grizzly.SSLConnectorHandler com.sun.grizzly.TCPConnectorHandler com.sun.grizzly.ConnectorHandler com.sun.grizzly.CallbackHandler; com.sun.grizzly.CallbackHandlerDescriptor; com.sun.grizzly.ConnectorHandler; com.sun.grizzly.Context; com.sun.grizzly.Context.OpType; com.sun.grizzly.IOEvent; com.sun.grizzly.SSLSelectorHandler; com.sun.grizzly.util.SelectionKeyOP; com.sun.grizzly.async.AsyncWriteCallbackHandler; com.sun.grizzly.async.AsyncWriteQueueRecord; com.sun.grizzly.Controller; com.sun.grizzly.Controller.Protocol; com.sun.grizzly.ControllerStateListener; com.sun.grizzly.DefaultPipeline; com.sun.grizzly.filter.ReadFilter; com.sun.grizzly.util.net.SSLImplementation; com.sun.grizzly.util.ThreadAttachment; com.sun.grizzly.util.ThreadAttachment.Mode; com.sun.grizzly.util.WorkerThread; com.sun.grizzly.async.AsyncQueueDataProcessor; com.sun.grizzly.ProtocolChainInstanceHandler; 4)ASM Interfaces(ASM 3.1) org.objectweb.asm.AnnotationVisitor; org.objectweb.asm.Attribute; org.objectweb.asm.ClassReader; org.objectweb.asm.ClassVisitor; org.objectweb.asm.FieldVisitor; org.objectweb.asm.Label; org.objectweb.asm.MethodVisitor; org.objectweb.asm.Opcodes; 4.6. Doc Impact: User documentation will be part of Sun Glassfish communication server 2.0 documentation. 4.7. Admin/Config Impact: Sun Glassfish communication server 2.0 admin UI and CLI will provide ability to configure diameter stack. 4.8. HA Impact: not applicable 4.9. I18N/L10N Impact: Will be internationalized. Localizations based on customer demand. 4.10. Packaging & Delivery: Will be delivered as a addon module . The jars will be placed under {sailfin.home}/addons/sundiameter directory, the resource adapter will be deployed on sailfin. 4.11. Security Impact: Does not interact with security related policy API's. Diameter stack supports TLS and listens for connections on two ports, one for TLS and one for TCP. 4.12. Dependencies: Grizzly 1.8.6.5 Sun Glassfish communication Server 2.0 ASM 3.1 JAXB 2.0 5. Reference Documents: Sun GlassFish Communication Server 2.0 one pager/ARC case : http://sac.sfbay/arc/LSARC/2009/568/20091019_sankara.rao Diameter Base protocol : http://www.rfc-editor.org/rfc/rfc3588.txt Diameter Credit-Control Application : http://www.rfc-editor.org/rfc/rfc4006.txt Functional Specification : http://wikihome.sfbay.sun.com/TelcoVertical/attach/Diameter%2Fdiameter_fsd.odt 6. Resources and Schedule: 6.1. Projected Availability: Q4 CY09 6.2. Cost of Effort: Diameter stack core development : 2 man years Diameter stack UI and CLI development : 6 man months Testing : 1 man years Doc : 2 man months 6.3. Cost of Capital Resources: Addressed via existing resources. 6.4. Product Approval Committee requested information: 6.4.1. Consolidation or Component Name: Sun Glassfish Communications Server Diameter Adapter 1.0 6.4.3. Type of CPT Review and Approval expected: FastTrack 6.4.4. Project Boundary Conditions: http://wappac.sfbay.sun.com/attach/PacAttachments%2FDiameter_Phase2_20090824.odp Release date moved to December 31 to align with sustaining patch 1 for Sun GlassFish Communications Server 2.0. 6.4.5. Is this a necessary project for OEM agreements: It is a deal enabler for Sun GlassFish Communications Server sales. 6.4.6. Notes: 6.4.7. Target RTI Date/Release: 12/31/09 6.4.8. Target Code Design Review Date: Reviews have been occurring throughout the development process. 6.4.9. Update approval addition: No 6.5. ARC review type: FastTrack 6.6. ARC Exposure: closed 6.6.1. Rationale: This is a value add for paying customers only. 7. Prototype Availability: 7.1. Prototype Availability: Development builds are available at http://gf-hudson.sfbay/hudson/job/diameter/ 7.2. Prototype Cost: Not applicable 6. Resources and Schedule 6.4. Steering Committee requested information 6.4.1. Consolidation C-team Name: Sun GlassFish communication Server 2.0 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open