One document matched: draft-ram-siprec-metadata-format-01.txt

Differences from draft-ram-siprec-metadata-format-00.txt


siprec                                           Ram Mohan. Ravindranath
Internet-Draft                                  Parthasarathi. Ravindran
Intended status: Standards Track                           Paul. Kyzivat
Expires: September 9, 2011                           Cisco Systems, Inc.
                                                           March 8, 2011


      Session Initiation Protocol (SIP) Recording Metadata Format
                  draft-ram-siprec-metadata-format-01

Abstract

   Session recording is a critical requirement in many communications
   environments such as call centers and financial trading.  In some of
   these environments, all calls must be recorded for regulatory,
   compliance, and consumer protection reasons.  Recording of a session
   is typically performed by sending a copy of a media stream to a
   recording device.  The requirements for which are described in
   [I-D.ietf-siprec-req], the architecture for which is described in
   [I-D.ietf-siprec-architecture], and the metadata model viewed by
   Session Recording Server is described in [I-D.ram-siprec-metadata].
   This document focuses on the Recording metadata format which
   describes the communication session.

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on September 9, 2011.

Copyright Notice

   Copyright (c) 2011 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents



Ravindranath, et al.    Expires September 9, 2011               [Page 1]

Internet-Draft           SIP Recording Metadata               March 2011


   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  3
   3.  Recording Metadata Format  . . . . . . . . . . . . . . . . . .  3
   4.  SIP Recording Metadata document format . . . . . . . . . . . .  4
     4.1.  Contents . . . . . . . . . . . . . . . . . . . . . . . . .  4
     4.2.  XML data format  . . . . . . . . . . . . . . . . . . . . .  4
       4.2.1.  Namespace  . . . . . . . . . . . . . . . . . . . . . .  5
       4.2.2.  recording-metadata . . . . . . . . . . . . . . . . . .  5
       4.2.3.  recording  . . . . . . . . . . . . . . . . . . . . . .  5
       4.2.4.  group  . . . . . . . . . . . . . . . . . . . . . . . .  5
       4.2.5.  session  . . . . . . . . . . . . . . . . . . . . . . .  6
       4.2.6.  participant  . . . . . . . . . . . . . . . . . . . . .  6
       4.2.7.  stream . . . . . . . . . . . . . . . . . . . . . . . .  6
       4.2.8.  extensiondata  . . . . . . . . . . . . . . . . . . . .  7
       4.2.9.  start-time/stop-time . . . . . . . . . . . . . . . . .  7
   5.  SIP Recording Metadata Example . . . . . . . . . . . . . . . .  7
     5.1.  Complete SIP Recording Metatdata Example . . . . . . . . .  7
     5.2.  Partial Update of Recording metadata XML body  . . . . . .  9
   6.  XML Schema definition for Recording metadata . . . . . . . . .  9
   7.  XML element usage in SIP methods . . . . . . . . . . . . . . . 13
   8.  Example with SIP and metadata XML+SDP  . . . . . . . . . . . . 14
     8.1.  SRC Initiated Recording  . . . . . . . . . . . . . . . . . 14
   9.  Security Considerations  . . . . . . . . . . . . . . . . . . . 16
     9.1.  Connection Security  . . . . . . . . . . . . . . . . . . . 16
   10. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 17
     10.1. SIP recording metadata Schema Registration . . . . . . . . 17
   11. Acknowledgement  . . . . . . . . . . . . . . . . . . . . . . . 17
   12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 17
     12.1. Normative References . . . . . . . . . . . . . . . . . . . 17
     12.2. Informative References . . . . . . . . . . . . . . . . . . 18
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 19









Ravindranath, et al.    Expires September 9, 2011               [Page 2]

Internet-Draft           SIP Recording Metadata               March 2011


1.  Introduction

   Session recording is a critical requirement in many communications
   environments such as call centers and financial trading.  In some of
   these environments, all calls must be recorded for regulatory,
   compliance, and consumer protection reasons.  Recording of a session
   is typically performed by sending a copy of a media stream to a
   recording device.  The requirements for which are described in
   [I-D.ietf-siprec-req], the architecture for which is described in
   [I-D.ietf-siprec-architecture], and the metadata model viewed by
   Session Recording Server is described in [I-D.ram-siprec-metadata].
   This document focuses on the Recording metadata format which
   describes the communication session.  The delivery mechanism for
   passing metadata is outside the scope of this document.

   The Session Recording Client (SRC) SHALL initiate the Recording
   Session.  It should be noted that the Recording Session is a
   completely independent from the Communication Session that is being
   recorded at both the SIP dialog level and at the session level.


2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].  This
   document only uses these key words when referencing normative
   statements in existing RFCs.


3.  Recording Metadata Format

   Recording Metadata is the data that describes the communication
   session.  Metadata has to be conveyed from SRC to SRS, further the
   metadata MAY be conveyed in the Recording Session dialog and SRS may
   send metadata to convey Key information to SRC.

   The media related details of metadata SHALL be passed across using
   session description protocol (SDP) [RFC4566].  SDP attributes
   describes about different media formats like audio, video.  The other
   metadata attributes like participant details MUST be passed across in
   new Recording specific XML document namely application/recording.
   The linkage between application/recording XML schema and metadata SDP
   is done using the SDP label attribute (a=label:xxx) referenced in
   [RFC4574].

   Metadata is passed across in Recording Session(RS) incrementally
   whenever there is a change in CS.



Ravindranath, et al.    Expires September 9, 2011               [Page 3]

Internet-Draft           SIP Recording Metadata               March 2011


4.  SIP Recording Metadata document format

4.1.  Contents

   Recording Metadata document is an XML document which will be embedded
   as a message body.  The document contains

   o  recording-metadata element MUST present in all recording metadata
      XML document. recording-metadata acts as container for all other
      elements in this XML document.
   o  Elements like recording, session, participant, stream are under
      recording-metadata element directly with appropriate parent id and
      have separate URN UUID for passing the partial information of
      metadata.  In case of partial metadata, recording-metadata element
      and the relevant updated elements will be passed by SRC and the
      elements are identified in SRS using URN UUID and parent id.
   o  Open item: Whether partial data has to be passed in the level
      metadata block like stream, participant or individual elements in
      metadata block.  The current approach is based on metadata block
      which helps is reducing the number URN UUID maintained in SRC and
      SRS.  This decision of which approach needs discussion before
      closure
   o  recording element MUST be present in the first metadata XML
      document of a given session. recording element has unique id based
      on URN UUID [RFC4122].
   o  Group element provides the information about the communication
      session group
   o  Session element provides the information about the communication
      session
   o  Participant element provides information regarding the specific
      participant involved in the recording
   o  Stream element indicates SDP media lines associated with the CS
      and participants
   o  ExtensionData element provides the mechanism by which namespace/
      element shall be extended with standard or proprietary
      information.

4.2.  XML data format

   Recording-metadata object is a XML document.  It MUST have the XML
   declaration and it SHOULD contain an encoding declaration in the XML
   declaration, e.g., "<?xml version='1.0' encoding='UTF-8'?>".  If the
   charset parameter of the MIME content type declaration is present and
   it is different from the encoding declaration, the charset parameter
   takes precedence.

   Every application conforms to this specification MUST accept the
   UTF-8 character encoding to ensure the minimal interoperability.



Ravindranath, et al.    Expires September 9, 2011               [Page 4]

Internet-Draft           SIP Recording Metadata               March 2011


   Syntax and semantics error in recording XML document has to be
   informed to the originator using application specific mechanism.

4.2.1.  Namespace

   The namespace URI for elements defined by this specification is a
   Uniform Resource Namespace (URN) [RFC2141], using the namespace
   identifier 'ietf' defined by [RFC2648] and extended by [RFC3688].

   The URN is as follows: urn:ietf:params:xml:ns:recording

4.2.2.  recording-metadata

   recording-metadata element MUST contain an xmlns namespace attribute
   with value as urn:ietf:params:xml:ns:siprec.  Atleast one recording-
   metadata element MUST present in the all recording metadata XML
   document.

   recording-metadata element has recording, group, session, stream
   elements.

   dataMode element shows whether the XML document is complete document
   or partial update.  The default value is complete.

4.2.3.  recording

   recording element has unique id based on URN UUID [RFC4122] attribute
   and this attribute helps to uniquely identify recording element.

   There are other elements associated in the recording element.  The
   element information is as follows:
   o  recording requestor attribute indicates whether SRC or SRS
      initiates the particular session.  The default value is SRC.
   o  recording type shows whether the type of recording belongs to
      selective or persistent.  The default value is selective.

4.2.4.  group

   Each communication session group (CSG) has one group tuple.

   Each group element has unique URN UUID attribute which helps to
   uniquely identify CSG.

   Each group MAY have initiator entity attribute which contains SIP/
   SIPS URI to identify the device which acts as Session Recording
   Client (SRC).  The entity attribute SIP/SIPS URI FQDN or IP address
   represents the device and may not have user part.




Ravindranath, et al.    Expires September 9, 2011               [Page 5]

Internet-Draft           SIP Recording Metadata               March 2011


4.2.5.  session

   Each communication session(CS) has one session tuple.

   Each session element has unique URN UUID attribute which helps to
   uniquely identify CS and group URN UUID to associate session with
   specific group element.

   Reason element MAY be included to indicate the reason for
   termination.

4.2.6.  participant

   Each communication session user is defined by one participant tuple.
   The streams tuple in each participant is associating SDP m-lines with
   the participant.

   send/recv tuple in each participant is associating SDP m-lines with
   the participant. send element indicates that participant is sending
   the stream of media with the mentioned media description. recv
   element indicates that participant is receiving the stream and by
   default all pariticipant will receive the stream. recv element has
   relevance in case whisper call scenario wherein few of the
   participant in the session receives the stream and not others.

   Participant MUST have AOR element which contains SIP/SIPS URI to
   identify the participant.  AOR element is SIP/SIPS URI FQDN or IP
   address which represents the user.

   Each participant element has unique URN UUID attribute which helps to
   uniquely identify participant and session URN UUID to associate
   participant with specific session element.  URN UUID of participant
   *MUST* used in the scope of CSG and no new URN UUID has to be created
   for the same element (participant, stream) between different CS in
   the same CSG.  In case URN UUID has to be used permanent, careful
   usage of URN UUID to original AoR has to be decided by the
   implementers and it is implementer's choice.

4.2.7.  stream

   This element indicates the SDP m-line properties like label
   attributes, media mode.  Label attribute is used to link m-line SDP
   body using label attribute in SDP m-line.  The media mode helps in
   understanding whether the media is mixed or not.

   Each stream element has unique URN UUID attribute which helps to
   uniquely identify stream and session URN UUID to associate stream
   with specific session element.



Ravindranath, et al.    Expires September 9, 2011               [Page 6]

Internet-Draft           SIP Recording Metadata               March 2011


4.2.8.  extensiondata

   extensiondata element SHALL include any other XML namespace.
   Multiple namespace MAY exists under extensiondata. extensiondata
   element exist in each level like recording, session, participant,
   stream to provide extensiondata specific to each element.
   extensiondata element has unique id based on URN UUID [RFC4122]
   attribute and its parent id.

4.2.9.  start-time/stop-time

   start-time/stop-time contains a string indicating the date and time
   of the status change of this tuple.  The value of this element MUST
   follow the IMPP datetime format [RFC3339].  Timestamps that contain
   'T' or 'Z' MUST use the capitalized forms.  At a time, any of the
   time tuple start-time or stop-time MAY exist in the element namely
   group, session, participant, stream and not both timestamp at the
   same time.

   As a security measure, the timestamp element SHOULD be included in
   all tuples unless the exact time of the status change cannot be
   determined.


5.  SIP Recording Metadata Example

5.1.  Complete SIP Recording Metatdata Example

   The following example provides all the tuples involved in Recording
   Metadata XML body.

     <?xml version="1.0" encoding="UTF-8"?>
     <recording-metadata xmlns='urn:ietf:params:xml:ns:siprec'>
       <recording id="urn:uuid:7979087f-959c-4b84-bb22-07da66733b47">
          <requestor>SRC</requestor>
          <type>selective</type>
       </recording>
       <extensiondata
         id="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882"
         parent="urn:uuid:7979087f-959c-4b84-bb22-07da66733b47">
           <!-- Standardized extension -->
           <call-center xmlns='urn:ietf:params:xml:ns:callcenter'>
             <supervisor>sip:alice@cisco.com</supervisor>
           </call-center>
           <mydata xmlns='http://example.com/my'>
             <structure>FOO!</structure>
             <whatever>bar</whatever>
           </mydata>



Ravindranath, et al.    Expires September 9, 2011               [Page 7]

Internet-Draft           SIP Recording Metadata               March 2011


        </extensiondata>
        <group id="urn:uuid:efe3930b-2a31-4e6a-a6ab-203fd7078302"
          recording="urn:uuid:7979087f-959c-4b84-bb22-07da66733b47">
         <initiator>sip:romeo@example.com</initiator>
        </group>
        <extensiondata xmlns='http://example.com/groupapp'
          id="urn:uuid:f3373a7b-4958-4e55-8820-d03a191fb76a"
          parent="urn:uuid:efe3930b-2a31-4e6a-a6ab-203fd7078302">
           <structure>FOO!</structure>
           <whatever>bar</whatever>
        </extensiondata>
        <session id="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425"
          group="urn:uuid:efe3930b-2a31-4e6a-a6ab-203fd7078302" />
        </session>
        <extensiondata xmlns='http://example.com/sessionapp'
          id="urn:uuid:a54d6aa5-d40d-43f9-88c5-b4633d873bdd"
          parent="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
          <structure>FOO!</structure>
          <whatever>bar</whatever>
        </extensiondata>
        <participant
           id="urn:uuid:b2b7c112-5982-469d-9007-6ddbecca64d3"
           session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
           <aor>sip:romeo@example.com</aor>
           <name xml:lang="it">Romeo Montague</name>
           <send>
             <id>urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b</id>
           </send>
           <recv>
             <id>urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17</id>
           </recv>
        </participant>
        <extensiondata xmlns='http://example.com/participantapp1'
          id="urn:uuid:7edca82f-054d-47f2-a032-9b2a5b5186c1"
          parent="urn:uuid:b2b7c112-5982-469d-9007-6ddbecca64d3">
          <structure>FOO!</structure>
          <whatever>bar</whatever>
        </extensiondata>
        <participant
          id="urn:uuid:cd27cfa1-2bdd-4830-a653-70374d10f103"
          session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
          <aor>sip:juliet@example.net</aor>
          <name xml:lang="it">Juliet Capulet</name>
          <send>
             <id>urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17</id>
          </send>
          <recv>
             <id>urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b</id>



Ravindranath, et al.    Expires September 9, 2011               [Page 8]

Internet-Draft           SIP Recording Metadata               March 2011


          </recv>
        </participant>
        <extensiondata xmlns='http://example.com/participantapp2'
          id="urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6"
          parent="urn:uuid:cd27cfa1-2bdd-4830-a653-70374d10f103">
          <structure>FOO!</structure>
          <whatever>bar</whatever>
        </extensiondata>
        <stream id="urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17"
          session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
          <start-time>2010-12-16T23:41:07Z</start-time>
          <label>96</label>
        </stream>
        <stream id="urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b"
          session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
          <start-time>2010-12-16T23:41:07Z</start-time>
          <label>97</label>
        </stream>
   </recording-metadata>

                  SIP Recording Metadata Example XML body

5.2.  Partial Update of Recording metadata XML body

   The following example provides partial update in Recording Metadata
   XML body for the above example.  The example illustrate the stop time
   of the specific stream.

     <?xml version="1.0" encoding="UTF-8"?>
     <recording-metadata xmlns='urn:ietf:params:xml:ns:siprec'>
       <dataMode>partial</dataMode>
       <stream id="urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17">
         <stop-time>2010-12-16T23:41:07Z</start-time>
         <label>96</label>
       </stream>
       <stream id="urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b">
         <stop-time>2010-12-16T23:41:07Z</start-time>
         <label>97</label>
       </stream>
     </recording-metadata>

             Partial update of SIP Recording Example XML body


6.  XML Schema definition for Recording metadata

   This section defines XML schema for Recording metadata document




Ravindranath, et al.    Expires September 9, 2011               [Page 9]

Internet-Draft           SIP Recording Metadata               March 2011


   <?xml version="1.0" encoding="UTF-8"?>
   <xs:schema targetNamespace="urn:ietf:params:xml:ns:recording"
    xmlns:tns="urn:ietf:params:xml:ns:recording"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified">
   <!-- This import brings in the XML language attribute xml:lang-->
   <xs:import namespace="http://www.w3.org/XML/1998/namespace"
    schemaLocation="http://www.w3.org/2001/xml.xsd"/>
   <xs:element name="recording-metadata"
   type="tns:recording" maxOccurs="unbounded"/>
   <xs:complexType name="recording-metadata">
       <xs:sequence>
           <xs:element name="datamode" type="xs:dataMode"
                minOccurs="0"/>
           <xs:element name="recording" type="tns:recording"
                minOccurs="0" maxOccurs="unbounded"/>
           <xs:element name="session" type="tns:session"
                minOccurs="0" maxOccurs="unbounded"/>
           <xs:element name="participant" type="tns:participant"
                minOccurs="0" maxOccurs="unbounded"/>
           <xs:element name="stream" type="tns:stream"
               minOccurs="0" maxOccurs="unbounded"/>
        <xs:element name="extensiondata" type="tns:extensiondata"
                minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
   </xs:complexType>
   <xs:complexType name="recording">
       <xs:sequence>
         <xs:element name="requestor" type="xs:requestor"
                minOccurs="0"/>
           <xs:element name="type" type="xs:type"
                minOccurs="0"/>
         <xs:element name="start-time" type="xs:dateTime"
                minOccurs="0"/>
         <xs:element name="stop-time" type="xs:dateTime"
                minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:urnuuid"
            use"required"/>
   </xs:complexType>
   <xs:complexType name="group">
       <xs:sequence>
           <xs:element name="initiator" type="xs:anyURI"
            minOccurs="0" maxOccurs="1"/>
         <xs:element name="start-time" type="xs:dateTime"
                minOccurs="0"/>
         <xs:element name="stop-time" type="xs:dateTime"



Ravindranath, et al.    Expires September 9, 2011              [Page 10]

Internet-Draft           SIP Recording Metadata               March 2011


                minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:urnuuid"
            use"required"/>
       <xs:attribute name="recording" type="xs:urnuuid"
            use"required"/>
   </xs:complexType>
   <xs:complexType name="session">
       <xs:sequence>
         <xs:element name="start-time" type="xs:dateTime"
                minOccurs="0"/>
         <xs:element name="stop-time" type="xs:dateTime"
                minOccurs="0"/>
         <xs:element name="reason" type="xs:string"
                minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:urnuuid"
            use"required"/>
       <xs:attribute name="group" type="xs:urnuuid"
            use"required"/>
   </xs:complexType>
   <xs:complexType name="participant">
       <xs:sequence>
           <xs:element name="aor" type="xs:anyURI"
             maxOccurs="1"/>
           <xs:element name="send" type="xs:streamDirection"
             minOccurs="0" maxOccurs="unbounded"/>
           <xs:element name="recv" type="xs:streamDirection"
             minOccurs="0" maxOccurs="unbounded"/>
         <xs:element name="extensiondata" type="tns:extensiondata"
             minOccurs="0"/>
         <xs:element name="start-time" type="xs:dateTime"
                minOccurs="0"/>
         <xs:element name="stop-time" type="xs:dateTime"
                minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:urnuuid"
            use"required"/>
       <xs:attribute name="session" type="xs:urnuuid"
            use"required"/>
   </xs:complexType>
   <xs:complexType name="stream">
       <xs:sequence>
         <xs:element name="label" type="xs:string"
             minOccurs="0" maxOccurs="1"/>
           <xs:element name="mode" type="xs:streamMode"
             minOccurs="0" maxOccurs="1"/>
         <xs:element name="start-time" type="xs:dateTime"



Ravindranath, et al.    Expires September 9, 2011              [Page 11]

Internet-Draft           SIP Recording Metadata               March 2011


                minOccurs="0"/>
         <xs:element name="stop-time" type="xs:dateTime"
                minOccurs="0"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:urnuuid"
            use"required"/>
       <xs:attribute name="session" type="xs:urnuuid"
            use"required"/>
   </xs:complexType>
   <xs:simpleType name="streamMode">
       <xs:restriction base="xs:string">
           <xs:pattern
            value="mixed|separate"/>
       </xs:restriction>
   </xs:simpleType>
     <xs:simpleType name="requestor">
         <xs:restriction base="xs:string">
           <xs:pattern
            value="SRC|SRS"/>
         </xs:restriction>
   </xs:simpleType>
   <xs:simpleType name="urnuuid">
         <xs:restriction base="xs:string">
           <xs:pattern
            value="urn:uuid:[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}
                 -[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}"/>
         </xs:restriction>
   </xs:simpleType>
   </xs:simpleType>
     <xs:simpleType name="type">
         <xs:restriction base="xs:string">
           <xs:pattern
            value="selective|persistant"/>
         </xs:restriction>
   </xs:simpleType>
   </xs:simpleType>
     <xs:simpleType name="dataMode">
         <xs:restriction base="xs:string">
           <xs:pattern
            value="Complete|partial"/>
         </xs:restriction>
   </xs:simpleType>
   <xs:complexType name="extensiondata">
       <xs:sequence>
           <xs:element name="string" type="xs:any"
             maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:urnuuid"



Ravindranath, et al.    Expires September 9, 2011              [Page 12]

Internet-Draft           SIP Recording Metadata               March 2011


            use"required"/>
       <xs:attribute name="session" type="xs:urnuuid"
            use"required"/>
   </xs:complexType>
   <xs:complexType name="streamDirection">
       <xs:sequence>
           <xs:element name="label" type="xs:string"
             maxOccurs="unbounded"/>
       </xs:sequence>
   </xs:complexType>


7.   XML element usage in SIP methods

   Table 1 just provides the guidelines of XML element usage in SIP
   methods and the table does not mandate SIP as a transport for this
   XML body.  Most of the columns are defined in [RFC3261], the column
   'PRA' is for the PRACK method [RFC3262],'UPD' is for the UPDATE
   method [RFC3311], 'SUB' is for the SUBSCRIBE method [RFC3265], 'NOT'
   is for the NOTIFY method [RFC3265] and 'INF' is for the INFO method
   [RFC3261] .


    +----------------+-----+---+---+---+---+---+---+---+---+---+---+---+
    |XML Element     |where|ACK|BYE|CAN|INV|OPT|REG|PRA|UPD|SUB|NOT|INF|
    +----------------+-----+---+---+---+---+---+---+---+---+---+---+---+
    |recording       |  R  | o | o | - | o | - | - | o | o | - | o | o |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |recording       | 2xx | - | o | - | o | - | - | - | o | - | - | - |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |group           |  R  | o | o | - | o | - | - | o | o | - | o | o |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |group           | 2xx | - | o | - | o | - | - | - | o | - | - | - |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |session         |  R  | o | o | - | o | - | - | o | o | - | o | o |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |session         | 2xx | - | o | - | o | - | - | - | o | - | - | - |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |participant     |  R  | o | - | - | o | - | - | o | o | - | o | o |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |participant     | 2xx | - | - | - | o | - | - | - | o | - | - | - |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |stream          |  R  | o | - | - | o | - | - | o | o | - | - | - |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    |stream          | 2xx | - | - | - | o | - | - | - | o | - | - | - |
    |                |     |   |   |   |   |   |   |   |   |   |   |   |
    +------------- --+-----+---+---+---+---+---+---+---+---+---+---+---+
                      Table 1: XML element usage in SIP Methods



Ravindranath, et al.    Expires September 9, 2011              [Page 13]

Internet-Draft           SIP Recording Metadata               March 2011


   Open item: Whether it is allowed to have SIP specific table in this
   draft?  Pls provide your comments.


8.  Example with SIP and metadata XML+SDP

   This section describes the different use cases/messages for
   delivering Metadata in a Recording Sessions.

8.1.  SRC Initiated Recording

   An SRC initiates Recording Session(RS) for recording a communication
   session with audio and video media.  SRC initiates the dialog by
   sending an INVITE request to the SRS.  INVITE is formed as specified
   in [RFC3261] , SRC inserts recording metadata as an XML document and
   SDP in multipart MIME message body [RFC2046].  The content type of
   SIP header is set to application/rs-metadata+xml
   [I-D.portman-siprec-protocol].  SRC MUST form SDP offer using the
   normal procedures defined in [RFC3261]and [RFC3264].  SRC SHALL
   include one m-line for each stream of each participant.  If the
   recording has to be started immediately then SRC MUST include an SDP
   attribute of "a=sendonly" for each media line or "a=inactive" if it
   is not ready to transmit the media.  SRC MAY also include only one
   m-line for all streams of same type for all participants depending on
   whether it has the capability to mix the streams.  SRC indicates the
   mode (mixed or single) for each stream using a mode attribute.  An
   example wherein INVITE sent by an SRC is shown below:


   INVITE sip:1041@recordingserver.cisco.com:5060;transport=tcp SIP/2.0
   Max-Forwards: 70
   To: <sip:1041@recordingserver.cisco.com>
   From: RecrdingClient <sip:10.21.83.58>;tag=ds43d76263
   Call-ID: 12548086970261@192.168.1.67
   CSeq: 100 INVITE
   Content-Length: xxx
   Contact: <sip:10.21.83.58:5060;transport=tcp>;audio;
   Date: Tue, 23 Mar 2010 23:29:00 GMT
   Content-Type: multipart/mixed;boundary=unique-boundary-1
   MIME-Version: 1.0

   --unique-boundary-1
   Content-Type: application/SDP
   ...
   m=audio 49170 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
   a=label:96
   a=sendonly



Ravindranath, et al.    Expires September 9, 2011              [Page 14]

Internet-Draft           SIP Recording Metadata               March 2011


   ...
   m=video 49174 RTP/AVPF 96
   a=rtpmap:96 H.264/90000
   a=label:97
   a=sendonly
   ...
   m=audio 51372 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
   a=label:98
   a=sendonly
   ...
   m=video 49176 RTP/AVPF 96
   a=rtpmap:96 H.264/90000
   a=label:99
   a=sendonly
   ....

   --unique-boundary-1
   Content-type:application/rs-metadata+xml
   <?xml version="1.0" encoding="UTF-8"?>
     <recording-metadata xmlns='urn:ietf:params:xml:ns:recording'
       id="urn:uuid:7979087f-959c-4b84-bb22-07da66733b47">
        <recording id="urn:uuid:7979087f-959c-4b84-bb22-07da66733b47">
           <requestor>SRC</requestor>
           <type>selective</type>
        </recording>
        <group id="urn:uuid:efe3930b-2a31-4e6a-a6ab-203fd7078302"
           recording="urn:uuid:7979087f-959c-4b84-bb22-07da66733b47">
        </group>
        <session id="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425"
            group="urn:uuid:efe3930b-2a31-4e6a-a6ab-203fd7078302" />
        </session>
        <participant
           id="urn:uuid:b2b7c112-5982-469d-9007-6ddbecca64d3"
           session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
           <aor>sip:partha@rc1.cisco.com</aor>
           <send>
               <id>urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b</id>
           </send>
           <send>
               <id>urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17</id>
           </send>
        </participant>
        <participant
            id="urn:uuid:cd27cfa1-2bdd-4830-a653-70374d10f103"
            session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
            <aor>sip:paul@rc1.cisco.com</aor>
            <send>



Ravindranath, et al.    Expires September 9, 2011              [Page 15]

Internet-Draft           SIP Recording Metadata               March 2011


               <id>urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17</id>
            </send>
            <send>
               <id>urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b</id>
            </send>
        </participant>
        <stream id="urn:uuid:50000c9b-9191-40a4-8231-5bcbca5e2b17"
            session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
            <start-time>2010-12-16T23:41:07Z</start-time>
            <label>96</label>
        </stream>
        <stream id="urn:uuid:8b53f3de-da39-4846-93c7-ee5e5f8f6f0b"
            session="urn:uuid:855a5ded-8420-456d-a70f-6da1eeaeb425">
            <start-time>2010-12-16T23:41:07Z</start-time>
            <label>97</label>
        </stream>
        <stream id="urn:uuid:f3373a7b-4958-4e55-8820-d03a191fb76a"
            session="urn:uuid:cd27cfa1-2bdd-4830-a653-70374d10f103">
            <start-time>2010-12-16T23:41:07Z</start-time>
            <label>98</label>
        </stream>
        <stream id="urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a"
            session="urn:uuid:cd27cfa1-2bdd-4830-a653-70374d10f103">
            <start-time>2010-12-16T23:41:07Z</start-time>
            <label>99</label>
        </stream>
   </recording-metadata>

   --unique-boundary-1--




9.  Security Considerations

   The metadata information sent from SRC to SRS MAY reveal sensitive
   information about different participants in a session.  For this
   reason, it is RECOMMENDED that a SRC use a strong means for
   authentication and metadata information protection and that it apply
   comprehensive authorization rules when using the metadata format
   defined in this document.  The following sections will discuss each
   of these aspects in more detail.

9.1.  Connection Security

   It is RECOMMENDED that a SRC authenticate SRS using the normal SIP
   authentication mechanisms, such as Digest as defined in Section 22 of
   [RFC3261].  The mechanism used for conveying the metadata information



Ravindranath, et al.    Expires September 9, 2011              [Page 16]

Internet-Draft           SIP Recording Metadata               March 2011


   MUST ensure integrity and SHOULD ensure confidentially of the
   information.  In order to achieve these, an end-to-end SIP encryption
   mechanism, such as S/MIME described in [RFC3261], SHOULD be used.

   If a strong end-to-end security means (such as above) is not
   available, it is RECOMMENDED that a SRC use mutual hop-by-hop
   Transport Layer Security (TLS) authentication and encryption
   mechanisms described in "SIPS URI Scheme" and "Interdomain Requests"
   of [RFC3261].

   TBD: Other detailed security aspects


10.  IANA Considerations

   This specification registers a new XML namespace, and a new XML
   schema.

10.1.  SIP recording metadata Schema Registration

   URI: urn:ietf:params:xml:ns:recording

   Registrant Contact: IETF SIPREC working group, Ram mohan
   R(rmohanr@cisco.com)

   XML: the XML schema to be registered is contained in Section 6.

   Its first line is <?xml version="1.0" encoding="UTF-8"?> and its last
   line is </xs:schema>


11.  Acknowledgement

   We wish to thank Joe Hildebrand(Cisco), Peter Saint-Andre(Cisco) for
   the valuable XML related guidance.  Thanks to Michael
   Benenson(Cisco), Leon Portman(Nice), Henry Lum(Alcatel-lucent), John
   Elwell(Siemens) for their inputs and comments.


12.  References

12.1.  Normative References

   [RFC2046]  Freed, N. and N. Borenstein, "Multipurpose Internet Mail
              Extensions (MIME) Part Two: Media Types", RFC 2046,
              November 1996.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate



Ravindranath, et al.    Expires September 9, 2011              [Page 17]

Internet-Draft           SIP Recording Metadata               March 2011


              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2141]  Moats, R., "URN Syntax", RFC 2141, May 1997.

   [RFC2648]  Moats, R., "A URN Namespace for IETF Documents", RFC 2648,
              August 1999.

   [RFC3261]  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.

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

   [RFC3264]  Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
              with Session Description Protocol (SDP)", RFC 3264,
              June 2002.

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

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

   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              January 2004.

   [RFC3339]  Klyne, G., Ed. and C. Newman, "Date and Time on the
              Internet: Timestamps", RFC 3339, July 2002.

   [RFC4122]  Leach, P., Mealling, M., and R. Salz, "A Universally
              Unique IDentifier (UUID) URN Namespace", RFC 4122,
              July 2005.

   [RFC4566]  Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
              Description Protocol", RFC 4566, July 2006.

   [RFC4574]  Levin, O. and G. Camarillo, "The Session Description
              Protocol (SDP) Label Attribute", RFC 4574, August 2006.

12.2.  Informative References

   [I-D.ietf-siprec-req]
              Rehor, K., Portman, L., Hutton, A., and R. Jain,
              "Requirements for SIP-based Media Recording (SIPREC)",
              draft-ietf-siprec-req-07 (work in progress), March 2011.



Ravindranath, et al.    Expires September 9, 2011              [Page 18]

Internet-Draft           SIP Recording Metadata               March 2011


   [I-D.ietf-siprec-architecture]
              Hutton, A., Portman, L., Jain, R., and K. Rehor, "An
              Architecture for Media Recording using the Session
              Initiation Protocol", draft-ietf-siprec-architecture-01
              (work in progress), October 2010.

   [I-D.ram-siprec-metadata]
              R, R., R, P., and P. Kyzivat, "Session Initiation Protocol
              (SIP) Recording Metadata", draft-ram-siprec-metadata-04
              (work in progress), March 2011.

   [I-D.portman-siprec-protocol]
              Portman, L., Lum, H., Johnston, A., and A. Hutton, "The
              SIP-based Media Recording Protocol (SIPREC)",
              draft-portman-siprec-protocol-03 (work in progress),
              March 2011.


Authors' Addresses

   Ram Mohan Ravindranath
   Cisco Systems, Inc.
   Cessna Business Park,
   Kadabeesanahalli Village, Varthur Hobli,
   Sarjapur-Marathahalli Outer Ring Road
   Bangalore, Karnataka  560103
   India

   Email: rmohanr@cisco.com


   Parthasarathi Ravindran
   Cisco Systems, Inc.
   Cessna Business Park,
   Kadabeesanahalli Village, Varthur Hobli,
   Sarjapur-Marathahalli Outer Ring Road
   Bangalore, Karnataka  560103
   India

   Email: partr@cisco.com











Ravindranath, et al.    Expires September 9, 2011              [Page 19]

Internet-Draft           SIP Recording Metadata               March 2011


   P. Kyzivat
   Cisco Systems, Inc.
   1414 Massachusetts Avenue
   Boxborough, MA  01719
   USA

   Email: pkyzivat@cisco.com












































Ravindranath, et al.    Expires September 9, 2011              [Page 20]


PAFTECH AB 2003-20262026-04-25 01:38:16