+ All Categories
Home > Documents > SIP CPLSIP CPL Brought to you by Strategic Technology A Gentle Introduction to SIP and CPL January...

SIP CPLSIP CPL Brought to you by Strategic Technology A Gentle Introduction to SIP and CPL January...

Date post: 18-Dec-2015
Category:
View: 214 times
Download: 1 times
Share this document with a friend
Popular Tags:
64
SIP CPLSIP CPL Brought to you by Strategic Technology A Gentle Introduction to SIP and CPL January 31, 2001 Session Initiation Protocol Call Processing Language
Transcript

SIP

CP

LSIP

CP

L

Brought to you by Strategic Technology

A Gentle Introduction toSIP and CPL

January 31, 2001

Session Initiation ProtocolCall Processing Language

© 2001

SIP

CP

LSIP

CP

LPage 2

A Gentle Introduction to SIP and CPLStrategic Technology

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

SIP

CP

LSIP

CP

L

Brought to you by Strategic Technology

What is SIP andWhy is it Important

Tom Gray

Strategic Technology

© 2001

SIP

CP

LSIP

CP

LPage 4

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 5

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 6

A Gentle Introduction to SIP and CPLStrategic Technology

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…

© 2001

SIP

CP

LSIP

CP

LPage 7

A Gentle Introduction to SIP and CPLStrategic Technology

GroupTRIP Billing Locate

GroupTRIP BillingARS

Group

TRIP Billin

gUser

AgentClient

SIP

Media Gateway

Media GatewayIP, ATM, PSTN…Media

GatewayMedia Gateway

MGCP MGCP

User Agent

User Agent

CPL

SIPServerClient

© 2001

SIP

CP

LSIP

CP

LPage 8

A Gentle Introduction to SIP and CPLStrategic Technology

SIP in Context

Connection Control

Database

Coordination Space

Policy Agents External Data Sources

Policies

SIP

SIP SIP

© 2001

SIP

CP

LSIP

CP

LPage 9

A Gentle Introduction to SIP and CPLStrategic Technology

SIP

Personal Agents

Location/Presence Server

BIG

ACD ExampleAlice

BusyFrench

Carol

AvailableEnglish

Daniel

AvailableFrench

SIP

SIPCall inFrench…

BIG

Agent

ACD Proxy Server

TRIP

SIPSIP

Personal Agent

Bob

SIP

CP

LSIP

CP

L

Brought to you by Strategic Technology

SIP Architecture and Protocol

Kathy Baker

Strategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 11

A Gentle Introduction to SIP and CPLStrategic Technology

SIP User Agents

UserAgentClient

UserAgentServer

UserAgentClient

UserAgentServer

CALLEE

CALLER

INVITE

Client sends a request message

200 OK

Server sends back a response message

© 2001

SIP

CP

LSIP

CP

LPage 12

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 13

A Gentle Introduction to SIP and CPLStrategic Technology

SIP Architecture example

UserAgentClient

UserAgentServer User

AgentClient

UserAgentServer

CALLER

Stateful Proxy

Redirect Server

Stateless Proxy

INVITE

INVITE

INVITE

INVITE

302 ACK

MEDIA PATH

CALLEE

200 OK

200 OK

200 OKACK

ACK

ACK

SIP PATH

© 2001

SIP

CP

LSIP

CP

LPage 14

A Gentle Introduction to SIP and CPLStrategic Technology

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)

© 2001

SIP

CP

LSIP

CP

LPage 15

A Gentle Introduction to SIP and CPLStrategic Technology

Addressing

SIP-URL sip:user@host sip:[email protected] sip:[email protected] sip:[email protected]

Can accept parameters sip:[email protected]&priority=urgent sip:[email protected]&subject=Bluetooth

Can be identified by generic URIs kanata.systems.mitel.com tel:13334442343

© 2001

SIP

CP

LSIP

CP

LPage 16

A Gentle Introduction to SIP and CPLStrategic Technology

Request MessageRequest Line

MessageHeader

MessageBody

INVITE:sip:[email protected] SIP/2.0

From: Kathy <sip:[email protected]>To: Daniel <sip:[email protected]>Contact: sip:[email protected]: 20010110@kathy_phone.strat_techContent-Type: application/sdpContent-Length: 147CSeq: 1 INVITEv=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

INVITEACKOPTIONSBYEREGISTERCANCEL

NOTIFYSUBSCRIBEREFERMESSAGE

© 2001

SIP

CP

LSIP

CP

LPage 17

A Gentle Introduction to SIP and CPLStrategic Technology

Response MessageStatus Line

MessageHeader

MessageBody

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: 20010110@kathy_phone.strat_techContact: sip:[email protected]: 1 INVITE

Status Codes

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

200 Success

3xx Redirect

4xx Client Error

5xx Server Error

6xx Global Error

© 2001

SIP

CP

LSIP

CP

LPage 18

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 19

A Gentle Introduction to SIP and CPLStrategic Technology

INVITE Method

sip:[email protected]

sip.kanata.mitel.com(stateful proxy)

sip:[email protected]

sip.ottawa.nortel.ca(redirect server)

sip.mitel.com(stateless proxy)

sip.nortel.com(stateful proxy)

CUA

SUA

INVITE

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

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

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

302

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,

ACK

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

INVITE

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

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

© 2001

SIP

CP

LSIP

CP

LPage 20

A Gentle Introduction to SIP and CPLStrategic Technology

Responses and ACK Method

sip:[email protected]

sip.kanata.mitel.com(stateful proxy)

sip:[email protected]

sip.ottawa.nortel.ca(redirect server)

sip.mitel.com(stateless proxy)

sip.nortel.com(stateful proxy)

CUA

SUA

200 OK

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

200 OK

200 OK200 OK

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

ACK

ACK

ACKACK

© 2001

SIP

CP

LSIP

CP

LPage 21

A Gentle Introduction to SIP and CPLStrategic Technology

BYE Method

sip:[email protected]

sip.kanata.mitel.com(stateful proxy)

sip:[email protected]

sip.ottawa.nortel.ca(redirect server)

sip.mitel.com(stateless proxy)

sip.nortel.com(stateful proxy)

CUA

SUA

BYE

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

BYEBYE

© 2001

SIP

CP

LSIP

CP

LPage 22

A Gentle Introduction to SIP and CPLStrategic Technology

OPTIONS Method

UserAgentClient

UserAgentServer User

AgentClient

UserAgentServer

sip:[email protected] sip:[email protected]

SIP Proxy

OPTIONS:sip:[email protected] SIP/2.0

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

OPTIONSOPTIONS

OPTIONS:sip:[email protected] SIP/2.0

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

SIP/2.0 200 OK

Via: SIP/2.0/UDP kanata.mitel.com To: 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

200 OK200 OK

© 2001

SIP

CP

LSIP

CP

LPage 23

A Gentle Introduction to SIP and CPLStrategic Technology

REGISTER Method

UserAgentClient

UserAgentServer

SIP Registrar REGISTER

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

200 OK

SIP/2.0 200 OK

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

sip:[email protected]

LocationServer

SIP Proxy

© 2001

SIP

CP

LSIP

CP

LPage 24

A Gentle Introduction to SIP and CPLStrategic Technology

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.”

© 2001

SIP

CP

LSIP

CP

LPage 25

A Gentle Introduction to SIP and CPLStrategic Technology

REFER Method

UserAgentClient

UserAgentServer

sip:[email protected]

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

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

REFER

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]

INVITEDialer UserAgentClient

UserAgentServer

sip:tomsphone.mitel.com

SIP

CP

LSIP

CP

L

Brought to you by Strategic Technology

SIP Call Flow Examples

Tom Gray

Strategic Technology

© 2001

SIP

CP

LSIP

CP

LPage 27

A Gentle Introduction to SIP and CPLStrategic Technology

Call Forward BusyAlice Proxy Bob Carole

INVITE

INVITE

100 Trying

486 Busy

ACK

INVITE

180 Ringing

180 Ringing

200 OK

200 OK

ACKACK

Alice Calls Bob

Bob is CFBto Carole

© 2001

SIP

CP

LSIP

CP

LPage 28

A Gentle Introduction to SIP and CPLStrategic Technology

Consultation Hold - 1Alice Proxy Bob Carole

INVITE

INVITE

100 Trying

180 Ringing

180 Ringing200 OK

200 OK

ACK

ACK

2 Way Communication

Alice Calls Bobwho then

Consults with Carole and Returns

to Alice

Standard Patternfor Originating

a Call

© 2001

SIP

CP

LSIP

CP

LPage 29

A Gentle Introduction to SIP and CPLStrategic Technology

Consultation Hold - 2Alice Proxy Bob Carole

INVITE (Hold)

INVITE (Hold)

200 OK

200 OK

ACK

ACK

Audio Path Knocked Down

Bob Puts AliceOn Hold

Do Re-Invite inSame Session to

Change Call Parameters

© 2001

SIP

CP

LSIP

CP

LPage 30

A Gentle Introduction to SIP and CPLStrategic Technology

Consultation Hold - 3Alice Proxy Bob Carole

INVITE

INVITE

100 Trying

180 Ringing

180 Ringing

200 OK

200 OK

ACK

ACK

2 Way Audio

Bob Calls Carole

Make New Callfor Consultation

© 2001

SIP

CP

LSIP

CP

LPage 31

A Gentle Introduction to SIP and CPLStrategic Technology

Consultation Hold - 4Alice Proxy Bob Carole

BYE

BYE

200 OK

200 OK

Audio Path DeletedINVITE

INVITE

100 Trying

200 OK

200 OK

ACK

ACK

2 Way Audio Path Established

Drop Consultation Session

Re-Invite in Existing Session to Restore

Call to Alice

© 2001

SIP

CP

LSIP

CP

LPage 32

A Gentle Introduction to SIP and CPLStrategic Technology

Third Party Call Control - 1Carole’s PDA Carole’s Phone Alice Bob

SUBSCRIBE

200 OK

NOTIFY

200 OK (NTFY)

REFER (Alice (Invite))

INVITE

Carole uses a

PDA Applicationto set up a conference

with Alice and Bob

Subscribe to Phoneand Set Up Call

to Alice

180 Ringing

200 OK

ACK (Invite)

200 OK (Refer)2 Way Audio

© 2001

SIP

CP

LSIP

CP

LPage 33

A Gentle Introduction to SIP and CPLStrategic Technology

Third Party Call Control - 2Carole’s PDA Carole’s Phone Alice Bob

To Start ConferencePut

Alice on Hold

REFER (Alice (Hold))INVITE (Hold)

200 OK

200 OK

Audio Path Knocked Down

ACK

© 2001

SIP

CP

LSIP

CP

LPage 34

A Gentle Introduction to SIP and CPLStrategic Technology

Third Party Call Control - 3Carole’s PDA Carole’s Phone Alice Bob

REFER (Bob)

INVITE

180 Trying

200 OK

ACK

Tell Phone to Set UpCall To Bob

and withSame Call ID

Tell Alice Conference with Bob200 OK

REFER (Refer(Alice)(Bob)))

REFER (Invite(Bob))

INVITE

200 OK

ACK

200 OK

200 OK

© 2001

SIP

CP

LSIP

CP

LPage 35

A Gentle Introduction to SIP and CPLStrategic Technology

Third Party Call Control - 4Carole’s PDA Carole’s Phone Alice Bob

INVITE

180 RingingNOTIFY

200 OK

REFER

INVITE

200 OK

ACK

200 OK

Alice Calls Carole’s Phone

Carole’s PDA is Notified

-Refers Phoneto Re-InviteTo Set Up

Speech path

2 Way Audio

SIP

CP

LSIP

CP

L

Brought to you by Strategic Technology

The IETF Call Processing Language (CPL)

Ramiro Liscano

Strategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 38

A Gentle Introduction to SIP and CPLStrategic Technology

System Requirements

Programming Telephony (SIP) Services

SIP Server

Function

Service Logic

Programming Interface

Requests Requests

ResponsesResponses

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

© 2001

SIP

CP

LSIP

CP

LPage 39

A Gentle Introduction to SIP and CPLStrategic Technology

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.

© 2001

SIP

CP

LSIP

CP

LPage 40

A Gentle Introduction to SIP and CPLStrategic Technology

IPTel Route Signaling Example

End System

Originator

CPL

CPL

Outgoing

Proxy

CPL

Corporate

Server

CPL

Departmental

Server

End System

Destination

CPLRoute 2: Originator Directly Contacts Destination

Route 1: Originator Signals through Servers

Internet Telephony Signaling servers cannot know state of end systems they “control” since signaling may bypass them.

© 2001

SIP

CP

LSIP

CP

LPage 41

A Gentle Introduction to SIP and CPLStrategic Technology

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.

Condition

Action 1

Action 2

True

False

Succeeded

Failed

Outcome 1

Outcome 2

© 2001

SIP

CP

LSIP

CP

LPage 42

A Gentle Introduction to SIP and CPLStrategic Technology

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.

© 2001

SIP

CP

LSIP

CP

LPage 43

A Gentle Introduction to SIP and CPLStrategic Technology

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?

© 2001

SIP

CP

LSIP

CP

LPage 44

A Gentle Introduction to SIP and CPLStrategic Technology

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.

© 2001

SIP

CP

LSIP

CP

LPage 45

A Gentle Introduction to SIP and CPLStrategic Technology

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.

© 2001

SIP

CP

LSIP

CP

LPage 46

A Gentle Introduction to SIP and CPLStrategic Technology

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.

© 2001

SIP

CP

LSIP

CP

LPage 47

A Gentle Introduction to SIP and CPLStrategic Technology

CPL High Level Structure Call Processing Actions

– Top-Level Actions (<incoming> OR <outgoing>)– Subactions (Non-recursive actions called from

other actions)

Call Address-switch field: from subfield:host

Subdomain-of: example.com

otherwise

Location url:sip:jones@ example.com

redirect

busy

timeout

failure

Location url:sip:jones@ voicemail. example.com

proxy timeout: 10s

Voicemail

© 2001

SIP

CP

LSIP

CP

LPage 48

A Gentle Introduction to SIP and CPLStrategic Technology

Location Modifier

Used to Add or Remove locations from location set

Top Level Actions to Take on User’s Incoming Call

Triggers on Incoming Call

Destination = Owner

SIP Trigger: INVITE

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:

Action to Take

IF origin host = example.com

Alternative Actions

<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 Code Example

© 2001

SIP

CP

LSIP

CP

LPage 49

A Gentle Introduction to SIP and CPLStrategic Technology

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 responseredirection = 3xx responsefailure = 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>

© 2001

SIP

CP

LSIP

CP

LPage 50

A Gentle Introduction to SIP and CPLStrategic Technology

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)

© 2001

SIP

CP

LSIP

CP

LPage 51

A Gentle Introduction to SIP and CPLStrategic Technology

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.

© 2001

SIP

CP

LSIP

CP

LPage 52

A Gentle Introduction to SIP and CPLStrategic Technology

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

CP

LSIP

CP

L

Brought to you by Strategic Technology

SIP Activities

Daniel Amyot

Strategic Technology

© 2001

SIP

CP

LSIP

CP

LPage 54

A Gentle Introduction to SIP and CPLStrategic Technology

SIP is Only Part of theBig Picture…

Multiple Standardization Activities Related to SIP, including:

SDP

TRIP

PINT

SPIRITSSIP-T

SOAP

JAIN

Others…

SIP and CPL at Mitel New Research Topics?

© 2001

SIP

CP

LSIP

CP

LPage 55

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 56

A Gentle Introduction to SIP and CPLStrategic Technology

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)

© 2001

SIP

CP

LSIP

CP

LPage 57

A Gentle Introduction to SIP and CPLStrategic Technology

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

Internet

Internet

PSTN, IN,

Cell…

PSTN, IN,

Cell…

PINT

SPIRITS

© 2001

SIP

CP

LSIP

CP

LPage 58

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 59

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 60

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 61

A Gentle Introduction to SIP and CPLStrategic Technology

Standardization Activities:JAIN SIP

JAINSIP

© 2001

SIP

CP

LSIP

CP

LPage 62

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 63

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 64

A Gentle Introduction to SIP and CPLStrategic Technology

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

© 2001

SIP

CP

LSIP

CP

LPage 65

A Gentle Introduction to SIP and CPLStrategic Technology

Thank You

Strategic Technology, Mitel Systems.– [email protected][email protected][email protected][email protected]


Recommended