a gentle introduction to sip and cpl january 31 2001
Download
Skip this Video
Download Presentation
A Gentle Introduction to SIP and CPL January 31, 2001

Loading in 2 Seconds...

play fullscreen
1 / 64

A Gentle Introduction to SIP and CPL January 31, 2001 - PowerPoint PPT Presentation


  • 81 Views
  • Uploaded on

A Gentle Introduction to SIP and CPL January 31, 2001. Session Initiation Protocol Call Processing Language. Outline. What is SIP and Why is it Important (10 min) SIP Architecture and Protocol (15 min) SIP Call Flow Examples (10 min) The IETF Call Processing Language (15 min)

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' A Gentle Introduction to SIP and CPL January 31, 2001' - mason


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
a gentle introduction to sip and cpl january 31 2001

A Gentle Introduction toSIP and CPLJanuary 31, 2001

Session Initiation ProtocolCall Processing Language

outline
Outline
  • What is SIP and Why is it Important (10 min)
  • SIP Architecture and Protocol (15 min)
  • SIP Call Flow Examples (10 min)
  • The IETF Call Processing Language (15 min)
  • SIP Activities (10 min)
  • Discussion
what is sip and why is it important

What is SIP andWhy is it Important

Tom Gray

Strategic Technology

what sip is
What SIP Is
  • SIP is a language and protocol for initiating, modifying and terminating interactive sessions
    • allows discovery of entities so that descriptions of sessions can be delivered
      • is explicitly designed for rendezvous with mobile users
      • is explicitly distributed with local user control
      • enables creation and sharing of information
      • maintains relationships over multiple interactions
what sip is1
What SIP Is
  • compatible with existing telephony features but also designed for new applications enabled by the Internet
      • example of highly personalized call control
        • with location, presence, alerts, notifications ...
  • one of a family of protocols and languages
      • pervasive (DTMF of the Internet)
      • based on SMTP and HTTP
      • set of building blocks to design services
      • lightweight and extensible
what sip is not
What SIP Is Not
  • a telephony protocol
  • a resource reservation protocol
  • a transfer protocol
  • a normative definition of any specific set of features
  • the AIN, Q.sig, H.323…
slide7

Group

TRIP Billing

Group

TRIP Billing Locate

Group

TRIP Billing

ARS

User Agent

Client

SIP

User Agent

User Agent

SIP

Server

Client

MGCP

MGCP

Media Gateway

Media Gateway

Media Gateway

IP, ATM, PSTN…

Media Gateway

CPL

sip in context
SIP in Context

Coordination Space

SIP

SIP

Policy Agents

External Data Sources

SIP

Policies

Database

Connection Control

slide9

Alice

Location/Presence Server

ACD Proxy Server

TRIP

Carol

BIGAgent

BIG

SIP

Bob

SIP

Available

English

Available

French

Busy

French

Daniel

Personal Agent

ACD Example

SIP

SIP

SIP

Call inFrench…

Personal Agents

sip architecture and protocol

SIP Architecture and Protocol

Kathy Baker

Strategic Technology

Based on the IETF Draft: ietf-sip-rfc2543bis-02.ps(November 24, 2000)

sip user agents

Client sends a request message

Server sends back a response message

CALLER

CALLEE

200 OK

UserAgentServer

UserAgentServer

INVITE

UserAgentClient

UserAgentClient

SIP User Agents
sip servers
SIP Servers
  • Proxy
    • Stateless Proxy
      • forgets about SIP request/response once it has been forwarded
    • Stateful Proxy
      • maintains record of SIP transaction
      • e.g. Outbound Proxy (located near client acts as firewall)
  • Redirect Server
    • does not issue SIP requests, only redirect responses
  • Registrar
    • allows user agents to register location information
    • typically co-located with Outbound Proxy
sip architecture example

SIP PATH

INVITE

200 OK

ACK

ACK

302

INVITE

UserAgentServer

UserAgentServer

INVITE

200 OK

UserAgentClient

UserAgentClient

ACK

INVITE

200 OK

ACK

MEDIA PATH

SIP Architecture example

Stateful Proxy

CALLER

CALLEE

Redirect Server

Stateless Proxy

sip messages
SIP Messages
  • Can either be Request or Response message
    • Request: From Client to Server
    • Response: From Server to Client
  • Can be passed:
    • from user agent to user agent
    • from SIP network server to user agent or vice versa
    • from SIP network server to SIP network server
  • Each SIP Message contains:
    • Request Line or Status Line
    • Header
    • Message (CPL, SDP, encrypted code, text or nothing)
addressing
Addressing
request message

INVITEACKOPTIONSBYEREGISTERCANCEL

NOTIFYSUBSCRIBEREFERMESSAGE

Request Message

INVITE:sip:[email protected] SIP/2.0From: Kathy <sip:[email protected]>To: Daniel <sip:[email protected]>

Contact: sip:[email protected]: [email protected]_phone.strat_techContent-Type: application/sdpContent-Length: 147

CSeq: 1 INVITE

v=0o=UserA 2890844526 2890844526 IN IP4 here.coms=Session SDPc=IN IP4 100.101.102.103t=0 0m=audio 49172 RTP/AVP 0a=rtpmap:0 PCMU/8000

Request Line

MessageHeader

MessageBody

response message
Response Message

SIP/2.0 200 OK

Via: SIP/2.0/UDP kanata.mitel.com

From: Kathy <sip:[email protected]>

To: Daniel <sip:[email protected]>

Call-ID: [email protected]_phone.strat_techContact: sip:[email protected]: 1 INVITE

Status Line

Status Codes

1xx Informational: - Trying - Ringing - Being Forwarded - Queued

200 Success

3xx Redirect

4xx Client Error

5xx Server Error

6xx Global Error

MessageHeader

MessageBody

request performatives
Request Performatives
  • INVITE “Would you like to chat?”
  • ACK“Thanks, received your confirmation. Let’s start chatting”
  • BYE“Okay, I’m ending the call now.”
  • CANCEL “Cancel that last request but don’t end the call”
  • OPTIONS“What functionality do you support?”
  • REGISTER“Direct all my calls to this phone.”

Enables Mobility

invite method

sip.kanata.mitel.com(stateful proxy)

sip.ottawa.nortel.ca(redirect server)

sip.mitel.com(stateless proxy)

sip.nortel.com(stateful proxy)

ACK

302

INVITE

INVITE

INVITE

INVITE

INVITE

SIP/2.0 302 MOVED TEMPORARILY To: sip:[email protected] From: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1Contact: sip:[email protected];q=0.7, sip:[email protected];q=0.9,

INVITE sip:[email protected] SIP/2.0Via: SIP/UDP/2.0 sip.kanata.mitel.com Via: SIP/UDP/2.0 sip.mitel.com To: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1

INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP sip.kanata.mitel.com Via: SIP/2.0/UDP sip.mitel.com To: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1

INVITE sip:[email protected] SIP/2.0 Via: SIP/2.0/UDP sip.kanata.mitel.com Via: SIP/2.0/UDP sip.mitel.com Via: SIP/2.0/UDP sip.nortel.comTo: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1

INVITE sip:[email protected] SIP/2.0Via: SIP/UDP/2.0 sip.kanata.mitel.com Via: SIP/UDP/2.0 sip.mitel.com To: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1

ACK sip.ottawa.nortel.ca SIP/2.0To: sip:[email protected] From: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1

INVITE sip:[email protected] SIP/2.0Via: SIP/UDP/2.0 sip.kanata.mitel.com To: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected] Call-ID: [email protected] CSeq: INVITE 1

INVITE Method

CUA

sip:[email protected]

SUA

sip:[email protected]

responses and ack method

sip.kanata.mitel.com(stateful proxy)

sip.ottawa.nortel.ca(redirect server)

sip.mitel.com(stateless proxy)

sip.nortel.com(stateful proxy)

200 OK

ACK

200 OK

ACK

200 OK

ACK

200 OK

ACK

ACK sip:[email protected]: SIP/2.0/UDP sip.kanata.mitel.com Via: SIP/2.0/UDP sip.mitel.com Via: SIP/2.0/UDP sip.nortel.comTo: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected] Call-ID: [email protected] CSeq: ACK 1

SIP/2.0 200 OKVia: SIP/2.0/UDP sip.kanata.mitel.com Via: SIP/2.0/UDP sip.mitel.com Via: SIP/2.0/UDP sip.nortel.comTo: sip:[email protected] From: sip:[email protected] Contact: sip:[email protected]: [email protected] CSeq: INVITE 1

Responses and ACK Method

CUA

sip:[email protected]

SUA

sip:[email protected]

bye method

sip.kanata.mitel.com(stateful proxy)

sip.ottawa.nortel.ca(redirect server)

sip.mitel.com(stateless proxy)

sip.nortel.com(stateful proxy)

BYE Method

BYE

BYE

CUA

BYE

sip:[email protected]

SUA

BYE [email protected] SIP/2.0Via: SIP/2.0/UDP sip.kanata.mitel.com Via: SIP/2.0/UDP sip.nortel.comTo: sip [email protected] From: sip: [email protected] Contact: sip:[email protected]: [email protected] CSeq: 2 BYE

sip:[email protected]

options method

OPTIONS

OPTIONS

UserAgentServer

UserAgentServer

200 OK

200 OK

UserAgentClient

UserAgentClient

SIP/2.0 200 OK

Via: SIP/2.0/UDP kanata.mitel.comTo: sip:[email protected]: sip:[email protected]: OPTIONS 12 Call-ID: 1234556677 Allow: INVITE,ACK,OPTIONS,CANCEL,REFERAccept: application/sdp;level=1, text/htmlAccept-Language: da, en-gb,q=0.8, en;q=0.7

OPTIONS:sip:[email protected] SIP/2.0

Via: SIP/2.0/UDP kanata.mitel.comTo: sip:[email protected]: sip:[email protected]: OPTIONS 12 Call-ID: 1234556677

OPTIONS:sip:[email protected] SIP/2.0

To: sip:[email protected]: sip:[email protected]: OPTIONS 12 Call-ID: 1234556677

OPTIONS Method

SIP Proxy

sip:[email protected]

sip:[email protected]

register method

UserAgentServer

UserAgentClient

REGISTER Method

LocationServer

REGISTER

SIP Registrar

200 OK

sip:[email protected]

SIP Proxy

SIP/2.0 200 OK

To: sip:[email protected]: sip:[email protected]: 1 REGISTER Contact: sip:[email protected]&expires=12:00Call-ID: 1234556677

REGISTER:sip:registrar.systems.mitel.com SIP/2.0

To: sip:[email protected]: sip:[email protected]: 1 REGISTERContact: sip:[email protected]&expires=12:00Call-ID: 1234556677

sip extensions 3pcc
SIP Extensions - 3PCC

*** These methods have been added to extend SIP to support third party control. They enable external applications to control SIP Agents ***

  • REFER“Please go to this other place and do this”
  • SUBSCRIBE “I would like to monitor your call activity.”
  • NOTIFY“An event occurred.”
refer method

REFER

INVITE

UserAgentServer

UserAgentServer

UserAgentClient

UserAgentClient

INVITE sip:[email protected] SIP/2.0

To: sip:[email protected]: sip:tomsphone.mitel.comContact: sip:tomsphone.mitel.comCSeq: INVITE 1 Call-ID: [email protected]

REFER: sip:tomsphone.mitel.com SIP/2.0

Call-ID: [email protected] Refer-To: <sip:[email protected]>

REFER Method

Dialer

sip:tomsphone.mitel.com

sip:[email protected]

sip call flow examples

SIP Call Flow Examples

Tom Gray

Strategic Technology

call forward busy

INVITE

INVITE

100 Trying

486 Busy

ACK

INVITE

180 Ringing

180 Ringing

200 OK

200 OK

ACK

ACK

Call Forward Busy

Carole

Bob

Alice

Proxy

Alice Calls Bob

Bob is CFB

to Carole

consultation hold 1

INVITE

INVITE

100 Trying

180 Ringing

180 Ringing

200 OK

200 OK

ACK

ACK

2 Way Communication

Consultation Hold - 1

Carole

Bob

Alice

Proxy

Alice Calls Bob

who then

Consults with

Carole and Returns to Alice

Standard Pattern

for Originating a Call

consultation hold 2
Consultation Hold - 2

Carole

Bob

Alice

Proxy

INVITE (Hold)

INVITE (Hold)

Bob Puts Alice

On Hold

Do Re-Invite in

Same Session to

Change Call Parameters

200 OK

200 OK

ACK

ACK

Audio Path Knocked Down

consultation hold 3
Consultation Hold - 3

Carole

Bob

Alice

Proxy

INVITE

Bob Calls Carole

Make New Call

for Consultation

INVITE

100 Trying

180 Ringing

180 Ringing

200 OK

200 OK

ACK

ACK

2 Way Audio

consultation hold 4

BYE

BYE

200 OK

200 OK

Audio Path Deleted

INVITE

INVITE

100 Trying

200 OK

200 OK

ACK

ACK

2 Way Audio Path Established

Consultation Hold - 4

Carole

Bob

Alice

Proxy

Drop Consultation Session

Re-Invite in Existing Session to Restore Call to Alice

third party call control 1

SUBSCRIBE

200 OK

REFER (Alice (Invite))

INVITE

NOTIFY

200 OK (NTFY)

180 Ringing

200 OK

ACK (Invite)

200 OK (Refer)

2 Way Audio

Third Party Call Control - 1

Bob

Alice

Carole’s PDA

Carole’s Phone

Carole

uses a

PDA Application

to set up a

conference

with Alice and Bob

Subscribe to Phone

and Set Up Call to Alice

third party call control 2
Third Party Call Control - 2

Bob

Carole’s Phone

Alice

Carole’s PDA

REFER (Alice (Hold))

INVITE (Hold)

200 OK

To Start Conference

Put

Alice on Hold

ACK

200 OK

Audio Path Knocked Down

third party call control 3

REFER (Refer(Alice)(Bob)))

REFER (Invite(Bob))

INVITE

200 OK

ACK

200 OK

200 OK

Third Party Call Control - 3

Bob

Alice

Carole’s PDA

Carole’s Phone

REFER (Bob)

INVITE

Tell Phone to Set Up

Call To Bob

and with

Same Call ID

Tell Alice

Conference with Bob

180 Trying

200 OK

ACK

200 OK

third party call control 4

200 OK

2 Way Audio

Third Party Call Control - 4

Bob

Alice

Carole’s PDA

Carole’s Phone

INVITE

180 Ringing

Alice Calls

Carole’s Phone

Carole’s PDA

is Notified

-

Refers Phone

to Re-Invite

To Set Up

Speech path

NOTIFY

200 OK

REFER

INVITE

200 OK

ACK

the ietf call processing language cpl

The IETF Call Processing Language (CPL)

Ramiro Liscano

Strategic Technology

Based on the IETF Draft: draft-ietf-iptel-cpl-04.ps

system requirements

Service Logic

Programming Interface

Requests

Requests

SIP Server

Function

Responses

Responses

System Requirements
  • Programming Telephony (SIP) Services

SIP-CGI (Trusted Parties) or CPL (Un-trusted Parties)

language requirements
Language Requirements
  • Verifiable: Well-formed and executable.
  • Guaranteed to complete: No loops.
  • Safe to execute: Restrained environment.
  • Standardized Representation:
  • Readable and Producible: human or machine.
  • Protocol Independent:
    • Independent of Operating System or Signaling Protocol
  • Ease of Transport: File representation.
iptel route signaling example

Corporate

Server

Departmental

Server

Outgoing

Proxy

Route 1: Originator Signals through Servers

End System

Destination

End System

Originator

CPL

CPL

CPL

Route 2: Originator Directly Contacts Destination

CPL

CPL

IPTel Route Signaling Example
  • Internet Telephony Signaling servers cannot know state of end systems they “control” since signaling may bypass them.
cpl definition

Succeeded

Failed

Outcome 1

Outcome 2

Action 1

True

Condition

Action 2

False

CPL Definition
  • A Language used to describe and control Internet Telephony Services.
  • Designed to be implemented on either Network Servers or User Agent Servers.
  • Describes Services as a Decision Graph based on XML Syntax.
cpl usefulness
CPL Usefulness
  • Script Creation by End Users (Personal Assistance Functionality)
    • Customized call filtering.
  • Third Party Outsourcing
    • A standardized language.
  • Administrator Service Definition
    • Define enterprise policies.
  • Web Middleware
    • Service creation and customization using WEB interfaces.
cpl script functionality
CPL Script Functionality
  • In a Signaling Server controls proxy, redirect, or rejection actions for the set-up of a call. Replaces SIP-CGI?
  • Focused on “local” control rather than “global” coordination of multiple signaling servers as in IN architecture.
  • Defines a list of Condition/Action Pairs that concentrates on user “location” routing.
  • Controversial Question: Should a CPL script execute on the END System?
creating and transporting cpl scripts
Creating and Transporting CPL Scripts
  • CPL is easily created using “text” editors or “SGML” type of editors.
  • Script needs to be transported onto a CPL-enabled network server. (Currently no standard agreed upon)
    • WEB Uploading
    • SIP Register method.
    • SOAP (Simple Object Access Protocol)
  • All approaches require user authentication and script persistency.
which script is executed in progress
Which Script is executed? (In Progress)
  • Scripts are associated with a particular Internet telephony address: SIP To or From: [email protected]
  • One script/user executes at a time.
    • Originator before Destination
    • Administrator scripts before user scripts.
  • Only one script for a particular event. Newer script substitutes old script.
    • Problems with compound and “Otherwise” tag conditionals.
motivation for using cpl
Motivation for Using CPL
  • CPL is not Turing-complete and does not support loops or recursion. It is guaranteed to terminate.
  • Script resources are bounded under a proposed standard and therefore execution of the script is guaranteed.
  • CPL can be easily created and manipulated because interpreter can manage all conditions specified in the language.
cpl high level structure
CPL High Level Structure
  • Call Processing Actions
    • Top-Level Actions (<incoming> OR <outgoing>)
    • Subactions (Non-recursive actions called from other actions)

busy

Location

url:sip:[email protected]

example.com

proxy

timeout: 10s

Call

Address-switch

field: from

subfield:host

timeout

failure

Subdomain-of:

example.com

Location

url:sip:[email protected]

voicemail.

example.com

redirect

otherwise

Voicemail

cpl code example

A Switch based on an Address of the Call Request

Field = origin | destination | original destination

Subfield = address-type | user | host | port | tel | display

SIP Mappings: origin = From:

original destination = To:

Top Level Actions to Take on User’s Incoming Call

Triggers on Incoming Call

Destination = Owner

SIP Trigger: INVITE

Location Modifier

Used to Add or Remove locations from location set

Action to Take

IF origin host = example.com

Alternative Actions

CPL Code Example

<cpl>

<subaction id="voicemail">

<location url="sip:[email protected]"> <redirect />

</location>

</subaction>

<incoming>

<address-switch field="origin" subfield="host">

<address subdomain-of="example.com">

<location url="sip:[email protected]">

<proxy timeout="10">

<busy> <sub ref="voicemail" /> </busy>

<noanswer> <sub ref="voicemail" /> </noanswer>

<failure> <sub ref="voicemail" /> </failure>

</proxy>

</location>

</address>

<otherwise>

<sub ref="voicemail" />

</otherwise>

</address-switch>

</incoming>

</cpl>

cpl signaling actions

Redirect Action

Directs calling party to place call to set of locations.

Immediately terminates CPL.

SIP Signaling:

Server sends 3xx response.

Proxy Action

Causes call request to be forwarded to the locations in the location set.

CPL chooses “adequate” response to the call attempt.

If “successful” CPL terminates.

SIP Signaling:

busy = 486 | 600 response

redirection = 3xx response

failure = other 4xx | 5xx | 6xx resp.

no-answer = no response.

CPL Signaling Actions

<subaction id="voicemail">

<location url="sip:[email protected]">

<redirect />

</location>

</subaction>

<incoming>

<address-switch field="origin" subfield="host">

<address subdomain-of="example.com">

<location url="sip:[email protected]">

<proxy timeout="10">

<busy> <sub ref="voicemail" /> </busy>

<noanswer> <sub ref="voicemail" /> </noanswer>

<failure> <sub ref="voicemail" /> </failure>

</proxy>

</location>

</address>

<otherwise>

<sub ref="voicemail" />

</otherwise>

</address-switch>

</incoming>

other types of switches
Other Types of Switches
  • Time Switch
    • start, end, duration, freq, until, byday, etc.
    • Based on Internet Calendaring and Scheduling Core Object Specification (iCal COS), RFC 2445.

<time dtstart=“19970105T083000” duration=“PT10M”

freq=“yearly” interval=“2” bymonth=“1” byday=“SU”>

Starting Jan 5th, 1997 08:30 for 10 minutes.

Every Sunday in January from 08:30-08:40 every other year.

  • Priority Switches
    • Based on Priority Tags (emergency, urgent, normal, non-urgent)
other types of switches cont
Other Types of Switches (cont.)
  • String Switch
    • Decisions can be based on free-form strings present in a call request.
    • Five fields defined
      • subject - subject of call.
      • Organization - organization of the originator of the call.
      • user-agent - program | device that made the call.
      • Language - language of choice.
      • Display - free-form text meant to be displayed with call.
cpl server extensions
CPL Server Extensions
  • All CPL extensions are indicated by XML namespaces. <extension has=URL>
  • Examples
    • Querying how a Call has been Authenticated.
    • Richer control over H.323 addressing.
    • Mid-call or end-of-call controls.
    • End system specific features.
    • Support for Regular Expression Matching.
sip activities

SIP Activities

Daniel Amyot

Strategic Technology

sip is only part of the big picture
SIP is Only Part of theBig Picture…
  • Multiple Standardization Activities Related to SIP, including:

JAIN

PINT

SDP

SIP-T

SPIRITS

Others…

TRIP

SOAP

SIP and CPL at Mitel

New Research Topics?

standardization activities sip and sdp
Standardization Activities:SIP and SDP
  • SIP: Session Initiation Protocol
    • RFC 2543, March 1999 (Proposed Standard)
    • Current Internet Draft: RFC 2543 bis-02, November 2000
  • SDP: Session Description Protocol
    • Used to describe sessions in INVITE request
    • SIP implementations MUST understand SDP
standardization activities trip
Standardization Activities:TRIP
  • A Framework for Telephony Routing over IP
    • No global "directory of gateways" of phone numbers
    • Given an input telephone number, determine the address of a telephony gateway
  • Telephony Routing over IP (TRIP)
    • TRIP supports the discovery and exchange of IP telephony gateway routing tables between providers
    • Location servers (LS) sharing information
    • Not limited to routing; TRIP also handles selection of services, people, and other resources
    • Independent of signaling protocol, and can handle multiple such protocols simultaneously (SIP, H.323, etc.)
    • 4th Internet Draft, November 2000 (almost standardized)
standardization activities pint and spirits

PINT

SPIRITS

Standardization Activities:PINT and SPIRITS
  • PINT = PSTN/Internet Interworking
    • PINT Service Protocol: Extensions to SIP and SDP for IP Access to Telephone Call Services
  • SPIRITS = Service in the PSTN/IN Requesting InTernet Service
    • Control of Internet applications from PSTN/IN

PSTN, IN, Cell…

Internet

standardization activities sip for telephony wg sip t
Standardization Activities:SIP for Telephony WG (SIP-T)
  • BCP-T
    • Best Current Practice for Telephony Interworking
    • Inter-MGC communication using SIP
    • Informational draft, obsoletes SIP+
  • MIME Media Types for ISUP and Q.SIG Objects
    • Used for interoperability with legacy systems and services
    • Internet draft, November 2000
standardization activities sip and soap
Standardization Activities:SIP and SOAP
  • SOAP (IBM/Microsoft)
    • Simple Object Access Protocol (W3C Note)
  • SIP and SOAP
    • Generic and extensible framework through which SIP nodes can request additional services from remote nodes
    • SOAP transported through SIP SERVICE message rather than HTTP
    • Candidate XML-based RPC mechanism for CPL
    • Internet Draft, June 2000
standardization activities jain sip
Standardization Activities:JAIN SIP
  • Java API for Integrated Networks (JAIN)
    • Sun’s Java-based APIs for the rapid development of Next Generation telecom products using EJB
    • Two levels: Application/Call Control and Protocol
  • JAIN SIP
    • Portable interface to share information between SIP Clients and SIP Servers
    • Standard API for SIP stacks
    • Proposed Final Draft almost available
other activities
Other Activities
  • Interworking between H.323 and SIP Networks
    • Internet draft of requirements, October 2000
    • Also under study by ITU-T (Question 13/16)
  • Call Control (transfer, conference, 3PCC…)
    • Informational only
  • Caller preferences
  • SNMP Management Information Base (MIB)
  • Applications (SIMPLE, IFAX…)
  • For more activities… http://www.softarmor.com/sipwg/tasks/index.html
sip and cpl at mitel
SIP and CPL at Mitel
  • Research projects
    • Policy Description Language(PDL — extends CPL functionalities)
    • Service Description Languages
    • Human Aspects
    • Participants
      • U. of Ottawa (Logrippo) / U. of Waterloo (Atlee)
      • U. of Ottawa (Karmouch)
      • U. of Stirling (Turner / Magill, Scotland)
      • Dalhousie University (Jost)
      • Concordia University (Radhakrishnan)
      • U. of Toronto (Wellman)
  • SIP and CPL used in internal projects
new research topics
New Research Topics?
  • Policies
    • Representation
    • Negotiation and Conflict Handling (FI)
  • Applications
    • Scalable Execution Frameworks
    • Security
      • Autorisation, authentication
      • Middle Box Handling (firewalls, NATS, …)
    • Performance Monitoring and Enforcement
  • Interworking
    • Between Autonomous Systems
    • With Legacy Systems (including SS7, H.323, …)
  • Human Factors
    • Privacy, Controllability, Understandability
    • Appropriate Levels of Context Representation
ad