PANRG                                                        T. Enghardt
Internet-Draft                                                 TU Berlin
Intended status: Informational                           C. Kraehenbuehl
Expires: January 9, 2020                                     ETH Zuerich
                                                           July 08, 2019


                    A Vocabulary of Path Properties
                draft-enghardt-panrg-path-properties-02

Abstract

   This document defines and categorizes information about Internet
   paths that an entity, such as a host, might have or want to have.
   This information is expressed as properties of paths between two
   hosts.

Status of This Memo

   This Internet-Draft is submitted 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 https://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 January 9, 2020.

Copyright Notice

   Copyright (c) 2019 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
   (https://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.



Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 1]


Internet-Draft               Path Properties                   July 2019


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   4
   3.  Domain Properties . . . . . . . . . . . . . . . . . . . . . .   5
   4.  Backbone Properties . . . . . . . . . . . . . . . . . . . . .   6
   5.  Dynamic Properties  . . . . . . . . . . . . . . . . . . . . .   7
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   8
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8
   8.  Informative References  . . . . . . . . . . . . . . . . . . .   8
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .   9
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   9

1.  Introduction

   Because the current Internet provides an IP-based best-effort bit
   pipe, hosts have little information about paths to other hosts.  A
   Path Aware Network exposes information about one or multiple paths
   through the network to hosts or the network infrastructure.

   It is impossible to provide an exhaustive list of path properties, as
   with every new technology and protocol, novel properties might become
   relevant.  In this document, we specify a set of path properties
   which might be useful in the following use cases: Traffic policies,
   network monitoring, and path selection.

   o  Traffic policies: Entities such as network operators or end users
      may want to define traffic policies leveraging path awareness.
      Such policies can allow or disallow sending traffic over specific
      networks or nodes, select an appropriate protocol depending on the
      capabilities of the on-path devices, or adjust protocol parameters
      to an existing path.  An example of a traffic policy is a video
      streaming application choosing an (initial) video quality based on
      the achievable data rate, or the monetary cost of the link using a
      volume-based or flat-rate cost model.  Another example is an
      enterprise network where all traffic has to go through a firewall,
      in which case the host needs to be aware of on-path firewalls.

   o  Network monitoring: Network operators can use path properties
      (e.g., measured by on-path devices), to observe Quality of Service
      (QoS) characteristics of recent end-user traffic, and identify
      potential problems with their network early on, before the end-
      user complains.

   o  Path selection: In some cases, entities can choose to use a
      certain path (or subset of paths) from a set of paths to achieve a
      specific goal.  As the possible benefits of a well chosen path
      varies based on the goal, as a baseline, a path selection



Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 2]


Internet-Draft               Path Properties                   July 2019


      algorithm should aim to not perform worse than the default case
      most of the time.  Depending on the goal, an entity may prefer
      paths with different properties, e.g., retrieving a small webpage
      as quickly as possible requires low latency paths, or retrieving a
      large file in a peer-to-peer network requires paths with high
      achievable data rate.  Additionally, there may be trade-offs
      between path properties (e.g., latency and data rate), and
      entities may influence these trade-offs with their choices.  A
      network (e.g., an AS) can adjust its path selection for internal
      or external routing based on the path properties.  In BGP, the
      Multi Exit Discriminator (MED) attribute decides which path to
      choose if other attributes are equal; in a path aware network,
      instead of using this single MED value, other properties such as
      maximum or available/expected data rate could additionally be used
      to improve load balancing.  A host might be able to select between
      a set of paths, either if there are several paths to the same
      destination (e.g., if the host is a mobile device with two
      wireless interfaces, both providing a path), or if there are
      several destinations, and thus several paths, providing the same
      service (e.g., Application-Layer Traffic Optimization (ALTO)
      [RFC5693], an application layer peer-to-peer protocol allowing
      hosts a better-than-random peer selection).  Care needs to be
      taken when selecting paths based on path properties, as path
      properties that were previously measured may have become outdated
      and, thus, useless to predict the path properties of packets sent
      now.

   Such path properties may be relatively dynamic, e.g. current Round
   Trip Time, close to the origin, e.g. nature of the access technology
   on the first hop, or far from the origin, e.g. list of ASes
   traversed.

   Usefulness over time is fundamentally different for dynamic and non-
   dynamic properties.  The merit of a momentary measurement of a
   dynamic path property diminishes greatly as time goes on, e.g. the
   merit of an RTT measurement from a few seconds ago is quite small,
   while a non-dynamic path property might stay relevant, e.g. a NAT can
   be assumed to stay on a path during the lifetime of a connection, as
   the removal of the NAT would break the connection.

   Non-dynamic properties are further separated into (local) domain
   properties related to the first few hops of the connection, and
   backbone properties related to the remaining hops.  Domain properties
   expose a high amount of information to hosts and strongly influence
   the connection behavior while there is little influence and
   information about backbone properties.





Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 3]


Internet-Draft               Path Properties                   July 2019


   Dynamic properties are not separated into domain and backbone
   properties, since most of these properties are defined for a complete
   path and it is difficult and seldom useful to define them on part of
   the path.  There are exceptions such as dynamic wireless access
   properties, but these do not justify separation into different
   categories.

   This document addresses the first of the questions in Path-Aware
   Networking [I-D.irtf-panrg-questions], which is a product of the
   PANRG in the IRTF.

2.  Terminology

   Node:  An entity which processes packets, e.g., sends, receives,
      forwards, or modifies them.

   Host:  A node that processes packets that are explicitly addressed to
      itself.

   Router:  A node that processes packets that are not explicitly
      addressed to itself.

   Link:  A medium or communication facility that connects two or more
      nodes with each other and enables them to exchange packets.  A
      link can be physical, e.g., a WiFi network which connects an
      Access Point to stations, or virtual, e.g., a virtual switch which
      connects two virtual machines hosted on the same physical machine.

   Path element:  Either a node or a link.

   Path:  A sequence of adjacent path elements, alternating between
      nodes and links, starting and ending with a host.  A path can be
      viewed as an abstraction on a specific layer, omitting lower layer
      path elements.  For example, a router implementing IPv6 may be a
      path element on a path when considering the network layer.  If
      this router does not implement transport layer functionality, it
      is hidden when a higher layer, such as the transport or
      application layer, is considered.  In the case of multicast or
      broadcast, a single packet may be sent over multiple paths at once
      - one path for each combination of sending and receiving host.

   Subpath:  Given a path, a subpath is a sequence of adjacent path
      elements of this path, starting and ending with a node.

   Flow:  One or multiple packets which are traversing the same subpath
      or path.  For example, a flow can consist of all packets sent
      within a TCP session with the same five-tuple between two hosts,
      or it can consist of all packets sent on the same physical link.



Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 4]


Internet-Draft               Path Properties                   July 2019


   Property:  A trait of one or a sequence of path elements, or a trait
      of a flow with respect to one or a sequence of path elements.  An
      example of a link property is the maximum data rate that can be
      sent over the link.  An example of a node property is the
      administrative domain that the node belongs to.  An example of a
      property of a flow with respect to a subpath is the aggregated
      one-way delay of the flow being sent from one node to another node
      over a subpath.  A property is thus described by a tuple
      containing the sequence of path elements, the flow or an empty set
      if no packets are relevant for the property, the name of the
      property (e.g., maximum data rate), and the value of the property
      (e.g., 1Gbps).

   Aggregated property:  A collection of multiple values of a property
      into a single value, according to a function.  A property can be
      aggregated over multiple path elements (i.e., a path), e.g., the
      MTU of a path as the minimum MTU of all links on the path, over
      multiple packets (i.e., a flow), e.g., the median one-way latency
      of all packets between two nodes, or over both, e.g., the mean of
      the queueing delays of a flow on all nodes along a path.  The
      aggregation function can be numerical, e.g., median, sum, minimum,
      it can be logical, e.g., "true if all are true", "true if at least
      50\% of values are true", or an arbitrary function which maps
      multiple input values to an output value.

   Measured property:  A property that is observed for a specific path
      element or path, e.g., using measurements.  For example, the one-
      way delay of a specific packet can be measured.

   Estimated property:  An approximate calculation or judgment of the
      value of a property.  For example, an estimated property may
      describe the expected median one-way latency of packets sent on a
      path within the next second.  An estimated property includes the
      reliability of the estimate.  The notion of reliability depends on
      the property.  For example, it may be the confidence level and
      interval for numerical properties or the likelihood that a
      property holds for non-numerical properties.

3.  Domain Properties

   Domain path properties relate to path elements within the first hop
   or the first few hops, which are usually in the same administrative
   domain as a host considering them.

   Due to the potential physical proximity and pre-existing trust or
   contractual relationships between hosts and path elements within the
   same domain, domain properties may be more accessible to the host
   than other properties.



Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 5]


Internet-Draft               Path Properties                   July 2019


   Furthermore, hosts may be able to influence both which domain they
   are in and which path elements in this domain to connect to, and they
   may be able to influence the properties of path elements within this
   domain.  For example, a user might select between multiple potential
   adjacent links by selecting between multiple available WiFi Access
   Points.  Or when connected to an Access Point, the user may move
   closer to enable their device to use a different access technology,
   potentially increasing the data rate available to the device.
   Another example is a user changing their data plan to reduce the
   Monetary Cost to transmit a given amount of data across a network.

   Access Technology:  The physical or link layer technology used for
      transmitting or receiving a flow on one or multiple path elements
      in the same domain.  The Access Technology may be given in an
      abstract way, e.g., as a WiFi, Wired Ethernet, or Cellular link.
      It may also be given as a specific technology, e.g., as a 2G, 3G,
      4G, or 5G cellular link, or an 802.11a, b, g, n, or ac WiFi link.
      Other path elements relevant to the access technology may include
      on-path devices, such as elements of a cellular backbone network.
      Note that there is no common registry of possible values for this
      property.

   Monetary Cost:  The price to be paid to transmit a specific flow
      across a subpath.

4.  Backbone Properties

   Backbone path properties relate to path elements not within the same
   domain as a host considering them, thus, in the backbone from the
   host's point of view.

   Typically, backbone properties are less accessible to a host than
   domain properties, due to the potential increased distance and the
   lack of pre-existing trust or contractual relationship.

   Additionally, hosts are less likely to be able to influence which
   path elements form their path in the backbone, as well as their
   properties.

   Some path properties relate to the entire path or to subpaths, part
   of which often lies outside of a host's domain.  Thus, such
   properties are listed as Backbone Properties.

   Presence of a certain network function on the path:  Indicates that a
      node performs a certain network function on a flow, e.g., whether
      the node acts as a proxy, as a firewall, or performs Network
      Address Translation (NAT).  This node may be either in the same
      domain as the host or in a different domain, i.e., the backbone.



Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 6]


Internet-Draft               Path Properties                   July 2019


   Administrative Entity:  The administrative entity, e.g., the AS, to
      which a path element or subpath belongs.

   Disjointness:  For a set of two paths, the number of shared path
      elements can be a measure of intersection (e.g., Jaccard
      coefficient, which is the number of shared elements divided by the
      total number of elements).  Conversely, the number of non-shared
      path elements can be a measure of disjointness (e.g., 1 - Jaccard
      coefficient).  A multipath protocol might use disjointness of
      paths as a metric to reduce the number of single points of
      failure.

   Path MTU:  The maximum size, in octets, of an IP packet that can be
      transmitted without fragmentation on a subpath.

   Transport Protocols available:  Whether a specific transport protocol
      can be used to establish a connection over a path or subpath.  A
      host may cache its knowledge about recent successfully established
      connections using specific protocols, e.g., a QUIC connection, or
      an MPTCP subflow.

   Protocol Features available:  Whether a specific protocol feature is
      available over a path or subpath, e.g., Explicit Congestion
      Notification (ECN), or TCP Fast Open.

5.  Dynamic Properties

   Dynamic path properties relate to the transmission of an individual
   packet or of a flow over a subpath.  Properties related to a path
   element which constitutes a single layer 2 domain are abstracted from
   the used physical and link layer technology, similar to [RFC8175].

   Typically, Dynamic Properties can be measured or approximated, and
   might be made available in an aggregated form, such as averages or
   minimums.  Dynamic Path Properties can be measured by the host itself
   or by a different entity.  See [ANRW18-Metrics] for a discussion of
   how to measure some dynamic path properties at the host.

   Some dynamic properties are defined in different directions for the
   same path element, e.g., for transmitting and receiving packets.

   Maximum Data Rate (Transmit/Receive):  The theoretical maximum data
      rate, in bits per second, that can be achieved on a link, subpath,
      or path, for receiving or transmitting traffic.

   Current Data Rate (Transmit/Receive):  The data rate, in bits per
      second, at which a link is currently receiving or transmitting
      traffic.



Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 7]


Internet-Draft               Path Properties                   July 2019


   Latency:  The time delay between a node sending a packet and a
      different node on the same path receiving the same packet.

   Latency variation:  The variation of the latency within a flow.

   Packet Loss:  The percentage of packets within a flow which are sent
      by one node, but not received by a different node.

   Congestion:  Whether a protocol feature such as ECN has provided
      information that there currently is congestion on a path.

6.  Security Considerations

   If nodes are basing policy or path selection decisions on path
   properties, they need to rely on the accuracy of path properties that
   other devices communicate to them.  In order to be able to trust such
   path properties, nodes may need to establish a trust relationship or
   be able to verify the authenticity, integrity, and correctness of
   path properties received from another node.

7.  IANA Considerations

   This document has no IANA actions.

8.  Informative References

   [ANRW18-Metrics]
              Enghardt, T., Tiesel, P., and A. Feldmann, "Metrics for
              access network selection", Proceedings of the Applied
              Networking Research Workshop on - ANRW '18,
              DOI 10.1145/3232755.3232764, 2018.

   [I-D.irtf-panrg-questions]
              Trammell, B., "Open Questions in Path Aware Networking",
              draft-irtf-panrg-questions-02 (work in progress), May
              2019.

   [RFC5693]  Seedorf, J. and E. Burger, "Application-Layer Traffic
              Optimization (ALTO) Problem Statement", RFC 5693,
              DOI 10.17487/RFC5693, October 2009,
              <https://www.rfc-editor.org/info/rfc5693>.

   [RFC8175]  Ratliff, S., Jury, S., Satterwhite, D., Taylor, R., and B.
              Berry, "Dynamic Link Exchange Protocol (DLEP)", RFC 8175,
              DOI 10.17487/RFC8175, June 2017,
              <https://www.rfc-editor.org/info/rfc8175>.





Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 8]


Internet-Draft               Path Properties                   July 2019


Acknowledgments

   Thanks to the Path-Aware Networking Research Group for the discussion
   and feedback.  Thanks to Adrian Perrig and Matthias Rost for the
   feedback.  Thanks to Paul Hoffman for the editorial changes.

Authors' Addresses

   Theresa Enghardt
   TU Berlin

   Email: theresa@inet.tu-berlin.de


   Cyrill Kraehenbuehl
   ETH Zuerich

   Email: cyrill.kraehenbuehl@inf.ethz.ch

































Enghardt & Kraehenbuehl  Expires January 9, 2020                [Page 9]