ALTO Extension: Endpoint Cost Service for Flows
draft-wang-alto-ecs-flows-00
The information below is for an old version of the document.
| Document | Type | Active Internet-Draft (individual) | |
|---|---|---|---|
| Authors | Junzhuo Austin Wang , Qiao Xiang | ||
| Last updated | 2015-10-19 | ||
| Stream | (None) | ||
| Formats | plain text xml htmlized pdfized bibtex | ||
| Stream | Stream state | (No stream defined) | |
| Consensus boilerplate | Unknown | ||
| RFC Editor Note | (None) | ||
| IESG | IESG state | I-D Exists | |
| Telechat date | (None) | ||
| Responsible AD | (None) | ||
| Send notices to | (None) |
draft-wang-alto-ecs-flows-00
ALTO Working Group Junzhuo. Wang
Internet-Draft Tongji University
Intended status: Standards Track Qiao. Xiang
Expires: April 21, 2016 Tongji/Yale University
October 19, 2015
ALTO Extension: Endpoint Cost Service for Flows
draft-wang-alto-ecs-flows-00
Abstract
The Endpoint Cost Service (ECS) has limitations to illustrate the
network condition and to work with the OpenFlow protocol. This
document extends ECS to improve the Application-Layer Traffic
Optimization (ALTO) protocol by defining more types of endpoint
address such as port number, protocol type, domain and etc.
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 April 21, 2016.
Copyright Notice
Copyright (c) 2015 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
Wang & Xiang Expires April 21, 2016 [Page 1]
Internet-Draft ECS Flow October 2015
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2
1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3
2. Motivations . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Overview Of Approach . . . . . . . . . . . . . . . . . . . . 5
3.1. Multi-Field Typed Endpoint Address Format . . . . . . . . 5
3.2. Compatibility With Legacy Clients . . . . . . . . . . . . 6
3.3. Endpoint Cost Resources . . . . . . . . . . . . . . . . . 6
4. Protocol Extension for Flow-Extended ECS . . . . . . . . . . 7
4.1. Endpoints Extensions . . . . . . . . . . . . . . . . . . 7
4.1.1. Multi-Field Typed Endpoint Addresses . . . . . . . . 7
4.1.2. Address Type . . . . . . . . . . . . . . . . . . . . 8
4.1.3. Endpoint Address . . . . . . . . . . . . . . . . . . 8
4.1.4. Field Name . . . . . . . . . . . . . . . . . . . . . 8
4.1.5. Field Value . . . . . . . . . . . . . . . . . . . . . 8
4.2. Endpoint Cost Service Extensions . . . . . . . . . . . . 8
4.2.1. Accept Input Parameters . . . . . . . . . . . . . . . 9
4.2.2. Capabilities . . . . . . . . . . . . . . . . . . . . 9
4.2.3. Response . . . . . . . . . . . . . . . . . . . . . . 10
4.3. ALTO Address Type Registry Extensions . . . . . . . . . . 11
5. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.1. Information Resource Directory . . . . . . . . . . . . . 11
5.2. Endpoint Cost Service . . . . . . . . . . . . . . . . . . 13
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14
7. Privacy And Security Considerations . . . . . . . . . . . . . 14
8. Normative References . . . . . . . . . . . . . . . . . . . . 14
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15
1. Introduction
ECS is a basic service of the ALTO services defined in [RFC7285].
Based on the simple host model when defining endpoints, ECS defined
in [RFC7285] may not work well in an emerging settings such as
Software Defined Networking (SDN) based settings, where network
routing decisions can be flow based. In this document, we present an
extended ECS for such new settings.
1.1. Terminology
This document uses terms defined as follows:
o {1.2.3}: References of this form are to sections in the ALTO
protocol specification [RFC7285].
Wang & Xiang Expires April 21, 2016 [Page 2]
Internet-Draft ECS Flow October 2015
o And other terms defined in {8.2} of [RFC7285].
1.2. 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].
2. Motivations
Below is the acceptable input parameters of ECS in {11.5.1.3} of
[RFC7285].
object {
CostType cost-type;
[JSONString constraints<0..*>;]
EndpointFilter endpoints;
} ReqEndpointCostMap;
object {
[TypedEndpointAddr srcs<0..*>;]
[TypedEndpointAddr dsts<0..*>;]
} EndpointFilter;
Hence, the granularity is TypedEndpointAddr, which is defined in
{10.4.1} of [RFC7285]. In particular, [RFC7285] defines two address
types: ipv4 and ipv6. This, however, may limit the usage of ECS in
multiple settings. Below we give some use cases.
Use case 1:
ECS is not compatible with virtual host technology, a popular on the
Internet, which allows different hosts to share the same IP address.
For example, a reverse proxy p1 hosts three sites shown in Figure 1.
These sites share the same public network address: 202.180.1.11.
Suppose the link in the private network from p1 to server s1 is busy,
but the link to server s2 is free. It will cost client c1 more to
access www.a.com than www.b.com. Suppose c1 wants to know the cost
to www.a.com. Because ECS only supports IP addresses, it will query
the DNS server to transfer the domain name to IP address. Therefore,
c1 can only obtain the cost to p1.
As a result, c1 will get the same result to three different domain
names because ECS is only capable of measuring the cost between IP
addresses.
Wang & Xiang Expires April 21, 2016 [Page 3]
Internet-Draft ECS Flow October 2015
+---------------------------------+
| |
| Private +-----------------+ |
| Network | s1 | |
| +--> www.a.com | |
| | | 192.168.1.10 | |
| | | | |
| | +-----------------+ |
| | |
+-----------------+ +--------+--------+ | +-----------------+ |
| c1 | | p1 | | | s2 | |
| Web Browser +------> Reverse Proxy +-+--> www.b.com | |
| 60.20.100.11 | | 202.180.1.11 | | | 192.168.1.11 | |
| | | 192.168.1.20 | | | | |
+-----------------+ +--------+--------+ | +-----------------+ |
| | |
| | +-----------------+ |
| | | s3 | |
| +--> www.c.com | |
| | 192.168.1.12 | |
| | | |
| +-----------------+ |
| |
+---------------------------------+
Figure 1: Using reverse proxy to operate virtual hosts.
Use case 2:
ECS is not compatible with port-based or protocol-based routing
systems. For example, the OpenFlow protocol can forward packets to
different destinations by the port in TCP/IP protocols. A simple
topology is shown in Figure 2, the link between switch sw1 and switch
sw2 has a low speed but a low latency, while sw3 is a high speed but
high latency switch. And there are two services running on host h2,
SSH and FTP, using port 22 and port 20, respectively. An efficient
flow configuration supported by OpenFlow, is to use a low latency
link to transfer SSH packets and a high speed route to transfer
files. So sw1 and sw2 will exchange the SSH flows with each other to
achieve a lower latency and forward FTP flows to sw3 to achieve a
higher bandwidth.
In this case, the SDN network uses suitable links to transfer
different packets, so the cost between IP addresses is protocol or
port related. However, ECS cannot use this information to give a
precise result.
Wang & Xiang Expires April 21, 2016 [Page 4]
Internet-Draft ECS Flow October 2015
+-----------------+ +-----------------+
| h1 | | h2 |
| SSH client | | SSH service: 22 |
| FTP client | | FTP service: 20 |
| | | |
+-------^---------+ +---------^-------+
| |
| |
+--v---+ +---v--+
| | Low Speed | |
| sw 1 <-----------------> sw 2 |
| | Low Latency | |
+--^---+ +---^--+
| |
| |
+--v-------------------------v--+
| sw 3 |
| High Speed |
| High Latency |
+-------------------------------+
Figure 2: A simple example of protocol or port based routing.
Use case 3:
ECS is not compatible with other addresses such as MAC addresses or
physical connectors. For example, some protocols such as ARP send
packets by MAC addresses. ECS is unable to measure the cost between
two NICs without IP addresses. The ALTO, as an information source,
cannot compute the cost between two physic ports, either. These
knowledge seems useless for the Internet users, but useful for ISPs.
3. Overview Of Approach
This section contains the non-normative overview of the ECS extension
for flows defined in this document. It assumes that the readers are
familiar with the ALTO Protocol ([RFC7285]).
3.1. Multi-Field Typed Endpoint Address Format
The typed endpoint address used by ECS is defined in {10.4} of
[RFC7285]. That section only defines two address types: ipv4 and
ipv6 to refer IPv4 addresses and IPv6 addresses, respectively.
However, the flow-extended ECS may contain MAC addresses, domain
names and port numbers to give a cost between hosts.
Therefore, this document extends the address type and the typed
endpoint address to allow ECS to measure the cost more precisely.
Wang & Xiang Expires April 21, 2016 [Page 5]
Internet-Draft ECS Flow October 2015
For example, the following are some Multi-Field Type Endpoint
Addresses. These fields in an address are interpreted as being
related to each other with a logical AND.
"ipv4:10.60.10.1;protocol:ssh;port:22"
"ipv6:2001:da8::10;protocol:ftp;port:21"
"domainname:www.a.com;protocol:http;port:80"
And a request to query the cost between hosts looks like this:
{
"cost-type": {"cost-mode" : "ordinal",
"cost-metric" : "routingcost"},
"endpoints" : {
"srcs": [ "ipv4:192.0.2.2" ],
"dsts": [
"ipv4:192.0.2.89;protocol:ssh",
"domainname:www.a.com;port:80",
"ipv4:203.0.113.45"
]
}
}
3.2. Compatibility With Legacy Clients
The extension defined in this document should be compatible with
legacy implementations, which means clients and servers are not aware
of this extension. A good way to achieve this goal is defining new
media types for extended endpoint cost map. Based on the fact that
the extended address looks alike the original typed endpoint address,
it would be a simpler way to implement a parser which can handle both
typed endpoint addresses.
Therefore, no new media type is defined in this document. Instead,
this document extends the specifications of Information Resource
Directory (IRD) in the ALTO protocol. Because the legacy ALTO
clients MUST ignore unknown fields (see {8.3.7} of [RFC7285]), the
legacy implementations will not use the extended typed endpoint
address and are not aware of the existence of this extension.
3.3. Endpoint Cost Resources
This document extends the endpoint cost service in IRD to allow the
same resource to receive either legacy typed endpoint addresses as
defined in {10.4} of [RFC7285], or extended typed endpoint addresses
as defined in this document. The extended endpoint cost resource has
a new capability called "flow-extension", which indicates supported
Wang & Xiang Expires April 21, 2016 [Page 6]
Internet-Draft ECS Flow October 2015
address types and fields. The existence of this value means that the
resource understands this extension.
For example, an extended endpoint cost resource in IRD is shown
below:
"endpoint-cost" : {
"uri" : "http://alto.example.com/endpointcost/lookup",
"media-type" : "application/alto-endpointcost+json",
"accepts" : "application/alto-endpointcostparams+json",
"capabilities" : {
"cost-constraints" : true,
"flow-extension" : {
"address-types" : [ "mac", "domainname" ],
"field-names" : [ "port", "protocol" ]
},
"cost-type-names" : [ "num-routing", "num-hop",
"ord-routing", "ord-hop" ]
}
}
The legacy implementations SHOULD ignore the unknown capability:
"flow-extension", and will send requests with the typed endpoint
address, as defined in [RFC7285]. So the ALTO server should return a
non-extended legacy cost map.
However, an extended client will realize that this resource supports
the extension to flows, and can POST the request with extended typed
endpoint addresses. The server can understand that the client
supports the extension in this document by parsing the extended
endpoint addresses, and hence response with the extended cost map.
4. Protocol Extension for Flow-Extended ECS
4.1. Endpoints Extensions
This document extends Endpoint, as defined in {10.4} of [RFC7285], by
adding ';' character to separate different fields in an address, and
by adding more address types to indicate other fields.
4.1.1. Multi-Field Typed Endpoint Addresses
The Typed Endpoint Addresses, as defined in {10.4.1} of [RFC7285],
are encoded as strings of the format: AddressType:EndpointAddr. This
document extends it as the format: AddressType:EndpointAddr((;FieldNa
me:FieldValue)|(;AddressType:EndpointAddr))*.
Wang & Xiang Expires April 21, 2016 [Page 7]
Internet-Draft ECS Flow October 2015
4.1.2. Address Type
This document extends Address Type, as defined in {10.4.2} of
[RFC7285], by adding two values to AddressType: "mac" and
"domainname" to refer to MAC addresses and domain names.
4.1.3. Endpoint Address
This document extends Endpoint Address, as defined in {10.4.3} of
[RFC7285], by defining more EndpointAddr when AddressType is "mac" or
"domainname".
4.1.3.1. MAC
MAC Endpoint Addresses are encoded as specified in Section 3 of
[RFC7042].
4.1.3.2. Domain Name
Domain Name Addresses are encoded as specified in Section 3.1 of
[RFC1034].
4.1.4. Field Name
The FieldName component of MultiFiledTypedEndPointAddr is defined as
a string consisting of only US-ASCII alphanumeric characters
(U+0030-U+0039, U+0041-U+005A, and U+0061-U+007A). The type
FieldName is used in this document to indicate a string of this
format. This document does not define any value of FieldName.
Hence, ALTO clients and servers SHOULD interpret the meanings of
FieldName by themselves.
4.1.5. Field Value
The FieldValue component of MultiFiledTypedEndPointAddr is defined as
a string consisting of only US-ASCII alphanumeric characters
(U+0030-U+0039, U+0041-U+005A, and U+0061-U+007A). The type
FieldValue is used in this document to indicate a string of this
format. This document does not define any value of FieldValue.
Hence, ALTO clients and servers SHOULD interpret the meanings of
FieldValue by themselves.
4.2. Endpoint Cost Service Extensions
This document extends the Endpoint Cost Service, as defined in
{11.5.1} of [RFC7285], by adding new capabilities and extending
TypedEndpointAddr.
Wang & Xiang Expires April 21, 2016 [Page 8]
Internet-Draft ECS Flow October 2015
The media type ({11.5.1.1} of [RFC7285]), HTTP method ({11.5.1.2} of
[RFC7285]) and "uses" specifications ({11.5.1.5} of [RFC7285]) are
unchanged.
4.2.1. Accept Input Parameters
The ReqEndpointCostMap object in {11.5.1.3} of [RFC7285] is extended
as follows:
object {
CostType cost-type;
[JSONString constraints<0..*>;]
EndpointFilter endpoints;
[MultiFieldEndpointFilter multi-field-endpoints;]
} ReqEndpointCostMap;
object {
[TypedEndpointAddr srcs<0..*>;]
[TypedEndpointAddr dsts<0..*>;]
} EndpointFilter;
object {
[MultiFieldTypedEndpointAddr srcs<0..*>;]
[MultiFieldTypedEndpointAddr dsts<0..*>;]
} MultiFieldEndpointFilter;
With fields:
cost-type, constrains, endpoints: As defined in {11.5.1.3} of
[RFC7285].
multi-field-endpoints: If present, this field is the same as
endpoints defined in {11.5.1.3} of [RFC7285], with the additional
requirement that the ALTO server MUST ignore the endpoints field,
and use srcs and dsts in the multi-field-endpoints to calculate
the cost and return an extended response in this document. The
AddressType and FieldName in each MultiFieldTypedEndpointAddr MUST
be declared in the capability of this resource.
4.2.2. Capabilities
The EndpointCostCapabilities object in {11.5.1.4} of [RFC7285] is
extended as follows:
Wang & Xiang Expires April 21, 2016 [Page 9]
Internet-Draft ECS Flow October 2015
object {
JSONString cost-type-names<1..*>;
JSONBool cost-constraints;
[FlowExtension flow-extension;]
} EndpointCostCapabilities;
object {
[JSONString address-types<1..*>;]
[JSONString field-names<1..*>;]
} FlowExtension;
With fields:
cost-type-names, cost-constrains: As defined in {11.5.1.4} of
[RFC7285].
flow-extension: Defines lists of supported address types and field
names of this resource. If present with one or two lists, this
resource understands the flow-extension in this document and MUST
support MultiFieldTypedEndpointAddr. If omitted, the default
value is an empty object.
address-types: Defines a list of supported address type. The values
in this list MUST be defined in Section 4.1.2 in this document.
If present with one or more values, the ALTO server MUST support
these values as extended endpoint address type. If omitted, the
default value is an empty list, which means the server does not
support any address type other than ipv4 and ipv6.
field-names: Defines a list of supported field names. The values in
this list are defined in Section 4.1.4 in this document. If
present with one or more values, the ALTO server MUST support
these values as field names. If omitted, the default value is an
empty list.
4.2.3. Response
If the client does not provide "multi-field-endpoints" input
parameter, the response is exactly as defined in {11.5.1.6} of
[RFC7285]. If the client provides the "multi-field-endpoints", the
response is changed as follows:
o In the EndpointCostMapData object, replace the TypedEndpointAddr
field with MultiFieldTypedEndpointAddr.
o In the EndpointDstCosts object, replace the TypedEndpointAddr
field with MultiFieldTypedEndpointAddr.
Wang & Xiang Expires April 21, 2016 [Page 10]
Internet-Draft ECS Flow October 2015
4.3. ALTO Address Type Registry Extensions
This document requests registration of the identifiers "mac" and
"domainname" as shown in Table 1.
+------------+----------+-----------+-------------------------------+
| Identifier | Address | Prefix | Mapping to/from IPv4/v6 |
| | Encoding | Encoding | |
+------------+----------+-----------+-------------------------------+
| mac | See | No | Mapping from IPv4 by |
| | Section | compact | [RFC0826]. Mapping to IPv4 |
| | 6.1.3 | encoding | by [RFC0903]. Mapping from |
| | | is | IPv6 by [RFC4861]. Mapping |
| | | available | to IPv6 by [RFC3122]. |
| domainname | See | No | Mapping to/from IPv4 by |
| | Section | compact | [RFC1034]. Mapping to/from |
| | 6.1.3 | encoding | IPv6 by [RFC3596]. |
| | | is | |
| | | available | |
+------------+----------+-----------+-------------------------------+
Table 1: New ALTO Address Types
5. Examples
5.1. Information Resource Directory
Here is an example of an ALTO server's Information Resource Directory
with an Endpoint Cost Service which supports the flow-based ECS
extensions.
GET /directory HTTP/1.1
Host: alto.example.com
Accept: application/alto-directory+json,application/alto-error+json
HTTP/1.1 200 OK
Content-Length: [TODO]
Content-Type: application/alto-directory+json
{
"meta" : {
"default-alto-network-map" : "my-default-network-map",
"cost-types" : {
"num-routing" : {
"cost-mode" : "numerical",
"cost-metric" : "routingcost"
},
"num-hopcount" : {
"cost-mode" : "numerical",
Wang & Xiang Expires April 21, 2016 [Page 11]
Internet-Draft ECS Flow October 2015
"cost-metric" : "hopcount"
},
}
},
"resources" : {
"my-default-network-map" : {
"uri" : "http://alto.example.com/networkmap",
"media-type" : "application/alto-networkmap+json"
},
"numerical-routing-cost-map" : {
"uri" : "http://alto.example.com/costmap/num-routing",
"media-types" : [ "application/alto-costmap+json" ],
"uses" : [ "my-default-network-map" ],
"capabilities" : {
"cost-type-names" : [ "num-routing" ]
}
},
"numerical-hopcount-cost-map" : {
"uri" : "http://alto.example.com/costmap/num-hopcount",
"media-types" : [ "application/alto-costmap+json" ],
"uses" : [ "my-default-network-map" ],
"capabilities" : {
"cost-type-names" : [ "num-hopcount" ]
}
},
.........
And other information resources described in RFC7285
.........
"endpoint-multicost-map" : {
"uri" : "http://alto.example.com/multi/endpointcost/lookup",
"media-types" : [ "application/alto-endpointcost+json" ],
"accepts" : [ "application/alto-endpointcostparams+json" ],
"uses" : [ "my-default-network-map" ],
"capabilities" : {
"cost-constraints" : true,
"flow-extension" : {
"address-types" : [ "mac", "domainname" ],
"field-names" : [ "port", "protocol" ]
},
"cost-type-names" : [ "num-routingcost",
"num-hopcount" ],
}
}
}
}
Wang & Xiang Expires April 21, 2016 [Page 12]
Internet-Draft ECS Flow October 2015
5.2. Endpoint Cost Service
This example uses multi-field typed endpoint addresses to query the
"routingcost" for selected endpoints.
POST /endpointcost/lookup HTTP/1.1
Host: alto.example.com
Content-Length: 345
Content-Type: application/alto-endpointcostparams+json
Accept: application/alto-endpointcost+json,
application/alto-error+json
{
"cost-type": {"cost-mode" : "ordinal",
"cost-metric" : "routingcost"},
"multi-field-endpoints" : {
"srcs": [ "ipv4:192.0.2.2" ],
"dsts": [
"domainname:www.a.com",
"mac:01-23-45-67-89-AB",
"ipv4:198.51.100.34;protocol:ssh",
"ipv4:198.51.100.34;protocol:ftp",
"ipv4:203.0.113.45;port:20"
]
}
}
HTTP/1.1 200 OK
Content-Length: 402
Content-Type: application/alto-endpointcost+json
{
"meta" : {
"cost-type": {"cost-mode" : "ordinal",
"cost-metric" : "routingcost"
}
},
"endpoint-cost-map" : {
"ipv4:192.0.2.2": {
"domainname:www.a.com" : 1,
"mac:01-23-45-67-89-AB" : 2,
"ipv4:198.51.100.34;protocol:ssh" : 3,
"ipv4:198.51.100.34;protocol:ftp" : 4,
"ipv4:203.0.113.45;port:20" : 5
}
}
}
Wang & Xiang Expires April 21, 2016 [Page 13]
Internet-Draft ECS Flow October 2015
6. IANA Considerations
This document does not define any new media type or introduce any new
IANA consideration.
7. Privacy And Security Considerations
This document does not introduce any privacy or security issue not
already present in the ALTO protocol.
8. Normative References
[RFC0826] Plummer, D., "Ethernet Address Resolution Protocol: Or
Converting Network Protocol Addresses to 48.bit Ethernet
Address for Transmission on Ethernet Hardware", STD 37,
RFC 826, DOI 10.17487/RFC0826, November 1982,
<http://www.rfc-editor.org/info/rfc826>.
[RFC0903] Finlayson, R., Mann, T., Mogul, J., and M. Theimer, "A
Reverse Address Resolution Protocol", STD 38, RFC 903, DOI
10.17487/RFC0903, June 1984,
<http://www.rfc-editor.org/info/rfc903>.
[RFC1034] Mockapetris, P., "Domain names - concepts and facilities",
STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987,
<http://www.rfc-editor.org/info/rfc1034>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC3122] Conta, A., "Extensions to IPv6 Neighbor Discovery for
Inverse Discovery Specification", RFC 3122, DOI 10.17487/
RFC3122, June 2001,
<http://www.rfc-editor.org/info/rfc3122>.
[RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi,
"DNS Extensions to Support IP Version 6", RFC 3596, DOI
10.17487/RFC3596, October 2003,
<http://www.rfc-editor.org/info/rfc3596>.
[RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
"Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
DOI 10.17487/RFC4861, September 2007,
<http://www.rfc-editor.org/info/rfc4861>.
Wang & Xiang Expires April 21, 2016 [Page 14]
Internet-Draft ECS Flow October 2015
[RFC7042] Eastlake 3rd, D. and J. Abley, "IANA Considerations and
IETF Protocol and Documentation Usage for IEEE 802
Parameters", BCP 141, RFC 7042, DOI 10.17487/RFC7042,
October 2013, <http://www.rfc-editor.org/info/rfc7042>.
[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,
<http://www.rfc-editor.org/info/rfc7285>.
Authors' Addresses
Junzhuo Austin Wang
Tongji University
4800 Cao'an Road, Jiading District
Shanghai
China
Email: wangjunzhuo200@gmail.com
Qiao Xiang
Tongji/Yale University
4800 Cao'an Road, Jiading District
Shanghai
China
Email: xiangq27@gmail.com
Wang & Xiang Expires April 21, 2016 [Page 15]