Measurement of Round-Trip Time and Fractional Loss Using Session Traversal Utilities for NAT (STUN)
RFC 7982

Document Type RFC - Proposed Standard (September 2016; No errata)
Last updated 2018-12-20
Replaces draft-ietf-tram-measurement-rtt-loss
Stream IETF
Formats plain text html pdf htmlized bibtex
Reviews
Stream WG state Submitted to IESG for Publication
Document shepherd Simon Perreault
Shepherd write-up Show (last changed 2016-01-08)
IESG IESG state RFC 7982 (Proposed Standard)
Consensus Boilerplate Yes
Telechat date
Responsible AD Spencer Dawkins
Send notices to "Simon Perreault" <sperreault@jive.com>
IANA IANA review state Version Changed - Review Needed
IANA action state RFC-Ed-Ack
Internet Engineering Task Force (IETF)                      P. Martinsen
Request for Comments: 7982                                      T. Reddy
Category: Standards Track                                          Cisco
ISSN: 2070-1721                                                  D. Wing

                                                                V. Singh
                                                            callstats.io
                                                          September 2016

           Measurement of Round-Trip Time and Fractional Loss
            Using Session Traversal Utilities for NAT (STUN)

Abstract

   A host with multiple interfaces needs to choose the best interface
   for communication.  Oftentimes, this decision is based on a static
   configuration and does not consider the path characteristics, which
   may affect the user experience.

   This document describes a mechanism for an endpoint to measure the
   path characteristics fractional loss and RTT using Session Traversal
   Utilities for NAT (STUN) messages.

Status of This Memo

   This is an Internet Standards Track document.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   Internet Standards is available in Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc7982.

Martinsen, et al.            Standards Track                    [Page 1]
RFC 7982                 RTT and Fractional Loss          September 2016

Copyright Notice

   Copyright (c) 2016 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
   (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.  Notational Conventions  . . . . . . . . . . . . . . . . . . .   4
   3.  Measuring RTT and Fractional Loss . . . . . . . . . . . . . .   4
     3.1.  TRANSACTION_TRANSMIT_COUNTER Attribute  . . . . . . . . .   4
     3.2.  Usage in Requests . . . . . . . . . . . . . . . . . . . .   5
     3.3.  Usage in Responses  . . . . . . . . . . . . . . . . . . .   5
     3.4.  Example Operation . . . . . . . . . . . . . . . . . . . .   6
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   7
   6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   8
     6.1.  Normative References  . . . . . . . . . . . . . . . . . .   8
     6.2.  Informative References  . . . . . . . . . . . . . . . . .   9
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .   9
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  10

Martinsen, et al.            Standards Track                    [Page 2]
RFC 7982                 RTT and Fractional Loss          September 2016

1.  Introduction

   This document extends STUN [RFC5389] to make it possible to correlate
   STUN responses to specific requests when retransmits occur.  This
   assists the client in determining path characteristics like round-
   trip time (RTT) and fractional packet loss.

   The TRANSACTION_TRANSMIT_COUNTER attribute introduced in Section 3.1
   can be used in Interactive Connectivity Establishment (ICE) [RFC5245]
   connectivity checks (STUN Binding request and response).  It can also
   be used with Traversal Using Relays around NAT (TURN) [RFC5766] by
   adding this attribute to Allocate requests and responses to measure
   loss and RTT between the client and the respective TURN server.

   ICE is a mechanism commonly used in Voice over IP (VoIP) applications
   to traverse NATs, and it uses a static prioritization formula to
   order the candidate pairs and perform connectivity checks, in which
   the most preferred address pairs are tested first, and when a
   sufficiently good pair is discovered, that pair is used for
   communications and then further connectivity tests are stopped.

   When multiple paths are available for communication, the endpoint
   sends ICE connectivity checks across each path (candidate pair).
   Choosing the path with the lowest round-trip time is a reasonable
Show full document text