The Mobicents Open Source SLEE Platform VON Fall 2005  Ivelin Ivanov, JBoss, Inc.  M. Ranganathan, NIST  Francesco Moggia, IRIS Srl  Phelim O’Doherty,

Slides:



Advertisements
Similar presentations
October 10-13, 2006 San Diego Convention Center, San Diego California VoIP/SOA Integration Impact on IT Apps, Processes, & Overall Business.
Advertisements

Unified Communications Bill Palmer ADNET Technologies, Inc.
SIP and Instant Messaging. SIP Summit SIP and Instant Messaging What Does Presence Have to Do With SIP? How to Deliver.
SIP Servlets. SIP Summit SIP Servlets Problem Statement Want to enable construction of a wide variety of IP telephony.
IM May 24, 2000 Introduction to SIP Jonathan Rosenberg Chief Scientist.
Eclipse, M2M and the Internet of Things
Eclipse, M2M and the Internet of Things
Dr Adele Botha MOBI4D: a Multi-channel e- Government Mobile Service Delivery Platform Date: 22/10/2013.
Component Oriented Programming 1 Chapter 2 Theory of Components.
0 0 0 BBWF Madrid October 2005 Access-independent Core Networks: Converging towards all-IP Andy Jones Head of Transmission & Interconnectivity Vodafone.
1 Mobicents Training JSLEE & SIP Servlets Interoperability through the Mobicents Communications Platform Jean Deruelle, Mobicents SIP Servlets Lead.
IMS Workshop- Summary James Rafferty August
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Mobicents Training Mobicents Communications Platform
Fixed Mobile Convergence T Research Seminar on Telecommunications Business Johanna Heinonen.
 3G is the third generation of tele standards and technology for mobile networking, superseding 2.5G. It is based on the International Telecommunication.
JSLEE. What is JSLEE ? is an event oriented application middleware. Its main job is to receive events from external resources and deliver these events.
Agenda Introduction to 3GPP Introduction to SIP IP Multimedia Subsystem Service Routing in IMS Implementation Conclusions.
Digital Rights Management 5th Annual Wireless Java Conference January 21-23, 2004 Kevin Mowry, Motorola Chair, OMA Download and DRM group.
SIP APPLICATION SERVERS & WeSIP SIP APPLICATIONS SERVERS AND WeSIP FOR OpenSER BERLIN
POLYCOM CONFIDENTIAL Polycom enables Alcatel Instant Video Solution by combining the power Alcatel IP Telephony with Polycom Unified Collaboration Solutions.
Understanding and Managing WebSphere V5
Winter Consolidated Server Deployment Guide for Hosted Messaging and Collaboration version 3.5 Philippe Maurent Principal Consultant Microsoft.
Cutting Costs and Innovating Communications Large Enterprise Deployments Todd Goepferd System Engineer IP Call Center Verizon Douglas Tait Director, SDP.
Presence Applications in the Real World Patrick Ferriter VP of Product Marketing.
SOA – Development Organization Yogish Pai. 2 IT organization are structured to meet the business needs LOB-IT Aligned to a particular business unit for.
Fall VON - September 28, 1999 C O N N E C T I N G T H E W O R L D W I T H A P P L I C A T I O N S SIP - Ready to Deploy Jim Nelson,
Data Management Kelly Clynes Caitlin Minteer. Agenda Globus Toolkit Basic Data Management Systems Overview of Data Management Data Movement Grid FTP Reliable.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Real-time multimedia and communication in packet networks JAIN SLEE and Mobicents.
第十四章 J2EE 入门 Introduction What is J2EE ?
1 © NOKIA 1999 FILENAMs.PPT/ DATE / NN SIP Service Architecture Markus Isomäki Nokia Research Center.
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
Page  1 A practical investigation of billing for next generation services. Name: Moses T Nkhumeleni Supervisors: Professor Alfredo Terzoli and Mr Mosiuoa.
Mobicents Open Source VoIP Platform JavaPolis, Antwerp, 2005 Ivelin Ivanov, JBoss, Inc.
Bright Ideas Around Communication and Collaboration.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Dave Elmendorf Director 21CN Voice and Multimedia 30th September 2008 Adopting SOA for Telecom Workshop Providers Perspectives on SOA in Telecom.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
Greg Pisano Director, Market Development Brooktrout Technology.
A Comparative Study of Signaling Protocols for Data Management and Synchronization # Department of Computer Engineering, Kocaeli University.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Tool Integration with Data and Computation Grid GWE - “Grid Wizard Enterprise”
Copyright © 2003 Open Mobile Alliance Ltd. All Rights Reserved. Open Mobile Alliance Presence Enabled Messaging Specifications Presence, Mobile Instant.
1 Presentation_ID © 1999, Cisco Systems, Inc. Cisco All-IP Mobile Wireless Network Reference Model Presentation_ID.
WebLogic Server 7.0 New Features Alexander Berry, Jr. WLS Sr. Systems Engineer.
Build the Right Team 1 Organize for Success 2 Build Coalition with Business Partners 3 Maintain Flexibility 4 Key Success Factors KSF 1.1: Relentlessly.
Telecom in Transition Global Telecommunications is in a time of dramatic transition –Traditional telephone service was just about voice –We now live in.
DaaS (Desktop as a Service) Last Update: July 15 th, 2015.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Information Technology Division Executive Office for Administration and Finance Service Oriented Architecture An Enterprise Approach to Enabling the Business.
"To integrate is noble, to succeed - divine!". Integration Challenge Panel Chris Brown, Senior Systems Analyst, Hewitt Associates Dana Freeman, President.
A scalable and flexible platform to run various types of resource intensive applications on clouds ISWG June 2015 Budapest, Hungary Tamas Kiss,
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
France Télécom R&D – February 5th 2003 Internet Telephony Conference – Miami, Florida Bridging the Chasm Between Legacy and Next-Generation Networks Internet.
Enabling Converged Services Changing the Way the World Communicates Jim Dondero Vice-President Global Solutions Marketing CANTO, June 21st.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
A Scalable SIP-based Architecture to Offer Value-added Services in a Converged IN/IP Environment F.S.Salloum, Tasos Dagiuklas, Maria Skoura 16 January.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
© Ivelin Ivanov Java.net Communications Community JavaOne 6/2005 Java Users Group, Austin 8/2005 Mobicents The First Certified Open Source Implementation.
JAIN SLEE Dima Ionut Daniel. Contents What is JAIN SLEE? Basic Concepts – Resource Adaptor – Activity/ActivityContext – Events – Services – SBB – Deployable.
Michael G. Williams, Jeremey Barrett 1 Intro to Mobi-D Host based mobility.
INFSO-RI JRA2 Test Management Tools Eva Takacs (4D SOFT) ETICS 2 Final Review Brussels - 11 May 2010.
SIP Interoperability: Leveling the Playing Field William Rich President & CEO Pingtel Corp August 2005.
Name of Presentation Red Hat Presenter RED HAT Developer conference Brno 2009 Mobicents/JBCP Pavel Slegr.
J2EE Platform Overview (Application Architecture)
IMS & Wireline to Wireless Convergence
Inventory of Distributed Computing Concepts
Component Technology Bina Ramamurthy 2/25/2019 B.Ramamurthy.
Software interoperability in the NGN Service layer
Presentation transcript:

The Mobicents Open Source SLEE Platform VON Fall 2005  Ivelin Ivanov, JBoss, Inc.  M. Ranganathan, NIST  Francesco Moggia, IRIS Srl  Phelim O’Doherty, BEA Systems, Inc.

What are we going to talk about?  Mobicents Background  JSLEE in the industry  Mobicents Architecture  Demo  Roadmap

Mobicents Background  Ivelin Ivanov

In the beginning…  First CVS commit in fall 2003  Initial Goals  IM Portal bridging ICQ, MSN, Y!, Jabber  Message transformation, routing, broadcasting, command execution  Challenges  Independent OSS projects for each IM protocol  Integration headache  Lack of unifying platform

Priorities revisited  Need for a solid foundation  Standard way to add building blocks  Ability to extend with VoIP services  First option – J2EE + JAIN SIP + Jabber + Y!...  Easy to demo, hard to extend, hopeless performance outlook  Next option – JSLEE  Looks like a duck…  Tough to comprehend, hard to implement  We’ll byte the bullet anyway

1.0a milestone  JAIN SLEE 1.0 Certification  Rigorous and thorough spec helps a lot  Great TCK coverage  Leverage JBoss 3.2.x

JAIN SLEE Industry Realization and Trends  Phelim O’Doherty

Telecom Industry Challenges Service Provider Consolidation & Competition Decreasing ARPU High Costs Convergence Single Service Orientation Voice Internet Wireless Wi-Fi Cable VoIP Media Duplicative Network Infra For Each New Service Consolidation of Networks, Bandwidth, Subscriber Base

Next-Generation Service Delivery Platform INTEGRATED SESSION CONTROL CONVERGED APPLICATIONS NETWORK AGNOSTIC Next-Generation Service Delivery Platform  Evolution to an all-IP network  Well-defined, standardized interfaces through 3GPP, OMA and IETF  Based on SIP as standard communication protocol  Common abstracted network service interfaces Wireline WirelessIP IP TelephonyPresence Messaging

J2EE and JSLEE SBBHLR HSS EIS Servlet Enterprise Network Comms Device EJB Web Browser Telecommunication Network Client Web tier Business tier Data tier

JSLEE and Parlay  Parlay defines an architecture and set of abstracted interfaces  No application server defined  JSLEE is a standard event driven application server  Parlay App servers are typically built on proprietary SLEE’s instead of J2EE in order to achieve performance  Vendors should build Parlay application servers on a standard JSLEE, enabling portability of services

JSLEE and SIP Servlet  SIP Servlet satisfies the ‘big bang’ approach to Voip  All application development in SIP  Tightly integrated with web-tier  JSLEE satisfies the ‘migration’ approach to Voip  Leverage existing IN investment  Single environment for IN evolution and IMS adoption  Enables multiple protocol development  Both servers will co-exist each finding certain application niches  Each will make the other successful  Same goal – replace proprietary systems with standard application infrastructure

Benefits  Traditional of-the-shelf software  Leverage IDE’s for Service creation  Co-location of services  Reduce latency and resource consumption  Open programming environment  Tools can be leveraged by developers  Leverage the best of the enterprise patterns  Event driven design base  Profile interface to subscriber/service data

Barriers  No large software provider  NEP’s resisting adoption  Spoils business model  New technology  Will developers pick up programming model  Requires investment  Bad press  ISV’s competing for business – trashing technologies  Competing architectures from different standards bodies

What changing in the industry?  Operators reluctant to upgrade capacity from older black box solutions to new black-box solutions  NEP’s are losing business they typically secured  NEP’s have in-house development of technology  Near tipping point  Key operators are still applying pressure  Willingness to invest in standard based middleware  Open source environment gaining traction  Communities speak volumes

Keep it real  July 5, 2005 Vodafone Spain Proves Software Portability for Programmable Network Services MADRID, Spain (July 05, 2005)-While the telecommunications industry readies for the deployment of truly programmable network services that provides service portability in both IN and 3G/IMS, Vodafone Spain has already successfully used JAIN SLEE (Java) technology to deploy and run a real life commercial IN service on two different vendors platforms.  17 March, 2005 Rogelio Martinez, head of the Centre of Competence for JSLEE technologies of Vodafone Spain, said: "Ensuring the success of our MMS network is a business-critical priority for us. The NetSpira ECS-MMR provides a way to eliminate bottlenecks in our MMS network. NetSpira has proved once again that it is ahead of the game - anticipating the needs of mobile and cellular operators and developing must-have products." The trial used several value-added services running on the top of Open Cloud Rhino's 1.2, a JAIN™ SLEE standards compliant service logic execution environment for carrier grade implementations.

Mobicents Examples Architecture and Implementation  M. Ranganathan and Francesco Moggia

What is JSLEE – A more detailed answer  JAIN SLEE is an event oriented application middleware. Its main job is to field events from external resources and deliver these events to application installed fragments of code.  Is multi-protocol. Each protocol stack is a Resource with a corresponding Resource adaptor.  Has the flavor of EJB but is oriented towards asynchronous low latency event oriented apps.  Manages application objects, lifecycle, isolation, deployment, management, concurrency, persistence and failover needs.  Provides the necessary facilities commonly needed by such applications (i.e. timers, management via JMX, profile, trace).

Simplified JAIN-SLEE Architecture H.323 Network

Some Details  The SLEE abstracts the notion of an Event bus and event triggered pieces of code ( Called SBBs).  The event bus is called an Activity Context (AC).  An Activity is a stream of related events.  One-to-one mapping between Activities (Resource Adaptor domain) and Activity Contexts (SLEE domain).  Activity Context is an Event Channel. Sbb Ent AC Activity R.A. (SIP Stack) SLEE

SLEE Building Blocks  Event Type  Typed event model.  Resource adaptors generate events  SBB  Fundamental building block (like an EJB).  SBBs can communicate by firing events on ACs  SBBs receive events over AC’s.  Event source can be Resource Adaptors, Facilities, Timers, Alarms…  Service  Management Artifact  Contains information for initial event processing  Is instantiated by the SLEE upon receipt of appropriate message matching the Convergence Name of the Service.  Profile Specification  Provisioned data for management of services.  Usage parameters interfaces  JMX management clients

Service instantiation These are the SBBs known to the SLEE This picture is known at Deployment time (through the deployment descriptors). At run time, the service Instantiates a traversal of a Sub-graph of this sbb graph. x z y B Service Instance (graphic re-used from JAIN-SLEE Tutorial with permission)

SLEE (JSR 22) as a JBoss Service JBoss Transaction. Manager TreeCache Profile MBean Deployment MBean SLEE Management MBean Resource Adaptor MBean Trace MBean Alarm MBean Service Mgt. MBean JMX JBoss Microkernel architecture is a natural fit for building the SLEE

jboss-service.xml for Mobicents slee:name=AlarmMBean slee:name=DeploymentMBean <depends optional-attribute-name= "ServiceManagementMBean">slee:name=ServiceManagementMBean slee:name=TraceMBean <depends optional-attribute-name= "ProfileProvisioningMBean">slee:name=ProfileProvisoningMBean <depends optional-attribute-name= "ResourceAdaptorMBean">slee:name=ResourceAdaptorMBean slee:name=TransactionManagerMBean jboss.cache:service=TreeCache jboss.cache:service=DeploymentTreeCache jboss.cache:service=ProfileTreeCache slee:service=SleeProfileManager jboss.cache:service=RuntimeTreeCache

EclipSLEE plug-in project EclipSLEE project on java.net Subproject of Mobicents OpenClouod Contribution The plug-in provides a user friendly service creation environment for JAIN SLEE.

Minimal SBB xml & code

Service descriptor

Resource Adaptor inside the Plug-in

Wake Up Service SIP Resource Adaptor Wake Up Sbb Activity Context (Event Bus) Event Router Activity Context (Event Bus) Timer sendResponse(…) SIP 200 OK sendRequest(…) create SIP MESSAGE Sip Message Body: “10 COFFEE BREAK !!!!” After 10 seconds SIP MESSAGE Sip Message: “COFFEE BREAK !!!!”

Resource adaptor & SBB

Adding Events with the Plug-in

Event handlers

SIP MESSAGE event handler

Timer Event Handler

Some Implementation Details

Event Delivery “Heart” of the SLEE is the Event Router. Each AC is an event queue.

Concurrency And Consistency  SLEE spec is defined using a SERIALIZABLE consistency model.  This implies that for concurrent event delivery the final state of the SLEE after consumption of these events should be achievable through some serial ordering of event delivery.  Can be achieved using either optimistic or pessimistic concurrency control.  Current version of Mobicents uses pessimistic concurrency control.  Concurrency is at a per activity level.

Cached and Replicated Structures Activity ID SIP Transaction ID Activity Context ID Sbb Entity ID CMP FieldSbb Entity ID Child relCmp fields Parent Sbb Entity ID Service ID JBoss Cache  ACs and Sbb Entities need to be replicated on Tx boundaries  ACs are visible to applications and represent a transitory event bus.  SBB Entities are the in memory representation of an SBB in use  JBoss Cache is very handy for this –provides transactional replication.

Deployment Abstract Sbb Class service-jar.xmlevent-jar-xmlevent classes Deployment Verification Deployment (registration in the SLEE) Class Generation using JavaAssist A deployable unit may contain Services, SBB jar files, Event jar files, Profile Specification jar files. Each sbb has abstract methods for various operations: onXXX, CMP fields accessors. Profile CMP accessors, usage parameters. These are generated at deployment time to access container facilities for actually performing the operations.

A More Sophisticated Example: SIP Proxy Server With Failover Support.

SIP Proxy as a SLEE Service

Replication and Persistence Phone 1 Phone Server 1 fails after call setup Server 2 takes over for Server 1 Server 2 needs to replicate the same service structure Server 2 needs to know about the call (Call ID) that server 1 was handling and map it to the same Service Proxy Server Replica Billing/ accounting Services Call ID Call Setup messages INVITE RINGING OK HA is still a work in progress BYE OK Convergence name = CallID

Demo Outline B FWD Ping FWD is a stateless forwarder. Could also use IP Address Takeover Proxy SLEE Proxy INVITE OK ACK A

Demo Outline (cont’d) FWD Ping Proxy SLEE Proxy BYE OK A BYE B

Demo Outline (cont’d)  B registers with the proxy server.  A calls B via the proxy.  Proxy crashes replica takes over  Hang up the call  Show that the Service survives the crash.  The initiator gets the BYE.  Re initiate the call from A to B  Illustrates that the registrar survived the crash

Mobicents Community and Roadmap  Ivelin Ivanov

Project Status  1.0b1 release  Beta quality  More stable SLEE core  Basic failover for SIP  Much better performance ~ 15cps/CPU  Profile persistence  Auto deployment

What makes it possible?  Committed Leadership  Vibrant Community  20+ registered developers  Daily forum discussions  Increasing Wiki Views

Mobicents Community  NIST: Contributed SIP Stack, development of core platform  University of Genoa: Core contributor.  Luis Pasteur University: Continuous build and TCK runs  Java.net: project hosting  Portugal Telecom Innovacao: Asterisk RA, XMPP RA  Lucent: Performance, profiling, HA  Open Cloud: EclipSLEE, SIP RA  Vodafone R&D: Examples, XMPP RA,  : Diameter RA  : Parlay/Parlay-X RA  ZyXEL: WiFi SIP Phone Prototype  JBoss, Federation membership  Several independent VoIP vendors Technical Lead: M. Ranganathan Major Contributing Individuals: Francesco Moggia, Ivelin Ivanov, Jean Deruelle, Ralf Siedow, Buddy Bright, Leon Do, Marco Montiero, Luis Tiexeira, Tim Fox

Community feedback  Roadmap visibility and predictable timelines  Most popular demand by far!  Carrier grade quality  Higher Availability  Better performance cps  More modules – XMPP, Parlay, Skype, Asterisk, Diameter  Sophisticated Administration GUI  Tools for Rapid Service Development

What’s next?  Continue active development  HA, performance, new RAs  Enhance test framework  Scale project coordination  Add new contributors  Preserve synergy and productivity  Ensure ongoing module integration  Consider ideas for formal organization  Predictable roadmap  Measurable commitments by members  Professional support channels

Q&A