Re: [lisp] Some basic questions ...

Dino Farinacci <farinacci@gmail.com> Mon, 17 February 2014 18:14 UTC

Return-Path: <farinacci@gmail.com>
X-Original-To: lisp@ietfa.amsl.com
Delivered-To: lisp@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1BD0D1A0150 for <lisp@ietfa.amsl.com>; Mon, 17 Feb 2014 10:14:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham
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 zS1v6Ay0Wfdy for <lisp@ietfa.amsl.com>; Mon, 17 Feb 2014 10:14:03 -0800 (PST)
Received: from mail-pd0-f180.google.com (mail-pd0-f180.google.com [209.85.192.180]) by ietfa.amsl.com (Postfix) with ESMTP id 75D341A0523 for <lisp@ietf.org>; Mon, 17 Feb 2014 10:14:03 -0800 (PST)
Received: by mail-pd0-f180.google.com with SMTP id x10so15086075pdj.25 for <lisp@ietf.org>; Mon, 17 Feb 2014 10:13:26 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=W4z7hdLXCL/1uOKb4lA66W8sCOJaTZEmp1LdTWkFluY=; b=FSmoox5AzWgIHrppprFkm6MunDBqKALo8qeCSFoUbnsUDWwmA8YmovpFe+flY20ahW fz3O2FxMgc1J5pKRBPwpQNPN0RGcVgTqo7X7NJtarLnF6Cmd2v5jPIMSTy7okUIqBpGY KB+0cEdzfCPwACspAcJ+NkFP5lg+kbrCKVR/p8CbzjbnPSBX/fQ/ZTB268fkC0iy43vG 5C7/A44HJBcOmHELQEIEOrpN7FGIWdd21m7ege8tfCqOvqrTyBjuwWp3MTySx0CsnEMR AMDtmWy4Zb8W0MWJA00u1wpRU2LcLh5pXMDc75iTGKlZdmT7cj38jdL8RNJAcx4/u9uV 9TmQ==
X-Received: by 10.66.197.164 with SMTP id iv4mr28064231pac.18.1392660805994; Mon, 17 Feb 2014 10:13:25 -0800 (PST)
Received: from [10.0.1.3] (173-8-188-29-SFBA.hfc.comcastbusiness.net. [173.8.188.29]) by mx.google.com with ESMTPSA id db3sm47935381pbb.10.2014.02.17.10.13.24 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 17 Feb 2014 10:13:25 -0800 (PST)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\))
From: Dino Farinacci <farinacci@gmail.com>
In-Reply-To: <20140217013051556658.9cfb700c@sniff.de>
Date: Mon, 17 Feb 2014 10:13:16 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <85246DF3-B45A-474A-BB5F-B0C9D3EE88DA@gmail.com>
References: <20140217013051556658.9cfb700c@sniff.de>
To: Marc Binderberger <marc@sniff.de>
X-Mailer: Apple Mail (2.1827)
Archived-At: http://mailarchive.ietf.org/arch/msg/lisp/OQ8QhwiPXfv7g3tAztfzqa_BRsE
Cc: LISP mailing list list <lisp@ietf.org>
Subject: Re: [lisp] Some basic questions ...
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lisp>, <mailto:lisp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/lisp/>
List-Post: <mailto:lisp@ietf.org>
List-Help: <mailto:lisp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lisp>, <mailto:lisp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Feb 2014 18:14:06 -0000

> Hello LISP experts,
> 
> have two questions, mainly to understand the context a bit better.

No prob Marc. Thanks for the email. I'll attempt to answer them but others can chime in as well.

> Q1: map-notify message.
> 
> maybe it's the name but I always expected this message is for the Map 
> Server to inform ETRs. Kind of a "push" method. But reading RFCs 6830 

That is exactly what it is. It is used as a event notification from the Map-Server to the ETRs that register for a particular EID-prefix. So when a locator-set changes, the old locators can be notified. The main reason to call it a "Map-Notify" was for this purpose. And you can now understand why by looking at the data-center use-case documents that have been published by Yves and Victor.

> and 6833 again it seems that the Map-Notify is simply an ACK for a 
> received and processed Map-Register message. Take the Map-Register 
> message, set the type to Map-Notify and send back.

So when a registerer requests Map-Notifies, it will get them for various reasons. The first is the case I said above and the other case is to acknowledge a Map-Register.

> Now, the use as ACK is not a contradiction to the broader use as a push 
> message. So my question to the LISP experts and inventors is: is 
> Map-Notify restricted to be just an ACK? (having an extra type for it 
> seems generous)

It is not restricted to just an ack. There is also another use case. Here it is:

(1) You have two xTRs, each sitting behind different NAT devices.
(2) The xTRs get private addresses assigned to their interfaces. So they are using them as "local RLOCs". But no one will be able to encapsulate to them so they need to find out their global RLOC addresses.
(3) Each of the two xTRs are at the same LISP site and can receive encapsulated packets for the same EID-prefix.
(4) When they each discover their global RLOCs (by mechanisms descrbied in draft-ermagen-lisp-nat-traversal), they each register their own global RLOC. They register with the "merge-request" bit set so the Map-Server will add both xTR global RLOCs to the locator-set.
(5) So now, if an xTR gets a Map-Request, it will want to send a Map-Reply with the merged-locator set. Well how will it do that when it only knows its own?
(6) A Map-Notify is used here by the Map-Server to tell each xTR about the other's global RLOC.

> Q2: Locator-Status-Bits (LSBs).
> 
> RFC 6830 says in section 6.3:
> 
>   When an ETR decapsulates a packet, it will check for any change in
>   the 'Locator-Status-Bits' field.
> 
> I interpret this that if an ITR sets the Locator-Status-Bits then it 
> would do so permanently. In other words the LSBs are not set used in an 
> "alert style" (means: only set when an RLOC change happened) ?

If an ITR detects that other xTRs at its site have gone down, it will clear the LSBs for that xTR. The LSBs are used as a hint to tell remote xTRs that something went wrong from the perspective of a local xTR at the site.

If you have, say, 3 xTRs at a site and you want to take one out of service for maintenance or whatever, the other 2 could clear the LSB bit for that xTR to gracefully migrate remote encapsulation traffic to this site to only the 2 xTRs.

> Wondering what requirements this imposes on the data plane. It may not 
> be possible for the "hardware" (NP, ASIC, FPGA) to check the incoming 
> LSBs. So if LSBs are sent permanently this would likely require to punt 
> every Nth packet to the control plane?

This is not different than a cost to do a source lookup for a IP multicast packet. Yes, you would have to do a source-EID lookup on the received packet at the ETR and update the LSBs for the map-cache entry.

> Q3: the lexicographic order of RLOCs.
> 
> Maybe stupid question but the lexicographic order is computed over what 
> byte sequence exactly?  Loc-AFI + Locator? (both in network order, 
> Loc-AFI first)

The value of the locator address itself. So for instance an RLOC set below is sorted in lexiographic order:

10.0.0.1
10.0.0.2
128.0.0.1
128.128.0.1
128.192.0.1
2001:1000::1
2002:1000::1
2002:1111::1

Dino

> 
> 
> 
> Thanks & Regards,
> Marc
> 
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp