Re: [Ila] [lisp] LISP for ILA

Tom Herbert <tom@quantonium.net> Wed, 14 March 2018 06:06 UTC

Return-Path: <tom@quantonium.net>
X-Original-To: ila@ietfa.amsl.com
Delivered-To: ila@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 80EC812708C for <ila@ietfa.amsl.com>; Tue, 13 Mar 2018 23:06:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001] 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 Cvoc4asrGejE for <ila@ietfa.amsl.com>; Tue, 13 Mar 2018 23:06:09 -0700 (PDT)
Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) (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 71F0E126CBF for <ila@ietf.org>; Tue, 13 Mar 2018 23:06:09 -0700 (PDT)
Received: by mail-wm0-x241.google.com with SMTP id x7so1669461wmc.0 for <ila@ietf.org>; Tue, 13 Mar 2018 23:06:09 -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:content-transfer-encoding; bh=u1EF3yC1PqggFhMyQwgs6mpH1irBh2KwQztKeOmB0YQ=; b=yEHvhMd+gsOQhZ1HU8jXUAHHHjVgWRpaBYDvDGN+w/MtexeM4uIibVEmD11upZa/Y6 C6//VQh2osxGs1dFzNCUksuGEGDidECBhsVYKWJP5JIL/84kJnX+qMo/vRF72Ji4te/L 0gnb/whUS6y4wMrLXCUqIyPMX00mN2LeleQnTiHkAS8AlRhFbxvH5NzahDV7HdkTW96x p3OIVfLNlNkLyoFoVSIJ2chW//iTgXCBs9Dm4oWXl+h2s+VVWpOyGyy73NAo49NO/s5g lRsFFY9zkXfx9IosgSflJMw1RhJurIm0g6GycCJVG+gcAzcYJMD4Nju4j//9ug7Tx8DL Lfzg==
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:content-transfer-encoding; bh=u1EF3yC1PqggFhMyQwgs6mpH1irBh2KwQztKeOmB0YQ=; b=ecJ4Xxdd7QTyrX7xnfrU2kNWJwM/6f7rIkEcPGYKfwTMm+Oma1tVtvuM7aE45Bj0+t w/lM8jtTnzugHr/SZ9AqNEat9XDpsBBaq1+ojY2RUOMWyg9jXnwHktNe8XRp3voEk3EX jQ/kR/M38iLNO93RaTdfaDM0slzaEE51THHxjOc1p5h3yrDMyct+EcZo3GlypQglmLh4 eZNs2gHWkxHiagxGMS3YCH0HOXlJpSM8+S04HMhtMoM8ElxPZYJifaEwJN3KxXo6Nejy 6mLFutGN51xbX53nUX/5GJ5YMuo/XImRVo0Qt8nCcB+mYNyBt2yAQ51+QbzTxOFu5DWg cyMA==
X-Gm-Message-State: AElRT7Ff5wsMCndaam3wv191KYcm9hBl2JXtdqxpEIdCEbizR3n71XdF wi5B2nbGmCv5ohKY5h2tLXu9Gg0Dkqunu8/YQZQf5w==
X-Google-Smtp-Source: AG47ELs9ML5czhR0zk1fe2w85U4bY/s3/1pWxn4R/9Uu5yjM2IHjE5NDa7CGq/MnRRcUBQUJ3LViTP1JSvKMgd1VyZw=
X-Received: by 10.28.51.67 with SMTP id z64mr510626wmz.59.1521007567866; Tue, 13 Mar 2018 23:06:07 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.135.74 with HTTP; Tue, 13 Mar 2018 23:06:07 -0700 (PDT)
In-Reply-To: <etPan.5aa8b735.78abe9cc.989@RENWEIs-iPad>
References: <F1093230-C087-4168-9C5F-8DA7AB677677@cisco.com> <CAPDqMer58nxEixtH=JuZh9WgM0xKkEQYEjwZ6zg3wTjD76gOHQ@mail.gmail.com> <F920CAE2-9042-41DF-B013-E8FE6F891596@cisco.com> <CAPDqMeriMzM82-R-JOgx4zuqJTk2YOoBaWV_58no2V8yPas9QA@mail.gmail.com> <CF1C238D-FBE9-48BC-A7A6-49E45249E5E2@cisco.com> <CAPDqMeqL1kE+N9APFOSR4fUaek0TjZuDZMZDzDmJfMvyLO38GA@mail.gmail.com> <DA74C61A-647A-44BA-8FE7-916CF8895C49@gmail.com> <CAPDqMepL9-ms8P-zEX2FDe6zWCDkEZrHU4u90Kc7sEQDqi0=bg@mail.gmail.com> <etPan.5aa8b735.78abe9cc.989@RENWEIs-iPad>
From: Tom Herbert <tom@quantonium.net>
Date: Tue, 13 Mar 2018 23:06:07 -0700
Message-ID: <CAPDqMeojL=E0g_HWrzTw3Gcc4yvg3igJ-Fs6w5QQfCPrR5y4Vg@mail.gmail.com>
To: Richard Li <renwei.li@huawei.com>
Cc: "fcoras.lists@gmail.com" <fcoras.lists@gmail.com>, "ila@ietf.org" <ila@ietf.org>, "lisp@ietf.org" <lisp@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ila/4VhUei79HwkARpm6V3U37nTZnQc>
Subject: Re: [Ila] [lisp] LISP for ILA
X-BeenThere: ila@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Identifier Locator Addressing <ila.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ila>, <mailto:ila-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ila/>
List-Post: <mailto:ila@ietf.org>
List-Help: <mailto:ila-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ila>, <mailto:ila-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 14 Mar 2018 06:06:12 -0000

On Tue, Mar 13, 2018 at 10:46 PM, Richard Li <renwei.li@huawei.com> wrote:
> 》 enlightening or convincing. I am really hoping we can get something
> 》more concrete for dealing with DOS threats in a control plane for ILA.
>
> Isn’t DOS a data plane problem?
>
Richard,

The potential attack is on the mapping cache that needs to be
maintained by the control plane. It's really the cache that is being
attacked via that packets sent by an attacker. The goal of the
attacker is something like exhausting the cache or other resources
such that legitimate traffic is blocked or severely degraded. The
recent Meltdown and Spectre exploits on CPU caches are a good reminder
of how generally how hard it is to make caches resilient to attack and
how the problem is never completely solved!

Tom

> Richard
>
> From: Tom Herbert
> To: Florin Coras;
> Cc: ila@ietf.org; lisp@ietf.org;
> Subject: Re: [lisp] [Ila] LISP for ILA
> Time: 2018-03-13 22:25:44
>
>
> On Tue, Mar 13, 2018 at 6:37 PM, Florin Coras <fcoras.lists@gmail.com>
> wrote:
>> Not sure about ILA-R but typically when deploying LISP, RTR/Proxy-ITRs
>> have
>> enough memory to store most, if not all, of the identity to location
>> mappings. Therefore, once in steady state, most of the requests to the
>> mapping system are triggered by edge devices ITR/ILA-N.
>>
> ILA-Rs contain the all the mappings for the shard the service. If they
> don't have a mapping for a packet, then the packet is dropped.
>
>> This then means that just rate limiting ITRs should be enough to avoid
>> DOS-ing the control plane and the problem converts into one of trying to
>> avoid providing sub-optimal paths to legitimate traffic due to attacker
>> pressure. As Alberto mentioned, there are a number of solutions to
>> determining both the attackers and the destinations set that should be
>> protected against cache evictions. The former can be used to determine the
>> set of requests that should not be punted, while the latter ensures that
>> mappings for popular destinations cannot be evicted by attacks.
>>
> Okay, but I still don't know where the details and analysis of these
> solutions are. It's not enough to simply say that rate limiting is the
> solution to the DOS threat. I looked at RFC7835, for instance, which
> gives a nice analysis of the threat, but the suggested mitigations are
> "careful deployment and configuration" and "Systematically applying
> filters and rate limitation"-- that guidance is not particularly
> enlightening or convincing. I am really hoping we can get something
> more concrete for dealing with DOS threats in a control plane for ILA.
>
> Thanks,
> Tom
>
>> Florin
>>
>> On Mar 13, 2018, at 4:27 PM, Tom Herbert <tom@quantonium.net> wrote:
>>
>> On Tue, Mar 13, 2018 at 3:50 PM, Alberto Rodriguez Natal (natal)
>> <natal@cisco.com> wrote:
>>
>>
>>
>> On 3/13/18, 1:05 PM, "Tom Herbert" <tom@quantonium.net> wrote:
>>
>>
>>    This is reflected below in: "While the mapping is being resolved via
>>    the Map-Request/  Map-Reply process, the ILA-N can send the data
>>    packets to the underlay using the SIR address."
>>
>>    I think it should be assumed in ILA that not queuing packets and not
>>    dropping packets because of resolution are requirements (too much
>>    latency hit).
>>
>> IMHO, these should not be hard requirements. Leveraging ILA-Rs for mapping
>> resolution has another set of tradeoffs to be considered. An operator
>> should
>> be able to decide which set of tradeoffs makes sense for his/her
>> particular
>> scenario.
>>
>>    This is a hard requirement because caches are explicitly not required
>>    for ILA to operate. They are *only* optimizations. If there is a cache
>>    hit then packets presumably get optimized path, on a cache miss they
>>    might take a subopitimal route-- but packets still flow without being
>>    blocked! This means that the worse case DOS attack on the cache might
>>    cause suboptimal routing; however, if resolution is required then the
>>    worse attack case becomes that packets don't flow and it's a much more
>>    effective attack.
>>
>> Performing the mapping resolution at the ILA-N doesn't mean that you can't
>> send the packets to the ILA-R to avoid the first-packet-drop. Those are
>> two
>> different things. Traditionally in LISP, a possible deployment model is to
>> have a couple of RTRs with all the mappings in the site, so xTRs can use
>> them as default path while they are resolving mappings. In this scenario,
>> all the mapping resolution is done at the xTRs while the RTRs are only
>> forwarding "first-packets". We have seen this model working really well
>> even
>> for large LISP deployments.
>>
>>    In ILAMP, a redirect method is defined. On a chache miss the packet is
>>    forwarded and no other action is taken. If an ILA-R does
>>    transformation it may send back a mapping redirect informing the ILA-N
>>    of a transformation. The redirects must be completely secure (one
>>    reason I'm partial to TCP) and are only sent to inform an ILA-N about
>>    a positive response. To a large extent this neutralizes the above
>>    random address DOS attack. There are other means of attack on the
>>    cache, but the exposure is narrowed I believe.
>>
>> That model is supported in LISP via the use of Map-Notifies. However,
>> moving
>> the mapping resolution to the ILA-R comes at a cost. It's putting more
>> load
>> (in terms of both data and control plane) into an architectural component
>> that it's not easy to scale out, since it requires (for instance)
>> reconfiguring the underlay topology.
>>
>>
>>    I'm not see how this creates more load (i.e. the need for map request
>>    packets are eliminated), but I really don't understand what
>>    "reconfiguring the underlay topology" means!
>>
>> Happy to try to clarify this. I'm talking about the load in the ILA-R.
>> With
>> a "redirect" model, the ILA-R has to (1) serve as the data-plane default
>> path and (2) provide control-plane mapping resolution. This is
>> centralizing
>> the data-plane and control-plane into a single component, the ILA-R.
>> Moreover, this will also require a lot of punts from the fast path to the
>> slow path in the ILA-R which has also implications. With a request/reply
>> model, the control-plane resolution is performed at the edges in a
>> distributed fashion and the ILA-R only serves as data-plane default path
>> to
>> avoid dropping traffic. The latter model alleviates the load in the
>> ILA-Rs,
>> which reduces the need to scale them out.
>>
>> Yes, but you are ignoring the load on the mapping servers which also
>> needs to scale. Additionally, if ILA-N is both forwarding a packet and
>> sending a map request then this potentially doubles the packet load on
>> the network and exacerbates the potential DOS attack where someone
>> floods an ILA-N with packets having bogus destinations. There might be
>> mitigations to this DOS attack, like heavy-hitters you mentioned, but
>> we really need the details to see exactly how this works and how
>> effective they are. On the surface of it, it looks like
>> request/response model is susceptible to DOS especially when third
>> parties are allowed to drive the process.
>>
>> Tom
>>
>> _______________________________________________
>> lisp mailing list
>> lisp@ietf.org
>> https://www.ietf.org/mailman/listinfo/lisp
>>
>>
>
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp