SIP vs. API - PowerPoint PPT Presentation

About This Presentation
Title:

SIP vs. API

Description:

API What is it? If all else fails, refer to Wikipedia: API. An application programming interface (API) is a source code interface that a ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 30
Provided by: LMEL
Category:
Tags: api | sip | percy

less

Transcript and Presenter's Notes

Title: SIP vs. API


1
(No Transcript)
2
SIP vs. API
  • How Will You Be Developing Your Next
    Application?(SIP-01)

3
Competing methods
4
Development Building Blocks
Your Application
Compiled
XML
Graphical
C/C
Java
VoiceXML
NETANN
API
MSCML
MSML/MOML
Drivers
SIP
Hardware
5
API What is it?
  • If all else fails, refer to Wikipedia
  • API
  • An application programming interface (API) is a
    source code interface that a computer system or
    program library provides to support requests for
    services to be made of it by a computer program.

6
Legacy API Architecture
Application
Proprietary
Proprietary
API
API
Proprietary
Proprietary
Device Driver
Device Driver
H.100
T1 Interface Hardware
Resource Hardware
PSTN
7
API Development
  • Key Attributes
  • Powerful
  • Feature Rich
  • Highly Efficient
  • Highly Complex
  • Slow to Develop
  • Hard to Debug
  • Proprietary (mostly)

8
Development Building Blocks
Your Application
Compiled
XML
Graphical
C/C
Java
VoiceXML
NETANN
API
MSCML
MSML/MOML
Drivers
SIP
Hardware
9
SIP What is it?
  • Wikipedia
  • SIP
  • The Session Initiation Protocol (SIP) is an
    application-layer control (signalling) protocol
    for creating, modifying, and terminating sessions
    with one or more participants. These sessions
    include Internet telephone calls, multimedia
    distribution, and multimedia conferences. (cit.
    RFC 3261).

10
SIP Where does it fit?
RTP
SIP
HTTP
SMTP
L5
TCP
UDP
L4
IP
L3
L2
Ethernet
PPP
Copper
Fiber
Wireless
L1
11
SIP Development
  • Key Attributes
  • Open
  • Standard
  • Interoperable
  • Easy to Debug
  • Inefficient
  • Moving Target
  • Slow to evolve

12
SIP Architecture
Application
Service CreationEnvironment
SIP Protocol Stack
SIP
LAN
Media Gateway Resource
MediaResource
PSTN
13
Two Classes of Resources
  • Media Gateways
  • Provide connectivity to existing TDM
    infrastructure
  • 90 of installed base is still TDM
  • Media Resources
  • IVR Play / Record / DTMF
  • Conferencing
  • Fax
  • Tone Detection/Generation
  • Announcements
  • Transcoding

14
Speeds Development Time
Customer A Just over 3 Man-years to integrate
and test with a Legacy PCI Blade
3
PCI
Same customer using SIP based hardware, 88 less
time to market!
2
Integration Time in Man-Years
1
SIP
15
Development Building Blocks
Your Application
Compiled
XML
Graphical
C/C
Java
VoiceXML
NETANN
API
MSCML
MSML/MOML
Drivers
SIP
Hardware
16
NetAnn What is it?
  • NetAnn
  • RFC 4240 as of December of 2005
  • Predecessor to MSCML.
  • Basic announcements
  • Simpler conference model (no control dialog)
  • Doesnt provide for mid-call requests and
    responses.

17
MSCML What is it?
  • MSCML Media Server Control Markup Language
  • RFC 4722 in November 2006
  • Provides services to users at an application
    level
  • Services specified in user part of URI.
  • For example Conf service implies a star
    connection topology with a mixer at the center,
    or PlayCollect connects a player and a
    dtmf-receiver to the call
  • Conf, IVR (Play, PlayCollect, PlayRecord,
    FaxPlay, FaxRecord)
  • Command oriented protocol (vs scripted)
  • MSCML IVR syntax is modeled on the H.248 and MGCP
  • Includes the composite PlayCollect and PlayRecord
    functions

18
MSCML - Sample
  • Example of a Play command
  • lt?xml version"1.0" encoding"utf-8"?gt
  • ltMediaServerControl version"1.0"gt
  • ltrequestgt
  • ltplay id"234"gt
  • ltpromptgt
  • ltaudio url"http//10.3.0.2/hello.wav"/gt
  • ltvariable type"date" subtype"ymd"
    value"19760102"/gt
  • ltvariable type"silence" value"5"/gt
  • ltvariable type"duration" value"2"/gt
  • lt/promptgt
  • lt/playgt
  • lt/requestgt
  • lt/MediaServerControlgt

19
MSCML Conferencing Create
20
MSCML Conferencing Play
21
MSML / MOML What is it?
  • MSML Media Sessions Markup Language
  • Device Control Protocol that focuses on internal
    media server resources
  • SIP is normally concerned with the behavior
    external to the media server
  • Provides a mechanism for invoking MOML or VXML
    scripts.
  • Provides a mechanism for creating conferences and
    modifying their topologies.
  • Does not provide for IVR control
  • MOML Media Objects Markup Language
  • MOML is a scripting languages that provides a
    defined set of useful IVR primitives play,
    generate dtmf, recognize dtmf, record, recognize
    speech, and others
  • Primitives can be combined into groups, and
    multiple groups can be established concurrently.
    Lots of flexibility at the cost of complexity
  • It is a scripting language with an internal state
    machine, but only 2 primitives have state, and
    they only have 2 states (stop/go).
  • Absence of flow control limits scripts to
    functions rather than applications (eg VXML)
  • IETF Draft (no RFC)

22
MSCML vs MSML/MOML
  • Application Level Services vs Device Control
  • MSML provides explicit internal connection
    topology.
  • MSCML provides predefined services with implicit
    internal connection topologies
  • Provides a less complex interface for 99 of
    whats required.
  • Scripting
  • MOML provides a script execution capability to
    build composite functions.
  • State Machines within primitives are so limited
    as to be of little general use.
  • Requires a script execution framework.
  • MSCML provides defined composite functions
  • For example PlayCollect/Record provide
    integration between the Play and the
    Collect/Record functions. Much simpler for 99
    of use cases
  • No script engine required provides performance
    advantages as well as simplicity

23
Who supports what?
MSCML / NetAnn
MSML / MOML
24
Media Control -Bottom Line
  • Neither MSCML nor MSML/MOML are likely to be the
    Final Answer.
  • Both rely on INFO messages which the IETF SIP
    arbiters do not like
  • Both will allow you to do what you need to get
    done
  • MSCML is our favorite
  • Greater standards coverage (RFC vs not RFC)
  • Easier to use (Operates at application level vs
    device control)
  • More widely adopted
  • Better adapted to 3GPP MRF (IVR mapping to H.248
    used in MRFC-to-MRFP)
  • Discussion is carried out in the mediactrl -
    Media Control BOF Discussion List
  • Final Answer likely 2 to 3 years out.

25
Will we need APIs and SIP?
26
How do they compare
Capability / Feature API SIPNetAnn SIPMSCML
TDM Bus Switching (H.100) Yes No No
Industry Standard (RFC?) No Yes Yes
Basic IVR Yes Yes Yes
Complex IVR Yes No Yes
Mixing/Recording Yes No No
Simple Conference Yes Yes Yes
Complex Conference Controls Yes No Yes
27
The Future
  • Expect many new applications to leverage SIP
  • With one of the media server control protocols
  • APIs will continue, but only for very complex
    apps.
  • Secret our SIP and MSCML uses our API under the
    covers!
  • Expect continued refinement
  • of SIP and related media server protocols

28
Questions?
?
29
More information
Booth 115
Write a Comment
User Comments (0)
About PowerShow.com