Re: [DMM] [Int-area] New draft posted: Anchorless mobility management through hICN (hICN-AMM): Deployment options

Tom Herbert <tom@quantonium.net> Wed, 20 June 2018 17:18 UTC

Return-Path: <tom@quantonium.net>
X-Original-To: dmm@ietfa.amsl.com
Delivered-To: dmm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9E14A129C6B for <dmm@ietfa.amsl.com>; Wed, 20 Jun 2018 10:18:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, T_DKIMWL_WL_MED=-0.01] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=quantonium-net.20150623.gappssmtp.com
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 1rcObocL4pv9 for <dmm@ietfa.amsl.com>; Wed, 20 Jun 2018 10:18:23 -0700 (PDT)
Received: from mail-wr0-x22c.google.com (mail-wr0-x22c.google.com [IPv6:2a00:1450:400c:c0c::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 20728130DF4 for <dmm@ietf.org>; Wed, 20 Jun 2018 10:18:23 -0700 (PDT)
Received: by mail-wr0-x22c.google.com with SMTP id e18-v6so306826wrs.5 for <dmm@ietf.org>; Wed, 20 Jun 2018 10:18:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quantonium-net.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=drnLhx4Qldl3u9s9OkcSdfh1SuYhfcqwNoLQyJz+mbw=; b=F3MkgIDfcnkUdtKSZBRWy0ROGtZdFPL8oxHTzWkNfudligFZu/7ueRibzehR5q3kP8 dyb7Xtl3qG1YY5cTyUuGHGNDltVQBTbsqCEAJjBmNm2fCneCJF/cxgp2kDzIWbHf6T/A G6/iwD6i0KFn99huGbgBDhxkRS3hLwhdEmkBU3n87eOiuojlOF8hgGFvSqeGoqdXjc46 /0CSDtGdNuNdBm1OgN1i7+P9ahs2jEPNk4vZMwqr4v0+bDmZPXf3JTqcj5g7MrtsbVSl nGTdsO4wwn8soB5/uUtWnOKtsFp8Lncq1RnbAr5ggpM1knV5px5oJqbx1IKNv/hxWqQO 4rsw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=drnLhx4Qldl3u9s9OkcSdfh1SuYhfcqwNoLQyJz+mbw=; b=bGq7Q/MkhLWKH6800/LnhhwpKA+/t3mUyxhBxFVCK1bxTwWklJBW7Rv3UJcjkf/w8g 9xwS/+2XQXgfLPO2vo7NyfKW/Y1NwSz7ozfZ3V26ZUQ4RRxxoMDUy2zcij2QVg4ER2lh JbNRg3EhQsJkuAMXOlCeT4lcTcwhsX1dBHWdwhmNC1H3u7QrGd0dYGVoBdFVr1f1WTH4 4lJqCUZt5PKfGE+A6QSNRcGjJ89BbqTItxGHPDIGLwcaCxe9CeBIN/ikWXI36Ck2KtsS XpyXmsZ/8Fdui66EfkCzAfa1VNwZGZ7h6rHYP2Y0XidPFu7FthIpmhoNssQivVeJc4wq o6JQ==
X-Gm-Message-State: APt69E0no0crg8YIgEhWcXytkPlalmLDfOgWL06PSSG9pC2R2Nd63Jbk Q/6RvItmac+fBC2ahvMt/s6NjJghZnI+ks4vFszfdw==
X-Google-Smtp-Source: ADUXVKJzPkU0bSHJQdBxzUocFzSAk/7nnhE4UTdH6ng0WQYsd8k57K86JW+qEkZ6knhobCMh8ZO17RYQVR8ix3w/hiU=
X-Received: by 2002:adf:e542:: with SMTP id z2-v6mr19170333wrm.111.1529515101459; Wed, 20 Jun 2018 10:18:21 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:adf:f9d2:0:0:0:0:0 with HTTP; Wed, 20 Jun 2018 10:18:20 -0700 (PDT)
In-Reply-To: <CAHx=1M6-tUXNq1NefGtrp7a-DLxRkykcfTC0qCHyM+DzM9Griw@mail.gmail.com>
References: <CAHx=1M5MFsR6xBvetXEgcjsLJ8rmuLLBWMf9iXSQDguTwMh4Gg@mail.gmail.com> <CAPDqMeonj=E8B9MT3_9zBSzQGgkiqEoMt3a+TX+68OFDeusC7Q@mail.gmail.com> <CAHx=1M7BsPwBbO7UwcCdZfQu4XoiCvLjiuh3pAO_-DV_s_TyBg@mail.gmail.com> <CAPDqMeomQdDEb0uh1fS2vxvDJzg3+47m-bhz5Ah_O=ay5LFOhQ@mail.gmail.com> <CAHx=1M5DizvHPxSxxruS9iJA177GOWuQvv+tOWBwT+QXTZt3GA@mail.gmail.com> <CAC8QAceg0-_41iSC6eBun+uNZ+UA1kn1euf1yWvZ4byRRGOu9w@mail.gmail.com> <1529505221125.58728@cisco.com> <CAHx=1M7kWTy_4ZevVS-9X1Utu52oFVmyin4U6FssSsqnOnrEBA@mail.gmail.com> <CAPDqMeqBkoqC55dS-4RJ5OtO7hhUviqP420hLEmz2dZ8NM2-Aw@mail.gmail.com> <CAHx=1M6-tUXNq1NefGtrp7a-DLxRkykcfTC0qCHyM+DzM9Griw@mail.gmail.com>
From: Tom Herbert <tom@quantonium.net>
Date: Wed, 20 Jun 2018 10:18:20 -0700
Message-ID: <CAPDqMepL6cRxxjMaw8Phj0tZXuG64-yEZyu+SJYvjm-owmpe9g@mail.gmail.com>
To: Luca Muscariello <luca.muscariello@gmail.com>
Cc: Giovanna Carofiglio <gcarofig@cisco.com>, Behcet Sarikaya <sarikaya@ieee.org>, int-area@ietf.org, Luca Muscariello <lumuscar@cisco.com>, dmm <dmm@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmm/9iNpPRr9VENln53__CM2FTLS8bE>
Subject: Re: [DMM] [Int-area] New draft posted: Anchorless mobility management through hICN (hICN-AMM): Deployment options
X-BeenThere: dmm@ietf.org
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: Distributed Mobility Management Working Group <dmm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dmm>, <mailto:dmm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dmm/>
List-Post: <mailto:dmm@ietf.org>
List-Help: <mailto:dmm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dmm>, <mailto:dmm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 20 Jun 2018 17:18:28 -0000

On Wed, Jun 20, 2018 at 9:06 AM, Luca Muscariello
<luca.muscariello@gmail.com> wrote:
> The adjective minor is used in a comparative way. At least I intended that
> way.
> hICN allows to implement ICN features with less changes than using ICN as an
> overlay.
> On an absolute scale, I don't think that hICN requires negligible changes.
> So I haven't used the adjective minor as a synonym of negligible.
> I do think that having those changes are worthy for many apps.
>
> Back to your questions that I understand this way:
> 1) What is the hICN socket API?
> 2) Does hICN imply that all hosts have to change transport stack?
> 3) Does hICN disrupt the TCP/IP stack in an end host?
>
>
> 1) The answer to the first question is something that I wanted to discuss in
> the transport area
> but repeating does good. In the current implementation we support two
> different APIs.
> The first one is a BSD socket API, the second one is a post-socket API that
> is currently
> under development in the TAPS WG with a first integration in iOS 12 beta.
> I'm not
> contributing to TAPS but I think it is worthy to keep our implementation
> updated with TAPS.
> I haven't finished to write a draft but I have a technical report that I
> could share right before next IETF.
>
> 2) An application developer may or may not want to change to use this API.
> But I would turn the question around to ask, is it worthy to change the
> application to exploit
> this new transport service and the underlying network service to get a
> certain number of benefits?

Luca,

I would say the answer is no, unless you can prove beyond doubt that
violating the protocol layering archictecure of the Internet and the
E2E model is necessary to get those benefits. I don't believe that
proof has yet been provided (for this proposal or any other similar
ones and there have been several). The Internet is architectured such
that any transport protocol can run over a common network layer.
Mobility is a network layer concern and so should be part of the
network layer. Therefore, a network mobility solution should work
transparently with any transport layer (TCP, UCP, QUIC, SCTP, and new
ones we may come up with). The network/transport separation is not
maintained when we we see intermediate devices trying to participate
the transport layer which entails DPI and inevitably leads to protocol
ossification in the Internet.

So we want middelboxes be less invasive in the transport layer, not
more invasive! You may want to look at early PLUS/SPUD efforts that
were attempting to turn UDP into a sort of of network layer protocol
to carry path information read by the network (they choose UDP because
of compatibility with existing HW instead of defining a new transport
protocol). This even included encoding flow semantics for network to
track (like the request/response tracking in hICN). These efforts got
pushback in part because it violates protocol layer and encouraged
DPI. In hindsight the answer now seems pretty simple: network layer
information belongs in network layer headers. If you want to signal
the network then just put information extension headers like HBH
options. EH also permits data modification by intermediate devices
which is useful for things like OAM.

> IMO, yes.
>
> Is it worthy to implement a new transport service in user-space such as
> LEDBAT, QUIC or the variety of transport
> services running for RTC apps? The answer is up to the application. It is
> the app that decides.

It's not just up to the application. It's up the network operators,
hardware vendors, as well as the OS vendors. The OS is a big problem.
There is simply no concept of instantaneously changing all OS
deployments to a support a new feature like this. It takes years to
get significant traction. Look at a protocol like MPTCP: it's good
protocol and shows a lot of value to many users, but deployment has
been stymied by lack of OS support. We are trying to fix the
situation, but it's not easy.

> So, no, there is no need to change all hosts. IMO the answer is it depends.
>
> 3) when you enable hICN in an end host the local network configuration
> manages two distinct namespaces,
> one for locators and one for identifiers (intended as location independent
> names).  An end-host can manage several
> locators because might be multi-homed and can manage several identifiers
> because it has been assigned identifiers
> to name data sources at the host: mic, camera, an app etc.
> This host continues to be able to open TCP or UDP sockets (but also SCTP or
> others) with the usual socket bindings.
>
> Just to give an example: We are using our hICN  transport library for
> WebRTC, MPEG-DASH among other things.
> An MPEG-DASH segment can be retrieved by a video client using TCP, QUIC or
> the consumer/producer socket.
> The video player can sequentially switch protocol to retrieve the segment.
> Not that it make any sense but it's just
> to explain that they live in the same end-host.  If the app considers that
> one transport service can provide
> features that are advantageous it can optionally switch to it.
> There is no intent to replace TCP, UDP, LEDBAT, QUIC, SCTP or any other
> transport protocol with the consumer/producer
> sockets.

Okay, but these protocols still need to work in mobile networks, which
means in hICN enabled network you still need a mobile infrastructure
to handle these "legacy" protocols. That means there are two distinct
mobility models needed-- hICN is not simplifying matters in this
regard.

To me, the hICN story would be a lot more compelling if the transport
and network layer are decoupled so there was one solution that
provided seamless mobility for everyone in the network regardless of
type of transport protocol they use or application that they wish to
run. Beyond that, there might be opportunities to improve
communications by some coordinated interaction with the network (like
we propose in FAST), but these are strictly optimization and not
requirements to make basic communications work.

Tom

>
> Luca
>
>
>
> On Wed, Jun 20, 2018 at 5:13 PM Tom Herbert <tom@quantonium.net> wrote:
>>
>> On Wed, Jun 20, 2018 at 7:48 AM, Luca Muscariello
>> <luca.muscariello@gmail.com> wrote:
>> > More on the mobility use case which also makes deployment options easier
>> > to
>> > digest
>> >
>> > https://datatracker.ietf.org/doc/draft-auge-dmm-hicn-mobility/
>> >
>>
>> From the draft:
>>
>> "The goal of hICN is to ease ICN insertion in existing IP infrastructure
>> by:
>> ...
>>  3.  minor modification to existing IP routers/endpoints;"
>>
>> Can you elaborate on this "minor modification"? Especially for
>> endpoints, which I assume means hosts, what is the scope, the
>> necessary modifications, and deployment model. Also, will applications
>> have to change or use a new API for hICN?
>>
>> If the implication of hICN is that all Internet hosts need to change
>> to support a new consumer/producer communications model, a new
>> transport protocol, and a new application API-- there's nothing minor
>> about that!
>>
>> Tom
>>
>> >
>> > On Wed, Jun 20, 2018 at 4:33 PM Giovanna Carofiglio (gcarofig)
>> > <gcarofig@cisco.com> wrote:
>> >>
>> >> This draft is about hICN and discusses various deployment options with
>> >> associated pros and cons, without supporting one specifically. Clearly,
>> >> depending on  application requirements, on network constraints, on
>> >> phase of
>> >> deployment/transition  etc. one option may be preferrable over another
>> >> one
>> >> (and different ones may coexist).
>> >>
>> >>
>> >> One of the described deployment options also discusses combination of
>> >> hICN
>> >> and SRv6, without opposing one approach to the other, rather exploiting
>> >> in
>> >> the combination the advantages of both ones.
>> >>
>> >>
>> >> Giovanna
>> >>
>> >> ________________________________
>> >> From: Int-area <int-area-bounces@ietf.org> on behalf of Behcet Sarikaya
>> >> <sarikaya2012@gmail.com>
>> >> Sent: Wednesday, June 20, 2018 4:18 PM
>> >> To: Luca Muscariello
>> >> Cc: Internet Area; Luca Muscariello (lumuscar); Tom Herbert; dmm
>> >> Subject: Re: [Int-area] [DMM] New draft posted: Anchorless mobility
>> >> management through hICN (hICN-AMM): Deployment options
>> >>
>> >>
>> >>
>> >> On Tue, Jun 19, 2018 at 6:21 PM, Luca Muscariello
>> >> <luca.muscariello@gmail.com> wrote:
>> >>>
>> >>> I wonder whether this conversation should happen in the intarea wg
>> >>> mailing list
>> >>> as the main draft was posted there in the first place. I don't know if
>> >>> cross posting is welcome
>> >>> but I take the risk.
>> >>>
>> >>> Going back to the question, the transport changes are related to the
>> >>> request/reply semantic
>> >>> of the architecture. The two distinct forwarding paths described in
>> >>> the
>> >>> draft take care
>> >>> of forwarding requests or replies.This ends up in the transport layer
>> >>> as
>> >>> a unidirectional
>> >>> channel to recv data or snd data. The replies carry data originating
>> >>> from
>> >>> a  transport end-point (snd buffer)
>> >>> that binds to an identifier which is location independent, an IPv6
>> >>> number
>> >>> which is not a locator.
>> >>>
>> >>> The forwarding path of the requests is very close to unmodified IPv6
>> >>> with
>> >>> the DST address carrying the identifier.
>> >>> If you check in the draft an hICN node does one additional lookup in a
>> >>> local cache though. But you can ignore that
>> >>> for now for sake of clarity. What is important is the address rewrite
>> >>> operation made on the SRC address
>> >>> of the request. A copy of the request is stored in the local cache and
>> >>> the locator of the output interface is written in the
>> >>> SRC address before transmission. This is used by an upstream hICN or
>> >>> the
>> >>> final end-point to know the locator that
>> >>> will be used to reply.
>> >>>
>> >>> Replies coming from the snd end-point are label swapped but not like
>> >>> MPLS.
>> >>> The label is the identifier itself that is stored in the SRC address
>> >>> of
>> >>> the reply,
>> >>> whereas the DST address is a locator. In this forwarding path a lookup
>> >>> is
>> >>> made in the local cache to
>> >>> find a request (one or many) and the associated locator (one or many)
>> >>> that matches the identifier.
>> >>> The DST addr field of the replies is rewritten with the locator(s)
>> >>> just
>> >>> obtained from the lookup.
>> >>> This is how the reply is forwarded to the end-points that issued
>> >>> requests
>> >>> for this identifier.
>> >>>
>> >>> For the replies there is no FIB lookup on the identifier (as it is in
>> >>> the
>> >>> SRC addr field).
>> >>> There can be a lookup in the FIB on the locator stored in the DST of
>> >>> the
>> >>> reply to
>> >>> reach back the previous hICN node or eventually the original
>> >>> end-point.
>> >>>
>> >>>
>> >>>
>> >>
>> >>
>> >> Hi,
>> >>
>> >> My humble question is: are you supporting SRv6 or hICN?
>> >>
>> >> Regards
>> >> Behcet
>> >>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> On Wed, Jun 20, 2018 at 12:30 AM Tom Herbert <tom@quantonium.net>
>> >>> wrote:
>> >>>>
>> >>>> On Tue, Jun 19, 2018 at 1:50 PM, Luca Muscariello
>> >>>> <luca.muscariello@gmail.com> wrote:
>> >>>> > The paragraph you reported is from the draft that describes hICN to
>> >>>> > enable
>> >>>> > several use cases.
>> >>>> > Mobility is one of those, not the only one.
>> >>>> > To clarify, the draft on hICN mobility deployment options focuses
>> >>>> > on
>> >>>> > the 5G
>> >>>> > service based architecture.
>> >>>> >
>> >>>> > You may be asking
>> >>>> > 1) is it possible to get all the features provided by hICN w/o
>> >>>> > updates
>> >>>> > to
>> >>>> > the transport layer?
>> >>>> > 2) is changing the transport protocol unnecessary difficult to
>> >>>> > enable
>> >>>> > all
>> >>>> > the use cases mentioned in the draft?
>> >>>> >
>> >>>> Sorry, but I'm still missing something fundamental here. AFAICT, the
>> >>>> idea of hICN is to put routes in the local routing table and use
>> >>>> existing forwarding and routing to forward packets to mobile nodes.
>> >>>> So
>> >>>> if a node changes location, then the routing tables need to be
>> >>>> updated. Effectively this is a bunch of host routes that need to be
>> >>>> maintained. At least this is what I gather from the draft:
>> >>>>
>> >>>> "hICN network layer is about using the IPv6 FIB to determine a next
>> >>>> hop router to forward requests or using a local packet cache to
>> >>>> determine if an incoming request can be satisfied locally."
>> >>>>
>> >>>> Is this correct? If it is, then I sort of understand how hICN could
>> >>>> be
>> >>>> used for mobility or virtualization without network overlays, but
>> >>>> then
>> >>>> I'm completely lost as to why this would require any changes in the
>> >>>> transport layer.
>> >>>>
>> >>>> Tom
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> > IMO, the answers are no for both.
>> >>>> >
>> >>>> > Luca
>> >>>> >
>> >>>> > On Tue, Jun 19, 2018 at 9:26 PM Tom Herbert <tom@quantonium.net>
>> >>>> > wrote:
>> >>>> >>
>> >>>> >> On Tue, Jun 19, 2018 at 2:46 AM, Luca Muscariello
>> >>>> >> <luca.muscariello@gmail.com> wrote:
>> >>>> >> > Hi all,
>> >>>> >> >
>> >>>> >> > the draft below has been posted and describes deployments
>> >>>> >> > options
>> >>>> >> > for
>> >>>> >> > anchorless mobility management  by using
>> >>>> >> > the hicn network architecture that implements icn semantics in
>> >>>> >> > IPv6
>> >>>> >> > networks.
>> >>>> >> >
>> >>>> >> >
>> >>>> >> >
>> >>>> >> >
>> >>>> >> > https://datatracker.ietf.org/doc/draft-auge-dmm-hicn-mobility-deployment-options
>> >>>> >> >
>> >>>> >> > https://datatracker.ietf.org/doc/draft-muscariello-intarea-hicn/
>> >>>> >> >
>> >>>> >> > A background document has been posted to the internet area WG
>> >>>> >> > and
>> >>>> >> > reported
>> >>>> >> > here for your convenience.
>> >>>> >> > The core principle behind hicn and mobility management is that
>> >>>> >> > data
>> >>>> >> > sources
>> >>>> >> > are named using location independent names
>> >>>> >> > encoded in IPv6 addresses. The transport service sitting on top
>> >>>> >> > of
>> >>>> >> > the
>> >>>> >> > hicn
>> >>>> >> > architecture is not based on usual TCP/UDP sockets
>> >>>> >> > but on a novel consumer/producer transport service that will be
>> >>>> >> > described in
>> >>>> >> > another draft.
>> >>>> >>
>> >>>> >> From the draft: "The transport end-point offers two kinds of
>> >>>> >> services
>> >>>> >> to applications: a producer and a consumer service. The service is
>> >>>> >> instantiated in the application by opening communication sockets
>> >>>> >> with
>> >>>> >> an API to perform basic transport service operations: allocation,
>> >>>> >> initialization, configuration, data transmission and reception."
>> >>>> >>
>> >>>> >> This seems like a pretty dramatic rethink of the transport layer
>> >>>> >> just
>> >>>> >> for the purposes of mobility management. Will there be a way to
>> >>>> >> use
>> >>>> >> hICN at the network layer with exsiting and unmodified transport
>> >>>> >> protocols (i.e. can this be done without boiling the ocean)?
>> >>>> >>
>> >>>> >> Thanks,
>> >>>> >> Tom
>> >>>> >>
>> >>>> >>
>> >>>> >>
>> >>>> >> > The current document and a companion document that will be
>> >>>> >> > posted
>> >>>> >> > soon
>> >>>> >> > describe the different deployment options
>> >>>> >> > with special care to the 5G service based architecture.
>> >>>> >> > Thanks for the comments already received that helped completing
>> >>>> >> > this -00
>> >>>> >> > draft.
>> >>>> >> >
>> >>>> >> > Luca
>> >>>> >> >
>> >>>> >> >
>> >>>> >> >
>> >>>> >> >
>> >>>> >> >
>> >>>> >> >
>> >>>> >> > _______________________________________________
>> >>>> >> > dmm mailing list
>> >>>> >> > dmm@ietf.org
>> >>>> >> > https://www.ietf.org/mailman/listinfo/dmm
>> >>>> >> >
>> >>>
>> >>>
>> >>> _______________________________________________
>> >>> dmm mailing list
>> >>> dmm@ietf.org
>> >>> https://www.ietf.org/mailman/listinfo/dmm
>> >>>
>> >>
>> >