Transcript
  • 7/29/2019 cluecon2012-120809114602-phpapp01

    1/28

    Bridging multimedia sessionsbetween SIP and XMPP

    Sal Ibarra Corretg |AG ProjectsThursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    2/28

    AG ProjectsSIP Infrastructure Experts

    Intro

    Hi, Im Sal

    @saghul

    Working with VoIP (and beyond!) sinceAsterisk 1.0

    Happy to be at ClueCon!

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    3/28

    AG ProjectsSIP Infrastructure Experts

    SIP InfrastructureExperts

    SIP Thor: SIP platformwith P2P capabilitiesfor horizontalscalability

    Open Source Software

    Projects

    Blink

    SIP SIMPLE SDK

    SylkServer

    MediaProxy

    OpenXCAP

    MSRPRelay

    AG Projects

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    4/28

    AG ProjectsSIP Infrastructure Experts

    UnderstandingSIP and XMPP

    Protocols for negotiation of multimediasessions, instant messaging and presence

    Same feature set, different design principles

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    5/28

    AG ProjectsSIP Infrastructure Experts

    SIP

    Session Initiation Protocol

    Current specification (RFC 3261) in 2002

    Built for establishing multimedia sessions,mainly used in voice, video andconferencing

    Designed to have fat clients and thinservers

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    6/28

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    7/28

    AG ProjectsSIP Infrastructure Experts

    IM with SIP

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    8/28

    AG ProjectsSIP Infrastructure Experts

    Presence with SIP

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    9/28

    AG ProjectsSIP Infrastructure Experts

    XMPP eXtensible Messaging and Presence

    Protocol

    Created by the Jabber community in 1999,standardized in 2004 and updated in 2011

    Built for instant messaging and presence,

    with extensibility in mind

    Designed to have fat servers and thinclients

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    10/28Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    11/28

    AG ProjectsSIP Infrastructure Experts

    IM with XMPP

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    12/28

    AG ProjectsSIP Infrastructure Experts

    Presence with XMPP

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    13/28

    AG ProjectsSIP Infrastructure Experts

    Realtime Communications:

    State of The Art

    SIP used for voice, video, conferencing andPSTN interoperability

    XMPP used for instant messaging andpresence

    Ongoing efforts to bring both to webbrowsers through WebSocket transport foruse with WebRTC

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    14/28

    AG ProjectsSIP Infrastructure Experts

    Combining SIP and XMPP

    Dual-stack clients: CUSAX

    draft-ivov-xmpp-cusax

    Single-stack clients: use a gateway

    It must be transparent

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    15/28

    AG ProjectsSIP Infrastructure Experts

    Going single stack

    Protocol abstractions can lead to problems

    and limitations

    Simpler provisioning

    SIP and XMPP are different by design, howto marry them?

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    16/28Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    17/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer

    Open Source SIP Application server

    Zero configuration

    State-of-the-art SIP feature set

    Implemented using SIP SIMPLE SDK

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    18/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer Architecture

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    19/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer: Applications

    Conference server

    XMPP gateway

    Thursday, August 9, 2012

    G

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    20/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer: Conferencing HD audio

    MSRP chat

    Participants list (RFC 4575)

    Conference control (RFC 4579)

    File transfer

    Screen sharing

    Thursday, August 9, 2012

    AG P j

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    21/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer: XMPP gateway

    Chat (SIP MESSAGE and MSRP)

    Presence

    MUC server

    Thursday, August 9, 2012

    AG P j t

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    22/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer: XMPP gateway design

    SylkServer acts as a stand-alone XMPP

    Server

    It only supports S2S connections

    Users are on the SIP side, no XMPP clientsallowed to register on SylkServer

    Thursday, August 9, 2012

    AG P j t

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    23/28

    AG ProjectsSIP Infrastructure Experts

    SylkServer: XMPP gateway architecture

    Thursday, August 9, 2012

    AG P j t

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    24/28

    AG ProjectsSIP Infrastructure Experts

    Implementation challenges XMPP server vs XMPP component

    Loose / incomplete specifications

    Concept mismatch

    XMPP sessions

    SIP PIDF vs XMPP presence stanza

    Different feature set

    SIP conferencing vs MUC

    Thursday, August 9, 2012

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    25/28

    Thursday, August 9, 2012

    AG P j t

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    26/28

    AG ProjectsSIP Infrastructure Experts

    Future

    IETF is considering resurrecting the

    SIP-XMPP interoperability drafts!

    SylkServer roadmap

    Jingle

    File transfer

    Thursday, August 9, 2012

    AG P j t

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    27/28

    AG ProjectsSIP Infrastructure Experts

    Thursday, August 9, 2012

    AG P j t

  • 7/29/2019 cluecon2012-120809114602-phpapp01

    28/28

    AG ProjectsSIP Infrastructure Experts

    BYE sip:audience@ClueCon2012 SIP/2.0Via: SIP/2.0/UDP 192.168.99.23:49919;rport;branch=z9hG4bKPjDb30Dx0sH7aMMax-Forwards: 70

    From: "saghul" ;tag=UCpGKVZbQQx7BUKTo: ;tag=as59aef35cCall-ID: DEWDfu63OACwYeQk7MrhmRhRq.1cqqisCSeq: 10633 BYERoute: User-Agent: Blink

    Content-Length: 0

    @saghul

    [email protected]

    sip:[email protected]

    mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]

Top Related