End-to-End SIP Session-ID at IETF85 draft-jones-insipid-session-id-01 5 November 2012 James Polk, Paul Jones Gonzalo Salgueiro, Chris Pearce.

Slides:



Advertisements
Similar presentations
Re-INVITE Handling draft-camarillo-sipping-reinvite-00.txt
Advertisements

1 © 2001, Cisco Systems, Inc. All rights reserved. © 2004, Cisco Systems, Inc. All rights reserved. Location Conveyance in SIP draft-ietf-sipping-location-requirements-02.
SIP and ’call flows’ A special type of MSC as used by IETF This differ from the MSC-standard Z.120 as thought in ttm4115 Lill Kristiansen.
CCNA – Network Fundamentals
End-to-End Session-ID draft-ietf-insipid-session-id IETF-89 London, March 4, 2014 James Polk.
UNCW UNCW SIGGRAPH 2002 Topic #3: Continuous Media in Wired and Wireless Environments Ronald J. Vetter Department of Computer Science University of North.
Session Initiation Protocol (SIP) By: Zhixin Chen.
IETF WG Presentation1 Nathan Mittler Multiparty Multimedia Session Control (mmusic)
SIP, Session Initiation Protocol Internet Draft, IETF, RFC 2543.
An Introduction to SIP Moshe Sambol Services Research Lab November 18, 1998.
1 Extending SIP Speaker: Hsuan-Ming Chen Adviser: Ho-Ting Wu Date: 2005/04/26.
Introduction to SIP Speaker: Min-Hua Yang Advisor: Ho-Ting Wu Date:2005/3/29.
“Lossless” recording in SIPREC Gerben Stam, NICE Systems.
End-to-End SIP Session-ID at IETF84 draft-jones-insipid-session-id-00 1 August 2012 James Polk, Paul Jones Gonzalo Salgueiro, Chris Pearce.
Session-ID Requirements for IETF84 draft-ietf-insipid-session-id-reqts-00 1 August 2012 Paul Jones, Gonzalo Salgueiro, James Polk, Laura Liess, Hadriel.
Session Initiation Protocol Tutorial Ronen Ben-Yossef VP of Products - RADCOM
IETF-54draft-ietf-sipping-service-examples-02.txt1 Open Issues in SIP Service Examples Recent Changes Added 2-party to 3-party conversion –Uses a URI to.
Best Current Practices for Third Party Call Control (3pcc) in the Session Initiation Protocol (SIP) April 2004, RFC3725 Author(s): J. Rosenberg, J. Peterson,
The Session Initiation Protocol (SIP) Common Log Format (CLF)‏ IETF 74, March 2009, San Francisco, CA (USA)‏ Vijay K. Gurbani Eric Burger Humberto Abdelnur.
DTLS-SRTP Handling in SIP B2BUAs draft-ram-straw-b2bua-dtls-srtp IETF-91 Hawaii, Nov 12, 2014 Presenter: Tirumaleswar Reddy Authors: Ram Mohan, Tirumaleswar.
Session Initiation Protocol Team Members: Manjiri Ayyar Pallavi Murudkar Sriusha Kottalanka Vamsi Ambati Girish Satya LeeAnn Tam.
March 10, 2008SIPPING WG IETF-711 Secure Media Recording and Transcoding with the Session Initiation Protocol draft-wing-sipping-srtp-key-03 Dan Wing Francois.
1 Kommunikatsiooniteenuste arendus IRT0080 Loeng 4 Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst.
All rights reserved © 1999, Alcatel, Paris. page n° 1 SIP for Xcast SIP for the establishment of xcast-based multiparty.
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
Roni Even Jonathan Lennox Mapping RTP streams to CLUE media captures draft-even-clue-rtp-mapping-03 IETF-84.
A Conference Gateway Supporting Interoperability Between SIP and H.323 Jiann-Min Ho (Presenter) Jia-Cheng Hu Information Networking Institute Peter Steenkiste.
Presented By Team Netgeeks SIP Session Initiation Protocol.
Team Members Atcharawan Jansprasert Padmoja Roy Rana Almakabi Ehsan Eslamlouevan Manya Tarawalie.
SIP Performance Benchmarking draft-ietf-bmwg-sip-bench-term-02 draft-ietf-bmwg-sip-bench-meth-02 July 24, 2010 Prof. Carol Davids, Illinois Inst. of Tech.
Streaming Media Control n The protocol components of the streaming n RTP/RTCP n RVSP n Real-Time Streaming Protocol (RTSP)
SIP:Session Initiation Protocol Che-Yu Kuo Computer & Information Science Department University of Delaware May 11, 2010 CISC 856: TCP/IP and Upper Layer.
1 SIPREC draft-ietf-siprec-architecture-00 An Architecture for Media Recording using SIP IETF SIPREC INTERIM – Sept 28 th 2010 Andrew Hutton.
Mediactrl Framework draft-melanchuk-mediactrl-framework-00 Tim Melanchuk
Draft-johnston-sipping-rtcp-summary-01.txt RTCP Summary Report Delivery to SIP Third Parties draft-johnston-sipping-rtcp-summary-01.txt Alan Johnston –
VoIP Signaling Protocols A signaling protocol is a common language spoken by telephones and call-management servers, the PSTN, and legacy PBX systems as.
Session Initiation Protocol (SIP) Chapter 5 speaker : Wenping Zhang data :
1 SIP Requirements for SRTP Keying Dan Wing IETF 66 v4.
SIPPING - IETF 62 - Minneapolis (March 2005)1 Session Initiation Protocol (SIP) Session Mobility draft-shacham-sipping-session-mobility-00 Ron Shacham.
SIP & H.323 Interworking Name: Amir Zmora Title: PM Date: Feb
SIP Performance Benchmarking draft-ietf-bmwg-sip-bench-term-01 draft-ietf-bmwg-sip-bench-meth-01 March 22, 2010 Prof. Carol Davids, Illinois Inst. of Tech.
CSE5803 Advanced Internet Protocols and Applications (14) Introduction Developed in recent years, for low cost phone calls (long distance in particular).
SIP-H.323 Interworking Group RRR-1 IETF-48 SIP-H.323 Interworking Requirements draft-agrawal-sip-h323-interworking-reqs-00.txt Hemant.
March 20, 2007BLISS BOF IETF-681 Requirements and Implementation Options for the Multiple Line Appearance Feature using the Session Initiation Protocol.
July 28, 2008BLISS WG IETF-721 The Multiple Appearance Feature using the Session Initiation Protocol (SIP) draft-johnston-bliss-mla-req-02 Alan Johnston.
Slide #1 Nov 6 -11, 2005SIP WG IETF64 Feature Tags with SIP REFER draft-ietf-sip-refer-feature-param-00 Orit
1 Internet Telephony: Architecture and Protocols an IETF Perspective Authors:Henning Schulzrinne, Jonathan Rosenberg. Presenter: Sambhrama Mundkur.
SIP Working Group IETF 74 chaired by Keith Drage, Dean Willis.
Location Conveyance in SIP draft-ietf-sip-location-conveyance-01 James M. Polk Brian Rosen 2 nd Aug 05.
OPTIMIZATION OF SIGNALING TRAFFIC IN CENTRALIZED CONFERENCES USING SIP Submitted by D.NEHRU S.JAYABALAN B.Tech IT II Year.
March 20th, 2001 SIP WG meeting 50th IETF SIP WG meeting Overlap signalling handling
The Session Initiation Protocol - SIP
Session-ID Requirements for Interim-3 draft-ietf-insipid-session-id-reqts-00 Paul Jones, Gonzalo Salgueiro, James Polk, Laura Liess, Hadriel Kaplan.
Andrew Allen ROUTING OUT OF DIALOG REQUESTS draft-allen-dispatch-routing-out-of-dialog-request-01 Dispatch IETF 92 March 23 rd 2015.
1 SIPREC Protocol draft-portman-siprec-protocol Virtual interim meeting Dec 16, 2010 Authors: L. Portman, H. Lum.
S Postgraduate Course in Radio Communications. Application Layer Mobility in WLAN Antti Keurulainen,
SIPPING Working Group IETF 67 Mary Barnes Gonzalo Camarillo.
Session-ID Requirements at IETF83 draft-jones-ipmc-session-id-reqts-01 Paul Jones, Gonzalo Salgueiro, James Polk, Laura Liess, Parthasarathi Ravindran,
SIP wg Items Jonathan Rosenberg dynamicsoft Caller Preferences: Changes Discussion of Redirects –Previous draft only proxy –Nothing different for redirect.
SESSION-ID Backward COMPATIBILITY
Session-Independent Policies draft-ietf-sipping-session-indep-policy-02 Volker Hilt Jonathan Rosenberg Gonzalo.
Transcoding Framework
An introduction to Transactions & Dialogs
SIPPING Working Group IETF 58
Session Initiation Protocol (SIP)
Session-ID Requirements at IETF83
Ron Shacham Henning Schulzrinne Srisakul Thakolsri Wolfgang Kellerer
Transcoding Framework
Overview of H.323-SIP Gateway
IETF SIP Interim Meeting, Feb. 2001
Presentation transcript:

End-to-End SIP Session-ID at IETF85 draft-jones-insipid-session-id-01 5 November 2012 James Polk, Paul Jones Gonzalo Salgueiro, Chris Pearce

Why an E2E Session-ID? Identify issues in the network (debugging) Track sessions as they move (e.g., transfer) Associate media flows with a session by inserting the Session ID into RTCP, RSVP (shhhh!), or other protocols Enable monitoring or recording of sessions (with proper end-to-end identification) Associate sessions that are related (e.g., participants in a multipoint conference or part of a targeted single or multi-party session to be recorded)

Illustrating the Problem: Alice and Bob via B2BUA or SBC AliceCarol Bob B2BUA Call ID “X” Call-ID “Y” What is the end-to-end call identifier? Alice thinks it is X and Bob thinks it is Y. BOTH think they are communicating directly with the other

Let Each Endpoint Contribute Rather than having the calling device or called device assign a Session-ID, let each assign part of the end-to-end Session-ID We then include both values in header-value

The New Session ID AliceCarol Bob Session-ID is {A,B} B2BUA Session-ID part “A” Session-ID part “B” UUID A=0xaeffa652b22911dfa81f12313a UUID B=0xbe11afc8b22911df86c412313a006823

Session-ID Construction Session-ID is two RFC 4122 defined 32-byte UUIDs (or “half-keys”). Several choices to make – Chose Hex over base64 Seemed to be a byte savings issue exclusively – Half key ordering (fixed size keys, with separator) Chose – Sender always is the first UUID, – remote UUID is prefaced with “rcvr=“ (or “remote=”) – All parts known to a entity are included in transmission

ABNF Proposed in -01 Session-ID = "Session-ID" HCOLON sess-id ( SEMI rcvr-uuid ) *( SEMI generic-param ) sess-id = 32(DIGIT / %x61-66) ;32 chars of [0-9a-f] rcvr-uuid = "rcvr" EQUAL 32(DIGIT / %x61-66)

ABNF for -02 session-id = "Session-ID" HCOLON local-uuid *(SEMI sess-id-param) local-uuid = sess-uuid remote-uuid = sess-uuid sess-uuid = 32(DIGIT / %x61-66) ;32 chars of [0-9a-f] sess-id-param = remote-param / generic-param remote-param = "remote" EQUAL remote-uuid

Basic Session-ID Construction with 2 UUIDs Session-ID --- Alice B2BUA Bob Carol {A} |----INVITE----->| | {A} | |----INVITE----->| {B,A} | |< OK------| {B,A} |< OK------| | {A,B} |------ACK------>| | {A,B} | |------ACK------>| | |

Basic Call Transfer using REFER (1/2) Session-ID --- Alice B2BUA Bob Carol | | | | | | | {B,A} | |<---reINVITE----| | {B,A} |<---reINVITE----| | | {A,B} | OK---->| | | {A,B} | | OK---->| | {B,A} | |<-----ACK | | {B,A} |<-----ACK | | | | | | | {B,A} | |<----REFER------| | {B,A} |<----REFER------| | | {A,B} | OK---->| | | {A,B} | | OK---->| | {B,A} | |<-----ACK | | {B,A} |<-----ACK | | | {A,B} |-----NOTIFY---->| | | {A,B} | |-----NOTIFY---->| | {B,A} | |< OK-----| | {B,A} |< OK-----| | |

Session-ID --- Alice B2BUA Bob Carol | | | | {A} |-----INVITE---->| | {A} | |-----INVITE >| {C,A} | |< OK | {C,A} |< OK-----| | {A,C} |------ACK------>| | {A,C} | |------ACK >| | | | | | | | | | | {A,B} |-----NOTIFY---->| | | {A,B} | |-----NOTIFY---->| | {B,A} | |< OK-----| | {B,A} |< OK-----| | | {B,A} | |<-----BYE | | {B,A} |<-----BYE | | | {A,B} | OK---->| | | {A,B} | | OK---->| | | | | | Basic Call Transfer using REFER (2/2)

Basic Call Transfer using reINVITE Session-ID --- Alice B2BUA Bob Carol | | | | | | | | | | | {B,A} | |<---reINVITE----| | {A,B} | | OK---->| | {B,A} | |<-----ACK | | | | | | {A} | |-----INVITE >| {C,A} | |< OK | {A,C} | |------ACK >| | | | | | | | | | | {B,A} | |<-----BYE | | {B,A} |<-----BYE | | | {A,B} | OK---->| | | {A,B} | | OK---->| | | | | |

Single Focus Conferencing Session-ID Conference --- Alice Focus Bob Carol | | | | {A} |----INVITE----->| | | {M1,A} |< OK------| | | {A,M1} |-----ACK >| | | | | | | {M',A} |<---reINVITE----| | | {A||M'} | OK---->| | | {M',A} |<-----ACK | | | | | | | {B} | |<----INVITE-----| | {M2,B} | | OK---->| | {B,M2} | |<-----ACK | | | | | | {M'||B} | |----reINVITE--->| | {B||M'} | |< OK-----| | {M'||B} | |------ACK------>| | | | | | {C} | |< INVITE-----| {M3,C} | | OK---->| {C,M3} | |< ACK | | | | {M'||C} | | reINVITE--->| {C||M'} | |< OK-----| {M'||C} | | ACK------>|

Single Focus Conferencing using WebEx Session-ID Conference --- Alice Focus Bob Carol | | | | | Transaction | | | | | | | {M} |<----INVITE-----| | | {A||M} | OK---->| | | {M||A} |<-----ACK | | | | | | | | | Transaction | | | | | | {M} | |-----INVITE---->| | {B||M} | |< OK-----| | {M||B} | |------ACK------>| | | | | | | | | | | Transaction | | | | | {M} | | INVITE----->| {C||M} | |< OK------| {M||C} | | ACK >| | | |

Basic 3PCC for two UAs Session-ID --- Alice B2BUA Bob Carol | | | {X} |<----INVITE-----| | {A,X} | OK---->| | {A} | |----INVITE----->| {B,A} | |< OK------| {B,A} |<-----ACK | | {A,B} | |------ACK------>| | |

New 3PCC and Session-ID AliceBob B2BUA Session-ID part “X” 3PCC from B2BUA to Alice and Bob INVITE 200 OK Session-ID part “A||X” INVITE Session-ID part “A” 200 OK Session-ID part “B||A” ACK Session-ID part “A||B” Session-ID part “B||A” RTP

Issue with lack of UUID from Either Side (?) What suggested is as follows: – Request from Alice through intermediary to Bob. Intermediary creates and inserts in request on behalf of Alice if not there. – Response from Bob through intermediary to Alice. Intermediary creates and inserts in response on behalf of Bob if not there Question – does it matter which of many intermediaries does this insertion?

Backwards Compatibility (1/2) Current implementations are based on individual draft that does not construct a Session-ID in the same way. Goal to not break existing implementations, while not sacrificing new functionality

New Interoperability section focuses on the following: – old calling old (should work fine) – new calling new (should work fine) – old calling new (interesting issues) – new calling old (more interesting issues) – More work needed in this section. – Please send text!! Backwards Compatibility (2/2)

Known Open Issues (1/2) Fix ABNF Could show a multiple-focus conferencing scenario Need RTCP text if there is an RTCP requirement. Need more text covering when and when not to allow intermediaries to insert UUIDs. – Including what to do if a intermediary figures out one UA is not Session-ID aware.

Get more info about version 0 reactions for greater interoperability – BTW we don’t want to use the term “version 0” Known Open Issues (2/2)

Next Steps Is this ready to be adopted?