Download presentation
Presentation is loading. Please wait.
Published byBrook Arnold Modified over 9 years ago
1
Open Service Access(OSA) Application Programming Interface(API) Framework ZTE (USA)
2
2 Contents Overview of the Parlay/OSA What/Why Parlay/OSA Framework How Architecture Look Like Framework Features and Advantages Overview of the Parlay APIs Framework Access Session APIs Framework-to-Application APIs Framework-to-Service APIs Framework-to-Enterprise Operator APIs
3
3 Overview of the Parlay/OSA Starting from early 90s, Internet Telephony emerged, which completely changed the cost structure of offering long distance service. Commercial VoIP build-out began with H.323. Defects Discovered. Next Generation Network will be based on Softswitch Technology.
4
4 What is Parlay Framework? Is a set of Open Network APIs, which allows 3 rd Parties to develop and run services external to operators’ networks. Enterprise Domain Network Operators’ Domain IP/GSM/PSTN/Data Network Parlay Service Application/Service Provider Overview of the Parlay/OSA
5
5 Why? Business & Technical Drivers Regulatory bodies are asking network operators to open up their networks to third party service providers Consequently, the number of service providers is increasing rapidly The model for delivery of communication services is moving towards that of a Service Provider Architecture. Parlay APIs The IT World Rich in Applications and Developers The Converged Networks Rich in Capabilities
6
6 Why? Business & Technical Drivers New Service Delivery Model: A change in the network centric service delivery communication services are moving ever outward from the core network Examples are SCP based services (IN services), IN services at the periphery (CTI and CSTA based services), IP based Call Centres.
7
7 Why? Business & Technical Drivers New Service Delivery Model: A change in the edge of service delivery examples are switch based CTI extensions, TAPI, PBX based services. Enterprise and personal functionality requirements are pressing ever inward the core network
8
8 Service Domain Network Domain Parlay Architecture Messaging services SMS E-mail Call Control services IN services Mobility services CAMEL UpLoc UMTS GGSN GPRS SGSN UTRAN IP PSTN MSC BS Parlay Framework: Authentication, Authorisation, …. Parlay Services: An abstraction of network capabilities. Resource Interface Resource Interface Resource Interface Resource Interface Network Interface Open Network Interface, e.g.
9
9 Architecture of Parlay APIs 3 3 Framework operator admin Enterprise operator admin tool Service supplier admin tool 1 1 4 4 5 5 Telecom Network 2 2 6 6 Client Application Not in scope of Parlay Phase 2 Source: www.parlay.org
10
10 Client Application Framework Service Supplier Tool InitialAuth Dis- covery Access Registr- ation Service Factory 1 1 Register and Announce Service 2 2 Initiate Authentication 3 3 Authenticate 4 4 Request Access 5 5 Obtain Discovery Interface 6 6 Discover Services that match needs 7 7 Select Service and sign agreement 8 8 Request creation of Service Manager Call Control Manager 9 9 Create new Service Manager 10 Create a new Call
11
11 Parlay Framework Features- General GUI based Framework Management Tool Addressing through application support broker, string object reference Support for authentication by underlying distribution technology mechanism; can operator specific Support encryption/decryption capabilities for authentication Create, modify and query EntOp accounts, App-Client accounts, SAG information, and Supplier accounts Service supplier can register, un-register, announce, un-announce and describe a service Add, remove, enable, disable service types Select, sign, terminate an agreement for a service by an App-Client Event notification Heartbeat Management
12
12 Parlay Framework Advantages- General Single process, multithreaded application Data integrity with persistency and in-memory maintained High availability in clustering, load sharing, scaling, real-time resource monitoring, fault detection, redundancy, and service continuity SCE and OSA gateway vendor independent Available as network building block on commodity and proprietary hardware
13
13 Overview of the Parlay APIs The Parlay APIs are object-oriented and consist of several categories of interfaces as shown in previous slide All Applications, Framework and Services Interfaces inherit from the base Parlay Interface Class, ‘IparlayInterface’ Unified Modelling Language, UML, has been used to specify Interface Classes The Architecture is based on client/server Each Interface consists of a number of Methods. Each Method has a number of Parameters Common Data definitions and Interfaces are also defined in OMG IDL
14
14 Parlay API Specification- General Both synchronous and asynchronous methods are used in APIs: Asynchronous method requests are suffixed by ‘req’ Asynchronous method responses, if applicable, are suffixed by ‘Res’ and ‘Err’ The Service and Framework interfaces for client applications are denoted by classes with name Ip The callback interfaces to the applications are denoted by classes with name IpApp
15
15 Parlay API Specification – Two Main Interface Sets 1.Framework Interface Set: Provides 'surround' capabilities necessary for the Service Interfaces to be open, secure, resilient and manageable 2.Service Interface Set: Offers applications access to a range of network capabilities
16
16 Parlay API Specification - General For the interfaces between a Service and the Framework: The Service interfaces are typically denoted by classes with name IpSvc The Framework interfaces are denoted by classes with name IpFw Some methods within Authentication and Access Interfaces are exceptional to this, e.g. IpClientAccess
17
17 Parlay API Specification – Framework Interfaces Authentication Online Authentication of User Application and Network. Authorization Access management and Control to Network Services. Discovery Capability by which Network Service(s) identity is exposed to a User Application. Event Notification Capability by which user application is notified of service related events. Integrity Management Capability by which information on events which affect the integrity of the API is shared with the Framework interface and the user application.
18
18 Parlay API Specification – Service Interfaces (3.X) Call Control Call Management by User Application. Consists of Generic CC, MultiParty CC, MultiMedia CC (SIP enabled CC), and Conference CC. User Interaction Management of User Application interaction with Network Services, e.g. Prompt&Collect DTMF, WAP push, etc. Mobility Capability to access Mobility information, e.g. Location, Status. Terminal Capability (New in 3.X, adopted from 3GPP OSA) Capability to access user’s terminal information in the format specified in W3C and adopted in WAP UAProf Specification. Data Session Control (New in 3.X, adopted from 3GPP OSA) Management of data sessions in Packet Switching networks, e.g. PDP Context in GPRS.
19
19 Parlay API Specification – Service Interfaces (3.X) Generic Messaging Capability to send, store, and receive message. Connectivity Management Management of IP based connections, including QoS. Partially overlap with Policy Management. Accounting (New in 3.X) Capability to get subscriber accounting information for external billing engines. Charging (New in 3.X) Capability to update or monitor a balance and generate CDRs for postpaid and prepaid subscribers. Policy Management (New in 3.X) Management of static (SLA) and dynamic (per call) policies for network service providers and for 3 rd party application service providers.
20
20 Parlay API Specification – Service Interfaces (3.X, 4.0) Presence & Availability Management, PAM Capability of getting presence information, subscriber availability, and also registration of presence reports. Directory/User Profile Capability to access subscriber information. In general to access any information held in database.
21
21 Parlay & other standardisation bodies Java APIs for Integrated Networks (JAIN) JAIN initiated about the same time as Parlay 1.0. The same space. They found each other very quickly. Close cooperation on CC. On the other hand, Parlay is an architecture, which can be filled in by many component based JAIN technologies, like JSLEE ETSI A main contributor to telephony standards. At a point, decided to leave out the most 3G standardisation to 3GPP 3GPP 3GPP CN5 started to define OSA specs for UMTS R’99 in Nov ‘99. Due to aggressive time scale, they decided to base their OSA API on the existing industrial Parlay APIs. 3GPP OSA API set is a subset of Parlay API set with some modifications and additions (e.g. Terminal Capability)
22
22 Parlay & other standardisation bodies OMG Its contents strongly influenced by TINA-C and Parlay Parlay Framework 2.0 influenced by OMG Telecom Service Access & Subscription, TSAS. Parlay Interfaces are defined in OMG IDL OMG & Parlay have worked together to keep two standards in synch Since Oct 00, Parlay CC WG, ETSI SPAN12 (OSA) and 3GPP CN5 (OSA) have formed a Parlay/ETSI/3GPP joint WG. This WG was expanded to cover FW and some other areas. As a result, Parlay 3.X, 3GPP OSA R’4 and ETSI OSA 201-915 have a big common denominator (i.e. the same OSA API set).
23
23 Are there any concerns, yes there are … phase 1, 2 and 3 are not backward compatible. Has been mandated that the subsequent releases must be backward compatible In Author’s opinion, phase 3.X is the first version the industry can rely on. Phase 1 was only a proof-of-concept, phase 2 was a prototype subject for major Parlay players (mainly a number of Parlay members) Data types and some interfaces like Call Control are complex Lack of implementation experience, especially on performance and dimensioning Still concerns and comments about security and integrity
24
24 Framework Access Session APIs Initial Access 1. Initiate Authentication 2. Select Authentication Mechanism 3. The Client authenticates the Framework with issuing a challenge 4. Authentication Successful indication from the Client 5. The Framework authenticates the client each other 6. Authentication successful indication from the Framework 7. Request Access 8. Obtain the Framework’s interface reference
25
25 Framework Initial Access
26
26 Framework Access Session APIs Non-API Level Authentication 1. Initiate Authentication by using the underlying distribution technology mechanism 2. Request Access 3. Obtain the Framework’s interface reference to its service discovery interface
27
27 Framework Non-API Level Authentication
28
28 Framework Access Session APIs API Level Authentication 1. Initiate Authentication by using the type of authentication process the client specifies 2. Choose the authentication algorithm supported by the client 3. The client and Framework Interact to each other by using the challenge method 4. Request Access 5. Obtain the Framework’s interface reference to its service discovery interface
29
29 Framework API Level Authentication
30
30 Framework-to-Application APIs Event Notification 1. Create an event notification IpAppEventNofication in application 2. Obtain a reference to the object IpEventNotification and set the callback interface 3. Enable an event notification on the Framework 4. Notify the availability of new SCFs of the requested type(s)
31
31 Framework Event Notification
32
32 Framework-to-Application APIs Integrity Management o Load management Suspend/resume notification from application Framework queries load statistics Application reports current load condition Application queries load statistics Application callback registration and load control o Heartbeat Management o Fault Management Framework detects a Service failure Application requests a Framework activity test
33
33 Framework-to-Application APIs Load management Suspend/resume notification from application Framework queries load statistics Application reports current load condition Application queries load statistics Application callback registration and load control
34
34 Load Management—Framework queries load statistics
35
35 Load Management—Framework queries load statistics
36
36 Load Management—Application reports current load condition
37
37 Load Management—Application callback registration and load control
38
38 Framework-to-Application APIs Heartbeat Management 1. Request the application to send its heartbeat 2. Send heartbeat at specified interval by the application 3. Detect the application by the Framework via heartbeat within the specified interval 4. Take some recovery action
39
39 Heartbeat Management—Start/perform/end heartbeat supervision of the application
40
40 Framework-to-Application APIs Fault Management Framework detects a Service failure Application requests a Framework activity test 1. Ask the Framework to do an activity test 2. Test done by the Framework 3. Send result back the application by the Framework
41
41 Fault Management—Framework detects a Service failure
42
42 Fault Management—Application requests a Framework activity test
43
43 Framework-to-Application APIs Service Discovery 1. Obtain a reference to the Framework Service Discovery interface 2. List service types 3. Describe service type with service property (property name, property value, property mode, parent type, enable/disable) 4. Discover the service
44
44 Service Discovery
45
45 Framework-to-Application APIs Service Selection 1. Select service for the application 2. Sign service agreement between the Framework and the application
46
46 Service Agreement—Service selection
47
47 Framework-to-Service APIs Service Registration 1. Register service with service type name, service property list(service property name, service property value) 2. Announce service availability to the application
48
48 New SCF Registration
49
49 IP800 Parlay Application I want to connect to CC for exchange 333 But where is it? IN Application I can only connect to exchange 333,330 IP network Parlay CC 1 333 330 Parlay CC 2 410 412 Parlay CC 3 510 512 Parlay CC 4 667 Parlay CC 5 719 CC 333 330 hardwired
50
50 IP800 Parlay Application I want to connect to CC for exchange 333 But where is it? I can use the framework service to find out the host address of exchange 333 IP network Parlay CC 1 333 330 Parlay CC 2 410 412 Parlay CC 3 510 512 IP800 Parlay Application I want to connect to CC for exchange 333 But where is it? I can maintain a map of exchange numbers and hosts address IP network Parlay CC 1 333 330 Parlay CC 2 410 412 Parlay CC 3 510 512 Parlay Framework Service
51
51 IP network Parlay CC 1 333 330 Parlay CC 2 410 412 Parlay CC 3 510 512 Parlay Framework Service CC 333 330 CC1 CC 410 412 CC2 CC 510 512 CC3
52
52 Framework-to-Service APIs Sign Service Agreement 1. Select service using service ID (from service discovery interface) for the application 2. Sign the service agreement by the Framework 3. Sign the service agreement by the application 4. Identify the signature of the application 5. Use the service manager to contact the service 6. Create a new service manager to be used for callback by the application 7. Set the callback interface
53
53 Sign Service Agreement
54
54 Framework-to-Service APIs Integrity Management o Load management Service callback registration and load control Client and Service Load Balancing o Heartbeat Management Start/perform/end heart supervision of the service o Fault Management Service requests Framework activity test Service requests Application activity test Application requests service activity test Application detects service is unavailable
55
55 Framework-to-Service APIs Load Management Service callback registration and load control Client and Service Load Balancing
56
56 Load Management—Service callback registration and load control
57
57 Load Management—Client and Service Load Balancing
58
58 Framework-to-Service APIs Heartbeat Management 1. Request the service to send its heartbeat 2. Send heartbeat at the specified interval by the service 3. Detect the service by the Framework via heartbeat within the specified interval 4. Take some recovery action by the Framework
59
59 Heartbeat Management—Start/perform/end heartbeat supervision of the service
60
60 Framework-to-Service APIs Fault Management Service requests Framework activity test Ask activity test done by the Framework Return the result to the service Service requests Application activity test Invoke an activity test on a client application by the Framework Ask the application to do the activity test Return the result to the Framework by the application Pass the result from its application to its service internally Application requests service activity test Application detects service is unavailable
61
61 Fault Management—Service requests Framework activity test
62
62 Framework-to-Service APIs Fault Management Service requests Framework activity test 1.Ask activity test done by the Framework 2.Return the result to the service
63
63 Fault Management—Service requests Application activity test
64
64 Framework-to-Service APIs Fault Management Service requests Application activity test 1.Invoke an activity test on a client application by the Framework 2.Ask the application to do the activity test 3.Return the result to the Framework by the application 4.Pass the result from its application to its service internally
65
65 Fault Management—Application requests Service activity test
66
66 Framework-to-Service APIs Fault Management Application requests service activity test 1.Invoke an activity test on a service by the Framework 2.Ask the service to do the activity test 3.Return the result to the Framework by the service 4.Pass the result from its service to its application internally
67
67 Fault Management—Application detects Service is unavailable
68
68 Framework-to-Enterprise Operator API Service Subscription Model Enterprise Operator Client Applications Subscription Assignment Group(SAG) Service Contract Service Profile Relationship Between Client Applications/SAG, Service Contract and Service Profile Behavior of Service Subscription Service Discovery Subscription Management
69
69 Framework-to-Enterprise Operator API Enterprise Operator A role of subscriber/customer of services For example: A financial institution such as a Bank or Insurance Company, or possible an Application Service Provider
70
70 Framework-to-Enterprise Operator API Client Applications The role of user/customer of the services
71
71 Subscription Business Model
72
72 Framework-to-Enterprise Operator API Subscription Assignment Group A sub-set of client applications in an enterprise operator domain on the Framework One or more SAGs in enterprise operator domain A client application in one or multiple SAGs
73
73 Framework-to-Enterprise Operator API Service Contract A number of services subscribed by the enterprise operator The restriction usage of a service at subscription time
74
74 Framework-to-Enterprise Operator API Service Profile A restriction of the service contract in order to provide restricted service feature to a SAG One or more service profiles in a service contract One service profile each SAG in the enterprise operator domain Different service parameters (or service properties) of a service for restriction of SAG’s needs
75
75 Framework-to-Enterprise Operator API Relationship Between Client Applications/SAG, Service Contract and Service Profile Client Applications is related to the enterprise operator for usage of a service (subscribe first) Each client application is part of at least one SAG A SAG can have multiple Service Profiles associated it A Service Profile per service defines the preferences of the SAG members for the usage of that service Enterprise operator can group client applications in a set of SAGs and assign a particular Service Profile to each group A client application can be assigned to more than one service profile for a given service without date overlap in the service profiles
76
76 Relationship between Client Applications/SAG, Service Contract and Service Profiles
77
77 Framework-to-Enterprise Operator API Service Discovery Enterprise operator knows the existence of the service Obtains a list of service types Find out the set of properties applicable to a particular service type Discover the desired service Subscribe the service with service contract Access the subscribed services by the client applications Select the services to initiating the use later Sign the service agreement to avoid the repudiation Start the service
78
78
79
79 Framework-to-Enterprise Operator API Subscribe the service with service contract Create an account for the enterprise operator Create accounts for all of the client applications in enterprise operator domain Obtain interfaces to manage the subscription accounts Register the client applications associating a service profile Assign the related client applications to a Subscription Assignment Group (SAG) Manage the SAG
80
80
81
81 Thank You!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.