Call Completion using BFCP draft-roach-sipping-callcomp-bfcp IETF 67 – San Diego November 7, 2006.

Slides:



Advertisements
Similar presentations
MARTINI WG Interim draft-kaplan-martini-with-olive-00 Hadriel Kaplan.
Advertisements

SIP Interconnect Guidelines draft-hancock-sip-interconnect-guidelines-02 David Hancock, Daryl Malas.
1 IP Telephony (VoIP) CSI4118 Fall Introduction (1) A recent application of Internet technology – Voice over IP (VoIP): Transmission of voice.
New Security Issues Raised by Open Cards Pierre GirardJean-Louis Lanet GERMPLUS R&D.
SIMPLE Presence Traffic Optimization and Server Scalability Vishal Kumar Singh Henning Schulzrinne Markus Isomaki Piotr Boni IETF 67, San Diego.
Remote Call/Device Control IETF82, Dispatch WG, Taipei November 15, Rifaat Shekh-Yusef Cullen Jennings Alan Johnston.
Session-Independent Policies draft-ietf-sipping-session-indep-policy-01 Volker Hilt Gonzalo Camarillo
IETF 91 DISPATCH draft-jesske-dispatch-forking- answer-correlation-02 Roland Jesske.
XML Configuration Access Protocol (XCAP) Jonathan Rosenberg dynamicsoft.
GRUU Jonathan Rosenberg Cisco Systems
Session Initiation Protocol (SIP) By: Zhixin Chen.
Requirements for Resource Priority Mechanisms for the Session Initiation Protocol draft-ietf-ieprep-sip-reqs-01 Henning Schulzrinne Columbia University.
SIP, Session Initiation Protocol Internet Draft, IETF, RFC 2543.
1 Extending SIP Speaker: Hsuan-Ming Chen Adviser: Ho-Ting Wu Date: 2005/04/26.
GRUU Mechanism Jonathan Rosenberg. Status Draft-rosenberg-sipping-gruu-reqs-01 defines the problem Draft-rosenberg-sip-gruu submitted with proposed solution.
Proposed Fix to HERFP* (Heterogeneous Error Response Forking Problem) Rohan Mahy * for INVITE transactions.
Session-ID Requirements for IETF84 draft-ietf-insipid-session-id-reqts-00 1 August 2012 Paul Jones, Gonzalo Salgueiro, James Polk, Laura Liess, Hadriel.
1 SIP WG meeting 73rd IETF - Minneapolis, MN, USA November, 2008 Return Routability Check draft-kuthan-sip-derive-00 Jiri
Session Initiation Protocol Tutorial Ronen Ben-Yossef VP of Products - RADCOM
Request History – Solution Mary Barnes SIP WG Meeting IETF-57 draft-ietf-sip-history-info-00.txt.
The Session Initiation Protocol (SIP) Common Log Format (CLF)‏ IETF 74, March 2009, San Francisco, CA (USA)‏ Vijay K. Gurbani Eric Burger Humberto Abdelnur.
July 10, 2006rtpsec BOF IETF-661 Best Effort SRTP Phil Zimmermann Alan Johnston.
1 Kommunikatsiooniteenuste arendus IRT0080 Loeng 8 Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst.
1 © NOKIA 1999 FILENAMs.PPT/ DATE / NN SIP Service Architecture Markus Isomäki Nokia Research Center.
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
Explicit Subscriptions for REFER draft-sparks-sipcore-refer-explicit-subscription-00 SIPCORE – IETF90 Robert Sparks.
Draft-rosen-ecrit-emergency- framework-00 Brian Rosen NeuStar CPa
Presented By Team Netgeeks SIP Session Initiation Protocol.
SIPPING IETF 57 Jonathan Rosenberg dynamicsoft.
November 2005IETF64 - ECRIT1 Emergency Service Identifiers draft-ietf-sipping-sos-01 draft-schulzrinne-sipping-service-01 Henning Schulzrinne Columbia.
7/6/20061 Speermint Use Case for Cable IETF 66 Yiu L. Lee JULY 2006.
1 SPEERMINT Use Cases for Cable IETF 66 Montreal 11 JULY 2006 Presented by Yiu L. Lee.
Omar A. Abouabdalla Network Research Group (USM) SIP – Functionality and Structure of the Protocol SIP – Functionality and Structure of the Protocol By.
Sumanth Nag Popuri.  Why do we need SIP ?  The protocol  Instant Messaging using SIP  Internet Telephony with SIP  Additional applications  Future.
SIP INFO Event Framework (draft-kaplan-sip-info-events-00) Hadriel Kaplan Christer Holmberg 70th IETF, Vancouver, Canada.
SIP working group IETF#70 Essential corrections Keith Drage.
Rfc4474bis-01 IETF 90 (Toronto) STIR WG Jon. First principles (yet again) Separating the work into two buckets: 1) Signaling – What fields are signed,
SIP Extensions for Network-Asserted Caller Identity and Privacy within Trusted Networks Flemming Andreasen W. Marshall, K. K. Ramakrishnan,
Interactive Connectivity Establishment : ICE
Open issues from SIP list Jonathan Rosenberg dynamicsoft.
Teacher:Quincy Wu Presented by: Ying-Neng Hseih
- 1 -P. Kyzivatdraft-sipping-gruu-reg-event-00 Reg Event Package Extensions draft-sipping-gruu-reg-event-00 IETF64 Nov-2005.
RFC3261 (Almost) Robert Sparks. SIPiT 10 2 Status of the New SIP RFC Passed IETF Last Call In the RFC Editor queue Author’s 48 hours review imminent IMPORTANT:
March 20, 2007BLISS BOF IETF-681 Requirements and Implementation Options for the Multiple Line Appearance Feature using the Session Initiation Protocol.
GRUU Jonathan Rosenberg Cisco Systems. Changes in -06 Editorial as a result of RFC-ED early copy experiment.
July 28, 2008BLISS WG IETF-721 The Multiple Appearance Feature using the Session Initiation Protocol (SIP) draft-johnston-bliss-mla-req-02 Alan Johnston.
July 28, 2009BLISS WG IETF-751 Shared Appearance of a SIP AOR draft-ietf-bliss-shared-appearances-03 Alan Johnston Mohsen Soroushnejad Venkatesh Venkataramanan.
SIP Events: Changes and Open Issues IETF 50 / SIP Working Group Adam Roach
History-Info header and Support of target-uri Solution Requirements Mary Barnes Francois Audet SIPCORE.
March 20th, 2001 SIP WG meeting 50th IETF SIP WG meeting Overlap signalling handling
The Session Initiation Protocol - SIP
Answer-Mode and Alert-Mode Extensions Dean Willis Andrew Allen.
SIP Overload Control draft-hilt-sipping-overload-00 Volker Hilt Daryl Malas Indra Widjaja
GRUU Jonathan Rosenberg Cisco Systems. Main Changes Up front discussion of URI properties Opaque URI parameter for constructing GRUU Procedure for EP.
Andrew Allen ROUTING OUT OF DIALOG REQUESTS draft-allen-dispatch-routing-out-of-dialog-request-01 Dispatch IETF 92 March 23 rd 2015.
Globally Identifiable Number (GIN) Registration Adam Roach draft-martini-roach-gin-01 IETF 77 – Anaheim, CA, USA March 22, 2010.
1 Personal Mobility Management for SIP-based VoIP Services 王讚彬 國立台中教育大學資訊工程學系
1 Coping with Early Media Brian Stucker Nortel Systems/Standards Architect November 6th, 2006.
Postech DP&NM Lab Session Initiation Protocol (SIP) Date: Seongcheol Hong DP&NM Lab., Dept. of CSE, POSTECH Date: Seongcheol.
SIP wg Items Jonathan Rosenberg dynamicsoft Caller Preferences: Changes Discussion of Redirects –Previous draft only proxy –Nothing different for redirect.
IP Telephony (VoIP).
Session Initiation Protocol
Transcoding Framework
Session Initiation Protocol (SIP)
Requirements and Implementation Options for the Multiple Line Appearance Feature using the Session Initiation Protocol (SIP) draft-johnston-bliss-mla-req-00.
Net 431: ADVANCED COMPUTER NETWORKS
Jean-François Mulé CableLabs
Transcoding Framework
OMA PoC Overview and draft-allen-sipping-poc-p-headers
SIP Session Timer Glare Handling
Presentation transcript:

Call Completion using BFCP draft-roach-sipping-callcomp-bfcp IETF 67 – San Diego November 7, 2006

Overview Uses requirements from draft-poetzl-sipping-call- completion-01 Uses normal SIP option tags to indicate support and negotiate use Uses BFCP (hopefully RFC 4582 by now) to place callback requests in queue, and manipulate the queue Uses RFC 3087 techniques to prioritize incoming call completion calls over other calls, correlate caller with previous call attempt. Feedback so far has been strongly (although not unanimously) in favor of this general approach.

Why BFCP? Requirements from draft-poetzl-… include specific semantics around queue management No existing SIP methods inherently deal with queue management BFCP is semantically congruent with the problem: several users need to be granted exclusive access to a single resource in a controlled fashion

Issue 1: Conveying URIs Current draft uses Contact header field in a provisional response to indicate where to send INVITE for BFCP session. Current draft uses Contact header field in 200 response to INVITE (for BFCP session) to indicate where to send INVITE for call re- attempt. The solution is intended to allow dedicated servers to provide the service, but the preceding behavior gets in the way. Also, this is arguably an abuse of what “Contact” was supposed to mean in the first place.

What’s This Server Stuff? CallerProxyServerCallee INVITE Busy Here ACK INVITE (for BFCP) 183 Conveys URI for BFCP Session 200 BFCP SessionDialog Subscription BYE 200 Proxy Forks INVITE INVITE ACK Initial Call Attempt CCBS Service Activation Call Re-Attempt Something in here must Convey URI For INVITE re-attempt

So, What’s the Problem, Then? CallerProxyServerCallee INVITE Busy Here ACK INVITE (for BFCP) If this 200 Conveys Callee URI in Contact, then ACK and BYE go to the wrong place 200 BFCP SessionDialog Subscription BYE 200 INVITE ACK Initial Call Attempt CCBS Service Activation Call Re-Attempt

Issue 1: Options 1.Convey re-attempt URI in BFCP –Unfortunately, this doesn’t fit well in with what BFCP does 2.Add new header field (e.g. “To-Recall:”) –Service-specific header field is a bit outside “the SIP way” of doing things –Recall Dave’s “To-Explode-My-Phone” rant. 3.Put it in a REFER?

Issue 1 Proposal: Use REFER CallerProxyServerCallee INVITE (for BFCP) 200 BFCP SessionDialog Subscription REFER 200 INVITE ACK CCBS Service Activation Call Re-Attempt BYE 200 REFER Conveys Callee URI

Issue 2: Endpoint Queues vs. Server Queues BFCP Session

Issue 2: Endpoint Queues vs. Server Queues BFCP Session Dialog Subscription Dialog Subscription

Issue 2: Endpoint Queues vs. Server Queues Current mechanism works with both User Agents and Servers maintaining call completion queues. User experience is identical or substantially similar regardless of where the queue lives, or how many queues exist We could artificially constrain solution by making an unnecessary MUST-strength prohibition against one of these modes of operation – but why would we? In particular, keep in mind that we define protocols, not architectures. Artificial architectural prohibitions seem outside our jurisdiction.

Issue 3: Feature Creep Several people have raised additional potential requirements, beyond those expressed in draft-poetzl-…, and well outside the capabilites of any solution offered so far; e.g.: –What if the caller owns several devices? Is it a solution requirement to let all such devices know when a callee of interest is available? –What is the callee owns several devices; he hangs up one and then runs away from it but can be contacted on a different one? It is a solution requirement for the call completion call to track them down on a device other than the one that they just touched? How hard do we want to make this? We can continue to pile on requirements until the problem becomes unsolvable.

Issue 4a: GRUUs The draft currently doesn’t require GRUUs, although it suggests their use so as to allow callers to address individual callee terminals when setting up BFCP sessions. Apparently, the suggestion that the mechanism is compatible with, and even enhanced by, GRUUs is causing significant consternation. Do we need to do something here? I think this is just a matter of people not having enough time to read the draft carefully yet.

Issue 4b: Caller Correlation Most of the issues people have raised with GRUUs isn’t with the GRUUs themselves as much as the requirement to hold on to a URI that is used for the call re-attempt at some later point. This issue arises (only) in the PSTN interwork case – which is one of the key drivers for the service. Currently, the URI lets the callee know two things: 1)That the incoming call is a call completion call, and 2)That the caller is the same entity who was just granted permission to re-attempt their call. Without this, it is very easy for me to “jump in line” ahead of you. (Except in closed-garden networks)

Issue 4b: Caller Correlation The problem is that this IAM may go to a different gateway than this one does.

Issue 4b: Caller Correlation PSTN Gateway Correlation URI is sent here during call completion service activation remoteUserFree IAM How does the correlation URI get back here? Ring Answer Callee Caller

Issue 4b: Is This Really a Problem? PSTN Gateway remoteUserFree IAM Correlation URI Conveyed Ring Answer Callee Caller Correlation URI is sent here during call completion service activation Stores URI Gets URI Keep in mind that this issue arises only when these gateways are in the same administrative domain… …which means that we can trivially put a shared database here.

Issue 4b: Proposal Leave the mechanism as-is

Issue 5: GRID is gone from GRUU Because the called party uses the URI from a request to determine that it is a call-completion re-attempt and to correlate the attempt with the proper BFCP session, we need to have distinct URIs for each pending caller With non-GRUUs, this is easy to fix: information can be squirreled away in the user portion of the URI GRUU user portions can’t be fiddled with.

Issue 5: Options 1.Get a new GRUU from the registrar every time someone calls, with the same contact for each –It’s a bit heavy weight –While we can correlate users, we lose the ability to store state in the user portion – that is, the registrar chooses the entire URI, instead of the user agent –Requires callee to hold on to state between informing caller of availability and caller re-attempting call (so we’ll need to run a timer). 2.Get a new GRUU from the registrar every time someone calls, with a different contact for each, and use the user portion of the contact to store information (taking advantage of proposed loose routing semantics) –It’s a bit heavy weight –I think it results in incoming calls to the user’s AOR forking off to the user agent multiple times. 3.Add new “cookie” parameter to URI for use with GRUUs. 4.Go back to having GRIDs