Internet DRAFT - draft-alexander-rtp-payload-for-ecn-probing

draft-alexander-rtp-payload-for-ecn-probing






Network Working Group                                  C. Alexander, Ed.
Internet-Draft                                                J. Babiarz
Expires: April 26, 2006                                           Nortel
                                                        October 23, 2005


                   RTP Payload Format for ECN Probing
           draft-alexander-rtp-payload-for-ecn-probing-02.txt

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

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

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on April 26, 2006.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This memo defines a Real Time Transport Protocol (RTP) payload format
   for use when probing for congestion using Explicit Congestion
   Detection (ECN).  This payload format is intended for use with the
   probing mechanisms described in draft "Real-time ECN Use Cases".
   While defined in terms of the specific application of admission
   control, it is desirable to overlay this format with other probing
   mechanisms so as to reduce the number of probing packet formats.




Alexander & Babiarz      Expires April 26, 2006                 [Page 1]

Internet-Draft         RTP Payload for ECN Probing          October 2005


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  History  . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
     2.1   Version 00 . . . . . . . . . . . . . . . . . . . . . . . .  4
     2.2   Version 01 . . . . . . . . . . . . . . . . . . . . . . . .  4
   3.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  5
   4.  Definitions  . . . . . . . . . . . . . . . . . . . . . . . . .  6
   5.  Alternatives Under Consideration . . . . . . . . . . . . . . .  7
     5.1   Define New RTP Format  . . . . . . . . . . . . . . . . . .  7
     5.2   UDP  . . . . . . . . . . . . . . . . . . . . . . . . . . .  8
     5.3   ICE/STUN . . . . . . . . . . . . . . . . . . . . . . . . .  8
     5.4   Re-use Existing RTP Format . . . . . . . . . . . . . . . .  8
   6.  RTP Payload Format for Real-Time ECN Admission Control . . . .  9
     6.1   Registration . . . . . . . . . . . . . . . . . . . . . . .  9
     6.2   IP Header Fields . . . . . . . . . . . . . . . . . . . . .  9
     6.3   RTP Header Fields  . . . . . . . . . . . . . . . . . . . .  9
     6.4   Payload Format . . . . . . . . . . . . . . . . . . . . . .  9
       6.4.1   Version  . . . . . . . . . . . . . . . . . . . . . . . 10
       6.4.2   Explicit Congestion Notification (ECN) . . . . . . . . 10
       6.4.3   Initial RTP Sequence Number (IRSN) . . . . . . . . . . 10
       6.4.4   Reserved . . . . . . . . . . . . . . . . . . . . . . . 10
   7.  Considerations for Payload Format  . . . . . . . . . . . . . . 11
     7.1   Extensibility Considerations . . . . . . . . . . . . . . . 11
     7.2   Flexibility Considerations . . . . . . . . . . . . . . . . 11
   8.  Considerations for Direct Feedback . . . . . . . . . . . . . . 12
     8.1   Feedback via RTP . . . . . . . . . . . . . . . . . . . . . 12
     8.2   Feedback via RTCP  . . . . . . . . . . . . . . . . . . . . 12
   9.  MIME Registration  . . . . . . . . . . . . . . . . . . . . . . 13
     9.1   audio/ecnprobe . . . . . . . . . . . . . . . . . . . . . . 13
     9.2   video/ecnprobe . . . . . . . . . . . . . . . . . . . . . . 13
   10.   Security Considerations  . . . . . . . . . . . . . . . . . . 15
   11.   IANA Considerations  . . . . . . . . . . . . . . . . . . . . 16
   12.   Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17
   13.   References . . . . . . . . . . . . . . . . . . . . . . . . . 18
     13.1  Normative References . . . . . . . . . . . . . . . . . . . 18
     13.2  Informative References . . . . . . . . . . . . . . . . . . 18
       Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 18
       Intellectual Property and Copyright Statements . . . . . . . . 20












Alexander & Babiarz      Expires April 26, 2006                 [Page 2]

Internet-Draft         RTP Payload for ECN Probing          October 2005


1.  Introduction

   This memo defines a new RTP payload format for use with applications
   requiring congestion detection along the data path and verification
   of data path connectivity, for example, admission control of a real-
   time session.  The format described herein is intended for use with
   the mechanisms described in "Congestion Notification Process for
   Real-Time Traffic" [2], which defines the use of the Explicit
   Congestion Notification (ECN) bits in the Internet Protocol (IP)
   header as a means to detect congestion in the network for real-time
   inelastic flows.  The new format can be used to provide the
   capabilities described in "Real-time ECN Use Cases" [3], although it
   may also be used in other contexts.

   The new RTP payload format defined herein is called "ecnprobe".
   Packets utilizing this payload are carried as RTP traffic through the
   IP network.  Packets carrying this payload are treated the same as
   any other RTP packet with the exception of play-back by the receiving
   device.

   The advantages of using this payload format are:

   1.  congestion detection can be performed using a simple probing
       mechanism without having to extend other protocols;

   2.  the payload format allows for limited detection of devices making
       inappropriate changes to the ECN markings in the network;

   3.  the packet carrying the payload can vary in size from the minimum
       necessary to carry the payload, to a size padded to mimic a
       specific codec.

   Applications will use this payload format to create and send RTP
   probe packets through the IP network to determine the highest state
   of congestion along the path taken by the packets.

   In all uses, applications receiving this payload MUST NOT attempt to
   play it as actual media.

   This memo only defines the new payload format.  Examples of its usage
   can be found in [3].










Alexander & Babiarz      Expires April 26, 2006                 [Page 3]

Internet-Draft         RTP Payload for ECN Probing          October 2005


2.  History

2.1  Version 00

   Initial submission.

2.2  Version 01

   Adding sections describing alternatives under investigation, as well
   as the reasons why we believe RTP is necessary.  No other major
   content changes over -00 version.








































Alexander & Babiarz      Expires April 26, 2006                 [Page 4]

Internet-Draft         RTP Payload for ECN Probing          October 2005


3.  Terminology

   In this document, the key words "MUST", "MUST NOT", "REQUIRED",
   "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
   and "OPTIONAL" are to be interpreted as described in RFC2119 [7] and
   indicate requirement levels for compliant implementations.













































Alexander & Babiarz      Expires April 26, 2006                 [Page 5]

Internet-Draft         RTP Payload for ECN Probing          October 2005


4.  Definitions

   The following terms are used in this document:

   Cheater: A device in the network that makes inappropriate changes to
      the ECN markings in the network.  A cheating device might re-mark
      the ECN bits in the IP header in order to hide congestion from an
      endpoint (i.e., by lowering the ECN congestion marking), or might
      force an endpoint to think congestion is present when it is not
      (i.e., by raising the ECN congestion marking).  Due to the nature
      of ECN and how conformant network devices mark ECN for real-time
      inelastic flows, it is possible to detect the presence of cheater
      devices which lower the ECN marking, but not those that raise it.

   Probe Packet: The Probe Packet is an RTP packet utilizing the
      "ecnprobe" payload format defined herein.

   Receiver: The Receiver is simply an endpoint device which receives
      one or more Probe Packets from the Sender.  As defined here, the
      Responder does not respond directly to the Probe Packet.

   Sender: The Sender is an endpoint device which generates one or more
      Probe Packets.




























Alexander & Babiarz      Expires April 26, 2006                 [Page 6]

Internet-Draft         RTP Payload for ECN Probing          October 2005


5.  Alternatives Under Consideration

   While we believe it is necessary to use RTP as the packet format for
   probing, there are other options.  This section outlines the various
   options currently being investigated, including RTP.

5.1  Define New RTP Format

   RTP is the mechanism we originally specified, and the overall content
   of this document still presumes RTP as the packet format for probing.
   What we have not adequately answered is why RTP?  There is certainly
   no media content being delivered via the packets, resulting in the
   use of RTP for this coming into question.

   RTP is preferred primarily because real media utilizes it and the
   underlying Real-time ECN mechanism for admission control of new
   sessions can benefit from it.  The RTP probe flow has several other
   functions besides congestion monitoring.  First, probing verifies the
   media path end-to-end, ensuring that both endpoints can reliably send
   RTP packets before alerting.  An unreliable path can be detected via
   RTP mechanisms, allowing such flows to not be admitted.

   Second, probing verifies that the measured traffic level is within
   the pre-engineered limits to provide good service.  For this purpose,
   ECN metering and marking must be performed on the RTP probe flow
   packets along the same path that the RTP media packets will use.
   Within the network, routers must treat probe packets as close to real
   RTP media packets as possible.  Using RTP for the probe packets
   should ensure this.  It has been pointed out that routers can filter
   traffic based on traffic type, for example, routing RTP traffic one
   way and other traffic another, and if this were to occur when the
   probe packet were not using RTP, then the Real-time ECN mechanism
   would not function as intended.  While acknowledging again that the
   probes would carry no media, RTP is necessary to ensure appropriate
   treatment of the probe packets in the network.

   Third, since endpoints already utilize RTP, there is a minimal
   development effort to add ECN capabilities to RTP.

   By using RTP, we are also able to leverage use of the RTP sequence
   number field during conformance verification, as described in
   "Congestion Notification Process for Real-Time Traffic" [2].  We do
   acknowledge that there are other alternatives to accomplishing this
   particular aspect of the mechanism, but it is a piece of RTP that can
   be re-used.






Alexander & Babiarz      Expires April 26, 2006                 [Page 7]

Internet-Draft         RTP Payload for ECN Probing          October 2005


5.2  UDP

   UDP has long been an alternative to using RTP.  While everything
   necessary can certainly be built with a new protocol or packet format
   on top of UDP, what is lost with this approach is the assurance that
   the probe packets will be treated as expected in the network.

5.3  ICE/STUN

   ICE/STUN is another suggested alternative that is still being
   investigated.

5.4  Re-use Existing RTP Format

   This alternative is preferred at this time if the need for ECN-
   specific payload is dissolved.  In such a case, another RTP packet
   format could be leveraged for use as the probe packet format.


































Alexander & Babiarz      Expires April 26, 2006                 [Page 8]

Internet-Draft         RTP Payload for ECN Probing          October 2005


6.  RTP Payload Format for Real-Time ECN Admission Control

   The "ecnprobe" payload is transported in RTP packets.  However, it is
   not part of an RTP stream.  It therefore has no requirements to use
   similar properties of the media it represents.

6.1  Registration

   The new RTP payload format is defined as "ecnprobe", with a MIME type
   of "audio/ecnprobe" for audio and a MIME type of "video/ecnprobe" for
   video.  The payload type for RTP packets carrying this payload is
   determined dynamically through methods outside the scope of this
   document.

6.2  IP Header Fields

   DSCP: The DSCP set in the IP header is a critical component of the
      ECN method as outlined in [2].  It should be set appropriately for
      the session media for which admission control is being performed.

   ECN: Unless attempting to detect for the presence of Cheaters along
      the media path, an application MUST set the two-bit ECN field in
      the IP header to '10', which indicates that it is an ECN-capable
      transport, with no congestion experienced.  If attempting to
      detect for the presence of Cheaters, the ECN field SHOULD be set
      as required by the detection method being used.


6.3  RTP Header Fields

   Payload Type: The payload type field MUST be filled with a value
      determined dynamically.


6.4  Payload Format

   The "ecnprobe" payload format is shown in Figure 1.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Version|ECN|  Initial RTP Sequence Number  |      Reserved     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 1: ecnprobe Payload Format

   It consists of five fields: Version, ECN, Initial RTP Sequence Number
   (ISRN), and Reserved.



Alexander & Babiarz      Expires April 26, 2006                 [Page 9]

Internet-Draft         RTP Payload for ECN Probing          October 2005


6.4.1  Version

   The Version field designates the version of the payload format.  This
   field is provided for future extensibility of the payload to carry
   additional information.  The following value is defined by this
   document for the Version field:

   0: Initial version defined by this document.


6.4.2  Explicit Congestion Notification (ECN)

   This field contains a two-bit ECN value.  If an application is trying
   to detect Cheaters, the Sender SHOULD set this field to the two-bit
   ECN value used in the IP header when sending the Probe Packet.

6.4.3  Initial RTP Sequence Number (IRSN)

   In order to perform cheater detection and/or compliance testing in a
   unidirectional fashion, the receiving endsystem needs to know which
   packets to use for cheater detection and/or compliance testing.
   During probing, this is less important as the probe payload will
   contain the actual ECN value set in the IP header.  But during media
   exchange, the receiver must know exactly which packets are intended
   for cheater detection and/or compliance testing.  The IRSN value
   represents the initial sequence number used on the outgoing probe
   and/or media packets.  This value is used as described in [2] to
   allow both ends to know which packets in the media stream are marked
   for cheater detection.  In the event of lost or out-of-order packets,
   the receiver needs only to check the sequence number of the incoming
   packet against the calculated sequence number that it expects to find
   in packets being used for cheater detection and/or compliance
   testing.

6.4.4  Reserved

   This field contains 10 bits reserved for future use.














Alexander & Babiarz      Expires April 26, 2006                [Page 10]

Internet-Draft         RTP Payload for ECN Probing          October 2005


7.  Considerations for Payload Format

   There were two main considerations driving the new payload format
   defined in this memo: extensibility and flexibility.

7.1  Extensibility Considerations

   While the intended use for this payload format is for admission
   control using ECN, the payload format need not be limited to that
   application.  Even for admission control applications which will use
   it, the payload format also need not be limited to the mechanisms
   described in this memo.  With that in mind, the four-bit Version
   field is included to allow for extensibility for future applications/
   implementations.

7.2  Flexibility Considerations

   In addition to extensibility, another consideration is the
   flexibility to allow the initial definition of the payload to be used
   in as wide a range of implementations as possible.

   While the default and minimum size of the payload is 4 octets, an
   application MAY pad to the payload in order to simulate a specific
   codec.  In this case, the application needs to ensure that the
   packets carrying the padded payload are sent at the appropriate rate
   corresponding to the codec being simulated.

























Alexander & Babiarz      Expires April 26, 2006                [Page 11]

Internet-Draft         RTP Payload for ECN Probing          October 2005


8.  Considerations for Direct Feedback

   The payload format is currently defined with no explicit mechanism to
   provide feedback on the Probe Packet(s) from the Receiver to the
   Sender.  This section discusses the options that have been
   considered, and describes why they are not included along with the
   payload format definition.

8.1  Feedback via RTP

   The payload format was originally envisioned to be used with either a
   unidirectional probe or a bidirectional probe.

   This document specifies a unidirectional probe.

   A bidirectional probe flows from the Sender to the Receiver, with the
   Receiver then generating its own probe in response, with the payload
   additionally carrying the ECN value from the IP header of the
   received probe packet.  While this is feasible, the unidirectional
   probing model results in a simpler implementation.

8.2  Feedback via RTCP

   Also considered was an approach whereby feedback is provided via RTCP
   from the Receiver to the Sender.  While possible, implementing
   feedback via RTCP in real time as described in "Admission Control Use
   Case for Real-time ECN" [3] would necessitate violation of the rules
   governing the RTCP transmission interval described in RFC3550 [1].
   The RTCP transmission interval deliberately paces RTCP transmissions
   to be no more frequent than every 5 seconds, but for an admission
   control application, the transmission interval would potentially need
   to be much shorter.



















Alexander & Babiarz      Expires April 26, 2006                [Page 12]

Internet-Draft         RTP Payload for ECN Probing          October 2005


9.  MIME Registration

   This section registeres MIME types for audio/ecnprobe and video/
   ecnprobe.

9.1  audio/ecnprobe

   MIME media type name: audio

   MIME subtype name: ecnprobe

   Required Parameters: none

   Optional Parameters: none

   Encoding considerations: This type is only defined for transfer via
   RTP [1] or Secure RTP [5].

   Security considerations: See "Security Considerations" (Section 10).

   Interoperability considerations: none

   Published specification: This document.

   Applications which use this media: The "ecnprobe" application subtype
   is used to perform ECN probing and data path connectivity for
   admission control, although it is not limited solely to this
   application.

   Additional information:

   1.  Magic number(s): N/A

   2.  File extensions(s): N/A

   3.  Macintosh file type code(s): N/A


9.2  video/ecnprobe

   MIME media type name: video

   MIME subtype name: ecnprobe

   Required Parameters: none

   Optional Parameters: none




Alexander & Babiarz      Expires April 26, 2006                [Page 13]

Internet-Draft         RTP Payload for ECN Probing          October 2005


   Encoding considerations: This type is only defined for transfer via
   RTP [1] or Secure RTP [5].

   Security considerations: See "Security Considerations" (Section 10).

   Interoperability considerations: none

   Published specification: This document.

   Applications which use this media: The "ecnprobe" application subtype
   is used to perform ECN probing and data path connectivity for
   admission control, although it is not limited solely to this
   application.

   Additional information:

   1.  Magic number(s): N/A

   2.  File extensions(s): N/A

   3.  Macintosh file type code(s): N/A






























Alexander & Babiarz      Expires April 26, 2006                [Page 14]

Internet-Draft         RTP Payload for ECN Probing          October 2005


10.  Security Considerations

   Security considerations for the use of ECN for real-time inelastic
   flows is covered in [2].  The main consideration to account for here
   is that when the payload is carrying any relevant information for
   admission control, the payload SHOULD be secured, e.g., using "The
   Secure Real-time Transport Protocol (SRTP)" [5] or "Security
   Architecture for the Internet Protocol" [6].  If an application is
   attempting to detect Cheaters and the payload is not secured, a
   cheating device will be able to inspect and modify the ECN field in
   the payload, thereby circumventing the detection method.








































Alexander & Babiarz      Expires April 26, 2006                [Page 15]

Internet-Draft         RTP Payload for ECN Probing          October 2005


11.  IANA Considerations

   The Version field described in "Version" (Section 6.4.1) will need to
   be administered.  This field should be administered on a first come,
   first served basis.

   IANA is requested to make MIME type registrations as specified above
   in "MIME Registration" (Section 9).











































Alexander & Babiarz      Expires April 26, 2006                [Page 16]

Internet-Draft         RTP Payload for ECN Probing          October 2005


12.  Acknowledgements

   The authors acknowledge a great many inputs, including the following:
   Francois Audet, Amy Pendleton, Tom Taylor, John Rutledge, Jeremy
   Matthews, Marvin Krym, Stephen Dudley, and Kwok Ho Chan.














































Alexander & Babiarz      Expires April 26, 2006                [Page 17]

Internet-Draft         RTP Payload for ECN Probing          October 2005


13.  References

13.1  Normative References

   [1]  Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson,
        "RTP: A Transport Protocol for Real-Time Applications",
        RFC 3550, July 2003.

   [2]  Babiarz, J., Chan, K., and V. Firoiu, "Congestion Notification
        Process for Real-Time Traffic", Internet-Draft
        draft-babiarz-tsvwg-rtecn-04.txt (Work in Progress), July 2005.

   [3]  Alexander, C., Ed., Babiarz, J., and J. Matthews, "Real-time ECN
        Use Cases", Internet-Draft
        draft-alexander-rtecn-use-cases-00.txt (Work in Progress),
        July 2005.

13.2  Informative References

   [4]  Ramakrishnan, K., Floyd, S., and D. Black, "The Addition of
        Explicit Congestion Notification (ECN) to IP", RFC 3168,
        September 2001.

   [5]  Baugher, M., Carrara, E., McGrew, D., Naslund, M., and K.
        Norrman, "The Secure Real-time Transport Protocol (SRTP)",
        RFC 3711, March 2004.

   [6]  Kent, S. and R. Atkinson, "Security Architecture for the
        Internet Protocol", RFC 2401, November 1998.

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


Authors' Addresses

   Corey W. Alexander (editor)
   Nortel
   MS 08704A30
   2370 Performance Drive
   Richardson, TX  75082
   US

   Phone: +1 972 684-8320
   Fax:   +1 972 684-1838
   Email: coreya@nortel.com





Alexander & Babiarz      Expires April 26, 2006                [Page 18]

Internet-Draft         RTP Payload for ECN Probing          October 2005


   Jozef Babiarz
   Nortel
   MS 04331C04
   3500 Carling Avenue
   Ottawa, Ontario  K2H 8E9
   CA

   Phone: +1 613 763-6098
   Fax:   +1 613 763-2231
   Email: babiarz@nortel.com









































Alexander & Babiarz      Expires April 26, 2006                [Page 19]

Internet-Draft         RTP Payload for ECN Probing          October 2005


Intellectual Property Statement

   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 procedures with respect to rights in RFC 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.


Disclaimer of Validity

   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.


Copyright Statement

   Copyright (C) The Internet Society (2005).  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.


Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.




Alexander & Babiarz      Expires April 26, 2006                [Page 20]