ALTO WG                                                          S. Chen
Internet-Draft                                                    X. Lin
Intended status: Informational                         Tongji University
Expires: January 3, 2019                                       D. Lachos
                                                                 Unicamp
                                                                 Y. Yang
                                                  Tongji/Yale University
                                                           C. Rothenberg
                                                                 Unicamp
                                                            July 2, 2018


           ALTO Implementations and Use Cases: A Brief Survey
                       draft-chen-alto-survey-00

Abstract

   This document provides a comprehensive survey of ALTO, including
   current ALTO implementations and ALTO used in the literature work.
   This document identifies possible challenges and future opportunities
   of ALTO.

Requirements Language

   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 RFC 2119 [RFC2119].

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 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 January 3, 2019.







Chen, et al.             Expires January 3, 2019                [Page 1]


Internet-Draft                 ALTO Survey                     July 2018


Copyright Notice

   Copyright (c) 2018 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
     1.1.  ALTO Background . . . . . . . . . . . . . . . . . . . . .   3
     1.2.  Goals and Scope . . . . . . . . . . . . . . . . . . . . .   3
     1.3.  Document Organization . . . . . . . . . . . . . . . . . .   3
   2.  ALTO Implementations  . . . . . . . . . . . . . . . . . . . .   3
     2.1.  Services Implemented in Projects  . . . . . . . . . . . .   3
     2.2.  ALTO in Software Defined Mobile Networks  . . . . . . . .   4
     2.3.  Recognized Issues and Future Work . . . . . . . . . . . .   4
   3.  ALTO in Literature/Use Cases  . . . . . . . . . . . . . . . .   5
     3.1.  Peer Selection  . . . . . . . . . . . . . . . . . . . . .   6
       3.1.1.  Peer Selection in P2P . . . . . . . . . . . . . . . .   6
       3.1.2.  Surrogate Selection in CDN  . . . . . . . . . . . . .   6
       3.1.3.  Downstream CDN Selection in CDNI  . . . . . . . . . .   6
       3.1.4.  Cache Selection in Hybrid CDN-P2P System  . . . . . .   6
       3.1.5.  Mobile Edge Caching . . . . . . . . . . . . . . . . .   7
     3.2.  Path Selection  . . . . . . . . . . . . . . . . . . . . .   7
       3.2.1.  Path Selection in MPTS-AR . . . . . . . . . . . . . .   7
     3.3.  Resource Placement  . . . . . . . . . . . . . . . . . . .   8
       3.3.1.  Virtualized Service Function Chain Placement  . . . .   8
       3.3.2.  Intelligent Virtual Machine Placement . . . . . . . .   8
       3.3.3.  Service Placement in IoT  . . . . . . . . . . . . . .   8
     3.4.  Measure Results Interface . . . . . . . . . . . . . . . .   8
       3.4.1.  An Interface to Query on the LMAP measure results . .   8
   4.  Challenges and Research Opportunities . . . . . . . . . . . .   9
     4.1.  Possible New Address Format . . . . . . . . . . . . . . .   9
     4.2.  Mistrust between entities . . . . . . . . . . . . . . . .   9
     4.3.  Bidirectional Network/Application collaboration . . . . .   9
   5.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   9
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   9
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   9
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  10



Chen, et al.             Expires January 3, 2019                [Page 2]


Internet-Draft                 ALTO Survey                     July 2018


     7.2.  Informative References  . . . . . . . . . . . . . . . . .  10
   Appendix A.  Questionnaire  . . . . . . . . . . . . . . . . . . .  10
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  12

1.  Introduction

1.1.  ALTO Background

   The Application-Layer Traffic Optimization (ALTO) protocol [RFC7285]
   is a client/server protocol operating between an ALTO client and an
   ALTO server.  An ALTO server provides network related information to
   ALTO clients so that ALTO clients can make better decisions.  ALTO is
   initially proposed to help distributed applications (P2P and client/
   server used for file sharing, real-time communication, etc.) to
   choose a better resource from multiple replicas.  Recently, as new
   use cases like Content Delivery Network (CDN), Software-Define
   Network (SDN) and Datacenter Network (DCN) in single and multi domain
   environments emerge to utilize ALTO, they will bring forth new
   requirements and challenges on ALTO protocol.

1.2.  Goals and Scope

   This document aims to provide a comprehensive survey of ALTO, it
   covers: 1) ALTO implementations in different companies/institutions;
   2) Application scenarios of ALTO in literature work through a lot of
   paper reading.  With the survey of above topics, we want to explore:
   1) The system architecture of ALTO implementation and possible issues
   in realizing the system; 2) Current use cases and future uses cases
   of ALTO; 3) Possible ALTO extensions to support future use cases.

1.3.  Document Organization

   The document is organized as below:

   In Section 2, we present the survey of ALTO implementation and its
   results.  In Section 3, we collect ALTO use cases in literature work
   and classified them based on ??? criteria.  Finally, based on the
   ALTO use cases in literature work, we will show possible ALTO
   extensions and research opportunities of ALTO in Section 4.

2.  ALTO Implementations

2.1.  Services Implemented in Projects

   Abbreviations:

   o  NM: network map




Chen, et al.             Expires January 3, 2019                [Page 3]


Internet-Draft                 ALTO Survey                     July 2018


   o  CM: cost map

   o  FM: filtered map

   o  MC: multi-cost

   o  CC: cost calendar

   o  PV: path vector

   o  SDMN: software defined mobile networks

2.2.  ALTO in Software Defined Mobile Networks

   ALTO in software defined mobile networks (SDMN) project is a sub-
   project of Celtic-Plus SIGMONA, and it is implemented by Budapest
   University of Technology and Economics.

   As the elasticity and portability of network functions becomes
   reality, the significance of service endpoint selection increases.
   ALTO is a standard protocol, which can provide guidance in service
   endpoint selection.  So ALTO is very suitable for this case.

   This project has implemented network map and cost map, and it
   introduced two new interfaces namely ALTO client-to-redirect server
   interface and ALTO network-to-server interface.

   For cost calculation, this project regarded the number of switches
   between end hosts as "num-routing" and the average utilization of the
   path in the last 5 seconds as "num-delay".

   The ALTO server in this project is standalone, and the ALTO client in
   this project is embedded into a SDN controller.

2.3.  Recognized Issues and Future Work

   Extension of dynamic network and cost map information provision:

   o  From non-SDN network segments

   o  From multiple network controllers (merging information in ALTO
      server)

   ALTO protocol applies abstract network and cost maps:

   o  Pros: privacy of topology information

   o  Cons: sometimes not enough fine grained



Chen, et al.             Expires January 3, 2019                [Page 4]


Internet-Draft                 ALTO Survey                     July 2018


   o  Rank aggregation: which method should we select

   o  Support of non reactive packet forwarding methods

3.  ALTO in Literature/Use Cases

   We make a comprehensive survey of ALTO used in literature work.  We
   collect *** ALTO related papers, study the use cases and we have make
   an initial classification of use cases.  The taxonomy of all the use
   cases is below.


     Application-Layer Traffic Optimization
       |
       +---> Peer Selection
       |       |
       |       +---> Peer Selection in P2P
       |       |
       |       +---> Surrogate Selection in CDN
       |       |
       |       +---> Cache Selection in Hybrid CDN-P2P System
       |       |
       |       +---> Mobile Edge Caching
       |
       +---> Path Selection
       |       |
       |       +---> Path Selection in MPTS-AR
       |
       +---> Content Placement
       |       |
       |       +---> Virtualized Service Function Chain Placement
       |       |
       |       +---> Intelligent Virtual Machine Placement
       |       |
       |       +---> Service Placement in IoT
       |
       +---> Measurement


             Figure 1: Taxonomy of ALTO Literature: Version A

   the use cases are already mentioned in [RFC7971].  In the following
   sections, we will describe each use cases one by one.  Some of the
   use cases are already mentioned in [RFC7971].  We classified all the
   related work into 4 categories and will describe each in the
   following.





Chen, et al.             Expires January 3, 2019                [Page 5]


Internet-Draft                 ALTO Survey                     July 2018


3.1.  Peer Selection

3.1.1.  Peer Selection in P2P

3.1.1.1.  Usage Scenario

   Without little knowledge of the underlying network informtion, users
   in P2P system retrieve data from a random peer.  Such a random peer
   selection mechanism have some disadvantages: 1.  It causes an extra
   burden in the internet traffic. 2.  It reduces the system
   performance.

3.1.2.  Surrogate Selection in CDN

   Content Delivery Networks (CDNs) have been used to deliver some
   Internet services such as video stream, websites or software updates
   because they provide numerous benefits including reduced delivery
   cost for cacheable content, improved QoS for end users and increased
   robustness of delivery.

   The primary use case for ALTO in a CDN context is to improve the
   selection of a surrogate, cache or origin.  By providing cost maps
   and network maps, ALTO can help a CDN to optimize selection of its
   surrogate, cache or origin.

3.1.3.  Downstream CDN Selection in CDNI

   Above section mainly talks about the surrogate selection in the CDN
   from a single administrative domain.  However, some CDNs from
   different administrative domains may collaborate together to provide
   a broader coverage area.  In such case, an upstream CDN needs to
   select the best downstream CDN For each content request it intends to
   redirect.

   There are two tasks need to be done when an upstream CDN selects a
   downstream CDN.  The first one is which dCDN is willing to accept a
   delegated request, and the second one is which dCDN is the most
   proper for redirecting the content request.  For the first task, ALTO
   CDNI FCI Map can be used by uCDN to actively or passively gather
   dCDNs information such as footprints.  For the second task, ALTO cost
   map can be used by uCDN to select the best surrogate with the
   smallest cost.

3.1.4.  Cache Selection in Hybrid CDN-P2P System

   Hybrid CDN-P2P system propose a two-tier topologies.  The first level
   (CDN-L1) is composed by high capacity servers strategically placed in
   order to increase network backbone capacity.  A second level (CDN-L0)



Chen, et al.             Expires January 3, 2019                [Page 6]


Internet-Draft                 ALTO Survey                     July 2018


   consists of Level-0 Entry Point (L0-EP).  These node are equipped
   with some caching functionalities and placed geographically closer to
   end users.  The L0-EP includes a standard HTTP proxy frontend used to
   optimally redirect the HTTP GET requests of the users to the best
   content location in CDN-L0 or CDN-L1.  The decision logic module
   residing in L0-EP considers 3 factors (the availability of the
   content in the L0-EP local cache, the list of cache nodes that can
   contribute to retrieve the content and the locality awareness) to
   make its final decision.

   The locality information here is provided through ALTO interface from
   the network monitors.

3.1.5.  Mobile Edge Caching

3.1.5.1.  Usage Scenario

   Mobile Edge Caching is regarded to be possible to reduce the latency
   for users to retrieve content, thus improving the perveived Quality
   of Experience.  The main technique in mobile edge caching is to equip
   edge network elements with cache capabilities.  Popular contents can
   be stored at several caching servers at edge.

3.1.5.2.  Applicability of ALTO

   In the context of mobile edge caching, the information that a User
   Equipment (UE) tries to access, such as a document or a video, is
   referred to a s a Named Data Object (NDO).  [MEC] proposes that ALTO
   can perform like a DNS server.  It can be used to discover the
   caching servers that host the desired resource . To leverage ALTO for
   resource discovery, ALTO will regard each resource a PID.  The IP
   addresses that a PID contains are the caching servers holding
   specific NDO.  As response to the ALTO query, ALTO server will return
   a network map with a list of PIDs, each with IP addresses of cache
   servers.  Such discovery mechanism allows the operator to inform the
   UE about all the cache servers that contain the required NDO in
   single operation.  Second, the UE can use additional ALTO features
   (such as cost maps) to inquire which cache-server is preferred in
   terms of data routing costs (i.e., availble bandwidth, network load
   and others).

3.2.  Path Selection

3.2.1.  Path Selection in MPTS-AR







Chen, et al.             Expires January 3, 2019                [Page 7]


Internet-Draft                 ALTO Survey                     July 2018


3.3.  Resource Placement

3.3.1.  Virtualized Service Function Chain Placement

3.3.2.  Intelligent Virtual Machine Placement

3.3.2.1.  Usage Scenario

   The cloud management system can optimize resource placement by taking
   into account the network performance as well as the compute and
   storage resources.

3.3.2.2.  Applicability of ALTO

3.3.2.3.  Challenges and Opportunities

3.3.3.  Service Placement in IoT

3.3.3.1.  Usage Scenario

   With the cutting-edge paradigms like Internet of Things and Smart
   Cities develop, new services have special requirements, one of which
   is low latency levels.  A delayed reply could render to chaos for
   applications such as eHealth and public safety.  One of the solutions
   is a smart service placement system that facilitates the location of
   services in the proper position according to specific needs.
   Locating the services just on wireless hop away from the users is not
   as simple as it sounds, since the service could be wrongfully placed
   in a congested location, or even farther from the users, which would
   lead to a greater latency.  Thus, efficient service placement
   mechanisms are needed in order to take advantage of the current
   conditions of the network while minimizing the service latency.

3.3.3.2.  Applicability of ALTO

3.3.3.3.  Challenges of ALTO/ Opportunities of ALTO

3.4.  Measure Results Interface

3.4.1.  An Interface to Query on the LMAP measure results

   In the context of LMAP, measurement results are made available to the
   public either at the finest granularity level, or in a very high
   level human-readable format.  ALTO can provide an intermediate way to
   access large-scale network measurement result, and it can be used to
   tweak the aggregation-level of measurement results.





Chen, et al.             Expires January 3, 2019                [Page 8]


Internet-Draft                 ALTO Survey                     July 2018


   Controller sends instructions to measurement agent to do the
   measurement.  And then measurement result will be transferred to the
   collector by report protocol.  Just providing finest granularity
   level or providing a very high level human-readable format are not
   enough.  ALTO can provide an intermediate way to access large-scale
   network measurement result, and it can be used to tweak the
   aggregation-level of measurement results.

4.  Challenges and Research Opportunities

4.1.  Possible New Address Format

   Some scenarios may require new address format.

4.2.  Mistrust between entities

   Application developers and network operators are natural mistrust,
   with both parties reluctant to share what they consider sensitive
   information.

4.3.  Bidirectional Network/Application collaboration

   ALTO is originally designed to provide network information to
   applications so that applications can achieve better performance
   while the cost of the network can be reduced.  Exposing non-critical
   information from application providers to network providers may
   potentially bring more benefits.  A paper named "Bidirectional
   Network Collaboration Interface for CDNs and Clouds Services Traffic
   Optimization" describes this idea, and it proposes the constraint map
   which provides application needs and constraints to network
   providers.

5.  Acknowledgments

   ...

6.  Security Considerations

   This draft is a survey of existing literature on ALTO implementations
   and use cases, it does not introduce any new security considerations
   to be taken into account beyond what is already discussed in each
   paper surveyed.

7.  References







Chen, et al.             Expires January 3, 2019                [Page 9]


Internet-Draft                 ALTO Survey                     July 2018


7.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997, <https://www.rfc-
              editor.org/info/rfc2119>.

   [RFC7285]  Alimi, R., Ed., Penno, R., Ed., Yang, Y., Ed., Kiesel, S.,
              Previdi, S., Roome, W., Shalunov, S., and R. Woundy,
              "Application-Layer Traffic Optimization (ALTO) Protocol",
              RFC 7285, DOI 10.17487/RFC7285, September 2014,
              <https://www.rfc-editor.org/info/rfc7285>.

   [RFC7971]  Stiemerling, M., Kiesel, S., Scharf, M., Seidel, H., and
              S. Previdi, "Application-Layer Traffic Optimization (ALTO)
              Deployment Considerations", RFC 7971,
              DOI 10.17487/RFC7971, October 2016, <https://www.rfc-
              editor.org/info/rfc7971>.

7.2.  Informative References

   [MEC]      Poderys, Justas. and Matteo. Artuso, "Caching at the
              Mobile Edge: A Practical Implementation", 2018.

   [SDN]      Diego, Kreutz. and Ramos. Fernando MV, "Software-defined
              networking: A comprehensive survey", 2015.

   [VPN]      Scharf, Michael., "Dynamic VPN Optimization by ALTO
              Guidance", 2013.

Appendix A.  Questionnaire




















Chen, et al.             Expires January 3, 2019               [Page 10]


Internet-Draft                 ALTO Survey                     July 2018


   Company/Organization Name:
   Project Name:
   Motivation:
   System Architecture:
   What map services that you have implemented:
       Map Service
           |
           +---> Cost Map
           |
           +---> Network Map
       Map Filtering Service
       Endpoint Cost Service
       Endpoint Property Service
       Unified Property Service
       Multi-cost
       Cost Calendar
       Path Vector

   Four Entites in ALTO Implementation
    |
    +---> Source of network informaton
    |
    +---> ALTO Server
    |     |
    |     +---> Who oeperates the ALTO server?
    |     |      |
    |     |      +---> network operator
    |     |      |
    |     |      +---> third parties
    |     |      |
    |     |      +---> user communities
    |     |
    |     +---> How ALTO server groups endpoints (PID)
    |     |
    |     +---> How ALTO server calculates costs
    |
    +---> ALTO client
    |      |
    |      +---> network management entity
    |      |
    |      +---> peer (endpoint) entity
    |
    +---> Information Consumer

    Main Benefits of Using ALTO (System and Service Performance)

    Recognized Issues




Chen, et al.             Expires January 3, 2019               [Page 11]


Internet-Draft                 ALTO Survey                     July 2018


Authors' Addresses

   Shiwei Dawn Chen
   Tongji University
   4800 Cao'an Road
   Shanghai  201804
   China

   Email: dawn_chen_f@hotmail.com


   X.S. Lin
   Tongji University
   4800 Cao'an Road
   Shanghai  201804
   China

   Email: x.shawn.lin@gmail.com


   Danny Alex Lachos Perez
   University of Campinas
   Av. Albert Einstein 400
   Campinas, Sao Paulo  13083-970
   Brazil

   Email: dlachosp@dca.fee.unicamp.br
   URI:   https://intrig.dca.fee.unicamp.br/danny-lachos/


   Y. Richard Yang
   Tongji/Yale University
   51 Prospect Street
   New Haven, CT  06511
   USA

   Email: yry@cs.yale.edu


   Christian Esteve Rothenberg
   University of Campinas
   Av. Albert Einstein 400
   Campinas, Sao Paulo  13083-970
   Brazil

   Email: chesteve@dca.fee.unicamp.br
   URI:   https://intrig.dca.fee.unicamp.br/christian/




Chen, et al.             Expires January 3, 2019               [Page 12]