RFC 3911 - The Session Initiation Protocol (SIP) Join Header(2)

时间:2006-10-31 来源: 作者: 点击:
Call-Id:777@a.example.org CSeq:1INVITE Contact:sip:conf456@conf-srv2.example.org;isfocus Message*8:A-conf INVITEsip:conf456@conf-srv2.example.orgSIP/2.0 To:sip:bob@example.org From:sip:alice@example.
  
   Call-Id: 777@a.example.org
   CSeq: 1 INVITE
   Contact: <sip:conf456@conf-srv2.example.org>;isfocus

   Message *8: A -> conf

   INVITE sip:conf456@conf-srv2.example.org SIP/2.0
   To: <sip:bob@example.org>
   From: <sip:alice@example.org>;tag=iii
   Call-Id: 777@a.example.org
   CSeq: 2 INVITE
   Contact: <sip:alice@a.example.org>
   Join: 7@c.example.org;to-tag=xyz;from-tag=pdq

   Message *9: conf ->A

   SIP/2.0 200 OK
   To: <sip:bob@example.org>;tag=jjj
   From: <sip:alice@example.org>;tag=iii
   Call-Id: 777@a.example.org
   CSeq: 2 INVITE
   Contact: <sip:conf456@conf-srv2.example.org>;isfocus

   Message *10: B -> C

   REFER sip:carol@c.example.org SIP/2.0
   To: <carol@example.org>;tag=xyz
   From: <bob@example.org>;tag=pdq
   Call-Id: 7@c.example.org
   CSeq: 1 REFER
   Contact: <sip:bob@b.example.org>
   Refer-To: <sip:conf456@conf-srv2.example.org>
   Referred-By: <sip:bob@b.example.org>

   Message *11: C -> conf

   INVITE sip:conf456@conf-srv2.example.org SIP/2.0
   To: <sip:conf456@conf-srv2.example.org>
   From: <carol@example.org>;tag=mmm

   Call-Id: 34343@c.example.com
   CSeq: 1 INVITE
   Contact: <sip:carol@c.example.com>
   Referred-By: <sip:bob@b.example.org>

   Message *12: C -> conf

   SIP/2.0 200 OK
   To: <sip:conf456@conf-srv2.example.org>
   From: <carol@example.org>;tag=mmm
   Call-Id: 34343@c.example.com
   CSeq: 1 INVITE
   Contact: <sip:conf456@conf-srv2.example.org>;isfocus
   Referred-By: <sip:bob@b.example.org>

8.2.  Join rejected

   A             B              C
   |             |  callid: 7@c |
   |             |              |
   |             |<============>|
   |             |              |
   |INVITE------>|  *1          |
   |Join: 7@c    |              |
   |             |              |
   |<----486-----|  *2          |
   |-----ACK---->|              |
   |             |              |

   In this example B is Busy (does not want to be disturbed), and
   therefore does not wish to add A.  B could also decline the request
   with a 603 response.

   Message *1: A ->  B

   INVITE sip:bob@b.example.org SIP/2.0
   To: <sip:bob@example.org>
   From: <sip:alice@example.org>;tag=iii
   Call-Id: 777@a.example.org
   CSeq: 1 INVITE
   Contact: <sip:alice@a.example.org>
   Join: 7@c.example.org;to-tag=xyz;from-tag=pdq

   Message *2: B -> A

   SIP/2.0 486 Busy
   To: <sip:bob@example.org>
   From: <sip:alice@example.org>;tag=iii
   Call-Id: 777@a.example.org
   CSeq: 1 INVITE

9.  Security Considerations

   The extension specified in this document significantly changes the
   relative security of SIP devices.  Currently in SIP, even if an
   eavesdropper learns the Call-ID, To, and From headers of a dialog,
   they cannot easily modify or destroy that dialog if Digest
   authentication or end-to-end message integrity are used.

   This extension can be used to insert or monitor potentially sensitive
   content in a multimedia conversation.  As such, invitations with the
   Join header MUST only be accepted if the peer requesting replacement
   has been properly authenticated using a standard SIP mechanism
   (Digest or S/MIME), and authorized to be joined with the target
   dialog.  (All SIP implementations are already required to support
   Digest Authentication.)  Generally authorization for joins are
   configured as a matter of local policy as long-duration persistent
   relationships.

   For example, the UAs used by call center agents might be configured
   with a list of identities who could join their calls (supervisors and
   any call center monitoring User Agents).  Alternatively the call
   center agents might rely on transitive authorization assertions from
   a (shorter) list of authorized hosts (e.g., a certificate authority).
   For answering-machine-style message screening this is even easier.
   Presumably the user screening their messages already has some
   credentials with their messaging server.

   Some mechanisms for obtaining the dialog information needed by the
   Join header (Call-ID, to-tag, and from-tag) include URIs on a web
   page, subscriptions to an appropriate event package, and
   notifications after a REFER request.  Use of end-to-end security
   mechanisms to integrity protect and encrypt this information is also
   RECOMMENDED.

   This extension was designed to take advantage of future signature or
   authorization schemes defined by standards track extensions.  In
   general, call control features would benefit considerably from such
   work.

   Section 4 describes specific mechanisms for authorization using
   Digest Authentication and S/MIME (RFC 3261) and Referred-by [9], the
   currently available capabilities in SIP.

10.  IANA Considerations

10.1.  Registration of "Join" SIP header

   Name of Header:          Join

   Short form:              none

   Normative description:   section 7.1 of this document

10.2.  Registration of "join" SIP Option-tag

   Name of option:          join

   Description:             Support for the SIP Join header

   SIP headers defined:     Join

   Normative description:   This document

11.  Acknowledgments

   Thanks to Robert Sparks, Alan Johnston, and Ben Campbell and many
   other members of the SIP WG for their continued support of the cause
   of distributed call control in SIP.

12.  References

12.1.  Normative References

   [1]   Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
         Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
         Session Initiation Protocol", RFC 3261, June 2002.

   [2]   Bradner, S., "Key words for use in RFCs to Indicate Requirement
         Levels", BCP 14, RFC 2119, March 1997.

   [3]   Crocker, D. and P. Overell, "Augmented BNF for Syntax
         Specifications: ABNF", RFC 2234, November 1997.

   [4]   Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S.,
         Leach, P., Luotonen, A., and L. Stewart, "HTTP Authentication:
         Basic and Digest Access Authentication", RFC 2617, June 1999.

   [5]   Ramsdell, B., "Secure/Multipurpose Internet Mail Extensions
         (S/MIME) Version 3.1 Message Specification", RFC 3851, July
         2004.

   [6]   Rosenberg, J., "Indicating User Agent Capabilities in the
         Session Initiation Protocol  (SIP)", RFC 3840, August 2004.

12.2.  Informative References

   [7]   Sparks, R., "The Session Initiation Protocol (SIP) Refer
         Method", RFC 3515, April 2003.

   [8]   Dean, R., Biggs, B., and R. Mahy, "The Session Initiation
         Protocol (SIP) "Replaces" Header", RFC 3891, September 2004.

   [9]   Sparks, R., "The Session Initiation Protocol (SIP) Referred-By
         Mechanism", RFC 3892, September 2004.

   [10]  Peterson, J., "Session Initiation Protocol (SIP) Authenticated
         Identity Body (AIB) Format", RFC 3893, September 2004.

   [11]  Handley, M., Schulzrinne, H., Schooler, E., and J. Rosenberg,
         "SIP: Session Initiation Protocol", RFC 2543, March 1999.

   [12]  Mahy, R., "A Call Control and Multi-party usage framework for
         the Session  Initiation Protocol (SIP)", Work in Progress,
         March 2003.

   [13]  Rosenberg, J. and H. Schulzrinne, "An INVITE Initiated Dialog
         Event Package for the Session Initiation Protocol (SIP)", Work
         in Progress, March 2003.

   [14]  IAB and IESG, "IETF Policy on Wiretapping", RFC 2804, May 2000.

   [15]  Rosenberg, J., "A Framework for Conferencing with the Session
         Initiation Protocol", Work in Progress, May 2003.

   [16]  Johnston, A. and O. Levin, "Session Initiation Protocol Call
         Control - Conferencing for User  Agents", Work in Progress,
         April 2003.

   [17]  Rosenberg, J., Peterson, J., Schulzrinne, H., and G. Camarillo,
         "Best Current Practices for Third Party Call Control (3pcc) in
         the Session Initiation Protocol (SIP)", BCP 85, RFC 3725, April
         2004.

   [18]  Johnston, A. and S. Donovan, "Session Initiation Protocol
         Service Examples", Work in Progress, March 2003.

   [19]  Campbell, B., Rosenberg, J., Schulzrinne, H., Huitema, C., and
         D. Gurle, "Session Initiation Protocol (SIP) Extension for
         Instant Messaging", RFC 3428, December 2002.

   [20]  Roach, A., "Session Initiation Protocol (SIP)-Specific Event
         Notification", RFC 3265, June 2002.

   [21]  Donovan, S., "The SIP INFO Method", RFC 2976, October 2000.

   [22]  Rosenberg, J., "The Session Initiation Protocol (SIP) UPDATE
         Method", RFC 3311, October 2002.

   [23]  Rosenberg, J. and H. Schulzrinne, "Reliability of Provisional
         Responses in Session Initiation Protocol (SIP)", RFC 3262, June
         2002.

   [24]  Campbell, B., "SIMPLE Presence Publication Mechanism", Work in
         Progress, February 2003.

13.  Authors’ Addresses

   Rohan Mahy
   Airespace
   110 Nortech Parkway
   San Jose, CA 95134
   USA

   EMail: rohan@airespace.com

   Dan Petrie
   Pingtel
   400 West Cummings Park, Suite 2200
   Woburn, MA  01801
   USA

   EMail: dpetrie@pingtel.com

14.  Full Copyright Statement

   Copyright (C) The Internet Society (2004).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the IETF’s procedures with respect to rights in IETF Documents can
   be found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.
------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容