Internet DRAFT - draft-chen-alto-survey
draft-chen-alto-survey
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]