Re: [alto] fci alto transport design discussion

Jan Seedorf <jan.seedorf@hft-stuttgart.de> Mon, 03 July 2017 12:56 UTC

Return-Path: <jan.seedorf@hft-stuttgart.de>
X-Original-To: alto@ietfa.amsl.com
Delivered-To: alto@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 42AF41315D7; Mon, 3 Jul 2017 05:56:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id R76GeaLOAkg0; Mon, 3 Jul 2017 05:56:43 -0700 (PDT)
Received: from esa1-smtp-out.rz.hft-stuttgart.de (esa1-smtp-out.rz.hft-stuttgart.de [193.197.204.116]) by ietfa.amsl.com (Postfix) with ESMTP id C5CB01300CE; Mon, 3 Jul 2017 05:56:42 -0700 (PDT)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A2BwAwDyPVpZ/+LIxcFcDg0BAQEDAQEBCQEBAYMsgRCBDgeOcZBaIpgOKIV0AoMyFAECAQEBAQEBAWsohRgBAQEBAgEjJjULCQIYKgICVwYBDAYCAQGKIwySbp1jgiYpg2sBhzgBAQgBAQEBASMJAYMdg0yBYSsLgUAigQyHfYJhBZ5/gQGBIZNriROGfokyi342IYEKUiRdhRMcgScEATx0h38BgQwBAQE
X-IPAS-Result: A2BwAwDyPVpZ/+LIxcFcDg0BAQEDAQEBCQEBAYMsgRCBDgeOcZBaIpgOKIV0AoMyFAECAQEBAQEBAWsohRgBAQEBAgEjJjULCQIYKgICVwYBDAYCAQGKIwySbp1jgiYpg2sBhzgBAQgBAQEBASMJAYMdg0yBYSsLgUAigQyHfYJhBZ5/gQGBIZNriROGfokyi342IYEKUiRdhRMcgScEATx0h38BgQwBAQE
Received: from exsrv01.ad.hft-stuttgart.de (HELO mail.hft-stuttgart.de) ([193.197.200.226]) by esa1-exout.rz.hft-stuttgart.de with ESMTP; 03 Jul 2017 14:56:39 +0200
Received: from Jans-MacBook-Air.local (193.197.200.229) by exsrv01.ad.hft-stuttgart.de (193.197.200.226) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.544.27; Mon, 3 Jul 2017 14:56:39 +0200
To: "Y. Richard Yang" <yry@cs.yale.edu>, Jon Peterson <jon.peterson@neustar.biz>, Kevin Ma J <kevin.j.ma@ericsson.com>, "cdni@ietf.org" <cdni@ietf.org>, IETF ALTO <alto@ietf.org>
References: <CANUuoLr3cXLe-27j11Be5amOcH7JjGrFTKa5PWBFaYJKV3sqbw@mail.gmail.com>
From: Jan Seedorf <jan.seedorf@hft-stuttgart.de>
Message-ID: <2636700d-72af-270b-5809-bd999e0e1ca3@hft-stuttgart.de>
Date: Mon, 03 Jul 2017 14:56:38 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <CANUuoLr3cXLe-27j11Be5amOcH7JjGrFTKa5PWBFaYJKV3sqbw@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------318DC8A9CC3453AB9FDBD8BC"
X-Originating-IP: [193.197.200.229]
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/tdVMgK4l0zp5LwnWbryLd43ed5w>
Subject: Re: [alto] fci alto transport design discussion
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Application-Layer Traffic Optimization \(alto\) WG mailing list" <alto.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/alto>, <mailto:alto-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/alto/>
List-Post: <mailto:alto@ietf.org>
List-Help: <mailto:alto-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/alto>, <mailto:alto-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Jul 2017 12:56:46 -0000

Hi Richard and all,

looking at RFC8008, its states that "FCI objects are composed of a 
dictionary of (key,value) pairs where the keys are the property names 
and the values are the associated property values.", meaning that the 
"capability-value" is a key. However, I did not find anything on 
multiple "capability-type" entries, and what to do when they are 
conflicting. From a CDNI perspective, it should certainly be possible to 
have something like in your example below: support http1.1 for footprint 
a and support http1.0 for footprint b.

I am for option 2) below, that is allow multiple entries with the same 
capability type.

> The FCI use case may argue that we extend the incremental update w/ 
> JSON Patch, to better handle arrays, right away.
Indeed. Do you want to choose one of the two (JSON Patch vs. JSON Merge 
Patch) or do you think of making JSON Merge Patch mandatory and JSON 
Patch optional and then we say in the ALTO FCI service specification 
that this one demands JSON Patch (as pecified in the ALTO incr. updates)?

  - Jan


On 03.07.17 13:59, Y. Richard Yang wrote:
> Hi Jan, Jon, Kevin, all,
>
> As we are working on the design, a key issue that we are trying to 
> understand is the conflict resolution of the capabilities in the 
> "capabilities" list [RFC8008]. Consider
>
>    {
>      "capabilities": [
>        {
>          "capability-type": "FCI.DeliveryProtocol",
>          "capability-value": {
>            "delivery-protocols": [
>              "http/1.1",
>            ]
>          },
>          "footprints": [
>            <Footprint objects 1>
>          ]
>        },
>        {
>          "capability-type": "FCI.DeliveryProtocol",
>          "capability-value": {
>            "delivery-protocols": [
>              "http/1.0",
>            ]
>          },
>          "footprints": [
>            <Footprint objects 2>
>          ]
>        }
>      ]
>    }
>
> What if the footprints in the two entries have overlap? I see two 
> options:
> (1) Enforce that each capability-type has a single entry; that is, 
> make capability-type a key;
> (2) Allow multiple entries with the same capability-type, and the 
> search is ordered by the array; that is, the result is the first 
> matching footprints.
>
> I assume that (2) is more flexible. An issue, however, is that it 
> makes incremental updates harder. In other words, this issue will 
> determine whether we should integrate JSON Patch. The current alto 
> incremental updates, based on SSE and JSON Merge Patch, is pretty 
> useful. The FCI use case may argue that we extend the incremental 
> update w/ JSON Patch, to better handle arrays, right away.
>
> Any clarification, comments and suggestions will be great.
>
> Richard
>

-- 
****************************
Prof. Dr. Jan Seedorf
jan.seedorf@hft-stuttgart.de
****************************
Hochschule für Technik Stuttgart
Fakultät Vermessung, Informatik und Mathematik
Schellingstr. 24
D-70174 Stuttgart
www.hft-stuttgart.de
****************************