
From darlewis@cisco.com  Mon Aug  2 08:51:30 2010
Return-Path: <darlewis@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 705603A6BA8 for <lisp@core3.amsl.com>; Mon,  2 Aug 2010 08:51:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.577
X-Spam-Level: 
X-Spam-Status: No, score=-10.577 tagged_above=-999 required=5 tests=[AWL=0.022, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xPkcCbCncVwD for <lisp@core3.amsl.com>; Mon,  2 Aug 2010 08:51:29 -0700 (PDT)
Received: from sj-iport-5.cisco.com (sj-iport-5.cisco.com [171.68.10.87]) by core3.amsl.com (Postfix) with ESMTP id 6718C3A6BA5 for <lisp@ietf.org>; Mon,  2 Aug 2010 08:51:29 -0700 (PDT)
Authentication-Results: sj-iport-5.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-AV: E=Sophos;i="4.55,303,1278288000"; d="scan'208";a="234180494"
Received: from sj-core-5.cisco.com ([171.71.177.238]) by sj-iport-5.cisco.com with ESMTP; 02 Aug 2010 15:51:54 +0000
Received: from sjc-vpn2-1076.cisco.com (sjc-vpn2-1076.cisco.com [10.21.116.52]) by sj-core-5.cisco.com (8.13.8/8.14.3) with ESMTP id o72Fprkt007273; Mon, 2 Aug 2010 15:51:53 GMT
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Darrel Lewis <darlewis@cisco.com>
In-Reply-To: <C86C847E.5B85%terry.manderson@icann.org>
Date: Mon, 2 Aug 2010 08:52:01 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <09CF41E3-23B4-4004-8A1B-32F16CE12947@cisco.com>
References: <C86C847E.5B85%terry.manderson@icann.org>
To: Terry Manderson <terry.manderson@icann.org>
X-Mailer: Apple Mail (2.1081)
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] More work needed I think.
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 02 Aug 2010 15:51:30 -0000

Terry, All,

Just a heads up that we're sending out the draft with proposed text =
changes, and an individual email for the rest of the issues (as spelled =
out below) now to the list.

-Darrel

On Jul 20, 2010, at 6:03 PM, Terry Manderson wrote:

> Darrel,
>=20
> A quick email before I board a flight.
>=20
> Thank you to you, and other the draft authors, for reviewing and =
responding
> to the submitted issues.
>=20
> I'm sure it was a significant effort, and you most certainly have my
> gratitude!
>=20
> Cheers
> Terry
>=20
> On 21/07/10 6:58 AM, "Darrel Lewis" <darlewis@cisco.com> wrote:
>=20
>> Terry, All.
>>=20
>> My apologies for the lateness of this response.
>>=20
>> I'm going to start sending out responses to the issues raised by the =
thorough
>> reviews of Demitri, Yakov, and others.  The authors have carefully =
reviewed
>> each and every issue and are in the midst of preparing detailed =
responses.
>>=20
>> The first batch of responses will be for those issues which the =
authors either
>> request more feedback from the list members, request suggested text =
from the
>> reviewers, or disagree with the reviewers' comments.   For each =
email, I'll
>> reference the issue number, and copy the original comment and our =
response.
>> Other list members should feel free to reply to our response - in no =
way are
>> we attempting to close discussion on an issue based on this first =
response!
>>=20
>> The second batch of responses address issues that will result in text =
changes.
>> These responses will be coming along in the next day or two.  Some of =
this
>> second batch are  technical (so the text change is usually quite =
straight
>> forward) and some were editorial (and resulted in quite a bit of =
changes for
>> readability).  In addition to email responses, the change log at the =
end of
>> the draft (draft-ietf-lisp) will document these substantive changes.
>>=20
>> Thanks again for taking the time out to provide the detailed reviews, =
I'm
>> positive they will result in a much stronger draft.
>>=20
>> -Darrel (on behalf of the draft-ietf-lisp co-authors)
>>=20
>> On May 24, 2010, at 10:27 PM, Terry Manderson wrote:
>>=20
>>> WG Chair hat =3D on
>>>=20
>>> Hi Folks,
>>>=20
>>> I was just taking a look at the number of outstanding issues for the =
LISP WG
>>> documents. I count 97 in total. ( http://tools.ietf.org/wg/lisp/ )
>>>=20
>>> Maastricht is barely 9 weeks away. So nearly 11 items would have to =
be
>>> addressed per week for the next 9 weeks for us to go to Maastricht =
in a
>>> healthy position.
>>>=20
>>> It would be great if we could have some action, be that discussion =
or
>>> otherwise, on these!
>>>=20
>>> Cheers,
>>> Terry
>>>=20
>>>=20
>>> _______________________________________________
>>> lisp mailing list
>>> lisp@ietf.org
>>> https://www.ietf.org/mailman/listinfo/lisp
>>=20
>=20


From darlewis@cisco.com  Mon Aug  2 08:53:20 2010
Return-Path: <darlewis@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 968483A6B35 for <lisp@core3.amsl.com>; Mon,  2 Aug 2010 08:53:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.578
X-Spam-Level: 
X-Spam-Status: No, score=-10.578 tagged_above=-999 required=5 tests=[AWL=0.021, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gG7Eh5Dd74uq for <lisp@core3.amsl.com>; Mon,  2 Aug 2010 08:53:19 -0700 (PDT)
Received: from sj-iport-1.cisco.com (sj-iport-1.cisco.com [171.71.176.70]) by core3.amsl.com (Postfix) with ESMTP id 7758F3A6936 for <lisp@ietf.org>; Mon,  2 Aug 2010 08:53:19 -0700 (PDT)
Authentication-Results: sj-iport-1.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-AV: E=Sophos;i="4.55,303,1278288000"; d="scan'208";a="348463100"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-1.cisco.com with ESMTP; 02 Aug 2010 15:53:47 +0000
Received: from sjc-vpn2-1076.cisco.com (sjc-vpn2-1076.cisco.com [10.21.116.52]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o72Frkls005404; Mon, 2 Aug 2010 15:53:46 GMT
From: Darrel Lewis <darlewis@cisco.com>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Date: Mon, 2 Aug 2010 08:53:54 -0700
Message-Id: <D82D9999-BEA5-4BFD-93A0-AF2F7FE83B01@cisco.com>
To: lisp@ietf.org
Mime-Version: 1.0 (Apple Message framework v1081)
X-Mailer: Apple Mail (2.1081)
Subject: [lisp] Issue Title (number):  Data Probe Decap (40)
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 02 Aug 2010 15:53:20 -0000

Issue Title (number):  Data Probe Decap (40)
Draft Section: 4.1 pt 4
Issue Description: Decap Fwding

Comments:


Section 4.1 point 4 states =93The LISP header is stripped so that the
packet can be forwarded by the router control plane.=94 =85 forwarding
traffic by routing control engines result in major drawbacks such as
attacks, intrusions, etc. if the value encoded in the destination EID
is one of the routers addresses.=20


Response:


Dear Yakov-

Thank you for your contribution to draft-ietf-lisp-06.txt. The draft =
authors
have changed the specification accordingly.  We removed the data-probe=20=

example from section 4.1.  Since they are deprecated we are not =
encouraging
them via example.  However, the point that you raise is a valid issue=20
with data-probes.  We believe these text changes have resolved  this=20
issue, but if you feel that further changes are warranted please=20
bring this issue to the LISP working group mailing list,=20
lisp@ietf.org, for further discussion.=20

	Thanks!
	Darrel, for the LISP document authors


From dino@cisco.com  Mon Aug  2 08:54:56 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9A5E33A6B35 for <lisp@core3.amsl.com>; Mon,  2 Aug 2010 08:54:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0
X-Spam-Level: 
X-Spam-Status: No, score=x tagged_above=-999 required=5 tests=[]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tui4H4g1Y30n for <lisp@core3.amsl.com>; Mon,  2 Aug 2010 08:54:56 -0700 (PDT)
Received: from sj-iport-2.cisco.com (sj-iport-2.cisco.com [171.71.176.71]) by core3.amsl.com (Postfix) with ESMTP id C907F3A698B for <lisp@ietf.org>; Mon,  2 Aug 2010 08:54:55 -0700 (PDT)
Authentication-Results: sj-iport-2.cisco.com; dkim=neutral (message not signed) header.i=none
X-Files: rfcdiff-ietf-lisp-07-to-08.html, draft-ietf-lisp-08.txt : 203232, 183212
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-2.cisco.com with ESMTP; 02 Aug 2010 15:55:23 +0000
Received: from [192.168.1.6] (sjc-vpn7-1017.cisco.com [10.21.147.249]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o72FtLcn007225 for <lisp@ietf.org>; Mon, 2 Aug 2010 15:55:21 GMT
Message-Id: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: lisp@ietf.org
Content-Type: multipart/mixed; boundary=Apple-Mail-24--337873069
Mime-Version: 1.0 (Apple Message framework v936)
Date: Mon, 2 Aug 2010 08:55:21 -0700
X-Mailer: Apple Mail (2.936)
Subject: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 02 Aug 2010 15:54:56 -0000

--Apple-Mail-24--337873069
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed;
	delsp=yes
Content-Transfer-Encoding: 7bit

Would like to thank everyone who has contributed to the commentary,  
discussion, and emails toward producing draft-ietf-lisp-08.txt. This  
was definitely a joint working group effort. Changes included in this  
version are:

B.1.  Changes to draft-ietf-lisp-08.txt

   o  Posted August 2010.

   o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
      Register messages.

   o  Clarify language in section 6.1.5 about Map-Replying to Data-
      Probes or Map-Requests.

   o  Indicate that outer TTL should only be copied to inner TTL when it
      is less than inner TTL.

   o  Indicate a source-EID for RLOC-probes are encoded with an AFI
      value of 0.

   o  Indicate that SMRs can have a global or per SMR destination rate-
      limiter.

   o  Add clarifications to the SMR procedures.

   o  Add definitions for "client-side" and 'server-side" terms used in
      this specification.

   o  Clear up language in section 6.4, last paragraph.

   o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
      probe a PETR and have it return a Map-Reply with a locator-set of
      size 0.  The way it is spec'ed the map-cache entry has action
      "dropped".  Drop-action is set to 3.

   o  Add statement about normalizing locator weights.

   o  Clarify R-bit definition in the Map-Reply locator record.

   o  Add section on EID Reachability within a LISP site.

   o  Clarify another disadvantage of using anycast locators.

   o  Reworded Abstract.

   o  Change section 2.0 Introduction to remove obsolete information
      such as the LISP variant definitions.

   o  Change section 5 title from "Tunneling Details" to "LISP
      Encapsulation Details".

   o  Changes to section 5 to include results of network deployment
      experience with MTU.  Recommend that implementations use either
      the stateful or stateless handling.

   o  Updated current events in the "Prototype Plans and Status"
      section.

You can find the html diff file enclosed as well as the text spec  
file. We would like to give a 10 day review period before posting  
changes. So comments are due by Thursday August 12th. At that time we  
will post draft-ietf-lisp-08.txt to the ID directory.

Darrel is about to send an email message for each tracker issue that  
is classified in the "we changed spec" category.

Thanks again,
Dino/Darrel/Vince/Dave


--Apple-Mail-24--337873069
Content-Disposition: attachment;
	filename=rfcdiff-ietf-lisp-07-to-08.html
Content-Type: text/html;
	x-unix-mode=0600;
	name="rfcdiff-ietf-lisp-07-to-08.html"
Content-Transfer-Encoding: 7bit


<!-- saved from url=(0029)http://tools.ietf.org/rfcdiff -->
<HTML><HEAD><META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><TITLE>wdiff draft-ietf-lisp-07.txt draft-ietf-lisp-08.txt</TITLE></HEAD><BODY>
<PRE>
Network Working Group                                       D. Farinacci
Internet-Draft                                                 V. Fuller
Intended status: Experimental                                   D. Meyer
Expires: <STRIKE><FONT color="red">October 27, 2010</FONT></STRIKE> <STRONG><FONT color="green">February 3, 2011</FONT></STRONG>                                       D. Lewis
                                                           cisco Systems
                                                          <STRIKE><FONT color="red">April 25,</FONT></STRIKE>
                                                          <STRONG><FONT color="green">August 2,</FONT></STRONG> 2010

                 Locator/ID Separation Protocol (LISP)
                           <STRIKE><FONT color="red">draft-ietf-lisp-07</FONT></STRIKE>
                           <STRONG><FONT color="green">draft-ietf-lisp-08</FONT></STRONG>

Abstract

   This draft describes a <STRIKE><FONT color="red">simple, incremental,</FONT></STRIKE> network-based protocol <STRIKE><FONT color="red">to
   implement</FONT></STRIKE> <STRONG><FONT color="green">that enables</FONT></STRONG> separation
   of <STRIKE><FONT color="red">Internet</FONT></STRIKE> <STRONG><FONT color="green">IP</FONT></STRONG> addresses into <STRONG><FONT color="green">two new numbering spaces:</FONT></STRONG> Endpoint Identifiers
   (EIDs) and Routing Locators (RLOCs).  <STRIKE><FONT color="red">This mechanism requires no</FONT></STRIKE>  <STRONG><FONT color="green">No</FONT></STRONG> changes <STRONG><FONT color="green">are required</FONT></STRONG> to
   <STRONG><FONT color="green">either</FONT></STRONG> host <STRONG><FONT color="green">protocol</FONT></STRONG> stacks <STRIKE><FONT color="red">and no major changes</FONT></STRIKE> <STRONG><FONT color="green">or</FONT></STRONG> to <STRIKE><FONT color="red">existing database
   infrastructures.  The proposed protocol</FONT></STRIKE> <STRONG><FONT color="green">the "core" of the Internet
   infrastructure.  LISP</FONT></STRONG> can be <STRIKE><FONT color="red">implemented in</FONT></STRIKE> <STRONG><FONT color="green">incrementally deployed, without</FONT></STRONG> a <STRONG><FONT color="green">"flag
   day", and offers traffic engineering, multi-homing, and mobility
   benefits even to early adopters, when there are</FONT></STRONG> relatively <STRIKE><FONT color="red">small number</FONT></STRIKE> <STRONG><FONT color="green">few LISP-
   capable sites.

   Design and development</FONT></STRONG> of <STRIKE><FONT color="red">routers.

   This proposal</FONT></STRIKE> <STRONG><FONT color="green">LISP</FONT></STRONG> was <STRIKE><FONT color="red">stimulated</FONT></STRIKE> <STRONG><FONT color="green">largely motivated</FONT></STRONG> by the problem
   statement <STRIKE><FONT color="red">effort at</FONT></STRIKE> <STRONG><FONT color="green">produced by</FONT></STRONG> the
   <STRIKE><FONT color="red">Amsterdam</FONT></STRIKE> <STRONG><FONT color="green">October, 2006</FONT></STRONG> IAB Routing and Addressing <STRIKE><FONT color="red">Workshop (RAWS), which took
   place in October 2006.</FONT></STRIKE>
   <STRONG><FONT color="green">Workshop.</FONT></STRONG>

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on <STRIKE><FONT color="red">October 27, 2010.</FONT></STRIKE> <STRONG><FONT color="green">February 3, 2011.</FONT></STRONG>

Copyright Notice

   Copyright (c) 2010 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
   the Trust Legal Provisions and are provided without warranty as
   described in the BSD License.

Table of Contents

   1.  Requirements Notation  . . . . . . . . . . . . . . . . . . . .  4
   2.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
   3.  Definition of Terms  . . . . . . . . . . . . . . . . . . . . .  <STRIKE><FONT color="red">8</FONT></STRIKE>  <STRONG><FONT color="green">7</FONT></STRONG>
   4.  Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 12
     4.1.  Packet Flow Sequence . . . . . . . . . . . . . . . . . . . 14
   5.  <STRIKE><FONT color="red">Tunneling</FONT></STRIKE>  <STRONG><FONT color="green">LISP Encapsulation</FONT></STRONG> Details . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">. . . .</FONT></STRIKE> 16
     5.1.  LISP IPv4-in-IPv4 Header Format  . . . . . . . . . . . . . 17
     5.2.  LISP IPv6-in-IPv6 Header Format  . . . . . . . . . . . . . <STRIKE><FONT color="red">18</FONT></STRIKE> <STRONG><FONT color="green">17</FONT></STRONG>
     5.3.  Tunnel Header Field Descriptions . . . . . . . . . . . . . 19
     5.4.  Dealing with Large Encapsulated Packets  . . . . . . . . . 22
       5.4.1.  A Stateless Solution to MTU Handling . . . . . . . . . 22
       5.4.2.  A Stateful Solution to MTU Handling  . . . . . . . . . 23
     5.5.  Using Virtualization and Segmentation with LISP  . . . . . 24
   6.  EID-to-RLOC Mapping  . . . . . . . . . . . . . . . . . . . . . 25
     6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats  . . . . . 25
       6.1.1.  LISP Packet Type Allocations . . . . . . . . . . . . . 27
       6.1.2.  Map-Request Message Format . . . . . . . . . . . . . . 27
       6.1.3.  EID-to-RLOC UDP Map-Request Message  . . . . . . . . . 29
       6.1.4.  Map-Reply Message Format . . . . . . . . . . . . . . . 31
       6.1.5.  EID-to-RLOC UDP Map-Reply Message  . . . . . . . . . . 34
       6.1.6.  Map-Register Message Format  . . . . . . . . . . . . . 37
       6.1.7.  Encapsulated Control Message Format  . . . . . . . . . <STRIKE><FONT color="red">38</FONT></STRIKE> <STRONG><FONT color="green">39</FONT></STRONG>
     6.2.  Routing Locator Selection  . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">40</FONT></STRIKE> <STRONG><FONT color="green">41</FONT></STRONG>
     6.3.  Routing Locator Reachability . . . . . . . . . . . . . . . <STRIKE><FONT color="red">41</FONT></STRIKE> <STRONG><FONT color="green">42</FONT></STRONG>
       6.3.1.  Echo Nonce Algorithm . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">44</FONT></STRIKE> <STRONG><FONT color="green">45</FONT></STRONG>
       6.3.2.  RLOC Probing Algorithm . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">45</FONT></STRIKE> <STRONG><FONT color="green">46</FONT></STRONG>
     6.4.  <STRONG><FONT color="green">EID Reachability within a LISP Site  . . . . . . . . . . . 47
     6.5.</FONT></STRONG>  Routing Locator Hashing  . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">46
     6.5.</FONT></STRIKE> <STRONG><FONT color="green">47
     6.6.</FONT></STRONG>  Changing the Contents of EID-to-RLOC Mappings  . . . . . . <STRIKE><FONT color="red">47
       6.5.1.</FONT></STRIKE> <STRONG><FONT color="green">48
       6.6.1.</FONT></STRONG>  Clock Sweep  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">47
       6.5.2.</FONT></STRIKE> <STRONG><FONT color="green">49
       6.6.2.</FONT></STRONG>  Solicit-Map-Request (SMR)  . . . . . . . . . . . . . . <STRIKE><FONT color="red">48
       6.5.3.</FONT></STRIKE> <STRONG><FONT color="green">49
       6.6.3.</FONT></STRONG>  Database Map Versioning  . . . . . . . . . . . . . . . <STRIKE><FONT color="red">49</FONT></STRIKE> <STRONG><FONT color="green">51</FONT></STRONG>
   7.  Router Performance Considerations  . . . . . . . . . . . . . . <STRIKE><FONT color="red">51</FONT></STRIKE> <STRONG><FONT color="green">52</FONT></STRONG>
   8.  Deployment Scenarios . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">52</FONT></STRIKE> <STRONG><FONT color="green">53</FONT></STRONG>
     8.1.  First-hop/Last-hop Tunnel Routers  . . . . . . . . . . . . <STRIKE><FONT color="red">53</FONT></STRIKE> <STRONG><FONT color="green">54</FONT></STRONG>
     8.2.  Border/Edge Tunnel Routers . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">53</FONT></STRIKE> <STRONG><FONT color="green">54</FONT></STRONG>
     8.3.  ISP Provider-Edge (PE) Tunnel Routers  . . . . . . . . . . <STRIKE><FONT color="red">54</FONT></STRIKE> <STRONG><FONT color="green">55</FONT></STRONG>
     8.4.  LISP Functionality with Conventional NATs  . . . . . . . . <STRIKE><FONT color="red">54</FONT></STRIKE> <STRONG><FONT color="green">55</FONT></STRONG>
   9.  Traceroute Considerations  . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">55</FONT></STRIKE> <STRONG><FONT color="green">56</FONT></STRONG>
     9.1.  IPv6 Traceroute  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
     9.2.  IPv4 Traceroute  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
     9.3.  Traceroute using Mixed Locators  . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
   10. Mobility Considerations  . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.1. Site Mobility  . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.2. Slow Endpoint Mobility . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.3. Fast Endpoint Mobility . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.4. Fast Network Mobility  . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">60</FONT></STRIKE> <STRONG><FONT color="green">61</FONT></STRONG>
     10.5. LISP Mobile Node Mobility  . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">60</FONT></STRIKE> <STRONG><FONT color="green">61</FONT></STRONG>
   11. Multicast Considerations . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">62</FONT></STRIKE> <STRONG><FONT color="green">63</FONT></STRONG>
   12. Security Considerations  . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">63</FONT></STRIKE> <STRONG><FONT color="green">64</FONT></STRONG>
   13. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">64</FONT></STRIKE> <STRONG><FONT color="green">65</FONT></STRONG>
   14. Prototype Plans and Status . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">65</FONT></STRIKE> <STRONG><FONT color="green">66</FONT></STRONG>
   15. References . . . . . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">68</FONT></STRIKE> <STRONG><FONT color="green">69</FONT></STRONG>
     15.1. Normative References . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">68</FONT></STRIKE> <STRONG><FONT color="green">69</FONT></STRONG>
     15.2. Informative References . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">69</FONT></STRIKE> <STRONG><FONT color="green">70</FONT></STRONG>
   Appendix A.  Acknowledgments . . . . . . . . . . . . . . . . . . . 73
   Appendix B.  Document Change Log . . . . . . . . . . . . . . . . . 74
     B.1.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-07.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-08.txt</FONT></STRONG>  . . . . . . . . . . . . 74
     B.2.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-06.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-07.txt</FONT></STRONG>  . . . . . . . . . . . . 75
     B.3.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-05.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-06.txt</FONT></STRONG>  . . . . . . . . . . . . 76
     B.4.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-04.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-05.txt</FONT></STRONG>  . . . . . . . . . . . . 77
     B.5.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-03.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-04.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">78</FONT></STRONG>
     B.6.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-02.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-03.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">80</FONT></STRONG>
     B.7.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-01.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-02.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">80</FONT></STRONG>
     B.8.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-00.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-01.txt</FONT></STRONG>  . . . . . . . . . . . . 80
     <STRONG><FONT color="green">B.9.  Changes to draft-ietf-lisp-00.txt  . . . . . . . . . . . . 81</FONT></STRONG>
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">81</FONT></STRIKE> <STRONG><FONT color="green">82</FONT></STRONG>

1.  Requirements Notation

   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 [RFC2119].

2.  Introduction

   <STRIKE><FONT color="red">Many years of discussion about</FONT></STRIKE>

   <STRONG><FONT color="green">This document describes</FONT></STRONG> the <STRIKE><FONT color="red">current IP routing and addressing
   architecture have noted that its use of</FONT></STRIKE> <STRONG><FONT color="green">Locator/Identifier Separation Protocol
   (LISP), which provides</FONT></STRONG> a <STRIKE><FONT color="red">single numbering space (the
   "IP address") for both host transport session identification and
   network routing creates scaling issues (see [CHIAPPA] and [RFC1498]).
   A number</FONT></STRIKE> <STRONG><FONT color="green">set</FONT></STRONG> of <STRIKE><FONT color="red">scaling benefits would be realized by separating the
   current IP address into separate spaces</FONT></STRIKE> <STRONG><FONT color="green">functions</FONT></STRONG> for <STRONG><FONT color="green">routers to exchange
   information used to map from non-routeable</FONT></STRONG> Endpoint Identifiers
   (EIDs) <STRIKE><FONT color="red">and</FONT></STRIKE> <STRONG><FONT color="green">to routeable</FONT></STRONG> Routing Locators <STRIKE><FONT color="red">(RLOCs); among them are:

   1.  Reduction of routing table size in the "default-free zone" (DFZ).
       Use of</FONT></STRIKE> <STRONG><FONT color="green">(RLOCs).  It also defines</FONT></STRONG> a <STRIKE><FONT color="red">separate numbering space</FONT></STRIKE>
   <STRONG><FONT color="green">mechanism</FONT></STRONG> for <STRIKE><FONT color="red">RLOCs will allow them</FONT></STRIKE> <STRONG><FONT color="green">these LISP routers</FONT></STRONG> to <STRIKE><FONT color="red">be
       assigned topologically (in today's Internet, RLOCs would be
       assigned by providers at client network attachment points),
       greatly improving aggregation and reducing the number of
       globally-visible, routable prefixes.

   2.  More cost-effective multihoming</FONT></STRIKE> <STRONG><FONT color="green">encapsulate IP packets addressed
   with EIDs</FONT></STRONG> for <STRIKE><FONT color="red">sites</FONT></STRIKE> <STRONG><FONT color="green">transmission across an Internet</FONT></STRONG> that <STRIKE><FONT color="red">connect to
       different service providers where they can control their own
       policies</FONT></STRIKE> <STRONG><FONT color="green">uses RLOCs</FONT></STRONG> for <STRIKE><FONT color="red">packet flow into the site without using extra</FONT></STRIKE>
   routing <STRIKE><FONT color="red">table resources of core routers.

   3.  Easing of renumbering burden when clients change providers.
       Because host EIDs are numbered from a separate, non-provider-
       assigned and non-topologically-bound space, they do not need to
       be renumbered when a client site changes its attachment points to
       the network.

   4.  Traffic engineering capabilities that can be performed by network
       elements</FONT></STRIKE> and <STRIKE><FONT color="red">do not depend on injecting additional state into the
       routing system.  This will fall out</FONT></STRIKE> <STRONG><FONT color="green">forwarding.

   Creation</FONT></STRONG> of <STRONG><FONT color="green">LISP was initially motivated by discussions during</FONT></STRONG> the <STRIKE><FONT color="red">mechanism that is used
       to implement the EID/RLOC split (see Section 4).

   5.  Mobility without address changing.  Existing mobility mechanisms
       will be able to work</FONT></STRIKE>
   <STRONG><FONT color="green">IAB-sponsored Routing and Addressing Workshop (RAWS) held</FONT></STRONG> in <STRIKE><FONT color="red">a locator/ID separation scenario.  It
       will be possible for a host (or a collection of hosts) to move to
       a different point</FONT></STRIKE>
   <STRONG><FONT color="green">Amsterdam</FONT></STRONG> in <STRONG><FONT color="green">October, 2006 (see [RFC4984]).  A key conclusion of</FONT></STRONG> the <STRIKE><FONT color="red">network topology either retaining its
       home-based address or acquiring a new address based on</FONT></STRIKE>
   <STRONG><FONT color="green">workshop was that</FONT></STRONG> the <STRIKE><FONT color="red">new
       network location.  A new network location could be a physically
       different point</FONT></STRIKE> <STRONG><FONT color="green">Internet routing and addressing system was not
   scaling well</FONT></STRONG> in the <STRIKE><FONT color="red">network topology or the same physical
       point</FONT></STRIKE> <STRONG><FONT color="green">face</FONT></STRONG> of the <STRIKE><FONT color="red">topology with a different provider.

   This draft describes protocol mechanisms to achieve the desired
   functional separation.  For flexibility, the mechanism used</FONT></STRIKE> <STRONG><FONT color="green">explosive growth of new sites; one
   reason</FONT></STRONG> for
   <STRIKE><FONT color="red">forwarding packets</FONT></STRIKE> <STRONG><FONT color="green">this poor scaling</FONT></STRONG> is <STRIKE><FONT color="red">decoupled from that used to determine EID to
   RLOC mappings.  This document covers</FONT></STRIKE> the <STRIKE><FONT color="red">former.  For the latter, see
   [CONS], [ALT], [EMACS], [RPMD], and [NERD].  This work is in response
   to</FONT></STRIKE> <STRONG><FONT color="green">increasing number of multi-homed</FONT></STRONG>
   and <STRIKE><FONT color="red">intended to address the problem statement</FONT></STRIKE> <STRONG><FONT color="green">other sites</FONT></STRONG> that <STRIKE><FONT color="red">came out</FONT></STRIKE> <STRONG><FONT color="green">cannot be addressed as part</FONT></STRONG> of <STRONG><FONT color="green">topologically- or
   provider-based aggregated prefixes.  Additional work that more
   completely described</FONT></STRONG> the
   <STRIKE><FONT color="red">RAWS effort [RFC4984].

   The Routing and Addressing</FONT></STRIKE> problem statement <STRIKE><FONT color="red">can</FONT></STRIKE> <STRONG><FONT color="green">may</FONT></STRONG> be found in [RADIR].

   <STRIKE><FONT color="red">This draft focuses on a router-based solution.  Building the solution
   into the network will facilitate incremental deployment of the
   technology on the Internet.  Note</FONT></STRIKE>

   <STRONG><FONT color="green">A basic observation, made many years ago in early networking research
   such as</FONT></STRONG> that <STRIKE><FONT color="red">while the detailed protocol
   specification and examples</FONT></STRIKE> <STRONG><FONT color="green">documented</FONT></STRONG> in <STRIKE><FONT color="red">this document assume IP version 4
   (IPv4), there</FONT></STRIKE> <STRONG><FONT color="green">[CHIAPPA] and [RFC4984],</FONT></STRONG> is <STRIKE><FONT color="red">nothing in the design</FONT></STRIKE> that <STRIKE><FONT color="red">precludes use of the same
   techniques and mechanisms for IPv6.  It should be possible</FONT></STRIKE> <STRONG><FONT color="green">using a
   single address field</FONT></STRONG> for <STRIKE><FONT color="red">IPv4
   packets to use IPv6 RLOCs</FONT></STRIKE> <STRONG><FONT color="green">both identifying a device</FONT></STRONG> and for <STRIKE><FONT color="red">IPv6 EIDs</FONT></STRIKE>
   <STRONG><FONT color="green">determining where it is topologically located in the network requires
   optimization along two conflicting axes: for routing</FONT></STRONG> to be <STRIKE><FONT color="red">mapped</FONT></STRIKE> <STRONG><FONT color="green">efficient,
   the address must be assigned topologically; for collections of
   devices</FONT></STRONG> to <STRIKE><FONT color="red">IPv4
   RLOCs.

   Related work on host-based solutions is described in Shim6 [RFC5533]</FONT></STRIKE> <STRONG><FONT color="green">be easily</FONT></STRONG> and <STRIKE><FONT color="red">HIP [RFC4423].  Related work on a router-based solution is
   described</FONT></STRIKE> <STRONG><FONT color="green">effectively managed, without the need for
   renumbering</FONT></STRONG> in <STRIKE><FONT color="red">[GSE].  This draft attempts</FONT></STRIKE> <STRONG><FONT color="green">response</FONT></STRONG> to <STRIKE><FONT color="red">not compete</FONT></STRIKE> <STRONG><FONT color="green">topological change (such as that caused by
   adding</FONT></STRONG> or <STRIKE><FONT color="red">overlap
   with such solutions and the proposed protocol changes are expected</FONT></STRIKE> <STRONG><FONT color="green">removing attachment points</FONT></STRONG> to
   <STRIKE><FONT color="red">complement a host-based mechanism when Traffic Engineering
   functionality is desired.

   Some of</FONT></STRIKE> the <STRIKE><FONT color="red">design goals of this proposal include:

   1.  Require no hardware</FONT></STRIKE> <STRONG><FONT color="green">network</FONT></STRONG> or <STRIKE><FONT color="red">software changes</FONT></STRIKE> <STRONG><FONT color="green">by mobility
   events), the address must explicitly not be tied</FONT></STRONG> to <STRIKE><FONT color="red">end-systems (hosts).

   2.  Minimize required changes</FONT></STRIKE> <STRONG><FONT color="green">the topology.

   The approach that LISP takes</FONT></STRONG> to <STRIKE><FONT color="red">Internet infrastructure.

   3.  Be incrementally deployable.

   4.  Require no router hardware changes.

   5.  Minimize</FONT></STRIKE> <STRONG><FONT color="green">solving</FONT></STRONG> the <STRIKE><FONT color="red">number of routers which have</FONT></STRIKE> <STRONG><FONT color="green">routing scalability
   problem is</FONT></STRONG> to <STRIKE><FONT color="red">be modified.  In
       particular, most customer site routers and no core routers
       require changes.

   6.  Minimize router software changes in those routers</FONT></STRIKE> <STRONG><FONT color="green">replace IP addresses with two new types of numbers:
   Routing Locators (RLOCs),</FONT></STRONG> which are
       <STRIKE><FONT color="red">affected.

   7.  Avoid or minimize packet loss when EID-to-RLOC mappings need</FONT></STRIKE> <STRONG><FONT color="green">topologically assigned</FONT></STRONG> to
       <STRIKE><FONT color="red">be performed.

   There</FONT></STRIKE> <STRONG><FONT color="green">network
   attachment points (and</FONT></STRONG> are <STRIKE><FONT color="red">4 variants of LISP, which differ along a spectrum of strong</FONT></STRIKE> <STRONG><FONT color="green">therefore amenable</FONT></STRONG> to <STRIKE><FONT color="red">weak dependence on the topological nature</FONT></STRIKE> <STRONG><FONT color="green">aggregation)</FONT></STRONG> and <STRIKE><FONT color="red">possible need</FONT></STRIKE>
   <STRONG><FONT color="green">used</FONT></STRONG> for
   <STRIKE><FONT color="red">routability</FONT></STRIKE> <STRONG><FONT color="green">routing and forwarding</FONT></STRONG> of <STRIKE><FONT color="red">EIDs.  The variants are:

   LISP 1:  uses EIDs that are routable</FONT></STRIKE> <STRONG><FONT color="green">packets</FONT></STRONG> through the <STRIKE><FONT color="red">RLOC topology for
      bootstrapping EID-to-RLOC mappings.  [LISP1] This was intended as
      a prototyping mechanism</FONT></STRIKE> <STRONG><FONT color="green">network; and
   Endpoint Identifiers (EIDs), which are assigned independently from
   the network topology, are used</FONT></STRONG> for <STRIKE><FONT color="red">early protocol implementation.  It is
      now deprecated</FONT></STRIKE> <STRONG><FONT color="green">numbering devices,</FONT></STRONG> and <STRIKE><FONT color="red">SHOULD NOT be deployed.

   LISP 1.5:  uses EIDs that</FONT></STRIKE> are <STRIKE><FONT color="red">routable</FONT></STRIKE>
   <STRONG><FONT color="green">aggregated along administrative boundaries.  LISP then defines
   functions</FONT></STRONG> for <STRIKE><FONT color="red">bootstrapping EID-to-RLOC
      mappings; such routing is via</FONT></STRIKE> <STRONG><FONT color="green">mapping between the two numbering spaces and for
   encapsulating traffic originated by devices using non-routeable EIDs
   for transport across</FONT></STRONG> a <STRIKE><FONT color="red">separate topology.

   LISP 2:  uses EIDS</FONT></STRIKE> <STRONG><FONT color="green">network infrastructure</FONT></STRONG> that <STRIKE><FONT color="red">are not routable</FONT></STRIKE> <STRONG><FONT color="green">routes</FONT></STRONG> and <STRIKE><FONT color="red">EID-to-RLOC mappings</FONT></STRIKE>
   <STRONG><FONT color="green">forwards using RLOCs.  Both RLOCs and EIDs</FONT></STRONG> are
      <STRIKE><FONT color="red">implemented within</FONT></STRIKE> <STRONG><FONT color="green">syntactically-
   identical to IP addresses; it is</FONT></STRONG> the <STRIKE><FONT color="red">DNS.  [LISP2]

   LISP 3:  uses non-routable EIDs that</FONT></STRIKE> <STRONG><FONT color="green">semantics of how they</FONT></STRONG> are used <STRIKE><FONT color="red">as lookup keys for</FONT></STRIKE>
   <STRONG><FONT color="green">that differs.

   Note that this document describes the protocol that implements these
   functions.  The database which stores the mappings between EIDs and
   RLOCs is explicitly</FONT></STRONG> a
      <STRIKE><FONT color="red">new EID-to-RLOC mapping database.  Use of Distributed Hash Tables
      [DHTs] [LISPDHT]</FONT></STRIKE> <STRONG><FONT color="green">separate "module"</FONT></STRONG> to <STRIKE><FONT color="red">implement such</FONT></STRIKE> <STRONG><FONT color="green">facilitate experimentation
   with</FONT></STRONG> a <STRIKE><FONT color="red">database would be an area to
      explore.  Other examples</FONT></STRIKE> <STRONG><FONT color="green">variety</FONT></STRONG> of <STRIKE><FONT color="red">new mapping</FONT></STRIKE> <STRONG><FONT color="green">approaches.  One</FONT></STRONG> database <STRIKE><FONT color="red">services are
      [CONS], [ALT], [RPMD], [NERD], and [APT].

   This document on LISP 1.5, and LISP 3 variants, both of which rely on
   a router-based distributed cache</FONT></STRIKE> <STRONG><FONT color="green">design that is being
   developed</FONT></STRONG> and <STRIKE><FONT color="red">database for EID-to-RLOC
   mappings.  The LISP 1.0 mechanism works but does not allow reduction
   of routing information in the default-free-zone</FONT></STRIKE> <STRONG><FONT color="green">prototyped as part</FONT></STRONG> of the <STRIKE><FONT color="red">Internet.  The</FONT></STRIKE> LISP <STRIKE><FONT color="red">2 mechanisms are put on hold and may never come to fruition
   since it</FONT></STRIKE> <STRONG><FONT color="green">working group work</FONT></STRONG> is
   <STRONG><FONT color="green">[ALT] others that have been described but</FONT></STRONG> not <STRIKE><FONT color="red">architecturally pure</FONT></STRIKE> <STRONG><FONT color="green">implemented include
   [CONS], [EMACS], [RPMD], [NERD].  See also [LISP-MS], which documents
   a general-purpose "service interface" for accessing a mapping
   database; this is intended</FONT></STRONG> to <STRIKE><FONT color="red">have routing depend on
   directory and directory depend on routing.  The LISP 3 mechanisms
   will</FONT></STRIKE> <STRONG><FONT color="green">make the mapping database modular so
   that different approaches can</FONT></STRONG> be <STRIKE><FONT color="red">documented elsewhere but may use</FONT></STRIKE> <STRONG><FONT color="green">tried without</FONT></STRONG> the <STRIKE><FONT color="red">control-plane options
   specified in this specification.</FONT></STRIKE> <STRONG><FONT color="green">need to modify
   installed xTRs.</FONT></STRONG>

3.  Definition of Terms

   Provider Independent (PI) Addresses:   an address block assigned from
      a pool where blocks are not associated with any particular
      location in the network (e.g. from a particular service provider),
      and is therefore not topologically aggregatable in the routing
      system.

   Provider Assigned (PA) Addresses:   a block of IP addresses that are
      assigned to a site by each service provider to which a site
      connects.  Typically, each block is sub-block of a service
      provider CIDR block and is aggregated into the larger block before
      being advertised into the global Internet.  Traditionally, IP
      multihoming has been implemented by each multi-homed site
      acquiring its own, globally-visible prefix.  LISP uses only
      topologically-assigned and aggregatable address blocks for RLOCs,
      eliminating this demonstrably non-scalable practice.

   Routing Locator (RLOC):   the IPv4 or IPv6 address of an egress
      tunnel router (ETR).  It is the output of a EID-to-RLOC mapping
      lookup.  An EID maps to one or more RLOCs.  Typically, RLOCs are
      numbered from topologically-aggregatable blocks that are assigned
      to a site at each point to which it attaches to the global
      Internet; where the topology is defined by the connectivity of
      provider networks, RLOCs can be thought of as PA addresses.
      Multiple RLOCs can be assigned to the same ETR device or to
      multiple ETR devices at a site.

   Endpoint ID (EID):   a 32-bit (for IPv4) or 128-bit (for IPv6) value
      used in the source and destination address fields of the first
      (most inner) LISP header of a packet.  The host obtains a
      destination EID the same way it obtains an destination address
      today, for example through a DNS lookup or SIP exchange.  The
      source EID is obtained via existing mechanisms used to set a
      host's "local" IP address.  An EID is allocated to a host from an
      EID-prefix block associated with the site where the host is
      located.  An EID can be used by a host to refer to other hosts.
      EIDs MUST NOT be used as LISP RLOCs.  Note that EID blocks may be
      assigned in a hierarchical manner, independent of the network
      topology, to facilitate scaling of the mapping database.  In
      addition, an EID block assigned to a site may have site-local
      structure (subnetting) for routing within the site; this structure
      is not visible to the global routing system.  When used in
      discussions with other Locator/ID separation proposals, a LISP EID
      will be called a "LEID".  Throughout this document, any references
      to "EID" refers to an LEID.

   EID-prefix:   A power-of-2 block of EIDs which are allocated to a
      site by an address allocation authority.  EID-prefixes are
      associated with a set of RLOC addresses which make up a "database
      mapping".  EID-prefix allocations can be broken up into smaller
      blocks when an RLOC set is to be associated with the smaller EID-
      prefix.  A globally routed address block (whether PI or PA) is not
      an EID-prefix.  However, a globally routed address block may be
      removed from global routing and reused as an EID-prefix.  A site
      that receives an explicitly allocated EID-prefix may not use that
      EID-prefix as a globally routed prefix assigned to RLOCs.

   End-system:   is an IPv4 or IPv6 device that originates packets with
      a single IPv4 or IPv6 header.  The end-system supplies an EID
      value for the destination address field of the IP header when
      communicating globally (i.e. outside of its routing domain).  An
      end-system can be a host computer, a switch or router device, or
      any network appliance.

   Ingress Tunnel Router (ITR):   a router which accepts an IP packet
      with a single IP header (more precisely, an IP packet that does
      not contain a LISP header).  The router treats this "inner" IP
      destination address as an EID and performs an EID-to-RLOC mapping
      lookup.  The router then prepends an "outer" IP header with one of
      its globally-routable RLOCs in the source address field and the
      result of the mapping lookup in the destination address field.
      Note that this destination RLOC may be an intermediate, proxy
      device that has better knowledge of the EID-to-RLOC mapping closer
      to the destination EID.  In general, an ITR receives IP packets
      from site end-systems on one side and sends LISP-encapsulated IP
      packets toward the Internet on the other side.

      Specifically, when a service provider prepends a LISP header for
      Traffic Engineering purposes, the router that does this is also
      regarded as an ITR.  The outer RLOC the ISP ITR uses can be based
      on the outer destination address (the originating ITR's supplied
      RLOC) or the inner destination address (the originating hosts
      supplied EID).

   TE-ITR:   is an ITR that is deployed in a service provider network
      that prepends an additional LISP header for Traffic Engineering
      purposes.

   Egress Tunnel Router (ETR):   a router that accepts an IP packet
      where the destination address in the "outer" IP header is one of
      its own RLOCs.  The router strips the "outer" header and forwards
      the packet based on the next IP header found.  In general, an ETR
      receives LISP-encapsulated IP packets from the Internet on one
      side and sends decapsulated IP packets to site end-systems on the
      other side.  ETR functionality does not have to be limited to a
      router device.  A server host can be the endpoint of a LISP tunnel
      as well.

   TE-ETR:   is an ETR that is deployed in a service provider network
      that strips an outer LISP header for Traffic Engineering purposes.

   xTR:   is a reference to an ITR or ETR when direction of data flow is
      not part of the context description. xTR refers to the router that
      is the tunnel endpoint.  Used synonymously with the term "Tunnel
      Router".  For example, "An xTR can be located at the Customer Edge
      (CE) router", meaning both ITR and ETR functionality is at the CE
      router.

   EID-to-RLOC Cache:   a short-lived, on-demand table in an ITR that
      stores, tracks, and is responsible for timing-out and otherwise
      validating EID-to-RLOC mappings.  This cache is distinct from the
      full "database" of EID-to-RLOC mappings, it is dynamic, local to
      the ITR(s), and relatively small while the database is
      distributed, relatively static, and much more global in scope.

   EID-to-RLOC Database:   a global distributed database that contains
      all known EID-prefix to RLOC mappings.  Each potential ETR
      typically contains a small piece of the database: the EID-to-RLOC
      mappings for the EID prefixes "behind" the router.  These map to
      one of the router's own, globally-visible, IP addresses.  The same
      database mapping entries MUST be configured on all ETRs for a
      given site.  That is, the EID-prefixes for the site and locator-
      set for each EID-prefix MUST be the same on all ETRs so they
      consistently send Map-Reply messages with the same database
      mapping contents.

   Recursive Tunneling:   when a packet has more than one LISP IP
      header.  Additional layers of tunneling may be employed to
      implement traffic engineering or other re-routing as needed.  When
      this is done, an additional "outer" LISP header is added and the
      original RLOCs are preserved in the "inner" header.  Any
      references to tunnels in this specification refers to dynamic
      encapsulating tunnels and never are they statically configured.

   Reencapsulating Tunnels:   when a packet has no more than one LISP IP
      header (two IP headers total) and when it needs to be diverted to
      new RLOC, an ETR can decapsulate the packet (remove the LISP
      header) and prepends a new tunnel header, with new RLOC, on to the
      packet.  Doing this allows a packet to be re-routed by the re-
      encapsulating router without adding the overhead of additional
      tunnel headers.  Any references to tunnels in this specification
      refers to dynamic encapsulating tunnels and never are they
      statically configured.

   LISP Header:   a term used in this document to refer to the outer
      IPv4 or IPv6 header, a UDP header, and a LISP-specific 8-byte
      header that follows the UDP header, an ITR prepends or an ETR
      strips.

   Address Family Identifier (AFI):   a term used to describe an address
      encoding in a packet.  An address family currently pertains to an
      IPv4 or IPv6 address.  See [AFI] and [RFC1700] for details.  An
      AFI value of 0 used in this specification indicates an unspecified
      encoded address where the <STRIKE><FONT color="red">the</FONT></STRIKE> length of the address is 0 bytes
      following the 16-bit AFI value of 0.

   Negative Mapping Entry:   also known as a negative cache entry, is an
      EID-to-RLOC entry where an EID-prefix is advertised or stored with
      no RLOCs.  That is, the locator-set for the EID-to-RLOC entry is
      empty or has an encoded locator count of 0.  This type of entry
      could be used to describe a prefix from a non-LISP site, which is
      explicitly not in the mapping database.  There are a set of well
      defined actions that are encoded in a Negative Map-Reply.

   Data Probe:   a LISP-encapsulated data packet where the inner header
      destination address equals the outer header destination address
      used to trigger a Map-Reply by a decapsulating ETR.  In addition,
      the original packet is decapsulated and delivered to the
      destination host.  A Data Probe is used in some of the mapping
      database designs to "probe" or request a Map-Reply from an ETR; in
      other cases, Map-Requests are used.  See each mapping database
      design for details.

   Proxy ITR (PITR):   also known as a PTR is defined and described in
      [INTERWORK], a PITR acts like an ITR but does so on behalf of non-
      LISP sites which send packets to destinations at LISP sites.

   Proxy ETR (PETR):   is defined and described in [INTERWORK], a PETR
      acts like an ETR but does so on behalf of LISP sites which send
      packets to destinations at non-LISP sites.

   Route-returnability:  is an assumption that the underlying routing
      system will deliver packets to the destination.  When combined
      with a nonce that is provided by a sender and returned by a
      receiver limits off-path data insertion.

   LISP site:  is a set of routers in an edge network that are under a
      <STRIKE><FONT color="red">single technical administration.  LISP routers which reside</FONT></STRIKE>
      <STRONG><FONT color="green">single technical administration.  LISP routers which reside in the
      edge network are the demarcation points to separate the edge
      network from the core network.

   Client-side:  a term used in this document to indicate a connection
      initiation attempt by an EID.  The ITR(s) at the LISP site are the
      first to get involved in obtaining database map cache entries by
      sending Map-Request messages.

   Server-side:  a term used</FONT></STRONG> in <STRONG><FONT color="green">this document to indicate a connection
      initiation attempt is being accepted for a destination EID.  The
      ETR(s) at</FONT></STRONG> the
      <STRIKE><FONT color="red">edge network</FONT></STRIKE> <STRONG><FONT color="green">destination LISP site</FONT></STRONG> are the <STRIKE><FONT color="red">demarcation points</FONT></STRIKE> <STRONG><FONT color="green">first to send Map-
      Replies</FONT></STRONG> to <STRIKE><FONT color="red">separate</FONT></STRIKE> the <STRIKE><FONT color="red">edge
      network from</FONT></STRIKE> <STRONG><FONT color="green">source site initiating</FONT></STRONG> the <STRIKE><FONT color="red">core network.</FONT></STRIKE> <STRONG><FONT color="green">connection.  The ETR(s)
      at this destination site can obtain mappings by gleaning
      information from Map-Requests, Data-Probes, or encapsulated
      packets.</FONT></STRONG>

4.  Basic Overview

   One key concept of LISP is that end-systems (hosts) operate the same
   way they do today.  The IP addresses that hosts use for tracking
   sockets, connections, and for sending and receiving packets do not
   change.  In LISP terminology, these IP addresses are called Endpoint
   Identifiers (EIDs).

   Routers continue to forward packets based on IP destination
   addresses.  When a packet is LISP encapsulated, these addresses are
   referred to as Routing Locators (RLOCs).  Most routers along a path
   between two hosts will not change; they continue to perform routing/
   forwarding lookups on the destination addresses.  For routers between
   the source host and the ITR as well as routers from the ETR to the
   destination host, the destination address is an EID.  For the routers
   between the ITR and the ETR, the destination address is an RLOC.

   This design introduces "Tunnel Routers", which prepends LISP headers
   on host-originated packets and strip them prior to final delivery to
   their destination.  The IP addresses in this "outer header" are
   RLOCs.  During end-to-end packet exchange between two Internet hosts,
   an ITR prepends a new LISP header to each packet and an egress tunnel
   router strips the new header.  The ITR performs EID-to-RLOC lookups
   to determine the routing path to the <STRIKE><FONT color="red">the</FONT></STRIKE> ETR, which has the RLOC as one
   of its IP addresses.

   Some basic rules governing LISP are:

   o  End-systems (hosts) only send to addresses which are EIDs.  They
      don't know addresses are EIDs versus RLOCs but assume packets get
      to LISP routers, which in turn, deliver packets to the destination
      the end-system has specified.

   o  EIDs are always IP addresses assigned to hosts.

   o  LISP routers mostly deal with Routing Locator addresses.  See
      details later in Section 4.1 to clarify what is meant by "mostly".

   o  RLOCs are always IP addresses assigned to routers; preferably,
      topologically-oriented addresses from provider CIDR blocks.

   o  When a router originates packets it may use as a source address
      either an EID or RLOC.  When acting as a host (e.g. when
      terminating a transport session such as SSH, TELNET, or SNMP), it
      may use an EID that is explicitly assigned for that purpose.  An
      EID that identifies the router as a host MUST NOT be used as an
      RLOC; an EID is only routable within the scope of a site.  A
      typical BGP configuration might demonstrate this "hybrid" EID/RLOC
      usage where a router could use its "host-like" EID to terminate
      iBGP sessions to other routers in a site while at the same time
      using RLOCs to terminate eBGP sessions to routers outside the
      site.

   o  EIDs are not expected to be usable for global end-to-end
      communication in the absence of an EID-to-RLOC mapping operation.
      They are expected to be used locally for intra-site communication.

   o  EID prefixes are likely to be hierarchically assigned in a manner
      which is optimized for administrative convenience and to
      facilitate scaling of the EID-to-RLOC mapping database.  The
      hierarchy is based on a address allocation hierarchy which is not
      dependent on the network topology.

   o  EIDs may also be structured (subnetted) in a manner suitable for
      local routing within an autonomous system.

   An additional LISP header may be prepended to packets by a transit
   router (i.e.  TE-ITR) when re-routing of the path for a packet is
   desired.  An obvious instance of this would be an ISP router that
   needs to perform traffic engineering for packets flowing through its
   network.  In such a situation, termed Recursive Tunneling, an ISP
   transit acts as an additional ingress tunnel router and the RLOC it
   uses for the new prepended header would be either a TE-ETR within the
   ISP (along intra-ISP traffic engineered path) or a TE-ETR within
   another ISP (an inter-ISP traffic engineered path, where an agreement
   to build such a path exists).

   This specification mandates that no more than two LISP headers get
   prepended to a packet.  This avoids excessive packet overhead as well
   as possible encapsulation loops.  It is believed two headers is
   sufficient, where the first prepended header is used at a site for
   Location/Identity separation and second prepended header is used
   inside a service provider for Traffic Engineering purposes.

   Tunnel Routers can be placed fairly flexibly in a multi-AS topology.
   For example, the ITR for a particular end-to-end packet exchange
   might be the first-hop or default router within a site for the source
   host.  Similarly, the egress tunnel router might be the last-hop
   router directly-connected to the destination host.  Another example,
   perhaps for a VPN service out-sourced to an ISP by a site, the ITR
   could be the site's border router at the service provider attachment
   point.  Mixing and matching of site-operated, ISP-operated, and other
   tunnel routers is allowed for maximum flexibility.  See Section 8 for
   more details.

4.1.  Packet Flow Sequence

   This section provides an example of the unicast packet flow with the
   following conditions:

   o  Source host "host1.abc.com" is sending a packet to
      "host2.xyz.com", exactly what host1 would do if the site was not
      using LISP.

   o  Each site is multi-homed, so each tunnel router has an address
      (RLOC) assigned from the service provider address block for each
      provider to which that particular tunnel router is attached.

   o  The ITR(s) and ETR(s) are directly connected to the source and
      destination, respectively, but the source and destination can be
      located anywhere in LISP site.

   o  Map-Requests can be sent on the underlying routing system topology
      (LISP 1.0) or over an alternative topology [ALT].

   o  Map-Replies are sent on the underlying routing system topology.

   Client host1.abc.com wants to communicate with server host2.xyz.com:

   1.  host1.abc.com wants to open a TCP connection to host2.xyz.com.
       It does a DNS lookup on host2.xyz.com.  An A/AAAA record is
       returned.  This address is the destination EID.  The locally-
       assigned address of host1.abc.com is used as the source EID.  An
       IPv4 or IPv6 packet is built and forwarded through the LISP site
       as a normal IP packet until it reaches a LISP ITR.

   2.  The LISP ITR must be able to map the EID destination to an RLOC
       of one of the ETRs at the destination site.  The specific method
       used to do this is not described in this example.  See [ALT] or
       [CONS] for possible solutions.

   3.  The ITR will send a LISP Map-Request.  Map-Requests SHOULD be
       rate-limited.

   4.  In LISP 1.0, the Map-Request packet is routed through the
       underlying routing system.  In LISP 1.5, the Map-Request packet
       is routed on an alternate logical topology.  In either case, when
       the Map-Request arrives at one of the ETRs at the destination
       site, it will process the packet as a control message.

   5.  The ETR looks at the destination EID of the Map-Request and
       matches it against the prefixes in the ETR's configured EID-to-
       RLOC mapping database.  This is the list of EID-prefixes the ETR
       is supporting for the site it resides in.  If there is no match,
       the Map-Request is dropped.  Otherwise, a LISP Map-Reply is
       returned to the ITR.

   6.  The ITR receives the Map-Reply message, parses the message (to
       check for format validity) and stores the mapping information
       from the packet.  This information is put in the ITR's EID-to-
       RLOC mapping cache (this is the on-demand cache, the cache where
       entries time out due to inactivity).

   7.  Subsequent packets from host1.abc.com to host2.xyz.com will have
       a LISP header prepended by the ITR using the appropriate RLOC as
       the LISP header destination address learned from the ETR.  Note,
       the packet may be sent to a different ETR than the one which
       returned the Map-Reply due to the source site's hashing policy or
       the destination site's locator-set policy.

   8.  The ETR receives these packets directly (since the destination
       address is one of its assigned IP addresses), strips the LISP
       header and forwards the packets to the attached destination host.

   In order to eliminate the need for a mapping lookup in the reverse
   direction, an ETR MAY create a cache entry that maps the source EID
   (inner header source IP address) to the source RLOC (outer header
   source IP address) in a received LISP packet.  Such a cache entry is
   termed a "gleaned" mapping and only contains a single RLOC for the
   EID in question.  More complete information about additional RLOCs
   SHOULD be verified by sending a LISP Map-Request for that EID.  Both
   ITR and the ETR may also influence the decision the other makes in
   selecting an RLOC.  See Section 6 for more details.

5.  <STRIKE><FONT color="red">Tunneling Details

   This section describes the</FONT></STRIKE>  LISP <STRIKE><FONT color="red">Data Message which defines the
   tunneling header used to encapsulate IPv4 and IPv6 packets which
   contain EID addresses.  Even though the following formats illustrate
   IPv4-in-IPv4 and IPv6-in-IPv6 encapsulations, the other 2
   combinations are supported as well.</FONT></STRIKE> <STRONG><FONT color="green">Encapsulation Details</FONT></STRONG>

   Since additional tunnel headers are prepended, the packet becomes
   larger and <STRIKE><FONT color="red">in theory</FONT></STRIKE> can exceed the MTU of any link traversed from the ITR to
   the ETR.  It is <STRIKE><FONT color="red">recommended,</FONT></STRIKE> <STRONG><FONT color="green">recommended</FONT></STRONG> in IPv4 that packets do not get
   fragmented as they are encapsulated by the ITR.  Instead, the packet
   is dropped and an ICMP Too Big message is returned to the source.

   Based on informal surveys of large ISP <STRIKE><FONT color="red">traffic patterns,</FONT></STRIKE> <STRONG><FONT color="green">network configurations,</FONT></STRONG> it
   appears that most transit paths can accommodate a path MTU of at
   least 4470 bytes.  <STRIKE><FONT color="red">The exceptions, in terms of data rate, number of hosts
   affected, or any other metric are expected to be vanishingly small.

   To address MTU concerns, mainly raised on the RRG mailing list,</FONT></STRIKE>  <STRONG><FONT color="green">However,</FONT></STRONG> the LISP deployment <STRIKE><FONT color="red">process will include</FONT></STRIKE> <STRONG><FONT color="green">effort has included</FONT></STRONG>
   collecting data during its pilot phase to <STRIKE><FONT color="red">either verify</FONT></STRIKE> <STRONG><FONT color="green">confirm</FONT></STRONG> or refute <STRIKE><FONT color="red">the assumption about minimum
   available MTU.  If the assumption proves true and transit networks
   with links limited to 1500 byte MTUs are corner cases, it would seem
   more cost-effective to either upgrade or modify the equipment in
   those transit networks to support larger MTUs or to use existing
   mechanisms for accommodating packets that are too large.

   For</FONT></STRIKE> this <STRIKE><FONT color="red">reason, there is currently no plan for LISP to add any new
   additional, complex mechanism for implementing fragmentation and
   reassembly in</FONT></STRIKE>
   <STRONG><FONT color="green">assumption.  These deployments have shown that (typically</FONT></STRONG> the <STRIKE><FONT color="red">face</FONT></STRIKE> <STRONG><FONT color="green">edge)</FONT></STRONG>
   of <STRIKE><FONT color="red">limited-MTU transit links.  If analysis
   during LISP pilot deployment reveals that</FONT></STRIKE> the <STRIKE><FONT color="red">assumption</FONT></STRIKE> <STRONG><FONT color="green">network has a non-trivial number</FONT></STRONG> of
   <STRIKE><FONT color="red">essentially ubiquitous, 4470+ byte transit path MTUs, is incorrect,
   then LISP can be modified prior to protocol standardization to add</FONT></STRIKE> <STRONG><FONT color="green">lower MTU (1500 byte)
   links.

   This specification recommends that implementations</FONT></STRONG> support for one of
   the proposed fragmentation and reassembly <STRIKE><FONT color="red">schemes.
   Note that</FONT></STRIKE> <STRONG><FONT color="green">schemes.  These</FONT></STRONG> two simple
   existing schemes are detailed in Section 5.4.

5.1.  LISP IPv4-in-IPv4 Header Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   OH  |  Time to Live | Protocol = 17 |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                    Source Routing Locator                     |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4341        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   IH  |  Time to Live |    Protocol   |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                           Source EID                          |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                         Destination EID                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.2.  LISP IPv6-in-IPv6 Header Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |   |         Payload Length        | Next Header=17|   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   O   +                                                               +
   u   |                                                               |
   t   +                     Source Routing Locator                    +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                  Destination Routing Locator                  +
   |   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4341        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   /   |         Payload Length        |  Next Header  |   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   I   +                                                               +
   n   |                                                               |
   n   +                          Source EID                           +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                        Destination EID                        +
   \   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.3.  Tunnel Header Field Descriptions

   Inner Header:  is the inner header, preserved from the datagram
      received from the originating host.  The source and destination IP
      addresses are EIDs.

   Outer Header:  is the outer header prepended by an ITR.  The address
      fields contain RLOCs obtained from the ingress router's EID-to-
      RLOC cache.  The IP protocol number is "UDP (17)" from [RFC0768].
      The DF bit of the Flags field is set to 0 when the method in
      Section 5.4.1 is used and set to 1 when the method in
      Section 5.4.2 is used.

   UDP Header:  contains a ITR selected source port when encapsulating a
      packet.  See Section <STRIKE><FONT color="red">6.4</FONT></STRIKE> <STRONG><FONT color="green">6.5</FONT></STRONG> for details on the hash algorithm used to
      select a source port based on the 5-tuple of the inner header.
      The destination port MUST be set to the well-known IANA assigned
      port value 4341.

   UDP Checksum:  this field SHOULD be transmitted as zero by an ITR for
      either IPv4 [RFC0768] or IPv6 encapsulation [UDP-TUNNELS].  When a
      packet with a zero UDP checksum is received by an ETR, the ETR
      MUST accept the packet for decapsulation.  When an ITR transmits a
      non-zero value for the UDP checksum, it MUST send a correctly
      computed value in this field.  When an ETR receives a packet with
      a non-zero UDP checksum, it MAY choose to verify the checksum
      value.  If it chooses to perform such verification, and the
      verification fails, the packet MUST be silently dropped.  If the
      ETR chooses not to perform the verification, or performs the
      verification successfully, the packet MUST be accepted for
      decapsulation.  The handling of UDP checksums for all tunneling
      protocols, including LISP, is under active discussion within the
      IETF.  When that discussion concludes, any necessary changes will
      be made to align LISP with the outcome of the broader discussion.

   UDP Length:  for an IPv4 encapsulated packet, the inner header Total
      Length plus the UDP and LISP header lengths are used.  For an IPv6
      encapsulated packet, the inner header Payload Length plus the size
      of the IPv6 header (40 bytes) plus the size of the UDP and LISP
      headers are used.  The UDP header length is 8 bytes.

   N: this is the nonce-present bit.  When this bit is set to 1, the
      low-order 24-bits of the first 32-bits of the LISP header contains
      a Nonce.  See Section 6.3.1 for details.  Both N and V bits MUST
      NOT be set in the same packet.  If they are, a decapsulating ETR
      MUST treat the "Nonce/Map-Version" field as having a Nonce value
      present.

   L: this is the Locator-Status-Bits field enabled bit.  When this bit
      is set to 1, the Locator-Status-Bits in the second 32-bits of the
      LISP header are in use.

     x 1 x x 0 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                      Locator Status Bits                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   E: this is the echo-nonce-request bit.  When this bit is set to 1,
      the N bit MUST be 1.  This bit SHOULD be ignored and has no
      meaning when the N bit is set to 0.  See Section 6.3.1 for
      details.

   V: this is the Map-Version present bit.  When this bit is set to 1,
      the N bit MUST be 0.  Refer to Section <STRIKE><FONT color="red">6.5.3</FONT></STRIKE> <STRONG><FONT color="green">6.6.3</FONT></STRONG> for more details.
      This bit indicates that the first 4 bytes of the LISP header is
      encoded as:

     0 x 0 1 x x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|  Source Map-Version   |   Dest Map-Version    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID/Locator Status Bits               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   I: this is the Instance ID bit.  See Section 5.5 for more details.
      When this bit is set to 1, the Locator Status Bits field is
      reduced to 8-bits and the high-order 24-bits are used as an
      Instance ID.  If the L-bit is set to 0, then the low-order 8 bits
      are transmitted as zero and ignored on receipt.  The format of the
      last 4 bytes of the LISP header would look like:

     x x x x 1 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID                   |     LSBs      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   flags:  this 3-bit field is reserved for future flag use.  It is set
      to 0 on transmit and ignored on receipt.

   LISP Nonce:  is a 24-bit value that is randomly generated by an ITR
      when the N-bit is set to 1.  The nonce is also used when the E-bit
      is set to request the nonce value to be echoed by the other side
      when packets are returned.  When the E-bit is clear but the N-bit
      is set, a remote ITR is either echoing a previously requested
      echo-nonce or providing a random nonce.  See Section 6.3.1 for
      more details.

   LISP Locator Status Bits:  in the LISP header are set by an ITR to
      indicate to an ETR the up/down status of the Locators in the
      source site.  Each RLOC in a Map-Reply is assigned an ordinal
      value from 0 to n-1 (when there are n RLOCs in a mapping entry).
      The Locator Status Bits are numbered from 0 to n-1 from the least
      significant bit of field.  The field is 32-bits when the I-bit is
      set to 0 and is 8 bits when the I-bit is set to 1.  When a Locator
      Status Bit is set to 1, the ITR is indicating to the ETR the RLOC
      associated with the bit ordinal has up status.  See Section 6.3
      for details on how an ITR can determine the status of other ITRs
      at the same site.  When a site has multiple EID-prefixes which
      result in multiple mappings (where each could have a different
      locator-set), the Locator Status Bits setting in an encapsulated
      packet MUST reflect the mapping for the EID-prefix that the inner-
      header source EID address matches.

   When doing Recursive Tunneling or ITR/PTR encapsulation:

   o  The outer header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the inner header Time to Live
      field.

   o  The outer header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the inner header
      Type of Service field (with one caveat, see below).

   When doing Re-encapsulated Tunneling:

   o  The new outer header Time to Live field SHOULD be copied from the
      stripped outer header Time to Live <STRIKE><FONT color="red">field.</FONT></STRIKE> <STRONG><FONT color="green">field when it is less than the
      Time to Live of the inner header.  Failing to perform this check,
      can cause the Time to Live of the inner header to increment across
      re-encapsulation boundaries.  This is also performed when doing
      initial encapsulation when a packet comes to an ITR or PITR
      destined for a LISP site.</FONT></STRONG>

   o  The new outer header Type of Service field SHOULD be copied from
      the stripped OH header Type of Service field (with one caveat, see
      below).

   Copying the TTL serves two purposes: first, it preserves the distance
   the host intended the packet to travel; second, and more importantly,
   it provides for suppression of looping packets in the event there is
   a loop of concatenated tunnels due to misconfiguration.  <STRONG><FONT color="green">See
   Section 9.3 for TTL exception handling for traceroute packets.</FONT></STRONG>

   The ECN field occupies bits 6 and 7 of both the IPv4 Type of Service
   field and the IPv6 Traffic Class field [RFC3168].  The ECN field
   requires special treatment in order to avoid discarding indications
   of congestion [RFC3168].  ITR encapsulation MUST copy the 2-bit ECN
   field from the inner header to the outer header.  Re-encapsulation
   MUST copy the 2-bit ECN field from the stripped outer header to the
   new outer header.  If the ECN field contains a congestion indication
   codepoint (the value is '11', the Congestion Experienced (CE)
   codepoint), then ETR decapsulation MUST copy the 2-bit ECN field from
   the stripped outer header to the surviving inner header that is used
   to forward the packet beyond the ETR.  These requirements preserve
   Congestion Experienced (CE) indications when a packet that uses ECN
   traverses a LISP tunnel and becomes marked with a CE indication due
   to congestion between the tunnel endpoints.

5.4.  Dealing with Large Encapsulated Packets

   In the event that the MTU issues mentioned above prove to be more
   serious than expected, this section proposes 2 simple mechanisms to
   deal with large packets.  One is stateless using IP fragmentation and
   the other is stateful using Path MTU Discovery [RFC1191].

   It is left to the implementor to decide if the stateless or stateful
   mechanism SHOULD be implemented.  Both or neither can be decided as
   well since it is a local decision in the ITR regarding how to deal
   with MTU issues.  Sites can interoperate with differing mechanisms.

   Both stateless and stateful mechanisms also apply to Reencapsulating
   and Recursive Tunneling.  So any actions below referring to an ITR
   also apply to an TE-ITR.

5.4.1.  A Stateless Solution to MTU Handling

   An ITR stateless solution to handle MTU issues is described as
   follows:

   1.  Define an architectural constant S for the maximum size of a
       packet, in bytes, an ITR would <STRONG><FONT color="green">like to</FONT></STRONG> receive from a source
       inside of its site.

   2.  Define L to be the maximum size, in bytes, a packet of size S
       would be after the ITR prepends the LISP header, UDP header, and
       outer network layer header of size H.

   3.  Calculate: S + H = L.

   When an ITR receives a packet from a site-facing interface and adds H
   bytes worth of encapsulation to yield a packet size greater than L
   bytes, it resolves the MTU issue by first splitting the original
   packet into 2 equal-sized fragments.  A LISP header is then prepended
   to each fragment.  This will ensure that the new, encapsulated
   packets are of size (S/2 + H), which is always below the effective
   tunnel MTU.

   When an ETR receives encapsulated fragments, it treats them as two
   individually encapsulated packets.  It strips the LISP headers then
   forwards each fragment to the destination host of the destination
   site.  The two fragments are reassembled at the destination host into
   the single IP datagram that was originated by the source host.

   This behavior is performed by the ITR when the source host originates
   a packet with the DF field of the IP header is set to 0.  When the DF
   field of the IP header is set to 1, or the packet is an IPv6 packet
   originated by the source host, the ITR will drop the packet when the
   size is greater than L, and sends an ICMP Too Big message to the
   source with a value of S, where S is (L - H).

   When the outer header encapsulation uses an IPv4 header, an
   implementation SHOULD set the DF bit to 1 so ETR fragment reassembly
   can be avoided.  An implementation MAY set the DF bit in such headers
   to 0 if it has good reason to believe there are unresolvable path MTU
   issues between the sending ITR and the receiving ETR.

   This specification recommends that L be defined as 1500.

5.4.2.  A Stateful Solution to MTU Handling

   An ITR stateful solution to handle MTU issues is described as follows
   and was first introduced in [OPENLISP]:

   1.  The ITR will keep state of the effective MTU for each locator per
       mapping cache entry.  The effective MTU is what the core network
       can deliver along the path between ITR and ETR.

   2.  When an IPv6 encapsulated packet or an IPv4 encapsulated packet
       with DF bit set to 1, exceeds what the core network can deliver,
       one of the intermediate routers on the path will send an ICMP Too
       Big message to the ITR.  The ITR will parse the ICMP message to
       determine which locator is affected by the effective MTU change
       and then record the new effective MTU value in the mapping cache
       entry.

   3.  When a packet is received by the ITR from a source inside of the
       site and the size of the packet is greater than the effective MTU
       stored with the mapping cache entry associated with the
       destination EID the packet is for, the ITR will send an ICMP Too
       Big message back to the source.  The packet size advertised by
       the ITR in the ICMP Too Big message is the effective MTU minus
       the LISP encapsulation length.

   Even though this mechanism is stateful, it has advantages over the
   stateless IP fragmentation mechanism, by not involving the
   destination host with reassembly of ITR fragmented packets.

5.5.  Using Virtualization and Segmentation with LISP

   When multiple organizations inside of a LISP site are using private
   addresses [RFC1918] as EID-prefixes, their address spaces MUST remain
   segregated due to possible address duplication.  An Instance ID in
   the address encoding can aid in making the entire AFI based address
   unique.  See [LCAF] for details for a possible address encoding.  The
   LCAF encoding is an area for further study.

   An Instance ID can be carried in a LISP encapsulated packet.  An ITR
   that prepends a LISP header, will copy a 24-bit value, used by the
   LISP router to uniquely identify the address space.  The value is
   copied to the Instance ID field of the LISP header and the I-bit is
   set to 1.

   When an ETR decapsulate a packet, the Instance ID from the LISP
   header is used as a table identifier to locate the forwarding table
   to use for the inner destination EID lookup.

   Some examples of the 24-bit value to copy or map into the Instance ID
   field could be a 802.1Q VLAN tag or a <STRONG><FONT color="green">VPN value associated with a</FONT></STRONG>
   configured <STRIKE><FONT color="red">VRF-ID value.</FONT></STRIKE> <STRONG><FONT color="green">VRF.</FONT></STRONG>

6.  EID-to-RLOC Mapping

6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats

   The following new UDP packet types are used to retrieve EID-to-RLOC
   mappings:

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version|  IHL  |Type of Service|          Total Length         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Identification        |Flags|      Fragment Offset    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Time to Live | Protocol = 17 |         Header Checksum       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Source Routing Locator                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version| Traffic Class |           Flow Label                  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Payload Length        | Next Header=17|   Hop Limit   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                     Source Routing Locator                    +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                  Destination Routing Locator                  +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The LISP UDP-based messages are the Map-Request and Map-Reply
   messages.  When a UDP Map-Request is sent, the UDP source port is
   chosen by the sender and the destination UDP port number is set to
   4342.  When a UDP Map-Reply is sent, the source UDP port number is
   set to 4342 and the destination UDP port number is copied from the
   source port of either the Map-Request or the invoking data packet.

   The UDP Length field will reflect the length of the UDP header and
   the LISP Message payload.

   The UDP Checksum is computed and set to non-zero for Map-Request,
   Map-Reply, Map-Register and ECM control messages.  It MUST be checked
   on receipt and if the checksum fails, the packet MUST be dropped.

   LISP-CONS [CONS] use TCP to send LISP control messages.  The format
   of control messages includes the UDP header so the checksum and
   length fields can be used to protect and delimit message boundaries.

   This main LISP specification is the authoritative source for message
   format definitions for the Map-Request and Map-Reply messages.

6.1.1.  LISP Packet Type Allocations

   This section will be the authoritative source for allocating LISP
   Type values.  Current allocations are:

       Reserved:                          0    b'0000'
       LISP Map-Request:                  1    b'0001'
       LISP Map-Reply:                    2    b'0010'
       LISP Map-Register:                 3    b'0011'
       LISP Encapsulated Control Message: 8    b'1000'

6.1.2.  Map-Request Message Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=1 |A|M|P|S|       Reserved      |   IRC   | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Source-EID-AFI        |   Source EID Address  ...     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI 1        |    ITR-RLOC Address 1  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                              ...                              |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI n        |    ITR-RLOC Address n  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |   Reserved    | EID mask-len  |        EID-prefix-AFI         |
   Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                       EID-prefix  ...                         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Map-Reply Record  ...                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   1 (Map-Request)

   A: This is an authoritative bit, which is set to 0 for UDP-based Map-
      Requests sent by an ITR.

   M: When set, it indicates a Map-Reply Record segment is included in
      the Map-Request.

   P: This is the probe-bit which indicates that a Map-Request SHOULD be
      treated as a locator reachability probe.  The receiver SHOULD
      respond with a Map-Reply with the probe-bit set, indicating the
      Map-Reply is a locator reachability probe reply, with the nonce
      copied from the Map-Request.  See Section 6.3.2 for more details.

   S: This is the SMR bit.  See Section <STRIKE><FONT color="red">6.5.2</FONT></STRIKE> <STRONG><FONT color="green">6.6.2</FONT></STRONG> for details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   IRC:  This 5-bit field is the ITR-RLOC Count which encodes the number
      of (ITR-RLOC-AFI, ITR-RLOC Address) fields present in this
      message.  Multiple ITR-RLOC Address fields are used so a Map-
      Replier can select which destination address to use for a Map-
      Reply.  The IRC value ranges from 0 to 31, where IRC value 0 means
      an ITR-RLOC address count of 1, an IRC value of 1 means an ITR-
      RLOC address count of 2, and so on up to an IRC value of 31, which
      means an ITR-RLOC address count of 32.

   Record Count:  The number of records in this Map-Request message.  A
      record is comprised of the portion of the packet that is labeled
      'Rec' above and occurs the number of times equal to Record Count.
      For this version of the protocol, a receiver MUST accept and
      process Map-Requests that contain one or more records, but a
      sender MUST only send Map-Requests containing one record.  Support
      for requesting multiple EIDs in a single Map-Request message will
      be specified in a future version of the protocol.

   Nonce:  An 8-byte random value created by the sender of the Map-
      Request.  This nonce will be returned in the Map-Reply.  The
      security of the LISP mapping protocol depends critically on the
      strength of the nonce in the Map-Request message.  The nonce
      SHOULD be generated by a properly seeded pseudo-random (or strong
      random) source.  See [RFC4086] for advice on generating security-
      sensitive random data.

   Source-EID-AFI:  Address family of the "Source EID Address" field.

   Source EID Address:  This is the EID of the source host which
      originated the packet which is invoking this Map-Request.  When
      Map-Requests are used for refreshing a map-cache entry or for
      RLOC-probing, <STRIKE><FONT color="red">the</FONT></STRIKE> <STRONG><FONT color="green">an AFI</FONT></STRONG> value 0 is <STRIKE><FONT color="red">used.</FONT></STRIKE> <STRONG><FONT color="green">used and this field is of zero
      length.</FONT></STRONG>

   ITR-RLOC-AFI:  Address family of the "ITR-RLOC Address" field that
      follows this field.

   ITR-RLOC Address:  Used to give the ETR the option of selecting the
      destination address from any address family for the Map-Reply
      message.  This address MUST be a routable RLOC address.

   EID mask-len:  Mask length for EID prefix.

   EID-prefix-AFI:  Address family of EID-prefix according to [RFC5226]

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.  When a Map-Request is sent by an ITR because a
      data packet is received for a destination where there is no
      mapping entry, the EID-prefix is set to the destination IP address
      of the data packet.  And the 'EID mask-len' is set to 32 or 128
      for IPv4 or IPv6, respectively.  When an xTR wants to query a site
      about the status of a mapping it already has cached, the EID-
      prefix used in the Map-Request has the same mask-length as the
      EID-prefix returned from the site when it sent a Map-Reply
      message.

   Map-Reply Record:  When the M bit is set, this field is the size of
      <STRIKE><FONT color="red">the</FONT></STRIKE> <STRONG><FONT color="green">a
      single</FONT></STRONG> "Record" <STRIKE><FONT color="red">field</FONT></STRIKE> in the Map-Reply format.  This Map-Reply record
      contains the EID-to-RLOC mapping entry associated with the Source
      EID.  This allows the ETR which will receive this Map-Request to
      cache the data if it chooses to do so.

   Mapping Protocol Data:  See [CONS] <STRIKE><FONT color="red">or [ALT]</FONT></STRIKE> for details.  This field is
      optional and present when the UDP length indicates there is enough
      space in the packet to include it.

6.1.3.  EID-to-RLOC UDP Map-Request Message

   A Map-Request is sent from an ITR when it needs a mapping for an EID,
   wants to test an RLOC for reachability, or wants to refresh a mapping
   before TTL expiration.  For the initial case, the destination IP
   address used for the Map-Request is the destination-EID from the
   packet which had a mapping cache lookup failure.  For the latter 2
   cases, the destination IP address used for the Map-Request is one of
   the RLOC addresses from the locator-set of the map cache entry.  The
   source address is either an IPv4 or IPv6 RLOC address depending if
   the Map-Request is using an IPv4 versus IPv6 header, respectively.
   In all cases, the UDP source port number for the Map-Request message
   is a randomly allocated 16-bit value and the UDP destination port
   number is set to the well-known destination port number 4342.  A
   successful Map-Reply updates the cached set of RLOCs associated with
   the EID prefix range.

   One or more Map-Request (ITR-RLOC-AFI, ITR-RLOC-Address) fields MUST
   be filled in by the ITR.  The number of fields (minus 1) encoded MUST
   be placed in the IRC field.  The ITR MAY include all locally
   configured locators in this list or just provide one locator address
   from each address family it supports.  If the ITR erroneously
   provides no ITR-RLOC addresses, the Map-Replier MUST drop the Map-
   Request.

   Map-Requests can also be LISP encapsulated using UDP destination port
   4342 with a LISP type value set to "Encapsulated Control Message",
   when sent from an ITR to a Map-Resolver.  Likewise, Map-Requests are
   LISP encapsulated the same way from a Map-Server to an ETR.  Details
   on encapsulated Map-Requests and Map-Resolvers can be found in
   [LISP-MS].

   Map-Requests MUST be rate-limited.  It is recommended that a Map-
   Request for the same EID-prefix be sent no more than once per second.

   An ITR that is configured with mapping database information (i.e. it
   is also an ETR) may optionally include those mappings in a Map-
   Request.  When an ETR configured to accept and verify such
   "piggybacked" mapping data receives such a Map-Request and it does
   not have this mapping in the map-cache, it may originate a "verifying
   Map-Request", addressed to the map-requesting ITR.  If the ETR has a
   map-cache entry that matches the "piggybacked" EID and the RLOC is in
   the locator-set for the entry, then it may send the "verifying Map-
   Request" directly to the originating Map-Request source.  If the RLOC
   is not in the locator-set, then the ETR MUST send the "verifying Map-
   Request" to the "piggybacked" EID.  Doing this forces the "verifying
   Map-Request" to go through the mapping database system to reach the
   authoritative source of information about that EID, guarding against
   RLOC-spoofing in in the "piggybacked" mapping data.

6.1.4.  Map-Reply Message Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=2 |P|E|            Reserved               | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   2 (Map-Reply)

   P: This is the probe-bit which indicates that the Map-Reply is in
      response to a locator reachability probe Map-Request.  The nonce
      field MUST contain a copy of the nonce value from the original
      Map-Request.  See Section 6.3.2 for more details.

   E: Indicates that the ETR which sends this Map-Reply message is
      advertising that the site is enabled for the Echo-Nonce locator
      reachability algorithm.  See Section 6.3.1 for more details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this reply message.  A record
      is comprised of that portion of the packet labeled 'Record' above
      and occurs the number of times equal to Record count.

   Nonce:  A 24-bit value set in a Data-Probe packet or a 64-bit value
      from the Map-Request is echoed in this Nonce field of the Map-
      Reply.

   Record TTL:  The time in minutes the recipient of the Map-Reply will
      store the mapping.  If the TTL is 0, the entry SHOULD be removed
      from the cache immediately.  If the value is 0xffffffff, the
      recipient can decide locally how long to store the mapping.

   Locator Count:  The number of Locator entries.  A locator entry
      comprises what is labeled above as 'Loc'.  The locator count can
      be 0 indicating there are no locators for the EID-prefix.

   EID mask-len:  Mask length for EID prefix.

   ACT:  This 3-bit field describes negative Map-Reply actions.  These
      bits are used only when the 'Locator Count' field is set to 0.
      The action bits are encoded only in Map-Reply messages.  The
      actions defined are used by an ITR or PTR when a destination EID
      matches a negative mapping cache entry.  Unassigned values should
      cause a map-cache entry to be created and, when packets match this
      negative cache entry, they will be dropped.  The current assigned
      values are:

      (0) <STRIKE><FONT color="red">Drop:</FONT></STRIKE> <STRONG><FONT color="green">No-Action:</FONT></STRONG>  The <STRIKE><FONT color="red">packet</FONT></STRIKE> <STRONG><FONT color="green">map-cache</FONT></STRONG> is <STRIKE><FONT color="red">dropped silently.</FONT></STRIKE> <STRONG><FONT color="green">kept alive and packet
         encapsulation occurs.</FONT></STRONG>

      (1) Natively-Forward:  The packet is not encapsulated or dropped
         but natively forwarded.

      (2) Send-Map-Request:  The packet invokes sending a Map-Request.

      <STRONG><FONT color="green">(3) Drop:  A packet that matches this map-cache entry is dropped.</FONT></STRONG>

   A: The Authoritative bit, when sent by a UDP-based message is always
      set to 1 by an ETR.  See [CONS] for TCP-based Map-Replies.  When a
      Map-Server is proxy Map-Replying [LISP-MS] for a LISP site, the
      Authoritative bit is set to 0.  This indicates to requesting ITRs
      that the Map-Reply was not originated by a LISP node managed at
      the site that owns the EID-prefix.

   Map-Version Number:  When this 12-bit value is non-zero the Map-Reply
      sender is informing the ITR what the version number is for the
      EID-record contained in the Map-Reply.  The ETR can allocate this
      number internally but MUST coordinate this value with other ETRs
      for the site.  When this value is 0, there is no versioning
      information conveyed.  The Map-Version Number can be included in
      Map-Request and Map-Register messages.  See Section <STRIKE><FONT color="red">6.5.3</FONT></STRIKE> <STRONG><FONT color="green">6.6.3</FONT></STRONG> for more
      details.

   EID-AFI:  Address family of EID-prefix according to [RFC5226].

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.

   Priority:  each RLOC is assigned a unicast priority.  Lower values
      are more preferable.  When multiple RLOCs have the same priority,
      they may be used in a load-split fashion.  A value of 255 means
      the RLOC MUST NOT be used for unicast forwarding.

   Weight:  when priorities are the same for multiple RLOCs, the weight
      indicates how to balance unicast traffic between them.  Weight is
      encoded as a percentage of total unicast packets that match the
      mapping entry.  If a non-zero weight value is used for any RLOC,
      then all RLOCs MUST use a non-zero weight value and then the sum
      of all weight values MUST equal 100.  If a zero value is used for
      any RLOC weight, then all weights MUST be zero and the receiver of
      the Map-Reply will decide how to load-split traffic.  See
      Section <STRIKE><FONT color="red">6.4</FONT></STRIKE> <STRONG><FONT color="green">6.5</FONT></STRONG> for a suggested hash algorithm to distribute load
      across locators with same priority and equal weight values.  When
      a single RLOC exists in a mapping entry, the weight value MUST be
      set to 100 and ignored on receipt.

   M Priority:  each RLOC is assigned a multicast priority used by an
      ETR in a receiver multicast site to select an ITR in a source
      multicast site for building multicast distribution trees.  A value
      of 255 means the RLOC MUST NOT be used for joining a multicast
      distribution tree.

   M Weight:  when priorities are the same for multiple RLOCs, the
      weight indicates how to balance building multicast distribution
      trees across multiple ITRs.  The weight is encoded as a percentage
      of total number of trees build to the source site identified by
      the EID-prefix.  If a non-zero weight value is used for any RLOC,
      then all RLOCs MUST use a non-zero weight value and then the sum
      of all weight values MUST equal 100.  If a zero value is used for
      any RLOC weight, then all weights MUST be zero and the receiver of
      the Map-Reply will decide how to distribute multicast state across
      ITRs.  <STRONG><FONT color="green">When all weight values for a locator-set do not add up to
      100, they must be normalized so relative weighting is still
      maintained.</FONT></STRONG>

   Unused Flags:  set to 0 when sending and ignored on receipt.

   L: when this bit is set, the locator is flagged as a local locator to
      the ETR that is sending the Map-Reply.  When a Map-Server is doing
      proxy Map-Replying [LISP-MS] for a LISP site, the L bit is set to
      0 for all locators in this locator-set.

   p: when this bit is set, an ETR informs the RLOC-probing ITR that the
      locator address, for which this bit is set, is the one being RLOC-
      probed and may be different from the source address of the Map-
      Reply.  An ITR that RLOC-probes a particular locator, MUST use
      this locator for retrieving the data structure used to store the
      fact that the locator is reachable.  The "p" bit is set for a
      single locator in the same locator set.  If an implementation sets
      more than one "p" bit erroneously, the receiver of the Map-Reply
      MUST select the first locator.  The "p" bit MUST NOT be set for
      locator-set records sent in Map-Request and Map-Register messages.

   R: when this bit is set, the locator is known to be reachable from
      the Map-Reply sender's perspective.  <STRONG><FONT color="green">That is, the sender has a
      route for the other locators in its site.  This status
      notification is used as a hint to signal to remote sites the up/
      down status of the device that is assigned the locator address.
      Also see Section 6.4 for another use-case for the R-bit.</FONT></STRONG>

   Locator:  an IPv4 or IPv6 address (as encoded by the 'Loc-AFI' field)
      assigned to an <STRIKE><FONT color="red">ETR or router acting as a proxy replier for the
      EID-prefix.</FONT></STRIKE> <STRONG><FONT color="green">ETR.</FONT></STRONG>  Note that the destination RLOC address MAY be
      an anycast address.  A source RLOC can be an anycast address as
      well.  The source or destination RLOC MUST NOT be the broadcast
      address (255.255.255.255 or any subnet broadcast address known to
      the router), and MUST NOT be a link-local multicast address.  The
      source RLOC MUST NOT be a multicast address.  The destination RLOC
      SHOULD be a multicast address if it is being mapped from a
      multicast destination EID.

   Mapping Protocol Data:  See [CONS] or [ALT] for details.  This field
      is optional and present when the UDP length indicates there is
      enough space in the packet to include it.

6.1.5.  EID-to-RLOC UDP Map-Reply Message

   <STRIKE><FONT color="red">When a Data Probe packet or a Map-Request triggers a</FONT></STRIKE>

   <STRONG><FONT color="green">A</FONT></STRONG> Map-Reply <STRIKE><FONT color="red">to be
   sent, the RLOCs associated with the</FONT></STRIKE> <STRONG><FONT color="green">returns an</FONT></STRONG> EID-prefix <STRIKE><FONT color="red">matched by</FONT></STRIKE> <STRONG><FONT color="green">that is less than or equal specific
   for</FONT></STRONG> the EID <STRIKE><FONT color="red">in</FONT></STRIKE> <STRONG><FONT color="green">that is being requested.  The EID being requested is
   either from</FONT></STRONG> the <STRIKE><FONT color="red">original packet</FONT></STRIKE> destination <STRIKE><FONT color="red">IP address</FONT></STRIKE> field <STRIKE><FONT color="red">will be returned.</FONT></STRIKE> <STRONG><FONT color="green">of an IP header of a Data-Probe or
   the EID record of a Map-Request.</FONT></STRONG>  The RLOCs in the Map-Reply are <STRIKE><FONT color="red">the</FONT></STRIKE>
   globally-routable IP addresses of <STRONG><FONT color="green">all ETRs for</FONT></STRONG> the <STRIKE><FONT color="red">ETR</FONT></STRIKE> <STRONG><FONT color="green">LISP site.  Each
   RLOC conveys status reachability</FONT></STRONG> but <STRIKE><FONT color="red">are</FONT></STRIKE> <STRONG><FONT color="green">does</FONT></STRONG> not <STRIKE><FONT color="red">necessarily reachable; separate</FONT></STRIKE> <STRONG><FONT color="green">convey path
   reachability from a requesters perspective.  Separate</FONT></STRONG> testing of <STRONG><FONT color="green">path</FONT></STRONG>
   reachability is <STRIKE><FONT color="red">required.</FONT></STRIKE> <STRONG><FONT color="green">required, See Section 6.3 for details.</FONT></STRONG>

   Note that a Map-Reply may contain different EID-prefix granularity
   (prefix + length) than the Map-Request which triggers it.  This might
   occur if a Map-Request were for a prefix that had been returned by an
   earlier Map-Reply.  In such a case, the requester updates its cache
   with the new prefix information and granularity.  For example, a
   requester with two cached EID-prefixes that are covered by a Map-
   Reply containing one, less-specific prefix, replaces the entry with
   the less-specific EID-prefix.  Note that the reverse, replacement of
   one less-specific prefix with multiple more-specific prefixes, can
   also occur but not by removing the less-specific prefix rather by
   adding the more-specific prefixes which during a lookup will override
   the less-specific prefix.

   When an ETR is configured with overlapping EID-prefixes, a Map-
   Request with an EID that longest matches any EID-prefix MUST be
   returned in a single Map-Reply message.  For instance, if an ETR had
   database mapping entries for EID-prefixes:

     10.0.0.0/8
     10.1.0.0/16
     10.1.1.0/24
     10.1.2.0/24

   A Map-Request for EID 10.1.1.1 would cause a Map-Reply with a record
   count of 1 to be returned with a mapping record EID-prefix of
   10.1.1.0/24.

   A Map-Request for EID 10.1.5.5, would cause a Map-Reply with a record
   count of 3 to be returned with mapping records for EID-prefixes
   10.1.0.0/16, 10.1.1.0/24, and 10.1.2.0/24.

   Note that not all overlapping EID-prefixes need to be returned, only
   the more specifics (note in the second example above 10.0.0.0/8 was
   not returned for requesting EID 10.1.5.5) entries for the matching
   EID-prefix of the requesting EID.  When more than one EID-prefix is
   returned, all SHOULD use the same Time-to-Live value so they can all
   time out at the same time.  When a more specific EID-prefix is
   received later, its Time-to-Live value in the Map-Reply record can be
   stored even when other less specifics exist.  When a <STRIKE><FONT color="red">a</FONT></STRIKE> less specific
   EID-prefix is received later, its map-cache expiration time SHOULD be
   set to the minimum expiration time of any more specific EID-prefix in
   the map-cache.

   Map-Replies SHOULD be sent for an EID-prefix no more often than once
   per second to the same requesting router.  For scalability, it is
   expected that aggregation of EID addresses into EID-prefixes will
   allow one Map-Reply to satisfy a mapping for the EID addresses in the
   prefix range thereby reducing the number of Map-Request messages.

   Map-Reply records can have an empty locator-set.  This type of a Map-
   Reply is called a Negative Map-Reply.  Negative Map-Replies convey
   special actions by the sender to the ITR or PTR which have solicited
   the Map-Reply.  There are two primary applications for Negative Map-
   Replies.  The first is for a Map-Resolver to instruct an ITR or PTR
   when a destination is for a LISP site versus a non-LISP site.  And
   the other is to source quench Map-Requests which are sent for non-
   allocated EIDs.

   For each Map-Reply record, the list of locators in a locator-set MUST
   appear in the same order for each ETR that originates a Map-Reply
   message.  The locator-set MUST be sorted in order of ascending IP
   address where an IPv4 locator address is considered numerically 'less
   than' an IPv6 locator address.

   When sending a Map-Reply message, the destination address is copied
   from the one of the ITR-RLOC fields from the Map-Request.  The ETR
   can choose a locator address from one of the address families it
   supports.  For Data-Probes, the destination address of the Map-Reply
   is copied from the source address of the Data-Probe message which is
   invoking the reply.  The source address of the Map-Reply is one of
   the local locator addresses listed in the locator-set of any mapping
   record in the message and SHOULD be chosen to allow uRPF checks to
   succeed in the upstream service provider.  The destination port of a
   Map-Reply message is copied from the source port of the Map-Request
   or Data-Probe and the source port of the Map-Reply message is set to
   the well-known UDP port 4342.

6.1.5.1.  Traffic Redirection with Coarse EID-Prefixes

   When an ETR is misconfigured or compromised, it could return coarse
   EID-prefixes in Map-Reply messages it sends.  The EID-prefix could
   cover EID-prefixes which are allocated to other sites redirecting
   their traffic to the locators of the compromised site.

   To solve this problem, there are two basic solutions that could be
   used.  The first is to have Map-Servers proxy-map-reply on behalf of
   ETRs so their registered EID-prefixes are the ones returned in Map-
   Replies.  Since the interaction between an ETR and Map-Server is
   secured with shared-keys, it is more difficult for an ETR to
   misbehave.  The second solution is to have ITRs and PTRs cache EID-
   prefixes with mask-lengths that are greater than or equal to a
   configured prefix length.  This limits the damage to a specific width
   of any EID-prefix advertised, but needs to be coordinated with the
   allocation of site prefixes.  These solutions can be used
   independently or at the same time.

   At the time of this writing, other approaches are being considered
   and researched.

6.1.6.  Map-Register Message Format

   The usage details of the Map-Register message can be found in
   specification [LISP-MS].  This section solely defines the message
   format.

   The message is sent in UDP with a destination UDP port of 4342 and a
   randomly selected UDP source port number.

   The Map-Register message format is:

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3 |P|            Reserved                 | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |            Key ID             |  Authentication Data Length   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       ~                     Authentication Data                       ~
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   3 (Map-Register)

   P: This is the proxy-map-reply bit, when set to 1 an ETR sends a Map-
      Register message requesting for the Map-Server to proxy Map-Reply.
      The Map-Server will send non-authoritative Map-Replies on behalf
      of the ETR.  Details on this usage will be provided in a future
      version of this draft.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this Map-Register message.  A
      record is comprised of that portion of the packet labeled 'Record'
      above and occurs the number of times equal to Record count.

   Nonce:  This 8-byte Nonce field is set to 0 in Map-Register messages.

   Key ID:  A configured ID to find the configured Message
      Authentication Code (MAC) algorithm and key value used for the
      authentication function.

   Authentication Data Length:  The length in bytes of the
      Authentication Data field that follows this field.  The length of
      the <STRIKE><FONT color="red">the</FONT></STRIKE> Authentication Data field is dependent on the Message
      Authentication Code (MAC) algorithm used.  The length field allows
      a device that doesn't know the MAC algorithm to correctly parse
      the packet.

   Authentication Data:  The message digest used from the output of the
      Message Authentication Code (MAC) algorithm.  The entire Map-
      Register payload is authenticated with this field preset to 0.
      After the MAC is computed, it is placed in this field.
      Implementations of this specification MUST include support for
      HMAC-SHA-1-96 [RFC2404] and support for HMAC-SHA-128-256 [RFC4634]
      is recommended.

   The definition of the rest of the Map-Register can be found in the
   Map-Reply section.  <STRIKE><FONT color="red">However, the record TTL field is not used and set
   to 0.</FONT></STRIKE>

6.1.7.  Encapsulated Control Message Format

   An Encapsulated Control Message is used to encapsulate control
   packets sent between xTRs and the mapping database system described
   in [LISP-MS].

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   OH  |                      (uses RLOC addresses)                    |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4342        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LH  |Type=8 |                   Reserved                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   IH  |                  (uses RLOC or EID addresses)                 |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = yyyy        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LCM |                      LISP Control Message                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet header descriptions:

   OH:   The outer IPv4 or IPv6 header which uses RLOC addresses in the
      source and destination header address fields.

   UDP:   The outer UDP header with destination port 4342.  The source
      port is randomly allocated.  The checksum field MUST be non-zero.

   LH:   Type 8 is defined to be a "LISP Encapsulated Control Message"
      and what follows is either an IPv4 or IPv6 header as encoded by
      the first 4 bits after the reserved field.

   IH:   The inner IPv4 or IPv6 header which can use either RLOC or EID
      addresses in the header address fields.  When a Map-Request is
      encapsulated in this packet format the destination address in this
      header is an EID.

   UDP:   The inner UDP header where the port assignments depends on the
      control packet being encapsulated.  When the control packet is a
      Map-Request or Map-Register, the source port is randomly assigned
      and the destination port is 4342.  When the control packet is a
      Map-Reply, the source port is 4342 and the destination port is
      assigned from the source port of the invoking Map-Request.  Port
      number 4341 MUST NOT be assigned to either port.  The checksum
      field MUST be non-zero.

   LCM:   The format is one of the control message formats described in
      this section.  At this time, only Map-Request messages and PIM
      Join-Prune messages [MLISP] are allowed to be encapsulated.
      Encapsulating other types of LISP control messages are for further
      study.  When Map-Requests are sent for RLOC-probing purposes (i.e
      the probe-bit is set), they MUST NOT be sent inside Encapsulated
      Control Messages.

6.2.  Routing Locator Selection

   Both client-side and server-side may need control over the selection
   of RLOCs for conversations between them.  This control is achieved by
   manipulating the Priority and Weight fields in EID-to-RLOC Map-Reply
   messages.  Alternatively, RLOC information may be gleaned from
   received tunneled packets or EID-to-RLOC Map-Request messages.

   The following enumerates different scenarios for choosing RLOCs and
   the controls that are available:

   o  Server-side returns one RLOC.  Client-side can only use one RLOC.
      Server-side has complete control of the selection.

   o  Server-side returns a list of RLOC where a subset of the list has
      the same best priority.  Client can only use the subset list
      according to the weighting assigned by the server-side.  In this
      case, the server-side controls both the subset list and load-
      splitting across its members.  The client-side can use RLOCs
      outside of the subset list if it determines that the subset list
      is unreachable (unless RLOCs are set to a Priority of 255).  Some
      sharing of control exists: the server-side determines the
      destination RLOC list and load distribution while the client-side
      has the option of using alternatives to this list if RLOCs in the
      list are unreachable.

   o  Server-side sets weight of 0 for the RLOC subset list.  In this
      case, the client-side can choose how the traffic load is spread
      across the subset list.  Control is shared by the server-side
      determining the list and the client determining load distribution.
      Again, the client can use alternative RLOCs if the server-provided
      list of RLOCs are unreachable.

   o  Either side (more likely on the server-side ETR) decides not to
      send a Map-Request.  For example, if the server-side ETR does not
      send Map-Requests, it gleans RLOCs from the client-side ITR,
      giving the client-side ITR responsibility for bidirectional RLOC
      reachability and preferability.  Server-side ETR gleaning of the
      client-side ITR RLOC is done by caching the inner header source
      EID and the outer header source RLOC of received packets.  The
      client-side ITR controls how traffic is returned and can alternate
      using an outer header source RLOC, which then can be added to the
      list the server-side ETR uses to return traffic.  Since no
      Priority or Weights are provided using this method, the server-
      side ETR MUST assume each client-side ITR RLOC uses the same best
      Priority with a Weight of zero.  In addition, since EID-prefix
      encoding cannot be conveyed in data packets, the EID-to-RLOC cache
      on tunnel routers can grow to be very large.

   o  A "gleaned" map-cache entry, one learned from the source RLOC of a
      received encapsulated packet, is only stored and used for a few
      seconds, pending verification.  Verification is performed by
      sending a Map-Request to the source EID (the inner header IP
      source address) of the received encapsulated packet.  A reply to
      this "verifying Map-Request" is used to fully populate the map-
      cache entry for the "gleaned" EID and is stored and used for the
      time indicated from the TTL field of a received Map-Reply.  When a
      verified map-cache entry is stored, data gleaning no longer occurs
      for subsequent packets which have a source EID that matches the
      EID-prefix of the verified entry.

   RLOCs that appear in EID-to-RLOC Map-Reply messages are assumed to be
   reachable when the R-bit for the locator record is set to 1.  Neither
   the information contained in a Map-Reply or that stored in the
   mapping database system provide reachability information for RLOCs.
   Such reachability needs to be determined separately, using one or
   more of the Routing Locator Reachability Algorithms described in the
   next section.

6.3.  Routing Locator Reachability

   Several mechanisms for determining RLOC reachability are currently
   defined:

   1.  An ETR may examine the Loc-Status-Bits in the LISP header of an
       encapsulated data packet received from an ITR.  If the ETR is
       also acting as an ITR and has traffic to return to the original
       ITR site, it can use this status information to help select an
       RLOC.

   2.  An ITR may receive an ICMP Network or ICMP Host Unreachable
       message for an RLOC it is using.  This indicates that the RLOC is
       likely down.

   3.  An ITR which participates in the global routing system can
       determine that an RLOC is down if no BGP RIB route exists that
       matches the RLOC IP address.

   4.  An ITR may receive an ICMP Port Unreachable message from a
       destination host.  This occurs if an ITR attempts to use
       interworking [INTERWORK] and LISP-encapsulated data is sent to a
       non-LISP-capable site.

   5.  An ITR may receive a Map-Reply from a ETR in response to a
       previously sent Map-Request.  The RLOC source of the Map-Reply is
       likely up since the ETR was able to send the Map-Reply to the
       ITR.

   6.  When an ETR receives an encapsulated packet from an ITR, the
       source RLOC from the outer header of the packet is likely up.

   7.  An ITR/ETR pair can use the Locator Reachability Algorithms
       described in this section, namely Echo-Noncing or RLOC-Probing.

   When determining Locator up/down reachability by examining the Loc-
   Status-Bits from the LISP encapsulated data packet, an ETR will
   receive up to date status from an encapsulating ITR about
   reachability for all ETRs at the site.  CE-based ITRs at the source
   site can determine reachability relative to each other using the site
   IGP as follows:

   o  Under normal circumstances, each ITR will advertise a default
      route into the site IGP.

   o  If an ITR fails or if the upstream link to its PE fails, its
      default route will either time-out or be withdrawn.

   Each ITR can thus observe the presence or lack of a default route
   originated by the others to determine the Locator Status Bits it sets
   for them.

   RLOCs listed in a Map-Reply are numbered with ordinals 0 to n-1.  The
   Loc-Status-Bits in a LISP encapsulated packet are numbered from 0 to
   n-1 starting with the least significant bit.  For example, if an RLOC
   listed in the 3rd position of the Map-Reply goes down (ordinal value
   2), then all ITRs at the site will clear the 3rd least significant
   bit (xxxx x0xx) of the Loc-Status-Bits field for the packets they
   encapsulate.

   When an ETR decapsulates a packet, it will check for any change in
   the Loc-Status-Bits field.  When a bit goes from 1 to 0, the ETR will
   refrain from encapsulating packets to an RLOC that is indicated as
   down.  It will only resume using that RLOC if the corresponding Loc-
   Status-Bit returns to a value of 1.  Loc-Status-Bits are associated
   with a locator-set per EID-prefix.  Therefore, when a locator becomes
   unreachable, the Loc-Status-Bit that corresponds to that locator's
   position in the list returned by the last Map-Reply will be set to
   zero for that particular EID-prefix.

   When ITRs at the site are not deployed in CE routers, the IGP can
   still be used to determine the reachability of Locators provided they
   are injected into the IGP.  This is typically done when a /32 address
   is configured on a loopback interface.

   When ITRs receive ICMP Network or Host Unreachable messages as a
   method to determine unreachability, they will refrain from using
   Locators which are described in Locator lists of Map-Replies.
   However, using this approach is unreliable because many network
   operators turn off generation of ICMP Unreachable messages.

   If an ITR does receive an ICMP Network or Host Unreachable message,
   it MAY originate its own ICMP Unreachable message destined for the
   host that originated the data packet the ITR encapsulated.

   Also, BGP-enabled ITRs can unilaterally examine the BGP RIB to see if
   a locator address from a locator-set in a mapping entry matches a
   prefix.  If it does not find one and BGP is running in the Default
   Free Zone (DFZ), it can decide to not use the locator even though the
   Loc-Status-Bits indicate the locator is up.  In this case, the path
   from the ITR to the ETR that is assigned the locator is not
   available.  More details are in [LOC-ID-ARCH].

   Optionally, an ITR can send a Map-Request to a Locator and if a Map-
   Reply is returned, reachability of the Locator has been determined.
   Obviously, sending such probes increases the number of control
   messages originated by tunnel routers for active flows, so Locators
   are assumed to be reachable when they are advertised.

   This assumption does create a dependency: Locator unreachability is
   detected by the receipt of ICMP Host Unreachable messages.  When an
   Locator has been determined to be unreachable, it is not used for
   active traffic; this is the same as if it were listed in a Map-Reply
   with priority 255.

   The ITR can test the reachability of the unreachable Locator by
   sending periodic Requests.  Both Requests and Replies MUST be rate-
   limited.  Locator reachability testing is never done with data
   packets since that increases the risk of packet loss for end-to-end
   sessions.

   When an ETR decapsulates a packet, it knows that it is reachable from
   the encapsulating ITR because that is how the packet arrived.  In
   most cases, the ETR can also reach the ITR but cannot assume this to
   be true due to the possibility of path asymmetry.  In the presence of
   unidirectional traffic flow from an ITR to an ETR, the ITR SHOULD NOT
   use the lack of return traffic as an indication that the ETR is
   unreachable.  Instead, it MUST use an alternate mechanisms to
   determine reachability.

6.3.1.  Echo Nonce Algorithm

   When data flows bidirectionally between locators from different
   sites, a simple mechanism called "nonce echoing" can be used to
   determine reachability between an ITR and ETR.  When an ITR wants to
   solicit a nonce echo, it sets the N and E bits and places a 24-bit
   nonce in the LISP header of the next encapsulated data packet.

   When this packet is received by the ETR, the encapsulated packet is
   forwarded as normal.  When the ETR next sends a data packet to the
   ITR, it includes the nonce received earlier with the N bit set and E
   bit cleared.  The ITR sees this "echoed nonce" and knows the path to
   and from the ETR is up.

   The ITR will set the E-bit and N-bit for every packet it sends while
   in echo-nonce-request state.  The time the ITR waits to process the
   echoed nonce before it determines the path is unreachable is variable
   and a choice left for the implementation.

   If the ITR is receiving packets from the ETR but does not see the
   nonce echoed while being in echo-nonce-request state, then the path
   to the ETR is unreachable.  This decision may be overridden by other
   locator reachability algorithms.  Once the ITR determines the path to
   the ETR is down it can switch to another locator for that EID-prefix.

   Note that "ITR" and "ETR" are relative terms here.  Both devices MUST
   be implementing both ITR and ETR functionality for the echo nonce
   mechanism to operate.

   The ITR and ETR may both go into echo-nonce-request state at the same
   time.  The number of packets sent or the time during which echo nonce
   requests are sent is an implementation specific setting.  However,
   when an ITR is in echo-nonce-request state, it can echo the ETR's
   nonce in the next set of packets that it encapsulates and then
   subsequently, continue sending echo-nonce-request packets.

   This mechanism does not completely solve the forward path
   reachability problem as traffic may be unidirectional.  That is, the
   ETR receiving traffic at a site may not be the same device as an ITR
   which transmits traffic from that site or the site to site traffic is
   unidirectional so there is no ITR returning traffic.

   The echo-nonce algorithm is bilateral.  That is, if one side sets the
   E-bit and the other side is not enabled for echo-noncing, then the
   echoing of the nonce does not occur and the requesting side may
   regard the locator unreachable erroneously.  An ITR SHOULD only set
   the E-bit in a encapsulated data packet when it knows the ETR is
   enabled for echo-noncing.  This is conveyed by the E-bit in the Map-
   Reply message.

   Note that other locator reachability mechanisms are being researched
   and can be used to compliment or even override the Echo Nonce
   Algorithm.  See next section for an example of control-plane probing.

6.3.2.  RLOC Probing Algorithm

   RLOC Probing is a method that an ITR or PTR can use to determine the
   reachability status of one or more locators that it has cached in a
   map-cache entry.  The probe-bit of the Map-Request and Map-Reply
   messages are used for RLOC Probing.

   RLOC probing is done in the control-plane on a timer basis where an
   ITR or PTR will originate a Map-Request destined to a locator address
   from one of its own locator addresses.  A Map-Request used as an
   RLOC-probe is NOT encapsulated and NOT sent to a Map-Server or on the
   ALT like one would when soliciting mapping data.  The EID record
   encoded in the Map-Request is the EID-prefix of the map-cache entry
   cached by the ITR or PTR.  The ITR <STRIKE><FONT color="red">or PTR</FONT></STRIKE> may include a mapping data record
   for its own database mapping <STRIKE><FONT color="red">information.</FONT></STRIKE> <STRONG><FONT color="green">information which contains the local
   EID-prefixes and RLOCs for its site.</FONT></STRONG>

   When an ETR receives a Map-Request message with the probe-bit set, it
   returns a Map-Reply with the probe-bit set.  The source address of
   the Map-Reply is set from the destination address of the Map-Request
   and the destination address of the Map-Reply is set from the source
   address of the Map-Request.  The Map-Reply SHOULD contain mapping
   data for the EID-prefix contained in the Map-Request.  This provides
   the opportunity for the ITR or PTR, which sent the RLOC-probe to get
   mapping updates if there were changes to the ETR's database mapping
   entries.

   There are advantages and disadvantages of RLOC Probing.  The greatest
   benefit of RLOC Probing is that it can handle many failure scenarios
   allowing the ITR to determine when the path to a specific locator is
   reachable or has become unreachable, thus providing a robust
   mechanism for switching to using another locator from the cached
   locator.  RLOC Probing can also provide rough RTT estimates between a
   pair of locators which can be useful for network management purposes
   as well as for selecting low delay paths.  The major disadvantage of
   RLOC Probing is in the number of control messages required and the
   amount of bandwidth used to obtain those benefits, especially if the
   requirement for failure detection times are very small.

   Continued research and testing will attempt to characterize the
   tradeoffs of failure detection times versus message overhead.

6.4.  <STRONG><FONT color="green">EID Reachability within a LISP Site

   A site may be multihomed using two or more ETRs.  The hosts and
   infrastructure within a site will be addressed using one or more EID
   prefixes that are mapped to the RLOCs of the relevant ETRs in the
   mapping system.  One possible failure mode is for an ETR to lose
   reachability to one or more of the EID prefixes within its own site.
   When this occurs when the ETR sends Map-Replies, it can clear the
   R-bit associated with its own locator.  And when the ETR is also an
   ITR, it can clear its locator-status-bit in the encapsulation data
   header.

6.5.</FONT></STRONG>  Routing Locator Hashing

   When an ETR provides an EID-to-RLOC mapping in a Map-Reply message to
   a requesting ITR, the locator-set for the EID-prefix may contain
   different priority values for each locator address.  When more than
   one best priority locator exists, the ITR can decide how to load
   share traffic against the corresponding locators.

   The following hash algorithm may be used by an ITR to select a
   locator for a packet destined to an EID for the EID-to-RLOC mapping:

   1.  Either a source and destination address hash can be used or the
       traditional 5-tuple hash which includes the source and
       destination addresses, source and destination TCP, UDP, or SCTP
       port numbers and the IP protocol number field or IPv6 next-
       protocol fields of a packet a host originates from within a LISP
       site.  When a packet is not a TCP, UDP, or SCTP packet, the
       source and destination addresses only from the header are used to
       compute the hash.

   2.  Take the hash value and divide it by the number of locators
       stored in the locator-set for the EID-to-RLOC mapping.

   3.  The remainder will be yield a value of 0 to "number of locators
       minus 1".  Use the remainder to select the locator in the
       locator-set.

   Note that when a packet is LISP encapsulated, the source port number
   in the outer UDP header needs to be set.  Selecting a <STRIKE><FONT color="red">random</FONT></STRIKE> <STRONG><FONT color="green">hashed</FONT></STRONG> value
   allows core routers which are attached to Link Aggregation Groups
   (LAGs) to load-split the encapsulated packets across member links of
   such LAGs.  Otherwise, core routers would see a single flow, since
   packets have a source address of the ITR, for packets which are
   originated by different EIDs at the source site.  A suggested setting
   for the source port number computed by an ITR is a 5-tuple hash
   function on the inner header, as described above.

   Many core router implementations use a 5-tuple hash to decide how to
   balance packet load across members of a LAG.  The 5-tuple hash
   includes the source and destination addresses of the packet and the
   source and destination ports when the protocol number in the packet
   is TCP or UDP.  For this reason, UDP encoding is used for LISP
   encapsulation.

<STRIKE><FONT color="red">6.5.</FONT></STRIKE>

<STRONG><FONT color="green">6.6.</FONT></STRONG>  Changing the Contents of EID-to-RLOC Mappings

   Since the LISP architecture uses a caching scheme to retrieve and
   store EID-to-RLOC mappings, the only way an ITR can get a more up-to-
   date mapping is to re-request the mapping.  However, the ITRs do not
   know when the mappings change and the ETRs do not keep track of who
   requested its mappings.  For scalability reasons, we want to maintain
   this approach but need to provide a way for ETRs change their
   mappings and inform the sites that are currently communicating with
   the ETR site using such mappings.

   When a locator record is added to the end of a locator-set, it is
   easy to update mappings.  We assume new mappings will maintain the
   same locator ordering as the old mapping but just have new locators
   appended to the end of the list.  So some ITRs can have a new mapping
   while other ITRs have only an old mapping that is used until they
   time out.  When an ITR has only an old mapping but detects bits set
   in the loc-status-bits that correspond to locators beyond the list it
   has cached, it simply ignores them.  However, this can only happen
   for locator addresses that are lexicographically greater than the
   locator addresses in the existing locator-set.

   When a locator record is removed from a locator-set, ITRs that have
   the mapping cached will not use the removed locator because the xTRs
   will set the loc-status-bit to 0.  So even if the locator is in the
   list, it will not be used.  For new mapping requests, the xTRs can
   set the locator AFI to 0 (indicating an unspecified address), as well
   as setting the corresponding loc-status-bit to 0.  This forces ITRs
   with old or new mappings to avoid using the removed locator.

   If many changes occur to a mapping over a long period of time, one
   will find empty record slots in the middle of the locator-set and new
   records appended to the locator-set.  At some point, it would be
   useful to compact the locator-set so the loc-status-bit settings can
   be efficiently packed.

   We propose here three approaches for locator-set compaction, one
   operational and two protocol mechanisms.  The operational approach
   uses a clock sweep method.  The protocol approaches use the concept
   of Solicit-Map-Requests and Map-Versioning.

<STRIKE><FONT color="red">6.5.1.</FONT></STRIKE>

<STRONG><FONT color="green">6.6.1.</FONT></STRONG>  Clock Sweep

   The clock sweep approach uses planning in advance and the use of
   count-down TTLs to time out mappings that have already been cached.
   The default setting for an EID-to-RLOC mapping TTL is 24 hours.  So
   there is a 24 hour window to time out old mappings.  The following
   clock sweep procedure is used:

   1.  24 hours before a mapping change is to take effect, a network
       administrator configures the ETRs at a site to start the clock
       sweep window.

   2.  During the clock sweep window, ETRs continue to send Map-Reply
       messages with the current (unchanged) mapping records.  The TTL
       for these mappings is set to 1 hour.

   3.  24 hours later, all previous cache entries will have timed out,
       and any active cache entries will time out within 1 hour.  During
       this 1 hour window the ETRs continue to send Map-Reply messages
       with the current (unchanged) mapping records with the TTL set to
       1 minute.

   4.  At the end of the 1 hour window, the ETRs will send Map-Reply
       messages with the new (changed) mapping records.  So any active
       caches can get the new mapping contents right away if not cached,
       or in 1 minute if they had the mapping cached.

<STRIKE><FONT color="red">6.5.2.</FONT></STRIKE>  <STRONG><FONT color="green">The new mappings
       are cached with a time to live equal to the TTL in the Map-Reply.

6.6.2.</FONT></STRONG>  Solicit-Map-Request (SMR)

   Soliciting a Map-Request is a selective way for xTRs, at the site
   where mappings change, to control the rate they receive requests for
   Map-Reply messages.  SMRs are also used to tell remote ITRs to update
   the mappings they have cached.

   Since the xTRs don't keep track of remote ITRs that have cached their
   mappings, they can not tell exactly who needs the new mapping
   entries.  So an xTR will solicit Map-Requests from sites it <STRIKE><FONT color="red">is
   currently</FONT></STRIKE> <STRONG><FONT color="green">has been</FONT></STRONG>
   sending encapsulated data <STRIKE><FONT color="red">to,</FONT></STRIKE> <STRONG><FONT color="green">to for the last minute,</FONT></STRONG> and only from those
   sites.  The <STRONG><FONT color="green">ETRs that the encapsulated data is going to are the LISP
   routers who receive SMR messages.  The</FONT></STRONG> xTRs can locally decide the
   algorithm for how often and to how many sites it sends SMR messages.

   An SMR message is simply a bit set in a Map-Request message.  An ITR
   or PTR will send a Map-Request when they receive an SMR message.
   Both the SMR sender and the Map-Request responder MUST rate-limited
   these messages.  <STRONG><FONT color="green">Rate-limiting can be implemented as a global rate-
   limiter or one rate-limiter per SMR destination.</FONT></STRONG>

   The following procedure shows how a SMR exchange occurs when a site
   is doing locator-set compaction for an EID-to-RLOC mapping:

   1.  When the database mappings in an ETR change, the ETRs at the site
       begin to send Map-Requests with the SMR bit set for each locator
       in each map-cache entry the ETR caches.

   2.  A remote xTR which receives the SMR message will schedule sending
       a Map-Request message to the source locator address of the SMR
       message.  A newly allocated random nonce is selected and the EID-
       prefix used is the one copied from the SMR message.

   3.  The remote xTR MUST rate-limit the Map-Request until it gets a
       Map-Reply while continuing to use the cached mapping.  <STRONG><FONT color="green">When Map
       Versioning is used, described in Section 6.6.3, an SMR sender can
       detect if an ITR is using the most up to date database mapping.</FONT></STRONG>

   4.  The ETRs at the site with the changed mapping will reply to the
       Map-Request with a Map-Reply message <STRIKE><FONT color="red">provided the Map-Request
       nonce matches the</FONT></STRIKE> <STRONG><FONT color="green">that has a</FONT></STRONG> nonce from the <STRIKE><FONT color="red">SMR.</FONT></STRIKE>
       <STRONG><FONT color="green">SMR-invoked Map-Request.</FONT></STRONG>  The Map-Reply messages SHOULD be rate
       limited.  This is important to avoid Map-Reply implosion.

   5.  The ETRs, at the site with the changed mapping, record the fact
       that the site that sent the Map-Request has received the new
       mapping data in the mapping cache entry for the remote site so
       the loc-status-bits are reflective of the new mapping for packets
       going to the remote site.  The ETR then stops sending SMR
       messages.

   For security reasons an ITR MUST NOT process unsolicited Map-Replies.
   The nonce MUST be carried from SMR packet, into the resultant Map-
   Request, and then into Map-Reply to reduce spoofing attacks.

   To avoid map-cache entry corruption by a third-party, a sender of an
   SMR-based Map-Request MUST be verified.  If an ITR receives an SMR-
   based Map-Request and the source is not in the locator-set for the
   stored map-cache entry, then the responding Map-Request MUST be sent
   with an EID destination to the mapping database system.  Since the
   mapping database system is more secure to reach an authoritative ETR,
   it will deliver the Map-Request to the authoritative source of the
   mapping data.

<STRIKE><FONT color="red">6.5.3.</FONT></STRIKE>

<STRONG><FONT color="green">6.6.3.</FONT></STRONG>  Database Map Versioning

   When there is unidirectional packet flow between an ITR and ETR, and
   the EID-to-RLOC mappings change on the ETR, it needs to inform the
   ITR so encapsulation can stop to a removed locator and start to a new
   locator in the locator-set.

   An ETR, when it sends Map-Reply messages, conveys its own Map-Version
   number.  This is known as the Destination Map-Version Number.  ITRs
   include the Destination Map-Version Number in packets they
   encapsulate to the site.  When an ETR decapsulates a packet and
   detects the Destination Map-Version Number is less than the current
   version for its mapping, the SMR procedure described in Section <STRIKE><FONT color="red">6.5.2</FONT></STRIKE> <STRONG><FONT color="green">6.6.2</FONT></STRONG>
   occurs.

   An ITR, when it encapsulates packets to ETRs, can convey its own Map-
   Version number.  This is known as the Source Map-Version Number.
   When an ETR decapsulates a packet and detects the Source Map-Version
   Number is greater than the last Map-Version Number sent in a Map-
   Reply from the ITR's site, the ETR will send a Map-Request to one of
   the ETRs for the source site.

   A Map-Version Number is used as a sequence number per EID-prefix.  So
   values that are greater, are considered to be more recent.  A value
   of 0 for the Source Map-Version Number or the Destination Map-Version
   Number conveys no versioning information and an xTR does no
   comparison with previously received Map-Version Numbers.

   A Map-Version Number can be included in Map-Register messages as
   well.  This is a good way for the Map-Server can assure that all ETRs
   for a site registering to it will be Map-Version number synchronized.

   See [VERSIONING] for a more detailed analysis and description of
   Database Map Versioning.

7.  Router Performance Considerations

   LISP is designed to be very hardware-based forwarding friendly.  By
   doing tunnel header prepending [RFC1955] and stripping instead of re-
   writing addresses, existing hardware can support the forwarding model
   with little or no modification.  Where modifications are required,
   they should be limited to re-programming existing hardware rather
   than requiring expensive design changes to hard-coded algorithms in
   silicon.

   A few implementation techniques can be used to incrementally
   implement LISP:

   o  When a tunnel encapsulated packet is received by an ETR, the outer
      destination address may not be the address of the router.  This
      makes it challenging for the control plane to get packets from the
      hardware.  This may be mitigated by creating special FIB entries
      for the EID-prefixes of EIDs served by the ETR (those for which
      the router provides an RLOC translation).  These FIB entries are
      marked with a flag indicating that control plane processing should
      be performed.  The forwarding logic of testing for particular IP
      protocol number value is not necessary.  No changes to existing,
      deployed hardware should be needed to support this.

   o  On an ITR, prepending a new IP header is as simple as adding more
      bytes to a MAC rewrite string and prepending the string as part of
      the outgoing encapsulation procedure.  Many routers that support
      GRE tunneling [RFC2784] or 6to4 tunneling [RFC3056] can already
      support this action.

   o  When a <STRIKE><FONT color="red">received packet's outer destination address contains an EID
      which</FONT></STRIKE> <STRONG><FONT color="green">packet</FONT></STRONG> is not <STRIKE><FONT color="red">intended to be forwarded on the</FONT></STRIKE> routable <STRIKE><FONT color="red">topology</FONT></STRIKE> <STRONG><FONT color="green">by the underlying routing system</FONT></STRONG>
      (i.e.  LISP 1.5), <STRIKE><FONT color="red">the</FONT></STRIKE> <STRONG><FONT color="green">its</FONT></STRONG> source address <STRIKE><FONT color="red">of a data packet</FONT></STRIKE> or <STRIKE><FONT color="red">the
      router</FONT></STRIKE> interface <STRIKE><FONT color="red">with which</FONT></STRIKE> the <STRIKE><FONT color="red">source is associated (the
      interface from which it</FONT></STRIKE> <STRONG><FONT color="green">packet</FONT></STRONG> was <STRIKE><FONT color="red">received)</FONT></STRIKE>
      <STRONG><FONT color="green">received on</FONT></STRONG> can be <STRIKE><FONT color="red">associated with</FONT></STRIKE> <STRONG><FONT color="green">used to select</FONT></STRONG> a VRF (Virtual <STRIKE><FONT color="red">Routing/Forwarding), in which a different (i.e. non-
      congruent) topology</FONT></STRIKE> <STRONG><FONT color="green">Routing/
      Forwarding).  The VRF's routing table</FONT></STRONG> can be used to find <STRIKE><FONT color="red">EID-to-RLOC</FONT></STRIKE> <STRONG><FONT color="green">EID-to-
      RLOC</FONT></STRONG> mappings.

8.  Deployment Scenarios

   This section will explore how and where ITRs and ETRs can be deployed
   and will discuss the pros and cons of each deployment scenario.
   There are two basic deployment trade-offs to consider: centralized
   versus distributed caches and flat, recursive, or re-encapsulating
   tunneling.

   When deciding on centralized versus distributed caching, the
   following issues should be considered:

   o  Are the tunnel routers spread out so that the caches are spread
      across all the memories of each router?

   o  Should management "touch points" be minimized by choosing few
      tunnel routers, just enough for redundancy?

   o  In general, using more ITRs doesn't increase management load,
      since caches are built and stored dynamically.  On the other hand,
      more ETRs does require more management since EID-prefix-to-RLOC
      mappings need to be explicitly configured.

   When deciding on flat, recursive, or re-encapsulation tunneling, the
   following issues should be considered:

   o  Flat tunneling implements a single tunnel between source site and
      destination site.  This generally offers better paths between
      sources and destinations with a single tunnel path.

   o  Recursive tunneling is when tunneled traffic is again further
      encapsulated in another tunnel, either to implement VPNs or to
      perform Traffic Engineering.  When doing VPN-based tunneling, the
      site has some control since the site is prepending a new tunnel
      header.  In the case of TE-based tunneling, the site may have
      control if it is prepending a new tunnel header, but if the site's
      ISP is doing the TE, then the site has no control.  Recursive
      tunneling generally will result in suboptimal paths but at the
      benefit of steering traffic to resource available parts of the
      network.

   o  The technique of re-encapsulation ensures that packets only
      require one tunnel header.  So if a packet needs to be rerouted,
      it is first decapsulated by the ETR and then re-encapsulated with
      a new tunnel header using a new RLOC.

   The next sub-sections will describe where tunnel routers can reside
   in the network.

8.1.  First-hop/Last-hop Tunnel Routers

   By locating tunnel routers close to hosts, the EID-prefix set is at
   the granularity of an IP subnet.  So at the expense of more EID-
   prefix-to-RLOC sets for the site, the caches in each tunnel router
   can remain relatively small.  But caches always depend on the number
   of non-aggregated EID destination flows active through these tunnel
   routers.

   With more tunnel routers doing encapsulation, the increase in control
   traffic grows as well: since the EID-granularity is greater, more
   Map-Requests and Map-Replies are traveling between more routers.

   The advantage of placing the caches and databases at these stub
   routers is that the products deployed in this part of the network
   have better price-memory ratios then their core router counterparts.
   Memory is typically less expensive in these devices and fewer routes
   are stored (only IGP routes).  These devices tend to have excess
   capacity, both for forwarding and routing state.

   LISP functionality can also be deployed in edge switches.  These
   devices generally have layer-2 ports facing hosts and layer-3 ports
   facing the Internet.  Spare capacity is also often available in these
   devices as well.

8.2.  Border/Edge Tunnel Routers

   Using customer-edge (CE) routers for tunnel endpoints allows the EID
   space associated with a site to be reachable via a small set of RLOCs
   assigned to the CE routers for that site.

   This offers the opposite benefit of the first-hop/last-hop tunnel
   router scenario: the number of mapping entries and network management
   touch points are reduced, allowing better scaling.

   One disadvantage is that less of the network's resources are used to
   reach host endpoints thereby centralizing the point-of-failure domain
   and creating network choke points at the CE router.

   Note that more than one CE router at a site can be configured with
   the same IP address.  In this case an RLOC is an anycast address.
   This allows resilience between the CE routers.  That is, if a CE
   router fails, traffic is automatically routed to the other routers
   using the same anycast address.  However, this comes with the
   disadvantage where the site cannot control the entrance point when
   the anycast route is advertised out from all border routers.  <STRONG><FONT color="green">Another
   disadvantage of using anycast locators is the limited advertisement
   scope of /32 (or /128 for IPv6) routes.</FONT></STRONG>

8.3.  ISP Provider-Edge (PE) Tunnel Routers

   Use of ISP PE routers as tunnel endpoint routers gives an ISP control
   over the location of the egress tunnel endpoints.  That is, the ISP
   can decide if the tunnel endpoints are in the destination site (in
   either CE routers or last-hop routers within a site) or at other PE
   edges.  The advantage of this case is that two or more tunnel headers
   can be avoided.  By having the PE be the first router on the path to
   encapsulate, it can choose a TE path first, and the ETR can
   decapsulate and re-encapsulate for a tunnel to the destination end
   site.

   An obvious disadvantage is that the end site has no control over
   where its packets flow or the RLOCs used.

   As mentioned in earlier sections a combination of these scenarios is
   possible at the expense of extra packet header overhead, if both site
   and provider want control, then recursive or re-encapsulating tunnels
   are used.

8.4.  LISP Functionality with Conventional NATs

   LISP routers can be deployed behind Network Address Translator (NAT)
   devices to provide the same set of packet services hosts have today
   when they are addressed out of private address space.

   It is important to note that a locator address in any LISP control
   message MUST be a globally routable address and therefore SHOULD NOT
   contain [RFC1918] addresses.  If a LISP router is configured with
   private addresses, they MUST be used only in the outer IP header so
   the NAT device can translate properly.  Otherwise, EID addresses MUST
   be translated before encapsulation is performed.  Both NAT
   translation and LISP encapsulation functions could be co-located in
   the same device.

   More details on LISP address translation can be found in [INTERWORK].

9.  Traceroute Considerations

   When a source host in a LISP site initiates a traceroute to a
   destination host in another LISP site, it is highly desirable for it
   to see the entire path.  Since packets are encapsulated from ITR to
   ETR, the hop across the tunnel could be viewed as a single hop.
   However, LISP traceroute will provide the entire path so the user can
   see 3 distinct segments of the path from a source LISP host to a
   destination LISP host:

      Segment 1 (in source LISP site based on EIDs):

          source-host ---&gt; first-hop ... next-hop ---&gt; ITR

      Segment 2 (in the core network based on RLOCs):

          ITR ---&gt; next-hop ... next-hop ---&gt; ETR

      Segment 3 (in the destination LISP site based on EIDs):

          ETR ---&gt; next-hop ... last-hop ---&gt; destination-host

   For segment 1 of the path, ICMP Time Exceeded messages are returned
   in the normal matter as they are today.  The ITR performs a TTL
   decrement and test for 0 before encapsulating.  So the ITR hop is
   seen by the traceroute source has an EID address (the address of
   site-facing interface).

   For segment 2 of the path, ICMP Time Exceeded messages are returned
   to the ITR because the TTL decrement to 0 is done on the outer
   header, so the destination of the ICMP messages are to the ITR RLOC
   address, the source RLOC address of the encapsulated traceroute
   packet.  The ITR looks inside of the ICMP payload to inspect the
   traceroute source so it can return the ICMP message to the address of
   the traceroute client as well as retaining the core router IP address
   in the ICMP message.  This is so the traceroute client can display
   the core router address (the RLOC address) in the traceroute output.
   The ETR returns its RLOC address and responds to the TTL decrement to
   0 like the previous core routers did.

   For segment 3, the next-hop router downstream from the ETR will be
   decrementing the TTL for the packet that was encapsulated, sent into
   the core, decapsulated by the ETR, and forwarded because it isn't the
   final destination.  If the TTL is decremented to 0, any router on the
   path to the destination of the traceroute, including the next-hop
   router or destination, will send an ICMP Time Exceeded message to the
   source EID of the traceroute client.  The ICMP message will be
   encapsulated by the local ITR and sent back to the ETR in the
   originated traceroute source site, where the packet will be delivered
   to the host.

9.1.  IPv6 Traceroute

   IPv6 traceroute follows the procedure described above since the
   entire traceroute data packet is included in ICMP Time Exceeded
   message payload.  Therefore, only the ITR needs to pay special
   attention for forwarding ICMP messages back to the traceroute source.

9.2.  IPv4 Traceroute

   For IPv4 traceroute, we cannot follow the above procedure since IPv4
   ICMP Time Exceeded messages only include the invoking IP header and 8
   bytes that follow the IP header.  Therefore, when a core router sends
   an IPv4 Time Exceeded message to an ITR, all the ITR has in the ICMP
   payload is the encapsulated header it prepended followed by a UDP
   header.  The original invoking IP header, and therefore the identity
   of the traceroute source is lost.

   The solution we propose to solve this problem is to cache traceroute
   IPv4 headers in the ITR and to match them up with corresponding IPv4
   Time Exceeded messages received from core routers and the ETR.  The
   ITR will use a circular buffer for caching the IPv4 and UDP headers
   of traceroute packets.  It will select a 16-bit number as a key to
   find them later when the IPv4 Time Exceeded messages are received.
   When an ITR encapsulates an IPv4 traceroute packet, it will use the
   16-bit number as the UDP source port in the encapsulating header.
   When the ICMP Time Exceeded message is returned to the ITR, the UDP
   header of the encapsulating header is present in the ICMP payload
   thereby allowing the ITR to find the cached headers for the
   traceroute source.  The ITR puts the cached headers in the payload
   and sends the ICMP Time Exceeded message to the traceroute source
   retaining the source address of the original ICMP Time Exceeded
   message (a core router or the ETR of the site of the traceroute
   destination).

   The signature of a traceroute packet comes in two forms.  The first
   form is encoded as a UDP message where the destination port is
   inspected for a range of values.  The second form is encoded as an
   ICMP message where the IP identification field is inspected for a
   well-known value.

9.3.  Traceroute using Mixed Locators

   When either an IPv4 traceroute or IPv6 traceroute is originated and
   the ITR encapsulates it in the other address family header, you
   cannot get all 3 segments of the traceroute.  Segment 2 of the
   traceroute can not be conveyed to the traceroute source since it is
   expecting addresses from intermediate hops in the same address format
   for the type of traceroute it originated.  Therefore, in this case,
   segment 2 will make the tunnel look like one hop.  All the ITR has to
   do to make this work is to not copy the inner TTL to the outer,
   encapsulating header's TTL when a traceroute packet is encapsulated
   using an RLOC from a different address family.  This will cause no
   TTL decrement to 0 to occur in core routers between the ITR and ETR.

10.  Mobility Considerations

   There are several kinds of mobility of which only some might be of
   concern to LISP.  Essentially they are as follows.

10.1.  Site Mobility

   A site wishes to change its attachment points to the Internet, and
   its LISP Tunnel Routers will have new RLOCs when it changes upstream
   providers.  Changes in EID-RLOC mappings for sites are expected to be
   handled by configuration, outside of the LISP protocol.

10.2.  Slow Endpoint Mobility

   An individual endpoint wishes to move, but is not concerned about
   maintaining session continuity.  Renumbering is involved.  LISP can
   help with the issues surrounding renumbering [RFC4192] [LISA96] by
   decoupling the address space used by a site from the address spaces
   used by its ISPs.  [RFC4984]

10.3.  Fast Endpoint Mobility

   Fast endpoint mobility occurs when an endpoint moves relatively
   rapidly, changing its IP layer network attachment point.  Maintenance
   of session continuity is a goal.  This is where the Mobile IPv4
   [RFC3344bis] and Mobile IPv6 [RFC3775] [RFC4866] mechanisms are used,
   and primarily where interactions with LISP need to be explored.

   The problem is that as an endpoint moves, it may require changes to
   the mapping between its EID and a set of RLOCs for its new network
   location.  When this is added to the overhead of mobile IP binding
   updates, some packets might be delayed or dropped.

   In IPv4 mobility, when an endpoint is away from home, packets to it
   are encapsulated and forwarded via a home agent which resides in the
   home area the endpoint's address belongs to.  The home agent will
   encapsulate and forward packets either directly to the endpoint or to
   a foreign agent which resides where the endpoint has moved to.
   Packets from the endpoint may be sent directly to the correspondent
   node, may be sent via the foreign agent, or may be reverse-tunneled
   back to the home agent for delivery to the mobile node.  As the
   mobile node's EID or available RLOC changes, LISP EID-to-RLOC
   mappings are required for communication between the mobile node and
   the home agent, whether via foreign agent or not.  As a mobile
   endpoint changes networks, up to three LISP mapping changes may be
   required:

   o  The mobile node moves from an old location to a new visited
      network location and notifies its home agent that it has done so.
      The Mobile IPv4 control packets the mobile node sends pass through
      one of the new visited network's ITRs, which needs a EID-RLOC
      mapping for the home agent.

   o  The home agent might not have the EID-RLOC mappings for the mobile
      node's "care-of" address or its foreign agent in the new visited
      network, in which case it will need to acquire them.

   o  When packets are sent directly to the correspondent node, it may
      be that no traffic has been sent from the new visited network to
      the correspondent node's network, and the new visited network's
      ITR will need to obtain an EID-RLOC mapping for the correspondent
      node's site.

   In addition, if the IPv4 endpoint is sending packets from the new
   visited network using its original EID, then LISP will need to
   perform a route-returnability check on the new EID-RLOC mapping for
   that EID.

   In IPv6 mobility, packets can flow directly between the mobile node
   and the correspondent node in either direction.  The mobile node uses
   its "care-of" address (EID).  In this case, the route-returnability
   check would not be needed but one more LISP mapping lookup may be
   required instead:

   o  As above, three mapping changes may be needed for the mobile node
      to communicate with its home agent and to send packets to the
      correspondent node.

   o  In addition, another mapping will be needed in the correspondent
      node's ITR, in order for the correspondent node to send packets to
      the mobile node's "care-of" address (EID) at the new network
      location.

   When both endpoints are mobile the number of potential mapping
   lookups increases accordingly.

   As a mobile node moves there are not only mobility state changes in
   the mobile node, correspondent node, and home agent, but also state
   changes in the ITRs and ETRs for at least some EID-prefixes.

   The goal is to support rapid adaptation, with little delay or packet
   loss for the entire system.  Also IP mobility can be modified to
   require fewer mapping changes.  In order to increase overall system
   performance, there may be a need to reduce the optimization of one
   area in order to place fewer demands on another.

   In LISP, one possibility is to "glean" information.  When a packet
   arrives, the ETR could examine the EID-RLOC mapping and use that
   mapping for all outgoing traffic to that EID.  It can do this after
   performing a route-returnability check, to ensure that the new
   network location does have a internal route to that endpoint.
   However, this does not cover the case where an ITR (the node assigned
   the RLOC) at the mobile-node location has been compromised.

   Mobile IP packet exchange is designed for an environment in which all
   routing information is disseminated before packets can be forwarded.
   In order to allow the Internet to grow to support expected future
   use, we are moving to an environment where some information may have
   to be obtained after packets are in flight.  Modifications to IP
   mobility should be considered in order to optimize the behavior of
   the overall system.  Anything which decreases the number of new EID-
   RLOC mappings needed when a node moves, or maintains the validity of
   an EID-RLOC mapping for a longer time, is useful.

10.4.  Fast Network Mobility

   In addition to endpoints, a network can be mobile, possibly changing
   xTRs.  A "network" can be as small as a single router and as large as
   a whole site.  This is different from site mobility in that it is
   fast and possibly short-lived, but different from endpoint mobility
   in that a whole prefix is changing RLOCs.  However, the mechanisms
   are the same and there is no new overhead in LISP.  A map request for
   any endpoint will return a binding for the entire mobile prefix.

   If mobile networks become a more common occurrence, it may be useful
   to revisit the design of the mapping service and allow for dynamic
   updates of the database.

   The issue of interactions between mobility and LISP needs to be
   explored further.  Specific improvements to the entire system will
   depend on the details of mapping mechanisms.  Mapping mechanisms
   should be evaluated on how well they support session continuity for
   mobile nodes.

10.5.  LISP Mobile Node Mobility

   A mobile device can use the LISP infrastructure to achieve mobility
   by implementing the LISP encapsulation and decapsulation functions
   and acting as a simple ITR/ETR.  By doing this, such a "LISP mobile
   node" can use topologically-independent EID IP addresses that are not
   advertised into and do not impose a cost on the global routing
   system.  These EIDs are maintained at the edges of the mapping system
   (in LISP Map-Servers and Map-Resolvers) and are provided on demand to
   only the correspondents of the LISP mobile node.

   Refer to the LISP Mobility Architecture specification [LISP-MN] for
   more details.

11.  Multicast Considerations

   A multicast group address, as defined in the original Internet
   architecture is an identifier of a grouping of topologically
   independent receiver host locations.  The address encoding itself
   does not determine the location of the receiver(s).  The multicast
   routing protocol, and the network-based state the protocol creates,
   determines where the receivers are located.

   In the context of LISP, a multicast group address is both an EID and
   a Routing Locator.  Therefore, no specific semantic or action needs
   to be taken for a destination address, as it would appear in an IP
   header.  Therefore, a group address that appears in an inner IP
   header built by a source host will be used as the destination EID.
   The outer IP header (the destination Routing Locator address),
   prepended by a LISP router, will use the same group address as the
   destination Routing Locator.

   Having said that, only the source EID and source Routing Locator
   needs to be dealt with.  Therefore, an ITR merely needs to put its
   own IP address in the source Routing Locator field when prepending
   the outer IP header.  This source Routing Locator address, like any
   other Routing Locator address MUST be globally routable.

   Therefore, an EID-to-RLOC mapping does not need to be performed by an
   ITR when a received data packet is a multicast data packet or when
   processing a source-specific Join (either by IGMPv3 or PIM).  But the
   source Routing Locator is decided by the multicast routing protocol
   in a receiver site.  That is, an EID to Routing Locator translation
   is done at control-time.

   Another approach is to have the ITR not encapsulate a multicast
   packet and allow the <STRIKE><FONT color="red">the</FONT></STRIKE> host built packet to flow into the core even if
   the source address is allocated out of the EID namespace.  If the
   RPF-Vector TLV [RFC5496] is used by PIM in the core, then core
   routers can RPF to the ITR (the Locator address which is injected
   into core routing) rather than the host source address (the EID
   address which is not injected into core routing).

   To avoid any EID-based multicast state in the network core, the first
   approach is chosen for LISP-Multicast.  Details for LISP-Multicast
   and Interworking with non-LISP sites is described in specification
   [MLISP].

12.  Security Considerations

   It is believed that most of the security mechanisms will be part of
   the mapping database service when using control plane procedures for
   obtaining EID-to-RLOC mappings.  For data plane triggered mappings,
   as described in this specification, protection is provided against
   ETR spoofing by using Return- Routability mechanisms evidenced by the
   use of a 24-bit Nonce field in the LISP encapsulation header and a
   64-bit Nonce field in the LISP control message.  The nonce, coupled
   with the ITR accepting only solicited Map-Replies goes a long way
   toward providing decent authentication.

   LISP does not rely on a PKI infrastructure or a more heavy weight
   authentication system.  These systems challenge the scalability of
   LISP which was a primary design goal.

   DoS attack prevention will depend on implementations rate-limiting
   Map-Requests and Map-Replies to the control plane as well as rate-
   limiting the number of data-triggered Map-Replies.

   To deal with map-cache exhaustion attempts in an ITR/PTR, the
   implementation should consider putting a maximum cap on the number of
   entries stored with a reserve list for special or frequently accessed
   sites.  This should be a configuration policy control set by the
   network administrator who manages ITRs and PTRs.

13.  IANA Considerations

   This specification has already allocated UDP port numbers 4341 and
   4342 assigned from the IANA registry.

14.  Prototype Plans and Status

   The operator community has requested that the IETF take a practical
   approach to solving the scaling problems associated with global
   routing state growth.  This document offers a simple solution which
   is intended for use in a pilot program to gain experience in working
   on this problem.

   The authors hope that publishing this specification will allow the
   rapid implementation of multiple vendor prototypes and deployment on
   a small scale.  Doing this will help the community:

   o  Decide whether a new EID-to-RLOC mapping database infrastructure
      is needed or if a simple, UDP-based, data-triggered approach is
      flexible and robust enough.

   o  Experiment with provider-independent assignment of EIDs while at
      the same time decreasing the size of DFZ routing tables through
      the use of topologically-aligned, provider-based RLOCs.

   o  Determine whether multiple levels of tunneling can be used by ISPs
      to achieve their Traffic Engineering goals while simultaneously
      removing the more specific routes currently injected into the
      global routing system for this purpose.

   o  Experiment with mobility to determine if both acceptable
      convergence and session continuity properties can be scalably
      implemented to support both individual device roaming and site
      service provider changes.

   Here is a rough set of milestones:

   1.  Interoperable implementations have been available since the
       beginning of 2009.

   2.  Continue pilot deployment using LISP-ALT as the database mapping
       mechanism.

   3.  Continue prototyping and studying other database lookup schemes,
       be it DNS, DHTs, CONS, ALT, NERD, or other mechanisms.

   4.  Implement the LISP Multicast draft [MLISP].

   5.  Implement the LISP Mobile Node draft [LISP-MN].

   6.  Research more on how policy affects what gets returned in a Map-
       Reply from an ETR.

   7.  Continue to experiment with mixed locator-sets to understand how
       LISP can help the IPv4 to IPv6 transition.

   8.  Add more robustness to locator reachability between LISP sites.

   9.  Continue the deployment of Proxy-ETRs (PETRs) for uses like uRPF
       avoidance, IPv6 connectivity, and LISP-MN.

   As of this writing the following accomplishments have been achieved:

   1.   A unit- and system-tested software switching implementation has
        been completed on cisco NX-OS for this draft for both IPv4 and
        IPv6 EIDs using a mixed locator-set of IPv4 and IPv6 locators.

   2.   A unit- and system-tested software switching implementation on
        cisco NX-OS has been completed for draft [ALT].

   3.   A unit- and system-tested software switching implementation on
        cisco NX-OS has been completed for draft [INTERWORK].  Support
        for IPv4 translation is provided and PTR support for IPv4 and
        IPv6 is provided.

   4.   The cisco NX-OS implementation supports an experimental
        mechanism for slow mobility.

   5.   There are 5 LISP implementations that exist and the first 4
        below have gone through interoperability testing at IETF
        Hiroshima, based on the draft-ietf-lisp-05.txt spec:

        1.  cisco NX-OS

        2.  OpenLISP

        3.  LISP-Click

        4.  ZLisp

        5.  cisco IOS

   6.   <STRIKE><FONT color="red">Dave Meyer,</FONT></STRIKE>   Vince Fuller, Darrel Lewis, <STRONG><FONT color="green">Dave Meyer,</FONT></STRONG> Gregg Schudel, Andrew
        Partan and the rest of the lisp-beta team continue to test all
        the features described above on a dual-stack infrastructure.

   7.   Darrel Lewis and Dave Meyer have deployed both LISP translation
        and LISP PTR support in the pilot network.  Point your browser
        to http://www.lisp4.net to see translation happening in action
        so your non-LISP site can access a web server in a LISP site.

   8.   <STRIKE><FONT color="red">Soon</FONT></STRIKE>   http://www.lisp6.net <STRIKE><FONT color="red">will work</FONT></STRIKE> <STRONG><FONT color="green">is available</FONT></STRONG> where your IPv6 LISP site can
        talk to a IPv6 web server in a LISP site by using mixed
        <STRIKE><FONT color="red">address-family</FONT></STRIKE> <STRONG><FONT color="green">address-
        family</FONT></STRONG> based locators.

   9.   An public domain implementation of LISP is available.  See
        [OPENLISP] for details.

   10.  <STRIKE><FONT color="red">We have deployed</FONT></STRIKE>  Map-Resolvers and Map-Servers <STRONG><FONT color="green">have been deployed</FONT></STRONG> on the LISP
        pilot network to gather experience with [LISP-MS].  The first
        layer of the architecture are the <STRIKE><FONT color="red">xTRs which use Map-Servers for EID-
        prefix registration and Map-Resolvers for EID-to-RLOC mapping
        resolution.</FONT></STRIKE> <STRONG><FONT color="green">xTRs.</FONT></STRONG>  The second layer are
        the Map-Resolvers and <STRIKE><FONT color="red">Map-
        Servers</FONT></STRIKE> <STRONG><FONT color="green">Map-Servers</FONT></STRONG> which connect to the ALT BGP
        peering infrastructure.  And the third layer are ALT-routers
        which aggregate EID-prefixes and forward Map-Requests.

   11.  A cisco IOS implementation is available which currently supports
        IPv4 and IPv6 encapsulation and decapsulation features.

   12.  A LISP router based LIG implementation is supported, deployed,
        and used daily to debug and test the LISP pilot network.  See
        [LIG] for details.

   13.  A Linux implementation of LIG has been made available and
        supported by Dave Meyer.  It can be run on any Linux system
        which resides in either a LISP site or non-LISP site.  See [LIG]
        for details.  Public domain code can be downloaded from
        http://github.com/davidmeyer/lig/tree/master.

   14.  <STRIKE><FONT color="red">An experimental implementation has been written for three</FONT></STRIKE>  <STRONG><FONT color="green">Three</FONT></STRONG> locator reachability <STRIKE><FONT color="red">algorithms.  Two are the</FONT></STRIKE> <STRONG><FONT color="green">algorithms have been written.  The
        first two,</FONT></STRONG> Echo-Noncing and RLOC-Probing <STRIKE><FONT color="red">algorithms which</FONT></STRIKE> are documented in this
        specification.  The <STRIKE><FONT color="red">third is called TCP-counts which</FONT></STRIKE> <STRONG><FONT color="green">third, TCP-counts,</FONT></STRONG> will be documented in
        future drafts.

   15.  The LISP pilot network has been converted from using MD5 HMAC
        authentication for Map-Register messages to SHA-1 HMAC
        authentication.  <STRIKE><FONT color="red">ETRs send with SHA-1 but Map-Servers can
        received from either for compatibility purposes.</FONT></STRIKE>

   16.  The LISP pilot network is in its 3rd generation.  Current
        experiments are <STRIKE><FONT color="red">being performed to test</FONT></STRIKE> <STRONG><FONT color="green">evaulating</FONT></STRONG> EID-prefix aggregation
        <STRIKE><FONT color="red">at multiple service boundaries as well as deploying</FONT></STRIKE> <STRONG><FONT color="green">and various
        deployment</FONT></STRONG> models for
        <STRIKE><FONT color="red">the existence of multiple</FONT></STRIKE> Mapping Service Providers (MSPs).

   <STRIKE><FONT color="red">If interested in writing a LISP implementation, testing any of the
   LISP implementations, or want to be part of the LISP pilot program,
   please contact lisp@ietf.org.</FONT></STRIKE>

15.  References

15.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,
              August 1980.

   [RFC1191]  Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191,
              November 1990.

   <STRIKE><FONT color="red">[RFC1498]  Saltzer, J., "On the Naming and Binding of Network
              Destinations", RFC 1498, August 1993.</FONT></STRIKE>

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC1955]  Hinden, R., "New Scheme for Internet Routing and
              Addressing (ENCAPS) for IPNG", RFC 1955, June 1996.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use of HMAC-SHA-1-96 within
              ESP and AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D., and P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              March 2000.

   [RFC3056]  Carpenter, B. and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3168]  Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
              of Explicit Congestion Notification (ECN) to IP",
              RFC 3168, September 2001.

   [RFC3775]  Johnson, D., Perkins, C., and J. Arkko, "Mobility Support
              in IPv6", RFC 3775, June 2004.

   [RFC4086]  Eastlake, D., Schiller, J., and S. Crocker, "Randomness
              Requirements for Security", BCP 106, RFC 4086, June 2005.

   <STRIKE><FONT color="red">[RFC4423]  Moskowitz, R. and P. Nikander, "Host Identity Protocol
              (HIP) Architecture", RFC 4423, May 2006.</FONT></STRIKE>

   [RFC4634]  Eastlake, D. and T. Hansen, "US Secure Hash Algorithms
              (SHA and HMAC-SHA)", RFC 4634, July 2006.

   [RFC4866]  Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route
              Optimization for Mobile IPv6", RFC 4866, May 2007.

   [RFC4984]  Meyer, D., Zhang, L., and K. Fall, "Report from the IAB
              Workshop on Routing and Addressing", RFC 4984,
              September 2007.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC5496]  Wijnands, IJ., Boers, A., and E. Rosen, "The Reverse Path
              Forwarding (RPF) Vector TLV", RFC 5496, March 2009.

   <STRIKE><FONT color="red">[RFC5533]  Nordmark, E. and M. Bagnulo, "Shim6: Level 3 Multihoming
              Shim Protocol for IPv6", RFC 5533, June 2009.</FONT></STRIKE>

   [UDP-TUNNELS]
              Eubanks, M. and P. Chimento, "UDP Checksums for Tunneled
              Packets"", draft-eubanks-chimento-6man-00.txt (work in
              progress), February 2009.

15.2.  Informative References

   [AFI]      IANA, "Address Family Indicators (AFIs)", ADDRESS FAMILY
              NUMBERS http://www.iana.org/numbers.html, Febuary 2007.

   [ALT]      Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "LISP
              Alternative Topology (LISP-ALT)",
              draft-ietf-lisp-alt-04.txt (work in progress), April 2010.

   <STRIKE><FONT color="red">[APT]      Jen, D., Meisel, M., Massey, D., Wang, L., Zhang, B., and
              L. Zhang, "APT: A Practical Transit Mapping Service",
              draft-jen-apt-01.txt (work in progress), November 2007.</FONT></STRIKE>

   [CHIAPPA]  Chiappa, J., "Endpoints and Endpoint names: A Proposed
              Enhancement to the Internet Architecture", Internet-
              Draft http://www.chiappa.net/~jnc/tech/endpoints.txt,
              1999.

   [CONS]     Farinacci, D., Fuller, V., and D. Meyer, "LISP-CONS: A
              Content distribution Overlay Network  Service for LISP",
              draft-meyer-lisp-cons-03.txt (work in progress),
              November 2007.

   <STRIKE><FONT color="red">[DHTs]     Ratnasamy, S., Shenker, S., and I. Stoica, "Routing
              Algorithms for DHTs: Some Open Questions", PDF
              file http://www.cs.rice.edu/Conferences/IPTPS02/174.pdf.</FONT></STRIKE>

   [EMACS]    Brim, S., Farinacci, D., Meyer, D., and J. Curran, "EID
              Mappings Multicast Across Cooperating Systems for LISP",
              draft-curran-lisp-emacs-00.txt (work in progress),
              November 2007.

   <STRIKE><FONT color="red">[GSE]      "GSE - An Alternate Addressing Architecture for  IPv6",
              draft-ietf-ipngwg-gseaddr-00.txt (work in progress), 1997.</FONT></STRIKE>

   [INTERWORK]
              Lewis, D., Meyer, D., Farinacci, D., and V. Fuller,
              "Interworking LISP with IPv4 and IPv6",
              draft-ietf-lisp-interworking-01.txt (work in progress),
              March 2010.

   [LCAF]     Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical
              Address Format", <STRIKE><FONT color="red">draft-farinacci-lisp-lcaf-01.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-farinacci-lisp-lcaf-00.txt</FONT></STRONG> (work in
              progress), April 2010.

   [LIG]      Farinacci, D. and D. Meyer, "LISP Internet Groper (LIG)",
              draft-ietf-lisp-lig-00.txt (work in progress), April 2010.

   [LISA96]   Lear, E., Katinsky, J., Coffin, J., and D. Tharp,
              "Renumbering: Threat or Menace?", Usenix , September 1996.

   [LISP-MAIN]
              Farinacci, D., Fuller, V., Meyer, D., and D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-farinacci-lisp-12.txt (work in progress),
              March 2009.

   [LISP-MN]  Farinacci, D., Fuller, V., Lewis, D., and D. Meyer, "LISP
              Mobility Architecture", draft-meyer-lisp-mn-00.txt (work
              in progress), July 2009.

   [LISP-MS]  Farinacci, D. and V. Fuller, <STRIKE><FONT color="red">"LISP Map Server",
              draft-ietf-lisp-ms-05.txt (work in progress), April 2010.

   [LISP1]    Farinacci, D., Oran, D., Fuller, V., and J. Schiller,
              "Locator/ID Separation Protocol (LISP1) [Routable  ID
              Version]",
              Slide-set http://www.dinof.net/~dino/ietf/lisp1.ppt,
              October 2006.

   [LISP2]    Farinacci, D., Oran, D., Fuller, V., and J. Schiller,
              "Locator/ID Separation Protocol (LISP2) [DNS-based
              Version]",
              Slide-set http://www.dinof.net/~dino/ietf/lisp2.ppt,
              November 2006.

   [LISPDHT]  Mathy, L., Iannone, L., and O. Bonaventure, "LISP-DHT:
              Towards a DHT to map identifiers onto locators",
              draft-mathy-lisp-dht-00.txt</FONT></STRIKE> <STRONG><FONT color="green">"LISP Map Server",
              draft-ietf-lisp-ms-05.txt</FONT></STRONG> (work in progress),
              <STRIKE><FONT color="red">February 2008.</FONT></STRIKE> <STRONG><FONT color="green">April 2010.</FONT></STRONG>

   [LOC-ID-ARCH]
              Meyer, D. and D. Lewis, "Architectural Implications of
              Locator/ID  Separation",
              draft-meyer-loc-id-implications-01.txt (work in progress),
              Januaryr 2009.

   [MLISP]    Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas,
              "LISP for Multicast Environments",
              draft-ietf-lisp-multicast-03.txt (work in progress),
              April 2010.

   [NERD]     Lear, E., "NERD: A Not-so-novel EID to RLOC Database",
              draft-lear-lisp-nerd-08.txt (work in progress),
              March 2010.

   [OPENLISP]
              Iannone, L. and O. Bonaventure, "OpenLISP Implementation
              Report", draft-iannone-openlisp-implementation-01.txt
              (work in progress), July 2008.

   [RADIR]    Narten, T., "Routing and Addressing Problem Statement",
              draft-narten-radir-problem-statement-00.txt (work in
              progress), July 2007.

   [RFC3344bis]
              Perkins, C., "IP Mobility Support for IPv4, revised",
              draft-ietf-mip4-rfc3344bis-05 (work in progress),
              July 2007.

   [RFC4192]  Baker, F., Lear, E., and R. Droms, "Procedures for
              Renumbering an IPv6 Network without a Flag Day", RFC 4192,
              September 2005.

   [RPMD]     Handley, M., Huici, F., and A. Greenhalgh, "RPMD: Protocol
              for Routing Protocol Meta-data  Dissemination",
              draft-handley-p2ppush-unpublished-2007726.txt (work in
              progress), July 2007.

   [VERSIONING]
              Iannone, L., Saucez, D., and O. Bonaventure, "LISP Mapping
              Versioning", draft-iannone-lisp-mapping-versioning-01.txt
              (work in progress), March 2010.

Appendix A.  Acknowledgments

   An initial thank you goes to Dave Oran for planting the seeds for the
   initial ideas for LISP.  His consultation continues to provide value
   to the LISP authors.

   A special and appreciative thank you goes to Noel Chiappa for
   providing architectural impetus over the past decades on separation
   of location and identity, as well as detailed review of the LISP
   architecture and documents, coupled with enthusiasm for making LISP a
   practical and incremental transition for the Internet.

   The authors would like to gratefully acknowledge many people who have
   contributed discussion and ideas to the making of this proposal.
   They include Scott Brim, Andrew Partan, John Zwiebel, Jason Schiller,
   Lixia Zhang, Dorian Kim, Peter Schoenmaker, Vijay Gill, Geoff Huston,
   David Conrad, Mark Handley, Ron Bonica, Ted Seely, Mark Townsley,
   Chris Morrow, Brian Weis, Dave McGrew, Peter Lothberg, Dave Thaler,
   Eliot Lear, Shane Amante, Ved Kafle, Olivier Bonaventure, Luigi
   Iannone, Robin Whittle, Brian Carpenter, Joel Halpern, Roger
   Jorgensen, Ran Atkinson, Stig Venaas, Iljitsch van Beijnum, Roland
   Bless, Dana Blair, Bill Lynch, Marc Woolward, Damien Saucez, Damian
   Lezama, Attilla De Groot, Parantap Lahiri, David Black, Roque
   Gagliano, Isidor Kouvelas, Jesper Skriver, Fred Templin, Margaret
   Wasserman, Sam Hartman, Michael Hofling, Pedro Marques, Jari Arkko,
   Gregg Schudel, Srinivas Subramanian, Amit Jain, Xu Xiaohu, Dhirendra
   Trivedi, Yakov Rekhter, John Scudder, John Drake, <STRIKE><FONT color="red">and</FONT></STRIKE> Dimitri
   <STRIKE><FONT color="red">Papadimitriou.

   In particular, we would like to thank Dave Meyer for his clever
   suggestion for the name "LISP". ;-)</FONT></STRIKE>
   <STRONG><FONT color="green">Papadimitriou, Ross Callon, Selina Heimlich, and Job Snijders.</FONT></STRONG>

   This work originated in the Routing Research Group (RRG) of the IRTF.
   The individual submission [LISP-MAIN] was converted into this IETF
   LISP working group draft.

Appendix B.  Document Change Log

B.1.  Changes to <STRONG><FONT color="green">draft-ietf-lisp-08.txt

   o  Posted August 2010.

   o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
      Register messages.

   o  Clarify language in section 6.1.5 about Map-Replying to Data-
      Probes or Map-Requests.

   o  Indicate that outer TTL should only be copied to inner TTL when it
      is less than inner TTL.

   o  Indicate a source-EID for RLOC-probes are encoded with an AFI
      value of 0.

   o  Indicate that SMRs can have a global or per SMR destination rate-
      limiter.

   o  Add clarifications to the SMR procedures.

   o  Add definitions for "client-side" and 'server-side" terms used in
      this specification.

   o  Clear up language in section 6.4, last paragraph.

   o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
      probe a PETR and have it return a Map-Reply with a locator-set of
      size 0.  The way it is spec'ed the map-cache entry has action
      "dropped".  Drop-action is set to 3.

   o  Add statement about normalizing locator weights.

   o  Clarify R-bit definition in the Map-Reply locator record.

   o  Add section on EID Reachability within a LISP site.

   o  Clarify another disadvantage of using anycast locators.

   o  Reworded Abstract.

   o  Change section 2.0 Introduction to remove obsolete information
      such as the LISP variant definitions.

   o  Change section 5 title from "Tunneling Details" to "LISP
      Encapsulation Details".

   o  Changes to section 5 to include results of network deployment
      experience with MTU.  Recommend that implementations use either
      the stateful or stateless handling.

   o  Updated current events in the "Prototype Plans and Status"
      section.

B.2.  Changes to</FONT></STRONG> draft-ietf-lisp-07.txt

   o  Posted April 2010.

   o  Added I-bit to data header so LSB field can also be used as an
      Instance ID field.  When this occurs, the LSB field is reduced to
      8-bits (from 32-bits).

   o  Added V-bit to the data header so the 24-bit nonce field can also
      be used for source and destination version numbers.

   o  Added Map-Version 12-bit value to the EID-record to be used in all
      of Map-Request, Map-Reply, and Map-Register messages.

   o  Added multiple ITR-RLOC fields to the Map-Request packet so an ETR
      can decide what address to select for the destination of a Map-
      Reply.

   o  Added L-bit (Local RLOC bit) and p-bit (Probe-Reply RLOC bit) to
      the Locator-Set record of an EID-record for a Map-Reply message.
      The L-bit indicates which RLOCs in the locator-set are local to
      the sender of the message.  The P-bit indicates which RLOC is the
      source of a RLOC-probe Reply (Map-Reply) message.

   o  Add reference to the LISP Canonical Address Format [LCAF] draft.

   o  Made editorial and clarification changes based on comments from
      Dhirendra Trivedi.

   o  Added wordsmithing comments from Joel Halpern on DF=1 setting.

   o  Add John Zwiebel clarification to Echo Nonce Algorithm section
      6.3.1.

   o  Add John Zwiebel comment about expanding on proxy-map-reply bit
      for Map-Register messages.

   o  Add NAT section per Ron Bonica comments.

   o  Fix IDnits issues per Ron Bonica.

   o  Added section on Virtualization and Segmentation to explain the
      use if the Instance ID field in the data header.

   o  There are too many P-bits, keep their scope to the packet format
      description and refer to them by name every where else in the
      spec.

   o  Scanned all occurrences of "should", "should not", "must" and
      "must not" and uppercased them.

   o  John Zwiebel offered text for section 4.1 to modernize the
      example.  Thanks Z!

   o  Make it more clear in the definition of "EID-to-RLOC Database"
      that all ETRs need to have the same database mapping.  This
      reflects a comment from John Scudder.

   o  Add a definition "Route-returnability" to the Definition of Terms
      section.

   o  In section 9.2, add text to describe what the signature of
      traceroute packets can look like.

   o  Removed references to Data Probe for introductory example.  Data-
      probes are still part of the LISP design but not encouraged.

   o  Added the definition for "LISP site" to the Definition of Terms"
      section.

<STRIKE><FONT color="red">B.2.</FONT></STRIKE>

<STRONG><FONT color="green">B.3.</FONT></STRONG>  Changes to draft-ietf-lisp-06.txt

   Editorial based changes:

   o  Posted December 2009.

   o  Fix typo for flags in LISP data header.  Changed from "4" to "5".

   o  Add text to indicate that Map-Register messages must contain a
      computed UDP checksum.

   o  Add definitions for PITR and PETR.

   o  Indicate an AFI value of 0 is an unspecified address.

   o  Indicate that the TTL field of a Map-Register is not used and set
      to 0 by the sender.  This change makes this spec consistent with
      [LISP-MS].

   o  Change "... yield a packet size of L bytes" to "... yield a packet
      size greater than L bytes".

   o  Clarify section 6.1.5 on what addresses and ports are used in Map-
      Reply messages.

   o  Clarify that LSBs that go beyond the number of locators do not to
      be SMRed when the locator addresses are greater lexicographically
      than the locator in the existing locator-set.

   o  Add Gregg, Srini, and Amit to acknowledgment section.

   o  Clarify in the definition of a LISP header what is following the
      UDP header.

   o  Clarify "verifying Map-Request" text in section 6.1.3.

   o  Add Xu Xiaohu to the acknowledgment section for introducing the
      problem of overlapping EID-prefixes among multiple sites in an RRG
      email message.

   Design based changes:

   o  Use stronger language to have the outer IPv4 header set DF=1 so we
      can avoid fragment reassembly in an ETR or PETR.  This will also
      make IPv4 and IPv6 encapsulation have consistent behavior.

   o  Map-Requests should not be sent in ECM with the Probe bit is set.
      These type of Map-Requests are used as RLOC-probes and are sent
      directly to locator addresses in the underlying network.

   o  Add text in section 6.1.5 about returning all EID-prefixes in a
      Map-Reply sent by an ETR when there are overlapping EID-prefixes
      configure.

   o  Add text in a new subsection of section 6.1.5 about dealing with
      Map-Replies with coarse EID-prefixes.

<STRIKE><FONT color="red">B.3.</FONT></STRIKE>

<STRONG><FONT color="green">B.4.</FONT></STRONG>  Changes to draft-ietf-lisp-05.txt

   o  Posted September 2009.

   o  Added this Document Change Log appendix.

   o  Added section indicating that encapsulated Map-Requests must use
      destination UDP port 4342.

   o  Don't use AH in Map-Registers.  Put key-id, auth-length, and auth-
      data in Map-Register payload.

   o  Added Jari to acknowledgment section.

   o  State the source-EID is set to 0 when using Map-Requests to
      refresh or RLOC-probe.

   o  Make more clear what source-RLOC should be for a Map-Request.

   o  The LISP-CONS authors thought that the Type definitions for CONS
      should be removed from this specification.

   o  Removed nonce from Map-Register message, it wasn't used so no need
      for it.

   o  Clarify what to do for unspecified Action bits for negative Map-
      Replies.  Since No Action is a drop, make value 0 Drop.

<STRIKE><FONT color="red">B.4.</FONT></STRIKE>

<STRONG><FONT color="green">B.5.</FONT></STRONG>  Changes to draft-ietf-lisp-04.txt

   o  Posted September 2009.

   o  How do deal with record count greater than 1 for a Map-Request.
      Damien and Joel comment.  Joel suggests: 1) Specify that senders
      compliant with the current document will always set the count to
      1, and note that the count is included for future extensibility.
      2) Specify what a receiver compliant with the draft should do if
      it receives a request with a count greater than 1.  Presumably, it
      should send some error back?

   o  Add Fred Templin in acknowledgment section.

   o  Add Margaret and Sam to the acknowledgment section for their great
      comments.

   o  Say more about LAGs in the UDP section per Sam Hartman's comment.

   o  Sam wants to use MAY instead of SHOULD for ignoring checksums on
      ETR.  From the mailing list: "You'd need to word it as an ITR MAY
      send a zero checksum, an ETR MUST accept a 0 checksum and MAY
      ignore the checksum completely.  And of course we'd need to
      confirm that can actually be implemented.  In particular, hardware
      that verifies UDP checksums on receive needs to be checked to make
      sure it permits 0 checksums."

   o  Margaret wants a reference to
      http://www.ietf.org/id/draft-eubanks-chimento-6man-00.txt.

   o  Fix description in Map-Request section.  Where we describe Map-
      Reply Record, change "R-bit" to "M-bit".

   o  Add the mobility bit to Map-Replies.  So PTRs don't probe so often
      for MNs but often enough to get mapping updates.

   o  Indicate SHA1 can be used as well for Map-Registers.

   o  More Fred comments on MTU handling.

   o  Isidor comment about spec'ing better periodic Map-Registers.  Will
      be fixed in draft-ietf-lisp-ms-02.txt.

   o  Margaret's comment on gleaning: "The current specification does
      not make it clear how long gleaned map entries should be retained
      in the cache, nor does it make it clear how/ when they will be
      validated.  The LISP spec should, at the very least, include a
      (short) default lifetime for gleaned entries, require that they be
      validated within a short period of time, and state that a new
      gleaned entry should never overwrite an entry that was obtained
      from the mapping system.  The security implications of storing
      "gleaned" entries should also be explored in detail."

   o  Add section on RLOC-probing per working group feedback.

   o  Change "loc-reach-bits" to "loc-status-bits" per comment from
      Noel.

   o  Remove SMR-bit from data-plane.  Dino prefers to have it in the
      control plane only.

   o  Change LISP header to allow a "Research Bit" so the Nonce and LSB
      fields can be turned off and used for another future purpose.  For
      Luigi et al versioning convergence.

   o  Add a N-bit to the data header suggested by Noel.  Then the nonce
      field could be used when N is not 1.

   o  Clarify that when E-bit is 0, the nonce field can be an echoed
      nonce or a random nonce.  Comment from Jesper.

   o  Indicate when doing data-gleaning that a verifying Map-Request is
      sent to the source-EID of the gleaned data packet so we can avoid
      map-cache corruption by a 3rd party.  Comment from Pedro.

   o  Indicate that a verifying Map-Request, for accepting mapping data,
      should be sent over the <STRIKE><FONT color="red">the</FONT></STRIKE> ALT (or to the EID).

   o  Reference IPsec RFC 4302.  Comment from Sam and Brian Weis.

   o  Put E-bit in Map-Reply to tell ITRs that the ETR supports echo-
      noncing.  Comment by Pedro and Dino.

   o  Jesper made a comment to loosen the language about requiring the
      copy of inner TTL to outer TTL since the text to get mixed-AF
      traceroute to work would violate the "MUST" clause.  Changed from
      MUST to SHOULD in section 5.3.

<STRIKE><FONT color="red">B.5.</FONT></STRIKE>

<STRONG><FONT color="green">B.6.</FONT></STRONG>  Changes to draft-ietf-lisp-03.txt

   o  Posted July 2009.

   o  Removed loc-reach-bits longword from control packets per Damien
      comment.

   o  Clarifications in MTU text from Roque.

   o  Added text to indicate that the locator-set be sorted by locator
      address from Isidor.

   o  Clarification text from John Zwiebel in Echo-Nonce section.

<STRIKE><FONT color="red">B.6.</FONT></STRIKE>

<STRONG><FONT color="green">B.7.</FONT></STRONG>  Changes to draft-ietf-lisp-02.txt

   o  Posted July 2009.

   o  Encapsulation packet format change to add E-bit and make loc-
      reach-bits 32-bits in length.

   o  Added Echo-Nonce Algorithm section.

   o  Clarification how ECN bits are copied.

   o  Moved S-bit in Map-Request.

   o  Added P-bit in Map-Request and Map-Reply messages to anticipate
      RLOC-Probe Algorithm.

   o  Added to Mobility section to reference draft-meyer-lisp-mn-00.txt.

<STRIKE><FONT color="red">B.7.</FONT></STRIKE>

<STRONG><FONT color="green">B.8.</FONT></STRONG>  Changes to draft-ietf-lisp-01.txt

   o  Posted 2 days after draft-ietf-lisp-00.txt in May 2009.

   o  Defined LEID to be a "LISP EID".

   o  Indicate encapsulation use IPv4 DF=0.

   o  Added negative Map-Reply messages with drop, native-forward, and
      send-map-request actions.

   o  Added Proxy-Map-Reply bit to Map-Register.

<STRIKE><FONT color="red">B.8.</FONT></STRIKE>

<STRONG><FONT color="green">B.9.</FONT></STRONG>  Changes to draft-ietf-lisp-00.txt

   o  Posted May 2009.

   o  Rename of draft-farinacci-lisp-12.txt.

   o  Acknowledgment to RRG.

Authors' Addresses

   Dino Farinacci
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: dino@cisco.com

   Vince Fuller
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: vaf@cisco.com

   Dave Meyer
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: dmm@cisco.com

   Darrel Lewis
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: darlewis@cisco.com
</PRE>

</BODY></HTML>
--Apple-Mail-24--337873069
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed
Content-Transfer-Encoding: 7bit





--Apple-Mail-24--337873069
Content-Disposition: attachment;
	filename=draft-ietf-lisp-08.txt
Content-Type: text/plain;
	x-unix-mode=0644;
	name="draft-ietf-lisp-08.txt"
Content-Transfer-Encoding: quoted-printable




Network Working Group                                       D. Farinacci
Internet-Draft                                                 V. Fuller
Intended status: Experimental                                   D. Meyer
Expires: February 3, 2011                                       D. Lewis
                                                           cisco Systems
                                                          August 2, 2010


                 Locator/ID Separation Protocol (LISP)
                           draft-ietf-lisp-08

Abstract

   This draft describes a network-based protocol that enables separation
   of IP addresses into two new numbering spaces: Endpoint Identifiers
   (EIDs) and Routing Locators (RLOCs).  No changes are required to
   either host protocol stacks or to the "core" of the Internet
   infrastructure.  LISP can be incrementally deployed, without a "flag
   day", and offers traffic engineering, multi-homing, and mobility
   benefits even to early adopters, when there are relatively few LISP-
   capable sites.

   Design and development of LISP was largely motivated by the problem
   statement produced by the October, 2006 IAB Routing and Addressing
   Workshop.

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on February 3, 2011.



Farinacci, et al.       Expires February 3, 2011                [Page 1]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Copyright Notice

   Copyright (c) 2010 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
   the Trust Legal Provisions and are provided without warranty as
   described in the BSD License.


Table of Contents

   1.  Requirements Notation  . . . . . . . . . . . . . . . . . . . .  4
   2.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
   3.  Definition of Terms  . . . . . . . . . . . . . . . . . . . . .  7
   4.  Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 12
     4.1.  Packet Flow Sequence . . . . . . . . . . . . . . . . . . . 14
   5.  LISP Encapsulation Details . . . . . . . . . . . . . . . . . . 16
     5.1.  LISP IPv4-in-IPv4 Header Format  . . . . . . . . . . . . . 17
     5.2.  LISP IPv6-in-IPv6 Header Format  . . . . . . . . . . . . . 17
     5.3.  Tunnel Header Field Descriptions . . . . . . . . . . . . . 19
     5.4.  Dealing with Large Encapsulated Packets  . . . . . . . . . 22
       5.4.1.  A Stateless Solution to MTU Handling . . . . . . . . . 22
       5.4.2.  A Stateful Solution to MTU Handling  . . . . . . . . . 23
     5.5.  Using Virtualization and Segmentation with LISP  . . . . . 24
   6.  EID-to-RLOC Mapping  . . . . . . . . . . . . . . . . . . . . . 25
     6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats  . . . . . 25
       6.1.1.  LISP Packet Type Allocations . . . . . . . . . . . . . 27
       6.1.2.  Map-Request Message Format . . . . . . . . . . . . . . 27
       6.1.3.  EID-to-RLOC UDP Map-Request Message  . . . . . . . . . 29
       6.1.4.  Map-Reply Message Format . . . . . . . . . . . . . . . 31
       6.1.5.  EID-to-RLOC UDP Map-Reply Message  . . . . . . . . . . 34
       6.1.6.  Map-Register Message Format  . . . . . . . . . . . . . 37
       6.1.7.  Encapsulated Control Message Format  . . . . . . . . . 39
     6.2.  Routing Locator Selection  . . . . . . . . . . . . . . . . 41
     6.3.  Routing Locator Reachability . . . . . . . . . . . . . . . 42
       6.3.1.  Echo Nonce Algorithm . . . . . . . . . . . . . . . . . 45
       6.3.2.  RLOC Probing Algorithm . . . . . . . . . . . . . . . . 46
     6.4.  EID Reachability within a LISP Site  . . . . . . . . . . . 47
     6.5.  Routing Locator Hashing  . . . . . . . . . . . . . . . . . 47
     6.6.  Changing the Contents of EID-to-RLOC Mappings  . . . . . . 48
       6.6.1.  Clock Sweep  . . . . . . . . . . . . . . . . . . . . . 49



Farinacci, et al.       Expires February 3, 2011                [Page 2]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       6.6.2.  Solicit-Map-Request (SMR)  . . . . . . . . . . . . . . 49
       6.6.3.  Database Map Versioning  . . . . . . . . . . . . . . . 51
   7.  Router Performance Considerations  . . . . . . . . . . . . . . 52
   8.  Deployment Scenarios . . . . . . . . . . . . . . . . . . . . . 53
     8.1.  First-hop/Last-hop Tunnel Routers  . . . . . . . . . . . . 54
     8.2.  Border/Edge Tunnel Routers . . . . . . . . . . . . . . . . 54
     8.3.  ISP Provider-Edge (PE) Tunnel Routers  . . . . . . . . . . 55
     8.4.  LISP Functionality with Conventional NATs  . . . . . . . . 55
   9.  Traceroute Considerations  . . . . . . . . . . . . . . . . . . 56
     9.1.  IPv6 Traceroute  . . . . . . . . . . . . . . . . . . . . . 57
     9.2.  IPv4 Traceroute  . . . . . . . . . . . . . . . . . . . . . 57
     9.3.  Traceroute using Mixed Locators  . . . . . . . . . . . . . 57
   10. Mobility Considerations  . . . . . . . . . . . . . . . . . . . 59
     10.1. Site Mobility  . . . . . . . . . . . . . . . . . . . . . . 59
     10.2. Slow Endpoint Mobility . . . . . . . . . . . . . . . . . . 59
     10.3. Fast Endpoint Mobility . . . . . . . . . . . . . . . . . . 59
     10.4. Fast Network Mobility  . . . . . . . . . . . . . . . . . . 61
     10.5. LISP Mobile Node Mobility  . . . . . . . . . . . . . . . . 61
   11. Multicast Considerations . . . . . . . . . . . . . . . . . . . 63
   12. Security Considerations  . . . . . . . . . . . . . . . . . . . 64
   13. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 65
   14. Prototype Plans and Status . . . . . . . . . . . . . . . . . . 66
   15. References . . . . . . . . . . . . . . . . . . . . . . . . . . 69
     15.1. Normative References . . . . . . . . . . . . . . . . . . . 69
     15.2. Informative References . . . . . . . . . . . . . . . . . . 70
   Appendix A.  Acknowledgments . . . . . . . . . . . . . . . . . . . 73
   Appendix B.  Document Change Log . . . . . . . . . . . . . . . . . 74
     B.1.  Changes to draft-ietf-lisp-08.txt  . . . . . . . . . . . . 74
     B.2.  Changes to draft-ietf-lisp-07.txt  . . . . . . . . . . . . 75
     B.3.  Changes to draft-ietf-lisp-06.txt  . . . . . . . . . . . . 76
     B.4.  Changes to draft-ietf-lisp-05.txt  . . . . . . . . . . . . 77
     B.5.  Changes to draft-ietf-lisp-04.txt  . . . . . . . . . . . . 78
     B.6.  Changes to draft-ietf-lisp-03.txt  . . . . . . . . . . . . 80
     B.7.  Changes to draft-ietf-lisp-02.txt  . . . . . . . . . . . . 80
     B.8.  Changes to draft-ietf-lisp-01.txt  . . . . . . . . . . . . 80
     B.9.  Changes to draft-ietf-lisp-00.txt  . . . . . . . . . . . . 81
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 82














Farinacci, et al.       Expires February 3, 2011                [Page 3]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


1.  Requirements Notation

   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 [RFC2119].














































Farinacci, et al.       Expires February 3, 2011                [Page 4]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


2.  Introduction

   This document describes the Locator/Identifier Separation Protocol
   (LISP), which provides a set of functions for routers to exchange
   information used to map from non-routeable Endpoint Identifiers
   (EIDs) to routeable Routing Locators (RLOCs).  It also defines a
   mechanism for these LISP routers to encapsulate IP packets addressed
   with EIDs for transmission across an Internet that uses RLOCs for
   routing and forwarding.

   Creation of LISP was initially motivated by discussions during the
   IAB-sponsored Routing and Addressing Workshop (RAWS) held in
   Amsterdam in October, 2006 (see [RFC4984]).  A key conclusion of the
   workshop was that the Internet routing and addressing system was not
   scaling well in the face of the explosive growth of new sites; one
   reason for this poor scaling is the increasing number of multi-homed
   and other sites that cannot be addressed as part of topologically- or
   provider-based aggregated prefixes.  Additional work that more
   completely described the problem statement may be found in [RADIR].

   A basic observation, made many years ago in early networking research
   such as that documented in [CHIAPPA] and [RFC4984], is that using a
   single address field for both identifying a device and for
   determining where it is topologically located in the network requires
   optimization along two conflicting axes: for routing to be efficient,
   the address must be assigned topologically; for collections of
   devices to be easily and effectively managed, without the need for
   renumbering in response to topological change (such as that caused by
   adding or removing attachment points to the network or by mobility
   events), the address must explicitly not be tied to the topology.

   The approach that LISP takes to solving the routing scalability
   problem is to replace IP addresses with two new types of numbers:
   Routing Locators (RLOCs), which are topologically assigned to network
   attachment points (and are therefore amenable to aggregation) and
   used for routing and forwarding of packets through the network; and
   Endpoint Identifiers (EIDs), which are assigned independently from
   the network topology, are used for numbering devices, and are
   aggregated along administrative boundaries.  LISP then defines
   functions for mapping between the two numbering spaces and for
   encapsulating traffic originated by devices using non-routeable EIDs
   for transport across a network infrastructure that routes and
   forwards using RLOCs.  Both RLOCs and EIDs are syntactically-
   identical to IP addresses; it is the semantics of how they are used
   that differs.

   Note that this document describes the protocol that implements these
   functions.  The database which stores the mappings between EIDs and



Farinacci, et al.       Expires February 3, 2011                [Page 5]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   RLOCs is explicitly a separate "module" to facilitate experimentation
   with a variety of approaches.  One database design that is being
   developed and prototyped as part of the LISP working group work is
   [ALT] others that have been described but not implemented include
   [CONS], [EMACS], [RPMD], [NERD].  See also [LISP-MS], which documents
   a general-purpose "service interface" for accessing a mapping
   database; this is intended to make the mapping database modular so
   that different approaches can be tried without the need to modify
   installed xTRs.










































Farinacci, et al.       Expires February 3, 2011                [Page 6]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


3.  Definition of Terms

   Provider Independent (PI) Addresses:   an address block assigned from
      a pool where blocks are not associated with any particular
      location in the network (e.g. from a particular service provider),
      and is therefore not topologically aggregatable in the routing
      system.

   Provider Assigned (PA) Addresses:   a block of IP addresses that are
      assigned to a site by each service provider to which a site
      connects.  Typically, each block is sub-block of a service
      provider CIDR block and is aggregated into the larger block before
      being advertised into the global Internet.  Traditionally, IP
      multihoming has been implemented by each multi-homed site
      acquiring its own, globally-visible prefix.  LISP uses only
      topologically-assigned and aggregatable address blocks for RLOCs,
      eliminating this demonstrably non-scalable practice.

   Routing Locator (RLOC):   the IPv4 or IPv6 address of an egress
      tunnel router (ETR).  It is the output of a EID-to-RLOC mapping
      lookup.  An EID maps to one or more RLOCs.  Typically, RLOCs are
      numbered from topologically-aggregatable blocks that are assigned
      to a site at each point to which it attaches to the global
      Internet; where the topology is defined by the connectivity of
      provider networks, RLOCs can be thought of as PA addresses.
      Multiple RLOCs can be assigned to the same ETR device or to
      multiple ETR devices at a site.

   Endpoint ID (EID):   a 32-bit (for IPv4) or 128-bit (for IPv6) value
      used in the source and destination address fields of the first
      (most inner) LISP header of a packet.  The host obtains a
      destination EID the same way it obtains an destination address
      today, for example through a DNS lookup or SIP exchange.  The
      source EID is obtained via existing mechanisms used to set a
      host's "local" IP address.  An EID is allocated to a host from an
      EID-prefix block associated with the site where the host is
      located.  An EID can be used by a host to refer to other hosts.
      EIDs MUST NOT be used as LISP RLOCs.  Note that EID blocks may be
      assigned in a hierarchical manner, independent of the network
      topology, to facilitate scaling of the mapping database.  In
      addition, an EID block assigned to a site may have site-local
      structure (subnetting) for routing within the site; this structure
      is not visible to the global routing system.  When used in
      discussions with other Locator/ID separation proposals, a LISP EID
      will be called a "LEID".  Throughout this document, any references
      to "EID" refers to an LEID.





Farinacci, et al.       Expires February 3, 2011                [Page 7]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   EID-prefix:   A power-of-2 block of EIDs which are allocated to a
      site by an address allocation authority.  EID-prefixes are
      associated with a set of RLOC addresses which make up a "database
      mapping".  EID-prefix allocations can be broken up into smaller
      blocks when an RLOC set is to be associated with the smaller EID-
      prefix.  A globally routed address block (whether PI or PA) is not
      an EID-prefix.  However, a globally routed address block may be
      removed from global routing and reused as an EID-prefix.  A site
      that receives an explicitly allocated EID-prefix may not use that
      EID-prefix as a globally routed prefix assigned to RLOCs.

   End-system:   is an IPv4 or IPv6 device that originates packets with
      a single IPv4 or IPv6 header.  The end-system supplies an EID
      value for the destination address field of the IP header when
      communicating globally (i.e. outside of its routing domain).  An
      end-system can be a host computer, a switch or router device, or
      any network appliance.

   Ingress Tunnel Router (ITR):   a router which accepts an IP packet
      with a single IP header (more precisely, an IP packet that does
      not contain a LISP header).  The router treats this "inner" IP
      destination address as an EID and performs an EID-to-RLOC mapping
      lookup.  The router then prepends an "outer" IP header with one of
      its globally-routable RLOCs in the source address field and the
      result of the mapping lookup in the destination address field.
      Note that this destination RLOC may be an intermediate, proxy
      device that has better knowledge of the EID-to-RLOC mapping closer
      to the destination EID.  In general, an ITR receives IP packets
      from site end-systems on one side and sends LISP-encapsulated IP
      packets toward the Internet on the other side.

      Specifically, when a service provider prepends a LISP header for
      Traffic Engineering purposes, the router that does this is also
      regarded as an ITR.  The outer RLOC the ISP ITR uses can be based
      on the outer destination address (the originating ITR's supplied
      RLOC) or the inner destination address (the originating hosts
      supplied EID).

   TE-ITR:   is an ITR that is deployed in a service provider network
      that prepends an additional LISP header for Traffic Engineering
      purposes.

   Egress Tunnel Router (ETR):   a router that accepts an IP packet
      where the destination address in the "outer" IP header is one of
      its own RLOCs.  The router strips the "outer" header and forwards
      the packet based on the next IP header found.  In general, an ETR
      receives LISP-encapsulated IP packets from the Internet on one
      side and sends decapsulated IP packets to site end-systems on the



Farinacci, et al.       Expires February 3, 2011                [Page 8]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      other side.  ETR functionality does not have to be limited to a
      router device.  A server host can be the endpoint of a LISP tunnel
      as well.

   TE-ETR:   is an ETR that is deployed in a service provider network
      that strips an outer LISP header for Traffic Engineering purposes.

   xTR:   is a reference to an ITR or ETR when direction of data flow is
      not part of the context description. xTR refers to the router that
      is the tunnel endpoint.  Used synonymously with the term "Tunnel
      Router".  For example, "An xTR can be located at the Customer Edge
      (CE) router", meaning both ITR and ETR functionality is at the CE
      router.

   EID-to-RLOC Cache:   a short-lived, on-demand table in an ITR that
      stores, tracks, and is responsible for timing-out and otherwise
      validating EID-to-RLOC mappings.  This cache is distinct from the
      full "database" of EID-to-RLOC mappings, it is dynamic, local to
      the ITR(s), and relatively small while the database is
      distributed, relatively static, and much more global in scope.

   EID-to-RLOC Database:   a global distributed database that contains
      all known EID-prefix to RLOC mappings.  Each potential ETR
      typically contains a small piece of the database: the EID-to-RLOC
      mappings for the EID prefixes "behind" the router.  These map to
      one of the router's own, globally-visible, IP addresses.  The same
      database mapping entries MUST be configured on all ETRs for a
      given site.  That is, the EID-prefixes for the site and locator-
      set for each EID-prefix MUST be the same on all ETRs so they
      consistently send Map-Reply messages with the same database
      mapping contents.

   Recursive Tunneling:   when a packet has more than one LISP IP
      header.  Additional layers of tunneling may be employed to
      implement traffic engineering or other re-routing as needed.  When
      this is done, an additional "outer" LISP header is added and the
      original RLOCs are preserved in the "inner" header.  Any
      references to tunnels in this specification refers to dynamic
      encapsulating tunnels and never are they statically configured.

   Reencapsulating Tunnels:   when a packet has no more than one LISP IP
      header (two IP headers total) and when it needs to be diverted to
      new RLOC, an ETR can decapsulate the packet (remove the LISP
      header) and prepends a new tunnel header, with new RLOC, on to the
      packet.  Doing this allows a packet to be re-routed by the re-
      encapsulating router without adding the overhead of additional
      tunnel headers.  Any references to tunnels in this specification
      refers to dynamic encapsulating tunnels and never are they



Farinacci, et al.       Expires February 3, 2011                [Page 9]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      statically configured.

   LISP Header:   a term used in this document to refer to the outer
      IPv4 or IPv6 header, a UDP header, and a LISP-specific 8-byte
      header that follows the UDP header, an ITR prepends or an ETR
      strips.

   Address Family Identifier (AFI):   a term used to describe an address
      encoding in a packet.  An address family currently pertains to an
      IPv4 or IPv6 address.  See [AFI] and [RFC1700] for details.  An
      AFI value of 0 used in this specification indicates an unspecified
      encoded address where the length of the address is 0 bytes
      following the 16-bit AFI value of 0.

   Negative Mapping Entry:   also known as a negative cache entry, is an
      EID-to-RLOC entry where an EID-prefix is advertised or stored with
      no RLOCs.  That is, the locator-set for the EID-to-RLOC entry is
      empty or has an encoded locator count of 0.  This type of entry
      could be used to describe a prefix from a non-LISP site, which is
      explicitly not in the mapping database.  There are a set of well
      defined actions that are encoded in a Negative Map-Reply.

   Data Probe:   a LISP-encapsulated data packet where the inner header
      destination address equals the outer header destination address
      used to trigger a Map-Reply by a decapsulating ETR.  In addition,
      the original packet is decapsulated and delivered to the
      destination host.  A Data Probe is used in some of the mapping
      database designs to "probe" or request a Map-Reply from an ETR; in
      other cases, Map-Requests are used.  See each mapping database
      design for details.

   Proxy ITR (PITR):   also known as a PTR is defined and described in
      [INTERWORK], a PITR acts like an ITR but does so on behalf of non-
      LISP sites which send packets to destinations at LISP sites.

   Proxy ETR (PETR):   is defined and described in [INTERWORK], a PETR
      acts like an ETR but does so on behalf of LISP sites which send
      packets to destinations at non-LISP sites.

   Route-returnability:  is an assumption that the underlying routing
      system will deliver packets to the destination.  When combined
      with a nonce that is provided by a sender and returned by a
      receiver limits off-path data insertion.

   LISP site:  is a set of routers in an edge network that are under a
      single technical administration.  LISP routers which reside in the
      edge network are the demarcation points to separate the edge
      network from the core network.



Farinacci, et al.       Expires February 3, 2011               [Page 10]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Client-side:  a term used in this document to indicate a connection
      initiation attempt by an EID.  The ITR(s) at the LISP site are the
      first to get involved in obtaining database map cache entries by
      sending Map-Request messages.

   Server-side:  a term used in this document to indicate a connection
      initiation attempt is being accepted for a destination EID.  The
      ETR(s) at the destination LISP site are the first to send Map-
      Replies to the source site initiating the connection.  The ETR(s)
      at this destination site can obtain mappings by gleaning
      information from Map-Requests, Data-Probes, or encapsulated
      packets.







































Farinacci, et al.       Expires February 3, 2011               [Page 11]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


4.  Basic Overview

   One key concept of LISP is that end-systems (hosts) operate the same
   way they do today.  The IP addresses that hosts use for tracking
   sockets, connections, and for sending and receiving packets do not
   change.  In LISP terminology, these IP addresses are called Endpoint
   Identifiers (EIDs).

   Routers continue to forward packets based on IP destination
   addresses.  When a packet is LISP encapsulated, these addresses are
   referred to as Routing Locators (RLOCs).  Most routers along a path
   between two hosts will not change; they continue to perform routing/
   forwarding lookups on the destination addresses.  For routers between
   the source host and the ITR as well as routers from the ETR to the
   destination host, the destination address is an EID.  For the routers
   between the ITR and the ETR, the destination address is an RLOC.

   This design introduces "Tunnel Routers", which prepends LISP headers
   on host-originated packets and strip them prior to final delivery to
   their destination.  The IP addresses in this "outer header" are
   RLOCs.  During end-to-end packet exchange between two Internet hosts,
   an ITR prepends a new LISP header to each packet and an egress tunnel
   router strips the new header.  The ITR performs EID-to-RLOC lookups
   to determine the routing path to the ETR, which has the RLOC as one
   of its IP addresses.

   Some basic rules governing LISP are:

   o  End-systems (hosts) only send to addresses which are EIDs.  They
      don't know addresses are EIDs versus RLOCs but assume packets get
      to LISP routers, which in turn, deliver packets to the destination
      the end-system has specified.

   o  EIDs are always IP addresses assigned to hosts.

   o  LISP routers mostly deal with Routing Locator addresses.  See
      details later in Section 4.1 to clarify what is meant by "mostly".

   o  RLOCs are always IP addresses assigned to routers; preferably,
      topologically-oriented addresses from provider CIDR blocks.

   o  When a router originates packets it may use as a source address
      either an EID or RLOC.  When acting as a host (e.g. when
      terminating a transport session such as SSH, TELNET, or SNMP), it
      may use an EID that is explicitly assigned for that purpose.  An
      EID that identifies the router as a host MUST NOT be used as an
      RLOC; an EID is only routable within the scope of a site.  A
      typical BGP configuration might demonstrate this "hybrid" EID/RLOC



Farinacci, et al.       Expires February 3, 2011               [Page 12]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      usage where a router could use its "host-like" EID to terminate
      iBGP sessions to other routers in a site while at the same time
      using RLOCs to terminate eBGP sessions to routers outside the
      site.

   o  EIDs are not expected to be usable for global end-to-end
      communication in the absence of an EID-to-RLOC mapping operation.
      They are expected to be used locally for intra-site communication.

   o  EID prefixes are likely to be hierarchically assigned in a manner
      which is optimized for administrative convenience and to
      facilitate scaling of the EID-to-RLOC mapping database.  The
      hierarchy is based on a address allocation hierarchy which is not
      dependent on the network topology.

   o  EIDs may also be structured (subnetted) in a manner suitable for
      local routing within an autonomous system.

   An additional LISP header may be prepended to packets by a transit
   router (i.e.  TE-ITR) when re-routing of the path for a packet is
   desired.  An obvious instance of this would be an ISP router that
   needs to perform traffic engineering for packets flowing through its
   network.  In such a situation, termed Recursive Tunneling, an ISP
   transit acts as an additional ingress tunnel router and the RLOC it
   uses for the new prepended header would be either a TE-ETR within the
   ISP (along intra-ISP traffic engineered path) or a TE-ETR within
   another ISP (an inter-ISP traffic engineered path, where an agreement
   to build such a path exists).

   This specification mandates that no more than two LISP headers get
   prepended to a packet.  This avoids excessive packet overhead as well
   as possible encapsulation loops.  It is believed two headers is
   sufficient, where the first prepended header is used at a site for
   Location/Identity separation and second prepended header is used
   inside a service provider for Traffic Engineering purposes.

   Tunnel Routers can be placed fairly flexibly in a multi-AS topology.
   For example, the ITR for a particular end-to-end packet exchange
   might be the first-hop or default router within a site for the source
   host.  Similarly, the egress tunnel router might be the last-hop
   router directly-connected to the destination host.  Another example,
   perhaps for a VPN service out-sourced to an ISP by a site, the ITR
   could be the site's border router at the service provider attachment
   point.  Mixing and matching of site-operated, ISP-operated, and other
   tunnel routers is allowed for maximum flexibility.  See Section 8 for
   more details.





Farinacci, et al.       Expires February 3, 2011               [Page 13]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


4.1.  Packet Flow Sequence

   This section provides an example of the unicast packet flow with the
   following conditions:

   o  Source host "host1.abc.com" is sending a packet to
      "host2.xyz.com", exactly what host1 would do if the site was not
      using LISP.

   o  Each site is multi-homed, so each tunnel router has an address
      (RLOC) assigned from the service provider address block for each
      provider to which that particular tunnel router is attached.

   o  The ITR(s) and ETR(s) are directly connected to the source and
      destination, respectively, but the source and destination can be
      located anywhere in LISP site.

   o  Map-Requests can be sent on the underlying routing system topology
      (LISP 1.0) or over an alternative topology [ALT].

   o  Map-Replies are sent on the underlying routing system topology.

   Client host1.abc.com wants to communicate with server host2.xyz.com:

   1.  host1.abc.com wants to open a TCP connection to host2.xyz.com.
       It does a DNS lookup on host2.xyz.com.  An A/AAAA record is
       returned.  This address is the destination EID.  The locally-
       assigned address of host1.abc.com is used as the source EID.  An
       IPv4 or IPv6 packet is built and forwarded through the LISP site
       as a normal IP packet until it reaches a LISP ITR.

   2.  The LISP ITR must be able to map the EID destination to an RLOC
       of one of the ETRs at the destination site.  The specific method
       used to do this is not described in this example.  See [ALT] or
       [CONS] for possible solutions.

   3.  The ITR will send a LISP Map-Request.  Map-Requests SHOULD be
       rate-limited.

   4.  In LISP 1.0, the Map-Request packet is routed through the
       underlying routing system.  In LISP 1.5, the Map-Request packet
       is routed on an alternate logical topology.  In either case, when
       the Map-Request arrives at one of the ETRs at the destination
       site, it will process the packet as a control message.

   5.  The ETR looks at the destination EID of the Map-Request and
       matches it against the prefixes in the ETR's configured EID-to-
       RLOC mapping database.  This is the list of EID-prefixes the ETR



Farinacci, et al.       Expires February 3, 2011               [Page 14]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       is supporting for the site it resides in.  If there is no match,
       the Map-Request is dropped.  Otherwise, a LISP Map-Reply is
       returned to the ITR.

   6.  The ITR receives the Map-Reply message, parses the message (to
       check for format validity) and stores the mapping information
       from the packet.  This information is put in the ITR's EID-to-
       RLOC mapping cache (this is the on-demand cache, the cache where
       entries time out due to inactivity).

   7.  Subsequent packets from host1.abc.com to host2.xyz.com will have
       a LISP header prepended by the ITR using the appropriate RLOC as
       the LISP header destination address learned from the ETR.  Note,
       the packet may be sent to a different ETR than the one which
       returned the Map-Reply due to the source site's hashing policy or
       the destination site's locator-set policy.

   8.  The ETR receives these packets directly (since the destination
       address is one of its assigned IP addresses), strips the LISP
       header and forwards the packets to the attached destination host.

   In order to eliminate the need for a mapping lookup in the reverse
   direction, an ETR MAY create a cache entry that maps the source EID
   (inner header source IP address) to the source RLOC (outer header
   source IP address) in a received LISP packet.  Such a cache entry is
   termed a "gleaned" mapping and only contains a single RLOC for the
   EID in question.  More complete information about additional RLOCs
   SHOULD be verified by sending a LISP Map-Request for that EID.  Both
   ITR and the ETR may also influence the decision the other makes in
   selecting an RLOC.  See Section 6 for more details.





















Farinacci, et al.       Expires February 3, 2011               [Page 15]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.  LISP Encapsulation Details

   Since additional tunnel headers are prepended, the packet becomes
   larger and can exceed the MTU of any link traversed from the ITR to
   the ETR.  It is recommended in IPv4 that packets do not get
   fragmented as they are encapsulated by the ITR.  Instead, the packet
   is dropped and an ICMP Too Big message is returned to the source.

   Based on informal surveys of large ISP network configurations, it
   appears that most transit paths can accommodate a path MTU of at
   least 4470 bytes.  However, the LISP deployment effort has included
   collecting data during its pilot phase to confirm or refute this
   assumption.  These deployments have shown that (typically the edge)
   of the network has a non-trivial number of lower MTU (1500 byte)
   links.

   This specification recommends that implementations support for one of
   the proposed fragmentation and reassembly schemes.  These two simple
   existing schemes are detailed in Section 5.4.
































Farinacci, et al.       Expires February 3, 2011               [Page 16]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.1.  LISP IPv4-in-IPv4 Header Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   OH  |  Time to Live | Protocol =3D 17 |         Header Checksum       =
|
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                    Source Routing Locator                     |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D 4341      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   IH  |  Time to Live |    Protocol   |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                           Source EID                          |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                         Destination EID                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+




5.2.  LISP IPv6-in-IPv6 Header Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



Farinacci, et al.       Expires February 3, 2011               [Page 17]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   |   |         Payload Length        | Next Header=3D17|   Hop Limit   =
|
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   O   +                                                               +
   u   |                                                               |
   t   +                     Source Routing Locator                    +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                  Destination Routing Locator                  +
   |   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D 4341      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   /   |         Payload Length        |  Next Header  |   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   I   +                                                               +
   n   |                                                               |
   n   +                          Source EID                           +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                        Destination EID                        +
   \   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+





Farinacci, et al.       Expires February 3, 2011               [Page 18]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.3.  Tunnel Header Field Descriptions

   Inner Header:  is the inner header, preserved from the datagram
      received from the originating host.  The source and destination IP
      addresses are EIDs.

   Outer Header:  is the outer header prepended by an ITR.  The address
      fields contain RLOCs obtained from the ingress router's EID-to-
      RLOC cache.  The IP protocol number is "UDP (17)" from [RFC0768].
      The DF bit of the Flags field is set to 0 when the method in
      Section 5.4.1 is used and set to 1 when the method in
      Section 5.4.2 is used.

   UDP Header:  contains a ITR selected source port when encapsulating a
      packet.  See Section 6.5 for details on the hash algorithm used to
      select a source port based on the 5-tuple of the inner header.
      The destination port MUST be set to the well-known IANA assigned
      port value 4341.

   UDP Checksum:  this field SHOULD be transmitted as zero by an ITR for
      either IPv4 [RFC0768] or IPv6 encapsulation [UDP-TUNNELS].  When a
      packet with a zero UDP checksum is received by an ETR, the ETR
      MUST accept the packet for decapsulation.  When an ITR transmits a
      non-zero value for the UDP checksum, it MUST send a correctly
      computed value in this field.  When an ETR receives a packet with
      a non-zero UDP checksum, it MAY choose to verify the checksum
      value.  If it chooses to perform such verification, and the
      verification fails, the packet MUST be silently dropped.  If the
      ETR chooses not to perform the verification, or performs the
      verification successfully, the packet MUST be accepted for
      decapsulation.  The handling of UDP checksums for all tunneling
      protocols, including LISP, is under active discussion within the
      IETF.  When that discussion concludes, any necessary changes will
      be made to align LISP with the outcome of the broader discussion.

   UDP Length:  for an IPv4 encapsulated packet, the inner header Total
      Length plus the UDP and LISP header lengths are used.  For an IPv6
      encapsulated packet, the inner header Payload Length plus the size
      of the IPv6 header (40 bytes) plus the size of the UDP and LISP
      headers are used.  The UDP header length is 8 bytes.

   N: this is the nonce-present bit.  When this bit is set to 1, the
      low-order 24-bits of the first 32-bits of the LISP header contains
      a Nonce.  See Section 6.3.1 for details.  Both N and V bits MUST
      NOT be set in the same packet.  If they are, a decapsulating ETR
      MUST treat the "Nonce/Map-Version" field as having a Nonce value
      present.




Farinacci, et al.       Expires February 3, 2011               [Page 19]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   L: this is the Locator-Status-Bits field enabled bit.  When this bit
      is set to 1, the Locator-Status-Bits in the second 32-bits of the
      LISP header are in use.


     x 1 x x 0 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                      Locator Status Bits                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   E: this is the echo-nonce-request bit.  When this bit is set to 1,
      the N bit MUST be 1.  This bit SHOULD be ignored and has no
      meaning when the N bit is set to 0.  See Section 6.3.1 for
      details.

   V: this is the Map-Version present bit.  When this bit is set to 1,
      the N bit MUST be 0.  Refer to Section 6.6.3 for more details.
      This bit indicates that the first 4 bytes of the LISP header is
      encoded as:


     0 x 0 1 x x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|  Source Map-Version   |   Dest Map-Version    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID/Locator Status Bits               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   I: this is the Instance ID bit.  See Section 5.5 for more details.
      When this bit is set to 1, the Locator Status Bits field is
      reduced to 8-bits and the high-order 24-bits are used as an
      Instance ID.  If the L-bit is set to 0, then the low-order 8 bits
      are transmitted as zero and ignored on receipt.  The format of the
      last 4 bytes of the LISP header would look like:


     x x x x 1 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID                   |     LSBs      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+







Farinacci, et al.       Expires February 3, 2011               [Page 20]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   flags:  this 3-bit field is reserved for future flag use.  It is set
      to 0 on transmit and ignored on receipt.

   LISP Nonce:  is a 24-bit value that is randomly generated by an ITR
      when the N-bit is set to 1.  The nonce is also used when the E-bit
      is set to request the nonce value to be echoed by the other side
      when packets are returned.  When the E-bit is clear but the N-bit
      is set, a remote ITR is either echoing a previously requested
      echo-nonce or providing a random nonce.  See Section 6.3.1 for
      more details.

   LISP Locator Status Bits:  in the LISP header are set by an ITR to
      indicate to an ETR the up/down status of the Locators in the
      source site.  Each RLOC in a Map-Reply is assigned an ordinal
      value from 0 to n-1 (when there are n RLOCs in a mapping entry).
      The Locator Status Bits are numbered from 0 to n-1 from the least
      significant bit of field.  The field is 32-bits when the I-bit is
      set to 0 and is 8 bits when the I-bit is set to 1.  When a Locator
      Status Bit is set to 1, the ITR is indicating to the ETR the RLOC
      associated with the bit ordinal has up status.  See Section 6.3
      for details on how an ITR can determine the status of other ITRs
      at the same site.  When a site has multiple EID-prefixes which
      result in multiple mappings (where each could have a different
      locator-set), the Locator Status Bits setting in an encapsulated
      packet MUST reflect the mapping for the EID-prefix that the inner-
      header source EID address matches.

   When doing Recursive Tunneling or ITR/PTR encapsulation:

   o  The outer header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the inner header Time to Live
      field.

   o  The outer header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the inner header
      Type of Service field (with one caveat, see below).

   When doing Re-encapsulated Tunneling:

   o  The new outer header Time to Live field SHOULD be copied from the
      stripped outer header Time to Live field when it is less than the
      Time to Live of the inner header.  Failing to perform this check,
      can cause the Time to Live of the inner header to increment across
      re-encapsulation boundaries.  This is also performed when doing
      initial encapsulation when a packet comes to an ITR or PITR
      destined for a LISP site.





Farinacci, et al.       Expires February 3, 2011               [Page 21]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  The new outer header Type of Service field SHOULD be copied from
      the stripped OH header Type of Service field (with one caveat, see
      below).

   Copying the TTL serves two purposes: first, it preserves the distance
   the host intended the packet to travel; second, and more importantly,
   it provides for suppression of looping packets in the event there is
   a loop of concatenated tunnels due to misconfiguration.  See
   Section 9.3 for TTL exception handling for traceroute packets.

   The ECN field occupies bits 6 and 7 of both the IPv4 Type of Service
   field and the IPv6 Traffic Class field [RFC3168].  The ECN field
   requires special treatment in order to avoid discarding indications
   of congestion [RFC3168].  ITR encapsulation MUST copy the 2-bit ECN
   field from the inner header to the outer header.  Re-encapsulation
   MUST copy the 2-bit ECN field from the stripped outer header to the
   new outer header.  If the ECN field contains a congestion indication
   codepoint (the value is '11', the Congestion Experienced (CE)
   codepoint), then ETR decapsulation MUST copy the 2-bit ECN field from
   the stripped outer header to the surviving inner header that is used
   to forward the packet beyond the ETR.  These requirements preserve
   Congestion Experienced (CE) indications when a packet that uses ECN
   traverses a LISP tunnel and becomes marked with a CE indication due
   to congestion between the tunnel endpoints.

5.4.  Dealing with Large Encapsulated Packets

   In the event that the MTU issues mentioned above prove to be more
   serious than expected, this section proposes 2 simple mechanisms to
   deal with large packets.  One is stateless using IP fragmentation and
   the other is stateful using Path MTU Discovery [RFC1191].

   It is left to the implementor to decide if the stateless or stateful
   mechanism SHOULD be implemented.  Both or neither can be decided as
   well since it is a local decision in the ITR regarding how to deal
   with MTU issues.  Sites can interoperate with differing mechanisms.

   Both stateless and stateful mechanisms also apply to Reencapsulating
   and Recursive Tunneling.  So any actions below referring to an ITR
   also apply to an TE-ITR.

5.4.1.  A Stateless Solution to MTU Handling

   An ITR stateless solution to handle MTU issues is described as
   follows:






Farinacci, et al.       Expires February 3, 2011               [Page 22]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   1.  Define an architectural constant S for the maximum size of a
       packet, in bytes, an ITR would like to receive from a source
       inside of its site.

   2.  Define L to be the maximum size, in bytes, a packet of size S
       would be after the ITR prepends the LISP header, UDP header, and
       outer network layer header of size H.

   3.  Calculate: S + H =3D L.

   When an ITR receives a packet from a site-facing interface and adds H
   bytes worth of encapsulation to yield a packet size greater than L
   bytes, it resolves the MTU issue by first splitting the original
   packet into 2 equal-sized fragments.  A LISP header is then prepended
   to each fragment.  This will ensure that the new, encapsulated
   packets are of size (S/2 + H), which is always below the effective
   tunnel MTU.

   When an ETR receives encapsulated fragments, it treats them as two
   individually encapsulated packets.  It strips the LISP headers then
   forwards each fragment to the destination host of the destination
   site.  The two fragments are reassembled at the destination host into
   the single IP datagram that was originated by the source host.

   This behavior is performed by the ITR when the source host originates
   a packet with the DF field of the IP header is set to 0.  When the DF
   field of the IP header is set to 1, or the packet is an IPv6 packet
   originated by the source host, the ITR will drop the packet when the
   size is greater than L, and sends an ICMP Too Big message to the
   source with a value of S, where S is (L - H).

   When the outer header encapsulation uses an IPv4 header, an
   implementation SHOULD set the DF bit to 1 so ETR fragment reassembly
   can be avoided.  An implementation MAY set the DF bit in such headers
   to 0 if it has good reason to believe there are unresolvable path MTU
   issues between the sending ITR and the receiving ETR.

   This specification recommends that L be defined as 1500.

5.4.2.  A Stateful Solution to MTU Handling

   An ITR stateful solution to handle MTU issues is described as follows
   and was first introduced in [OPENLISP]:

   1.  The ITR will keep state of the effective MTU for each locator per
       mapping cache entry.  The effective MTU is what the core network
       can deliver along the path between ITR and ETR.




Farinacci, et al.       Expires February 3, 2011               [Page 23]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   2.  When an IPv6 encapsulated packet or an IPv4 encapsulated packet
       with DF bit set to 1, exceeds what the core network can deliver,
       one of the intermediate routers on the path will send an ICMP Too
       Big message to the ITR.  The ITR will parse the ICMP message to
       determine which locator is affected by the effective MTU change
       and then record the new effective MTU value in the mapping cache
       entry.

   3.  When a packet is received by the ITR from a source inside of the
       site and the size of the packet is greater than the effective MTU
       stored with the mapping cache entry associated with the
       destination EID the packet is for, the ITR will send an ICMP Too
       Big message back to the source.  The packet size advertised by
       the ITR in the ICMP Too Big message is the effective MTU minus
       the LISP encapsulation length.

   Even though this mechanism is stateful, it has advantages over the
   stateless IP fragmentation mechanism, by not involving the
   destination host with reassembly of ITR fragmented packets.

5.5.  Using Virtualization and Segmentation with LISP

   When multiple organizations inside of a LISP site are using private
   addresses [RFC1918] as EID-prefixes, their address spaces MUST remain
   segregated due to possible address duplication.  An Instance ID in
   the address encoding can aid in making the entire AFI based address
   unique.  See [LCAF] for details for a possible address encoding.  The
   LCAF encoding is an area for further study.

   An Instance ID can be carried in a LISP encapsulated packet.  An ITR
   that prepends a LISP header, will copy a 24-bit value, used by the
   LISP router to uniquely identify the address space.  The value is
   copied to the Instance ID field of the LISP header and the I-bit is
   set to 1.

   When an ETR decapsulate a packet, the Instance ID from the LISP
   header is used as a table identifier to locate the forwarding table
   to use for the inner destination EID lookup.

   Some examples of the 24-bit value to copy or map into the Instance ID
   field could be a 802.1Q VLAN tag or a VPN value associated with a
   configured VRF.









Farinacci, et al.       Expires February 3, 2011               [Page 24]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.  EID-to-RLOC Mapping

6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats

   The following new UDP packet types are used to retrieve EID-to-RLOC
   mappings:


       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version|  IHL  |Type of Service|          Total Length         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Identification        |Flags|      Fragment Offset    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Time to Live | Protocol =3D 17 |         Header Checksum       =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Source Routing Locator                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version| Traffic Class |           Flow Label                  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Payload Length        | Next Header=3D17|   Hop Limit   =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                     Source Routing Locator                    +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +



Farinacci, et al.       Expires February 3, 2011               [Page 25]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       |                                                               |
       +                  Destination Routing Locator                  +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   The LISP UDP-based messages are the Map-Request and Map-Reply
   messages.  When a UDP Map-Request is sent, the UDP source port is
   chosen by the sender and the destination UDP port number is set to
   4342.  When a UDP Map-Reply is sent, the source UDP port number is
   set to 4342 and the destination UDP port number is copied from the
   source port of either the Map-Request or the invoking data packet.

   The UDP Length field will reflect the length of the UDP header and
   the LISP Message payload.

   The UDP Checksum is computed and set to non-zero for Map-Request,
   Map-Reply, Map-Register and ECM control messages.  It MUST be checked
   on receipt and if the checksum fails, the packet MUST be dropped.

   LISP-CONS [CONS] use TCP to send LISP control messages.  The format
   of control messages includes the UDP header so the checksum and
   length fields can be used to protect and delimit message boundaries.

   This main LISP specification is the authoritative source for message
   format definitions for the Map-Request and Map-Reply messages.















Farinacci, et al.       Expires February 3, 2011               [Page 26]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.1.1.  LISP Packet Type Allocations

   This section will be the authoritative source for allocating LISP
   Type values.  Current allocations are:


       Reserved:                          0    b'0000'
       LISP Map-Request:                  1    b'0001'
       LISP Map-Reply:                    2    b'0010'
       LISP Map-Register:                 3    b'0011'
       LISP Encapsulated Control Message: 8    b'1000'


6.1.2.  Map-Request Message Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3D1 |A|M|P|S|       Reserved      |   IRC   | Record Count  =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Source-EID-AFI        |   Source EID Address  ...     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI 1        |    ITR-RLOC Address 1  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                              ...                              |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI n        |    ITR-RLOC Address n  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |   Reserved    | EID mask-len  |        EID-prefix-AFI         |
   Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                       EID-prefix  ...                         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Map-Reply Record  ...                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Packet field descriptions:






Farinacci, et al.       Expires February 3, 2011               [Page 27]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Type:   1 (Map-Request)

   A: This is an authoritative bit, which is set to 0 for UDP-based Map-
      Requests sent by an ITR.

   M: When set, it indicates a Map-Reply Record segment is included in
      the Map-Request.

   P: This is the probe-bit which indicates that a Map-Request SHOULD be
      treated as a locator reachability probe.  The receiver SHOULD
      respond with a Map-Reply with the probe-bit set, indicating the
      Map-Reply is a locator reachability probe reply, with the nonce
      copied from the Map-Request.  See Section 6.3.2 for more details.

   S: This is the SMR bit.  See Section 6.6.2 for details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   IRC:  This 5-bit field is the ITR-RLOC Count which encodes the number
      of (ITR-RLOC-AFI, ITR-RLOC Address) fields present in this
      message.  Multiple ITR-RLOC Address fields are used so a Map-
      Replier can select which destination address to use for a Map-
      Reply.  The IRC value ranges from 0 to 31, where IRC value 0 means
      an ITR-RLOC address count of 1, an IRC value of 1 means an ITR-
      RLOC address count of 2, and so on up to an IRC value of 31, which
      means an ITR-RLOC address count of 32.

   Record Count:  The number of records in this Map-Request message.  A
      record is comprised of the portion of the packet that is labeled
      'Rec' above and occurs the number of times equal to Record Count.
      For this version of the protocol, a receiver MUST accept and
      process Map-Requests that contain one or more records, but a
      sender MUST only send Map-Requests containing one record.  Support
      for requesting multiple EIDs in a single Map-Request message will
      be specified in a future version of the protocol.

   Nonce:  An 8-byte random value created by the sender of the Map-
      Request.  This nonce will be returned in the Map-Reply.  The
      security of the LISP mapping protocol depends critically on the
      strength of the nonce in the Map-Request message.  The nonce
      SHOULD be generated by a properly seeded pseudo-random (or strong
      random) source.  See [RFC4086] for advice on generating security-
      sensitive random data.

   Source-EID-AFI:  Address family of the "Source EID Address" field.






Farinacci, et al.       Expires February 3, 2011               [Page 28]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Source EID Address:  This is the EID of the source host which
      originated the packet which is invoking this Map-Request.  When
      Map-Requests are used for refreshing a map-cache entry or for
      RLOC-probing, an AFI value 0 is used and this field is of zero
      length.

   ITR-RLOC-AFI:  Address family of the "ITR-RLOC Address" field that
      follows this field.

   ITR-RLOC Address:  Used to give the ETR the option of selecting the
      destination address from any address family for the Map-Reply
      message.  This address MUST be a routable RLOC address.

   EID mask-len:  Mask length for EID prefix.

   EID-prefix-AFI:  Address family of EID-prefix according to [RFC5226]

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.  When a Map-Request is sent by an ITR because a
      data packet is received for a destination where there is no
      mapping entry, the EID-prefix is set to the destination IP address
      of the data packet.  And the 'EID mask-len' is set to 32 or 128
      for IPv4 or IPv6, respectively.  When an xTR wants to query a site
      about the status of a mapping it already has cached, the EID-
      prefix used in the Map-Request has the same mask-length as the
      EID-prefix returned from the site when it sent a Map-Reply
      message.

   Map-Reply Record:  When the M bit is set, this field is the size of a
      single "Record" in the Map-Reply format.  This Map-Reply record
      contains the EID-to-RLOC mapping entry associated with the Source
      EID.  This allows the ETR which will receive this Map-Request to
      cache the data if it chooses to do so.

   Mapping Protocol Data:  See [CONS] for details.  This field is
      optional and present when the UDP length indicates there is enough
      space in the packet to include it.

6.1.3.  EID-to-RLOC UDP Map-Request Message

   A Map-Request is sent from an ITR when it needs a mapping for an EID,
   wants to test an RLOC for reachability, or wants to refresh a mapping
   before TTL expiration.  For the initial case, the destination IP
   address used for the Map-Request is the destination-EID from the
   packet which had a mapping cache lookup failure.  For the latter 2
   cases, the destination IP address used for the Map-Request is one of
   the RLOC addresses from the locator-set of the map cache entry.  The
   source address is either an IPv4 or IPv6 RLOC address depending if



Farinacci, et al.       Expires February 3, 2011               [Page 29]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   the Map-Request is using an IPv4 versus IPv6 header, respectively.
   In all cases, the UDP source port number for the Map-Request message
   is a randomly allocated 16-bit value and the UDP destination port
   number is set to the well-known destination port number 4342.  A
   successful Map-Reply updates the cached set of RLOCs associated with
   the EID prefix range.

   One or more Map-Request (ITR-RLOC-AFI, ITR-RLOC-Address) fields MUST
   be filled in by the ITR.  The number of fields (minus 1) encoded MUST
   be placed in the IRC field.  The ITR MAY include all locally
   configured locators in this list or just provide one locator address
   from each address family it supports.  If the ITR erroneously
   provides no ITR-RLOC addresses, the Map-Replier MUST drop the Map-
   Request.

   Map-Requests can also be LISP encapsulated using UDP destination port
   4342 with a LISP type value set to "Encapsulated Control Message",
   when sent from an ITR to a Map-Resolver.  Likewise, Map-Requests are
   LISP encapsulated the same way from a Map-Server to an ETR.  Details
   on encapsulated Map-Requests and Map-Resolvers can be found in
   [LISP-MS].

   Map-Requests MUST be rate-limited.  It is recommended that a Map-
   Request for the same EID-prefix be sent no more than once per second.

   An ITR that is configured with mapping database information (i.e. it
   is also an ETR) may optionally include those mappings in a Map-
   Request.  When an ETR configured to accept and verify such
   "piggybacked" mapping data receives such a Map-Request and it does
   not have this mapping in the map-cache, it may originate a "verifying
   Map-Request", addressed to the map-requesting ITR.  If the ETR has a
   map-cache entry that matches the "piggybacked" EID and the RLOC is in
   the locator-set for the entry, then it may send the "verifying Map-
   Request" directly to the originating Map-Request source.  If the RLOC
   is not in the locator-set, then the ETR MUST send the "verifying Map-
   Request" to the "piggybacked" EID.  Doing this forces the "verifying
   Map-Request" to go through the mapping database system to reach the
   authoritative source of information about that EID, guarding against
   RLOC-spoofing in in the "piggybacked" mapping data.












Farinacci, et al.       Expires February 3, 2011               [Page 30]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.1.4.  Map-Reply Message Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3D2 |P|E|            Reserved               | Record Count  =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Packet field descriptions:

   Type:   2 (Map-Reply)

   P: This is the probe-bit which indicates that the Map-Reply is in
      response to a locator reachability probe Map-Request.  The nonce
      field MUST contain a copy of the nonce value from the original
      Map-Request.  See Section 6.3.2 for more details.

   E: Indicates that the ETR which sends this Map-Reply message is
      advertising that the site is enabled for the Echo-Nonce locator
      reachability algorithm.  See Section 6.3.1 for more details.

   Reserved:  Set to 0 on transmission and ignored on receipt.






Farinacci, et al.       Expires February 3, 2011               [Page 31]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Record Count:  The number of records in this reply message.  A record
      is comprised of that portion of the packet labeled 'Record' above
      and occurs the number of times equal to Record count.

   Nonce:  A 24-bit value set in a Data-Probe packet or a 64-bit value
      from the Map-Request is echoed in this Nonce field of the Map-
      Reply.

   Record TTL:  The time in minutes the recipient of the Map-Reply will
      store the mapping.  If the TTL is 0, the entry SHOULD be removed
      from the cache immediately.  If the value is 0xffffffff, the
      recipient can decide locally how long to store the mapping.

   Locator Count:  The number of Locator entries.  A locator entry
      comprises what is labeled above as 'Loc'.  The locator count can
      be 0 indicating there are no locators for the EID-prefix.

   EID mask-len:  Mask length for EID prefix.

   ACT:  This 3-bit field describes negative Map-Reply actions.  These
      bits are used only when the 'Locator Count' field is set to 0.
      The action bits are encoded only in Map-Reply messages.  The
      actions defined are used by an ITR or PTR when a destination EID
      matches a negative mapping cache entry.  Unassigned values should
      cause a map-cache entry to be created and, when packets match this
      negative cache entry, they will be dropped.  The current assigned
      values are:



      (0) No-Action:  The map-cache is kept alive and packet
         encapsulation occurs.

      (1) Natively-Forward:  The packet is not encapsulated or dropped
         but natively forwarded.

      (2) Send-Map-Request:  The packet invokes sending a Map-Request.

      (3) Drop:  A packet that matches this map-cache entry is dropped.

   A: The Authoritative bit, when sent by a UDP-based message is always
      set to 1 by an ETR.  See [CONS] for TCP-based Map-Replies.  When a
      Map-Server is proxy Map-Replying [LISP-MS] for a LISP site, the
      Authoritative bit is set to 0.  This indicates to requesting ITRs
      that the Map-Reply was not originated by a LISP node managed at
      the site that owns the EID-prefix.





Farinacci, et al.       Expires February 3, 2011               [Page 32]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Map-Version Number:  When this 12-bit value is non-zero the Map-Reply
      sender is informing the ITR what the version number is for the
      EID-record contained in the Map-Reply.  The ETR can allocate this
      number internally but MUST coordinate this value with other ETRs
      for the site.  When this value is 0, there is no versioning
      information conveyed.  The Map-Version Number can be included in
      Map-Request and Map-Register messages.  See Section 6.6.3 for more
      details.

   EID-AFI:  Address family of EID-prefix according to [RFC5226].

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.

   Priority:  each RLOC is assigned a unicast priority.  Lower values
      are more preferable.  When multiple RLOCs have the same priority,
      they may be used in a load-split fashion.  A value of 255 means
      the RLOC MUST NOT be used for unicast forwarding.

   Weight:  when priorities are the same for multiple RLOCs, the weight
      indicates how to balance unicast traffic between them.  Weight is
      encoded as a percentage of total unicast packets that match the
      mapping entry.  If a non-zero weight value is used for any RLOC,
      then all RLOCs MUST use a non-zero weight value and then the sum
      of all weight values MUST equal 100.  If a zero value is used for
      any RLOC weight, then all weights MUST be zero and the receiver of
      the Map-Reply will decide how to load-split traffic.  See
      Section 6.5 for a suggested hash algorithm to distribute load
      across locators with same priority and equal weight values.  When
      a single RLOC exists in a mapping entry, the weight value MUST be
      set to 100 and ignored on receipt.

   M Priority:  each RLOC is assigned a multicast priority used by an
      ETR in a receiver multicast site to select an ITR in a source
      multicast site for building multicast distribution trees.  A value
      of 255 means the RLOC MUST NOT be used for joining a multicast
      distribution tree.

   M Weight:  when priorities are the same for multiple RLOCs, the
      weight indicates how to balance building multicast distribution
      trees across multiple ITRs.  The weight is encoded as a percentage
      of total number of trees build to the source site identified by
      the EID-prefix.  If a non-zero weight value is used for any RLOC,
      then all RLOCs MUST use a non-zero weight value and then the sum
      of all weight values MUST equal 100.  If a zero value is used for
      any RLOC weight, then all weights MUST be zero and the receiver of
      the Map-Reply will decide how to distribute multicast state across
      ITRs.  When all weight values for a locator-set do not add up to



Farinacci, et al.       Expires February 3, 2011               [Page 33]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      100, they must be normalized so relative weighting is still
      maintained.

   Unused Flags:  set to 0 when sending and ignored on receipt.

   L: when this bit is set, the locator is flagged as a local locator to
      the ETR that is sending the Map-Reply.  When a Map-Server is doing
      proxy Map-Replying [LISP-MS] for a LISP site, the L bit is set to
      0 for all locators in this locator-set.

   p: when this bit is set, an ETR informs the RLOC-probing ITR that the
      locator address, for which this bit is set, is the one being RLOC-
      probed and may be different from the source address of the Map-
      Reply.  An ITR that RLOC-probes a particular locator, MUST use
      this locator for retrieving the data structure used to store the
      fact that the locator is reachable.  The "p" bit is set for a
      single locator in the same locator set.  If an implementation sets
      more than one "p" bit erroneously, the receiver of the Map-Reply
      MUST select the first locator.  The "p" bit MUST NOT be set for
      locator-set records sent in Map-Request and Map-Register messages.

   R: when this bit is set, the locator is known to be reachable from
      the Map-Reply sender's perspective.  That is, the sender has a
      route for the other locators in its site.  This status
      notification is used as a hint to signal to remote sites the up/
      down status of the device that is assigned the locator address.
      Also see Section 6.4 for another use-case for the R-bit.

   Locator:  an IPv4 or IPv6 address (as encoded by the 'Loc-AFI' field)
      assigned to an ETR.  Note that the destination RLOC address MAY be
      an anycast address.  A source RLOC can be an anycast address as
      well.  The source or destination RLOC MUST NOT be the broadcast
      address (255.255.255.255 or any subnet broadcast address known to
      the router), and MUST NOT be a link-local multicast address.  The
      source RLOC MUST NOT be a multicast address.  The destination RLOC
      SHOULD be a multicast address if it is being mapped from a
      multicast destination EID.

   Mapping Protocol Data:  See [CONS] or [ALT] for details.  This field
      is optional and present when the UDP length indicates there is
      enough space in the packet to include it.

6.1.5.  EID-to-RLOC UDP Map-Reply Message

   A Map-Reply returns an EID-prefix that is less than or equal specific
   for the EID that is being requested.  The EID being requested is
   either from the destination field of an IP header of a Data-Probe or
   the EID record of a Map-Request.  The RLOCs in the Map-Reply are



Farinacci, et al.       Expires February 3, 2011               [Page 34]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   globally-routable IP addresses of all ETRs for the LISP site.  Each
   RLOC conveys status reachability but does not convey path
   reachability from a requesters perspective.  Separate testing of path
   reachability is required, See Section 6.3 for details.

   Note that a Map-Reply may contain different EID-prefix granularity
   (prefix + length) than the Map-Request which triggers it.  This might
   occur if a Map-Request were for a prefix that had been returned by an
   earlier Map-Reply.  In such a case, the requester updates its cache
   with the new prefix information and granularity.  For example, a
   requester with two cached EID-prefixes that are covered by a Map-
   Reply containing one, less-specific prefix, replaces the entry with
   the less-specific EID-prefix.  Note that the reverse, replacement of
   one less-specific prefix with multiple more-specific prefixes, can
   also occur but not by removing the less-specific prefix rather by
   adding the more-specific prefixes which during a lookup will override
   the less-specific prefix.

   When an ETR is configured with overlapping EID-prefixes, a Map-
   Request with an EID that longest matches any EID-prefix MUST be
   returned in a single Map-Reply message.  For instance, if an ETR had
   database mapping entries for EID-prefixes:

     10.0.0.0/8
     10.1.0.0/16
     10.1.1.0/24
     10.1.2.0/24

   A Map-Request for EID 10.1.1.1 would cause a Map-Reply with a record
   count of 1 to be returned with a mapping record EID-prefix of
   10.1.1.0/24.

   A Map-Request for EID 10.1.5.5, would cause a Map-Reply with a record
   count of 3 to be returned with mapping records for EID-prefixes
   10.1.0.0/16, 10.1.1.0/24, and 10.1.2.0/24.

   Note that not all overlapping EID-prefixes need to be returned, only
   the more specifics (note in the second example above 10.0.0.0/8 was
   not returned for requesting EID 10.1.5.5) entries for the matching
   EID-prefix of the requesting EID.  When more than one EID-prefix is
   returned, all SHOULD use the same Time-to-Live value so they can all
   time out at the same time.  When a more specific EID-prefix is
   received later, its Time-to-Live value in the Map-Reply record can be
   stored even when other less specifics exist.  When a less specific
   EID-prefix is received later, its map-cache expiration time SHOULD be
   set to the minimum expiration time of any more specific EID-prefix in
   the map-cache.




Farinacci, et al.       Expires February 3, 2011               [Page 35]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Map-Replies SHOULD be sent for an EID-prefix no more often than once
   per second to the same requesting router.  For scalability, it is
   expected that aggregation of EID addresses into EID-prefixes will
   allow one Map-Reply to satisfy a mapping for the EID addresses in the
   prefix range thereby reducing the number of Map-Request messages.

   Map-Reply records can have an empty locator-set.  This type of a Map-
   Reply is called a Negative Map-Reply.  Negative Map-Replies convey
   special actions by the sender to the ITR or PTR which have solicited
   the Map-Reply.  There are two primary applications for Negative Map-
   Replies.  The first is for a Map-Resolver to instruct an ITR or PTR
   when a destination is for a LISP site versus a non-LISP site.  And
   the other is to source quench Map-Requests which are sent for non-
   allocated EIDs.

   For each Map-Reply record, the list of locators in a locator-set MUST
   appear in the same order for each ETR that originates a Map-Reply
   message.  The locator-set MUST be sorted in order of ascending IP
   address where an IPv4 locator address is considered numerically 'less
   than' an IPv6 locator address.

   When sending a Map-Reply message, the destination address is copied
   from the one of the ITR-RLOC fields from the Map-Request.  The ETR
   can choose a locator address from one of the address families it
   supports.  For Data-Probes, the destination address of the Map-Reply
   is copied from the source address of the Data-Probe message which is
   invoking the reply.  The source address of the Map-Reply is one of
   the local locator addresses listed in the locator-set of any mapping
   record in the message and SHOULD be chosen to allow uRPF checks to
   succeed in the upstream service provider.  The destination port of a
   Map-Reply message is copied from the source port of the Map-Request
   or Data-Probe and the source port of the Map-Reply message is set to
   the well-known UDP port 4342.

6.1.5.1.  Traffic Redirection with Coarse EID-Prefixes

   When an ETR is misconfigured or compromised, it could return coarse
   EID-prefixes in Map-Reply messages it sends.  The EID-prefix could
   cover EID-prefixes which are allocated to other sites redirecting
   their traffic to the locators of the compromised site.

   To solve this problem, there are two basic solutions that could be
   used.  The first is to have Map-Servers proxy-map-reply on behalf of
   ETRs so their registered EID-prefixes are the ones returned in Map-
   Replies.  Since the interaction between an ETR and Map-Server is
   secured with shared-keys, it is more difficult for an ETR to
   misbehave.  The second solution is to have ITRs and PTRs cache EID-
   prefixes with mask-lengths that are greater than or equal to a



Farinacci, et al.       Expires February 3, 2011               [Page 36]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   configured prefix length.  This limits the damage to a specific width
   of any EID-prefix advertised, but needs to be coordinated with the
   allocation of site prefixes.  These solutions can be used
   independently or at the same time.

   At the time of this writing, other approaches are being considered
   and researched.

6.1.6.  Map-Register Message Format

   The usage details of the Map-Register message can be found in
   specification [LISP-MS].  This section solely defines the message
   format.

   The message is sent in UDP with a destination UDP port of 4342 and a
   randomly selected UDP source port number.

   The Map-Register message format is:

































Farinacci, et al.       Expires February 3, 2011               [Page 37]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3D3 |P|            Reserved                 | Record Count  =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |            Key ID             |  Authentication Data Length   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       ~                     Authentication Data                       ~
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Packet field descriptions:

   Type:   3 (Map-Register)

   P: This is the proxy-map-reply bit, when set to 1 an ETR sends a Map-
      Register message requesting for the Map-Server to proxy Map-Reply.
      The Map-Server will send non-authoritative Map-Replies on behalf
      of the ETR.  Details on this usage will be provided in a future
      version of this draft.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this Map-Register message.  A
      record is comprised of that portion of the packet labeled 'Record'
      above and occurs the number of times equal to Record count.







Farinacci, et al.       Expires February 3, 2011               [Page 38]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Nonce:  This 8-byte Nonce field is set to 0 in Map-Register messages.

   Key ID:  A configured ID to find the configured Message
      Authentication Code (MAC) algorithm and key value used for the
      authentication function.

   Authentication Data Length:  The length in bytes of the
      Authentication Data field that follows this field.  The length of
      the Authentication Data field is dependent on the Message
      Authentication Code (MAC) algorithm used.  The length field allows
      a device that doesn't know the MAC algorithm to correctly parse
      the packet.

   Authentication Data:  The message digest used from the output of the
      Message Authentication Code (MAC) algorithm.  The entire Map-
      Register payload is authenticated with this field preset to 0.
      After the MAC is computed, it is placed in this field.
      Implementations of this specification MUST include support for
      HMAC-SHA-1-96 [RFC2404] and support for HMAC-SHA-128-256 [RFC4634]
      is recommended.

   The definition of the rest of the Map-Register can be found in the
   Map-Reply section.

6.1.7.  Encapsulated Control Message Format

   An Encapsulated Control Message is used to encapsulate control
   packets sent between xTRs and the mapping database system described
   in [LISP-MS].






















Farinacci, et al.       Expires February 3, 2011               [Page 39]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   OH  |                      (uses RLOC addresses)                    |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D 4342      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LH  |Type=3D8 |                   Reserved                            =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   IH  |                  (uses RLOC or EID addresses)                 |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D yyyy      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LCM |                      LISP Control Message                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet header descriptions:

   OH:   The outer IPv4 or IPv6 header which uses RLOC addresses in the
      source and destination header address fields.

   UDP:   The outer UDP header with destination port 4342.  The source
      port is randomly allocated.  The checksum field MUST be non-zero.

   LH:   Type 8 is defined to be a "LISP Encapsulated Control Message"
      and what follows is either an IPv4 or IPv6 header as encoded by
      the first 4 bits after the reserved field.

   IH:   The inner IPv4 or IPv6 header which can use either RLOC or EID
      addresses in the header address fields.  When a Map-Request is
      encapsulated in this packet format the destination address in this
      header is an EID.

   UDP:   The inner UDP header where the port assignments depends on the
      control packet being encapsulated.  When the control packet is a
      Map-Request or Map-Register, the source port is randomly assigned
      and the destination port is 4342.  When the control packet is a
      Map-Reply, the source port is 4342 and the destination port is
      assigned from the source port of the invoking Map-Request.  Port
      number 4341 MUST NOT be assigned to either port.  The checksum



Farinacci, et al.       Expires February 3, 2011               [Page 40]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      field MUST be non-zero.

   LCM:   The format is one of the control message formats described in
      this section.  At this time, only Map-Request messages and PIM
      Join-Prune messages [MLISP] are allowed to be encapsulated.
      Encapsulating other types of LISP control messages are for further
      study.  When Map-Requests are sent for RLOC-probing purposes (i.e
      the probe-bit is set), they MUST NOT be sent inside Encapsulated
      Control Messages.

6.2.  Routing Locator Selection

   Both client-side and server-side may need control over the selection
   of RLOCs for conversations between them.  This control is achieved by
   manipulating the Priority and Weight fields in EID-to-RLOC Map-Reply
   messages.  Alternatively, RLOC information may be gleaned from
   received tunneled packets or EID-to-RLOC Map-Request messages.

   The following enumerates different scenarios for choosing RLOCs and
   the controls that are available:

   o  Server-side returns one RLOC.  Client-side can only use one RLOC.
      Server-side has complete control of the selection.

   o  Server-side returns a list of RLOC where a subset of the list has
      the same best priority.  Client can only use the subset list
      according to the weighting assigned by the server-side.  In this
      case, the server-side controls both the subset list and load-
      splitting across its members.  The client-side can use RLOCs
      outside of the subset list if it determines that the subset list
      is unreachable (unless RLOCs are set to a Priority of 255).  Some
      sharing of control exists: the server-side determines the
      destination RLOC list and load distribution while the client-side
      has the option of using alternatives to this list if RLOCs in the
      list are unreachable.

   o  Server-side sets weight of 0 for the RLOC subset list.  In this
      case, the client-side can choose how the traffic load is spread
      across the subset list.  Control is shared by the server-side
      determining the list and the client determining load distribution.
      Again, the client can use alternative RLOCs if the server-provided
      list of RLOCs are unreachable.

   o  Either side (more likely on the server-side ETR) decides not to
      send a Map-Request.  For example, if the server-side ETR does not
      send Map-Requests, it gleans RLOCs from the client-side ITR,
      giving the client-side ITR responsibility for bidirectional RLOC
      reachability and preferability.  Server-side ETR gleaning of the



Farinacci, et al.       Expires February 3, 2011               [Page 41]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      client-side ITR RLOC is done by caching the inner header source
      EID and the outer header source RLOC of received packets.  The
      client-side ITR controls how traffic is returned and can alternate
      using an outer header source RLOC, which then can be added to the
      list the server-side ETR uses to return traffic.  Since no
      Priority or Weights are provided using this method, the server-
      side ETR MUST assume each client-side ITR RLOC uses the same best
      Priority with a Weight of zero.  In addition, since EID-prefix
      encoding cannot be conveyed in data packets, the EID-to-RLOC cache
      on tunnel routers can grow to be very large.

   o  A "gleaned" map-cache entry, one learned from the source RLOC of a
      received encapsulated packet, is only stored and used for a few
      seconds, pending verification.  Verification is performed by
      sending a Map-Request to the source EID (the inner header IP
      source address) of the received encapsulated packet.  A reply to
      this "verifying Map-Request" is used to fully populate the map-
      cache entry for the "gleaned" EID and is stored and used for the
      time indicated from the TTL field of a received Map-Reply.  When a
      verified map-cache entry is stored, data gleaning no longer occurs
      for subsequent packets which have a source EID that matches the
      EID-prefix of the verified entry.

   RLOCs that appear in EID-to-RLOC Map-Reply messages are assumed to be
   reachable when the R-bit for the locator record is set to 1.  Neither
   the information contained in a Map-Reply or that stored in the
   mapping database system provide reachability information for RLOCs.
   Such reachability needs to be determined separately, using one or
   more of the Routing Locator Reachability Algorithms described in the
   next section.

6.3.  Routing Locator Reachability

   Several mechanisms for determining RLOC reachability are currently
   defined:

   1.  An ETR may examine the Loc-Status-Bits in the LISP header of an
       encapsulated data packet received from an ITR.  If the ETR is
       also acting as an ITR and has traffic to return to the original
       ITR site, it can use this status information to help select an
       RLOC.

   2.  An ITR may receive an ICMP Network or ICMP Host Unreachable
       message for an RLOC it is using.  This indicates that the RLOC is
       likely down.

   3.  An ITR which participates in the global routing system can
       determine that an RLOC is down if no BGP RIB route exists that



Farinacci, et al.       Expires February 3, 2011               [Page 42]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       matches the RLOC IP address.

   4.  An ITR may receive an ICMP Port Unreachable message from a
       destination host.  This occurs if an ITR attempts to use
       interworking [INTERWORK] and LISP-encapsulated data is sent to a
       non-LISP-capable site.

   5.  An ITR may receive a Map-Reply from a ETR in response to a
       previously sent Map-Request.  The RLOC source of the Map-Reply is
       likely up since the ETR was able to send the Map-Reply to the
       ITR.

   6.  When an ETR receives an encapsulated packet from an ITR, the
       source RLOC from the outer header of the packet is likely up.

   7.  An ITR/ETR pair can use the Locator Reachability Algorithms
       described in this section, namely Echo-Noncing or RLOC-Probing.

   When determining Locator up/down reachability by examining the Loc-
   Status-Bits from the LISP encapsulated data packet, an ETR will
   receive up to date status from an encapsulating ITR about
   reachability for all ETRs at the site.  CE-based ITRs at the source
   site can determine reachability relative to each other using the site
   IGP as follows:

   o  Under normal circumstances, each ITR will advertise a default
      route into the site IGP.

   o  If an ITR fails or if the upstream link to its PE fails, its
      default route will either time-out or be withdrawn.

   Each ITR can thus observe the presence or lack of a default route
   originated by the others to determine the Locator Status Bits it sets
   for them.

   RLOCs listed in a Map-Reply are numbered with ordinals 0 to n-1.  The
   Loc-Status-Bits in a LISP encapsulated packet are numbered from 0 to
   n-1 starting with the least significant bit.  For example, if an RLOC
   listed in the 3rd position of the Map-Reply goes down (ordinal value
   2), then all ITRs at the site will clear the 3rd least significant
   bit (xxxx x0xx) of the Loc-Status-Bits field for the packets they
   encapsulate.

   When an ETR decapsulates a packet, it will check for any change in
   the Loc-Status-Bits field.  When a bit goes from 1 to 0, the ETR will
   refrain from encapsulating packets to an RLOC that is indicated as
   down.  It will only resume using that RLOC if the corresponding Loc-
   Status-Bit returns to a value of 1.  Loc-Status-Bits are associated



Farinacci, et al.       Expires February 3, 2011               [Page 43]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   with a locator-set per EID-prefix.  Therefore, when a locator becomes
   unreachable, the Loc-Status-Bit that corresponds to that locator's
   position in the list returned by the last Map-Reply will be set to
   zero for that particular EID-prefix.

   When ITRs at the site are not deployed in CE routers, the IGP can
   still be used to determine the reachability of Locators provided they
   are injected into the IGP.  This is typically done when a /32 address
   is configured on a loopback interface.

   When ITRs receive ICMP Network or Host Unreachable messages as a
   method to determine unreachability, they will refrain from using
   Locators which are described in Locator lists of Map-Replies.
   However, using this approach is unreliable because many network
   operators turn off generation of ICMP Unreachable messages.

   If an ITR does receive an ICMP Network or Host Unreachable message,
   it MAY originate its own ICMP Unreachable message destined for the
   host that originated the data packet the ITR encapsulated.

   Also, BGP-enabled ITRs can unilaterally examine the BGP RIB to see if
   a locator address from a locator-set in a mapping entry matches a
   prefix.  If it does not find one and BGP is running in the Default
   Free Zone (DFZ), it can decide to not use the locator even though the
   Loc-Status-Bits indicate the locator is up.  In this case, the path
   from the ITR to the ETR that is assigned the locator is not
   available.  More details are in [LOC-ID-ARCH].

   Optionally, an ITR can send a Map-Request to a Locator and if a Map-
   Reply is returned, reachability of the Locator has been determined.
   Obviously, sending such probes increases the number of control
   messages originated by tunnel routers for active flows, so Locators
   are assumed to be reachable when they are advertised.

   This assumption does create a dependency: Locator unreachability is
   detected by the receipt of ICMP Host Unreachable messages.  When an
   Locator has been determined to be unreachable, it is not used for
   active traffic; this is the same as if it were listed in a Map-Reply
   with priority 255.

   The ITR can test the reachability of the unreachable Locator by
   sending periodic Requests.  Both Requests and Replies MUST be rate-
   limited.  Locator reachability testing is never done with data
   packets since that increases the risk of packet loss for end-to-end
   sessions.

   When an ETR decapsulates a packet, it knows that it is reachable from
   the encapsulating ITR because that is how the packet arrived.  In



Farinacci, et al.       Expires February 3, 2011               [Page 44]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   most cases, the ETR can also reach the ITR but cannot assume this to
   be true due to the possibility of path asymmetry.  In the presence of
   unidirectional traffic flow from an ITR to an ETR, the ITR SHOULD NOT
   use the lack of return traffic as an indication that the ETR is
   unreachable.  Instead, it MUST use an alternate mechanisms to
   determine reachability.

6.3.1.  Echo Nonce Algorithm

   When data flows bidirectionally between locators from different
   sites, a simple mechanism called "nonce echoing" can be used to
   determine reachability between an ITR and ETR.  When an ITR wants to
   solicit a nonce echo, it sets the N and E bits and places a 24-bit
   nonce in the LISP header of the next encapsulated data packet.

   When this packet is received by the ETR, the encapsulated packet is
   forwarded as normal.  When the ETR next sends a data packet to the
   ITR, it includes the nonce received earlier with the N bit set and E
   bit cleared.  The ITR sees this "echoed nonce" and knows the path to
   and from the ETR is up.

   The ITR will set the E-bit and N-bit for every packet it sends while
   in echo-nonce-request state.  The time the ITR waits to process the
   echoed nonce before it determines the path is unreachable is variable
   and a choice left for the implementation.

   If the ITR is receiving packets from the ETR but does not see the
   nonce echoed while being in echo-nonce-request state, then the path
   to the ETR is unreachable.  This decision may be overridden by other
   locator reachability algorithms.  Once the ITR determines the path to
   the ETR is down it can switch to another locator for that EID-prefix.

   Note that "ITR" and "ETR" are relative terms here.  Both devices MUST
   be implementing both ITR and ETR functionality for the echo nonce
   mechanism to operate.

   The ITR and ETR may both go into echo-nonce-request state at the same
   time.  The number of packets sent or the time during which echo nonce
   requests are sent is an implementation specific setting.  However,
   when an ITR is in echo-nonce-request state, it can echo the ETR's
   nonce in the next set of packets that it encapsulates and then
   subsequently, continue sending echo-nonce-request packets.

   This mechanism does not completely solve the forward path
   reachability problem as traffic may be unidirectional.  That is, the
   ETR receiving traffic at a site may not be the same device as an ITR
   which transmits traffic from that site or the site to site traffic is
   unidirectional so there is no ITR returning traffic.



Farinacci, et al.       Expires February 3, 2011               [Page 45]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   The echo-nonce algorithm is bilateral.  That is, if one side sets the
   E-bit and the other side is not enabled for echo-noncing, then the
   echoing of the nonce does not occur and the requesting side may
   regard the locator unreachable erroneously.  An ITR SHOULD only set
   the E-bit in a encapsulated data packet when it knows the ETR is
   enabled for echo-noncing.  This is conveyed by the E-bit in the Map-
   Reply message.

   Note that other locator reachability mechanisms are being researched
   and can be used to compliment or even override the Echo Nonce
   Algorithm.  See next section for an example of control-plane probing.

6.3.2.  RLOC Probing Algorithm

   RLOC Probing is a method that an ITR or PTR can use to determine the
   reachability status of one or more locators that it has cached in a
   map-cache entry.  The probe-bit of the Map-Request and Map-Reply
   messages are used for RLOC Probing.

   RLOC probing is done in the control-plane on a timer basis where an
   ITR or PTR will originate a Map-Request destined to a locator address
   from one of its own locator addresses.  A Map-Request used as an
   RLOC-probe is NOT encapsulated and NOT sent to a Map-Server or on the
   ALT like one would when soliciting mapping data.  The EID record
   encoded in the Map-Request is the EID-prefix of the map-cache entry
   cached by the ITR or PTR.  The ITR may include a mapping data record
   for its own database mapping information which contains the local
   EID-prefixes and RLOCs for its site.

   When an ETR receives a Map-Request message with the probe-bit set, it
   returns a Map-Reply with the probe-bit set.  The source address of
   the Map-Reply is set from the destination address of the Map-Request
   and the destination address of the Map-Reply is set from the source
   address of the Map-Request.  The Map-Reply SHOULD contain mapping
   data for the EID-prefix contained in the Map-Request.  This provides
   the opportunity for the ITR or PTR, which sent the RLOC-probe to get
   mapping updates if there were changes to the ETR's database mapping
   entries.

   There are advantages and disadvantages of RLOC Probing.  The greatest
   benefit of RLOC Probing is that it can handle many failure scenarios
   allowing the ITR to determine when the path to a specific locator is
   reachable or has become unreachable, thus providing a robust
   mechanism for switching to using another locator from the cached
   locator.  RLOC Probing can also provide rough RTT estimates between a
   pair of locators which can be useful for network management purposes
   as well as for selecting low delay paths.  The major disadvantage of
   RLOC Probing is in the number of control messages required and the



Farinacci, et al.       Expires February 3, 2011               [Page 46]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   amount of bandwidth used to obtain those benefits, especially if the
   requirement for failure detection times are very small.

   Continued research and testing will attempt to characterize the
   tradeoffs of failure detection times versus message overhead.

6.4.  EID Reachability within a LISP Site

   A site may be multihomed using two or more ETRs.  The hosts and
   infrastructure within a site will be addressed using one or more EID
   prefixes that are mapped to the RLOCs of the relevant ETRs in the
   mapping system.  One possible failure mode is for an ETR to lose
   reachability to one or more of the EID prefixes within its own site.
   When this occurs when the ETR sends Map-Replies, it can clear the
   R-bit associated with its own locator.  And when the ETR is also an
   ITR, it can clear its locator-status-bit in the encapsulation data
   header.

6.5.  Routing Locator Hashing

   When an ETR provides an EID-to-RLOC mapping in a Map-Reply message to
   a requesting ITR, the locator-set for the EID-prefix may contain
   different priority values for each locator address.  When more than
   one best priority locator exists, the ITR can decide how to load
   share traffic against the corresponding locators.

   The following hash algorithm may be used by an ITR to select a
   locator for a packet destined to an EID for the EID-to-RLOC mapping:

   1.  Either a source and destination address hash can be used or the
       traditional 5-tuple hash which includes the source and
       destination addresses, source and destination TCP, UDP, or SCTP
       port numbers and the IP protocol number field or IPv6 next-
       protocol fields of a packet a host originates from within a LISP
       site.  When a packet is not a TCP, UDP, or SCTP packet, the
       source and destination addresses only from the header are used to
       compute the hash.

   2.  Take the hash value and divide it by the number of locators
       stored in the locator-set for the EID-to-RLOC mapping.

   3.  The remainder will be yield a value of 0 to "number of locators
       minus 1".  Use the remainder to select the locator in the
       locator-set.

   Note that when a packet is LISP encapsulated, the source port number
   in the outer UDP header needs to be set.  Selecting a hashed value
   allows core routers which are attached to Link Aggregation Groups



Farinacci, et al.       Expires February 3, 2011               [Page 47]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   (LAGs) to load-split the encapsulated packets across member links of
   such LAGs.  Otherwise, core routers would see a single flow, since
   packets have a source address of the ITR, for packets which are
   originated by different EIDs at the source site.  A suggested setting
   for the source port number computed by an ITR is a 5-tuple hash
   function on the inner header, as described above.

   Many core router implementations use a 5-tuple hash to decide how to
   balance packet load across members of a LAG.  The 5-tuple hash
   includes the source and destination addresses of the packet and the
   source and destination ports when the protocol number in the packet
   is TCP or UDP.  For this reason, UDP encoding is used for LISP
   encapsulation.

6.6.  Changing the Contents of EID-to-RLOC Mappings

   Since the LISP architecture uses a caching scheme to retrieve and
   store EID-to-RLOC mappings, the only way an ITR can get a more up-to-
   date mapping is to re-request the mapping.  However, the ITRs do not
   know when the mappings change and the ETRs do not keep track of who
   requested its mappings.  For scalability reasons, we want to maintain
   this approach but need to provide a way for ETRs change their
   mappings and inform the sites that are currently communicating with
   the ETR site using such mappings.

   When a locator record is added to the end of a locator-set, it is
   easy to update mappings.  We assume new mappings will maintain the
   same locator ordering as the old mapping but just have new locators
   appended to the end of the list.  So some ITRs can have a new mapping
   while other ITRs have only an old mapping that is used until they
   time out.  When an ITR has only an old mapping but detects bits set
   in the loc-status-bits that correspond to locators beyond the list it
   has cached, it simply ignores them.  However, this can only happen
   for locator addresses that are lexicographically greater than the
   locator addresses in the existing locator-set.

   When a locator record is removed from a locator-set, ITRs that have
   the mapping cached will not use the removed locator because the xTRs
   will set the loc-status-bit to 0.  So even if the locator is in the
   list, it will not be used.  For new mapping requests, the xTRs can
   set the locator AFI to 0 (indicating an unspecified address), as well
   as setting the corresponding loc-status-bit to 0.  This forces ITRs
   with old or new mappings to avoid using the removed locator.

   If many changes occur to a mapping over a long period of time, one
   will find empty record slots in the middle of the locator-set and new
   records appended to the locator-set.  At some point, it would be
   useful to compact the locator-set so the loc-status-bit settings can



Farinacci, et al.       Expires February 3, 2011               [Page 48]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   be efficiently packed.

   We propose here three approaches for locator-set compaction, one
   operational and two protocol mechanisms.  The operational approach
   uses a clock sweep method.  The protocol approaches use the concept
   of Solicit-Map-Requests and Map-Versioning.

6.6.1.  Clock Sweep

   The clock sweep approach uses planning in advance and the use of
   count-down TTLs to time out mappings that have already been cached.
   The default setting for an EID-to-RLOC mapping TTL is 24 hours.  So
   there is a 24 hour window to time out old mappings.  The following
   clock sweep procedure is used:

   1.  24 hours before a mapping change is to take effect, a network
       administrator configures the ETRs at a site to start the clock
       sweep window.

   2.  During the clock sweep window, ETRs continue to send Map-Reply
       messages with the current (unchanged) mapping records.  The TTL
       for these mappings is set to 1 hour.

   3.  24 hours later, all previous cache entries will have timed out,
       and any active cache entries will time out within 1 hour.  During
       this 1 hour window the ETRs continue to send Map-Reply messages
       with the current (unchanged) mapping records with the TTL set to
       1 minute.

   4.  At the end of the 1 hour window, the ETRs will send Map-Reply
       messages with the new (changed) mapping records.  So any active
       caches can get the new mapping contents right away if not cached,
       or in 1 minute if they had the mapping cached.  The new mappings
       are cached with a time to live equal to the TTL in the Map-Reply.

6.6.2.  Solicit-Map-Request (SMR)

   Soliciting a Map-Request is a selective way for xTRs, at the site
   where mappings change, to control the rate they receive requests for
   Map-Reply messages.  SMRs are also used to tell remote ITRs to update
   the mappings they have cached.

   Since the xTRs don't keep track of remote ITRs that have cached their
   mappings, they can not tell exactly who needs the new mapping
   entries.  So an xTR will solicit Map-Requests from sites it has been
   sending encapsulated data to for the last minute, and only from those
   sites.  The ETRs that the encapsulated data is going to are the LISP
   routers who receive SMR messages.  The xTRs can locally decide the



Farinacci, et al.       Expires February 3, 2011               [Page 49]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   algorithm for how often and to how many sites it sends SMR messages.

   An SMR message is simply a bit set in a Map-Request message.  An ITR
   or PTR will send a Map-Request when they receive an SMR message.
   Both the SMR sender and the Map-Request responder MUST rate-limited
   these messages.  Rate-limiting can be implemented as a global rate-
   limiter or one rate-limiter per SMR destination.

   The following procedure shows how a SMR exchange occurs when a site
   is doing locator-set compaction for an EID-to-RLOC mapping:

   1.  When the database mappings in an ETR change, the ETRs at the site
       begin to send Map-Requests with the SMR bit set for each locator
       in each map-cache entry the ETR caches.

   2.  A remote xTR which receives the SMR message will schedule sending
       a Map-Request message to the source locator address of the SMR
       message.  A newly allocated random nonce is selected and the EID-
       prefix used is the one copied from the SMR message.

   3.  The remote xTR MUST rate-limit the Map-Request until it gets a
       Map-Reply while continuing to use the cached mapping.  When Map
       Versioning is used, described in Section 6.6.3, an SMR sender can
       detect if an ITR is using the most up to date database mapping.

   4.  The ETRs at the site with the changed mapping will reply to the
       Map-Request with a Map-Reply message that has a nonce from the
       SMR-invoked Map-Request.  The Map-Reply messages SHOULD be rate
       limited.  This is important to avoid Map-Reply implosion.

   5.  The ETRs, at the site with the changed mapping, record the fact
       that the site that sent the Map-Request has received the new
       mapping data in the mapping cache entry for the remote site so
       the loc-status-bits are reflective of the new mapping for packets
       going to the remote site.  The ETR then stops sending SMR
       messages.

   For security reasons an ITR MUST NOT process unsolicited Map-Replies.
   The nonce MUST be carried from SMR packet, into the resultant Map-
   Request, and then into Map-Reply to reduce spoofing attacks.

   To avoid map-cache entry corruption by a third-party, a sender of an
   SMR-based Map-Request MUST be verified.  If an ITR receives an SMR-
   based Map-Request and the source is not in the locator-set for the
   stored map-cache entry, then the responding Map-Request MUST be sent
   with an EID destination to the mapping database system.  Since the
   mapping database system is more secure to reach an authoritative ETR,
   it will deliver the Map-Request to the authoritative source of the



Farinacci, et al.       Expires February 3, 2011               [Page 50]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   mapping data.

6.6.3.  Database Map Versioning

   When there is unidirectional packet flow between an ITR and ETR, and
   the EID-to-RLOC mappings change on the ETR, it needs to inform the
   ITR so encapsulation can stop to a removed locator and start to a new
   locator in the locator-set.

   An ETR, when it sends Map-Reply messages, conveys its own Map-Version
   number.  This is known as the Destination Map-Version Number.  ITRs
   include the Destination Map-Version Number in packets they
   encapsulate to the site.  When an ETR decapsulates a packet and
   detects the Destination Map-Version Number is less than the current
   version for its mapping, the SMR procedure described in Section 6.6.2
   occurs.

   An ITR, when it encapsulates packets to ETRs, can convey its own Map-
   Version number.  This is known as the Source Map-Version Number.
   When an ETR decapsulates a packet and detects the Source Map-Version
   Number is greater than the last Map-Version Number sent in a Map-
   Reply from the ITR's site, the ETR will send a Map-Request to one of
   the ETRs for the source site.

   A Map-Version Number is used as a sequence number per EID-prefix.  So
   values that are greater, are considered to be more recent.  A value
   of 0 for the Source Map-Version Number or the Destination Map-Version
   Number conveys no versioning information and an xTR does no
   comparison with previously received Map-Version Numbers.

   A Map-Version Number can be included in Map-Register messages as
   well.  This is a good way for the Map-Server can assure that all ETRs
   for a site registering to it will be Map-Version number synchronized.

   See [VERSIONING] for a more detailed analysis and description of
   Database Map Versioning.















Farinacci, et al.       Expires February 3, 2011               [Page 51]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


7.  Router Performance Considerations

   LISP is designed to be very hardware-based forwarding friendly.  By
   doing tunnel header prepending [RFC1955] and stripping instead of re-
   writing addresses, existing hardware can support the forwarding model
   with little or no modification.  Where modifications are required,
   they should be limited to re-programming existing hardware rather
   than requiring expensive design changes to hard-coded algorithms in
   silicon.

   A few implementation techniques can be used to incrementally
   implement LISP:

   o  When a tunnel encapsulated packet is received by an ETR, the outer
      destination address may not be the address of the router.  This
      makes it challenging for the control plane to get packets from the
      hardware.  This may be mitigated by creating special FIB entries
      for the EID-prefixes of EIDs served by the ETR (those for which
      the router provides an RLOC translation).  These FIB entries are
      marked with a flag indicating that control plane processing should
      be performed.  The forwarding logic of testing for particular IP
      protocol number value is not necessary.  No changes to existing,
      deployed hardware should be needed to support this.

   o  On an ITR, prepending a new IP header is as simple as adding more
      bytes to a MAC rewrite string and prepending the string as part of
      the outgoing encapsulation procedure.  Many routers that support
      GRE tunneling [RFC2784] or 6to4 tunneling [RFC3056] can already
      support this action.

   o  When a packet is not routable by the underlying routing system
      (i.e.  LISP 1.5), its source address or interface the packet was
      received on can be used to select a VRF (Virtual Routing/
      Forwarding).  The VRF's routing table can be used to find EID-to-
      RLOC mappings.
















Farinacci, et al.       Expires February 3, 2011               [Page 52]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


8.  Deployment Scenarios

   This section will explore how and where ITRs and ETRs can be deployed
   and will discuss the pros and cons of each deployment scenario.
   There are two basic deployment trade-offs to consider: centralized
   versus distributed caches and flat, recursive, or re-encapsulating
   tunneling.

   When deciding on centralized versus distributed caching, the
   following issues should be considered:

   o  Are the tunnel routers spread out so that the caches are spread
      across all the memories of each router?

   o  Should management "touch points" be minimized by choosing few
      tunnel routers, just enough for redundancy?

   o  In general, using more ITRs doesn't increase management load,
      since caches are built and stored dynamically.  On the other hand,
      more ETRs does require more management since EID-prefix-to-RLOC
      mappings need to be explicitly configured.

   When deciding on flat, recursive, or re-encapsulation tunneling, the
   following issues should be considered:

   o  Flat tunneling implements a single tunnel between source site and
      destination site.  This generally offers better paths between
      sources and destinations with a single tunnel path.

   o  Recursive tunneling is when tunneled traffic is again further
      encapsulated in another tunnel, either to implement VPNs or to
      perform Traffic Engineering.  When doing VPN-based tunneling, the
      site has some control since the site is prepending a new tunnel
      header.  In the case of TE-based tunneling, the site may have
      control if it is prepending a new tunnel header, but if the site's
      ISP is doing the TE, then the site has no control.  Recursive
      tunneling generally will result in suboptimal paths but at the
      benefit of steering traffic to resource available parts of the
      network.

   o  The technique of re-encapsulation ensures that packets only
      require one tunnel header.  So if a packet needs to be rerouted,
      it is first decapsulated by the ETR and then re-encapsulated with
      a new tunnel header using a new RLOC.

   The next sub-sections will describe where tunnel routers can reside
   in the network.




Farinacci, et al.       Expires February 3, 2011               [Page 53]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


8.1.  First-hop/Last-hop Tunnel Routers

   By locating tunnel routers close to hosts, the EID-prefix set is at
   the granularity of an IP subnet.  So at the expense of more EID-
   prefix-to-RLOC sets for the site, the caches in each tunnel router
   can remain relatively small.  But caches always depend on the number
   of non-aggregated EID destination flows active through these tunnel
   routers.

   With more tunnel routers doing encapsulation, the increase in control
   traffic grows as well: since the EID-granularity is greater, more
   Map-Requests and Map-Replies are traveling between more routers.

   The advantage of placing the caches and databases at these stub
   routers is that the products deployed in this part of the network
   have better price-memory ratios then their core router counterparts.
   Memory is typically less expensive in these devices and fewer routes
   are stored (only IGP routes).  These devices tend to have excess
   capacity, both for forwarding and routing state.

   LISP functionality can also be deployed in edge switches.  These
   devices generally have layer-2 ports facing hosts and layer-3 ports
   facing the Internet.  Spare capacity is also often available in these
   devices as well.

8.2.  Border/Edge Tunnel Routers

   Using customer-edge (CE) routers for tunnel endpoints allows the EID
   space associated with a site to be reachable via a small set of RLOCs
   assigned to the CE routers for that site.

   This offers the opposite benefit of the first-hop/last-hop tunnel
   router scenario: the number of mapping entries and network management
   touch points are reduced, allowing better scaling.

   One disadvantage is that less of the network's resources are used to
   reach host endpoints thereby centralizing the point-of-failure domain
   and creating network choke points at the CE router.

   Note that more than one CE router at a site can be configured with
   the same IP address.  In this case an RLOC is an anycast address.
   This allows resilience between the CE routers.  That is, if a CE
   router fails, traffic is automatically routed to the other routers
   using the same anycast address.  However, this comes with the
   disadvantage where the site cannot control the entrance point when
   the anycast route is advertised out from all border routers.  Another
   disadvantage of using anycast locators is the limited advertisement
   scope of /32 (or /128 for IPv6) routes.



Farinacci, et al.       Expires February 3, 2011               [Page 54]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


8.3.  ISP Provider-Edge (PE) Tunnel Routers

   Use of ISP PE routers as tunnel endpoint routers gives an ISP control
   over the location of the egress tunnel endpoints.  That is, the ISP
   can decide if the tunnel endpoints are in the destination site (in
   either CE routers or last-hop routers within a site) or at other PE
   edges.  The advantage of this case is that two or more tunnel headers
   can be avoided.  By having the PE be the first router on the path to
   encapsulate, it can choose a TE path first, and the ETR can
   decapsulate and re-encapsulate for a tunnel to the destination end
   site.

   An obvious disadvantage is that the end site has no control over
   where its packets flow or the RLOCs used.

   As mentioned in earlier sections a combination of these scenarios is
   possible at the expense of extra packet header overhead, if both site
   and provider want control, then recursive or re-encapsulating tunnels
   are used.

8.4.  LISP Functionality with Conventional NATs

   LISP routers can be deployed behind Network Address Translator (NAT)
   devices to provide the same set of packet services hosts have today
   when they are addressed out of private address space.

   It is important to note that a locator address in any LISP control
   message MUST be a globally routable address and therefore SHOULD NOT
   contain [RFC1918] addresses.  If a LISP router is configured with
   private addresses, they MUST be used only in the outer IP header so
   the NAT device can translate properly.  Otherwise, EID addresses MUST
   be translated before encapsulation is performed.  Both NAT
   translation and LISP encapsulation functions could be co-located in
   the same device.

   More details on LISP address translation can be found in [INTERWORK].















Farinacci, et al.       Expires February 3, 2011               [Page 55]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


9.  Traceroute Considerations

   When a source host in a LISP site initiates a traceroute to a
   destination host in another LISP site, it is highly desirable for it
   to see the entire path.  Since packets are encapsulated from ITR to
   ETR, the hop across the tunnel could be viewed as a single hop.
   However, LISP traceroute will provide the entire path so the user can
   see 3 distinct segments of the path from a source LISP host to a
   destination LISP host:


      Segment 1 (in source LISP site based on EIDs):

          source-host ---> first-hop ... next-hop ---> ITR

      Segment 2 (in the core network based on RLOCs):

          ITR ---> next-hop ... next-hop ---> ETR

      Segment 3 (in the destination LISP site based on EIDs):

          ETR ---> next-hop ... last-hop ---> destination-host

   For segment 1 of the path, ICMP Time Exceeded messages are returned
   in the normal matter as they are today.  The ITR performs a TTL
   decrement and test for 0 before encapsulating.  So the ITR hop is
   seen by the traceroute source has an EID address (the address of
   site-facing interface).

   For segment 2 of the path, ICMP Time Exceeded messages are returned
   to the ITR because the TTL decrement to 0 is done on the outer
   header, so the destination of the ICMP messages are to the ITR RLOC
   address, the source RLOC address of the encapsulated traceroute
   packet.  The ITR looks inside of the ICMP payload to inspect the
   traceroute source so it can return the ICMP message to the address of
   the traceroute client as well as retaining the core router IP address
   in the ICMP message.  This is so the traceroute client can display
   the core router address (the RLOC address) in the traceroute output.
   The ETR returns its RLOC address and responds to the TTL decrement to
   0 like the previous core routers did.

   For segment 3, the next-hop router downstream from the ETR will be
   decrementing the TTL for the packet that was encapsulated, sent into
   the core, decapsulated by the ETR, and forwarded because it isn't the
   final destination.  If the TTL is decremented to 0, any router on the
   path to the destination of the traceroute, including the next-hop
   router or destination, will send an ICMP Time Exceeded message to the
   source EID of the traceroute client.  The ICMP message will be



Farinacci, et al.       Expires February 3, 2011               [Page 56]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   encapsulated by the local ITR and sent back to the ETR in the
   originated traceroute source site, where the packet will be delivered
   to the host.

9.1.  IPv6 Traceroute

   IPv6 traceroute follows the procedure described above since the
   entire traceroute data packet is included in ICMP Time Exceeded
   message payload.  Therefore, only the ITR needs to pay special
   attention for forwarding ICMP messages back to the traceroute source.

9.2.  IPv4 Traceroute

   For IPv4 traceroute, we cannot follow the above procedure since IPv4
   ICMP Time Exceeded messages only include the invoking IP header and 8
   bytes that follow the IP header.  Therefore, when a core router sends
   an IPv4 Time Exceeded message to an ITR, all the ITR has in the ICMP
   payload is the encapsulated header it prepended followed by a UDP
   header.  The original invoking IP header, and therefore the identity
   of the traceroute source is lost.

   The solution we propose to solve this problem is to cache traceroute
   IPv4 headers in the ITR and to match them up with corresponding IPv4
   Time Exceeded messages received from core routers and the ETR.  The
   ITR will use a circular buffer for caching the IPv4 and UDP headers
   of traceroute packets.  It will select a 16-bit number as a key to
   find them later when the IPv4 Time Exceeded messages are received.
   When an ITR encapsulates an IPv4 traceroute packet, it will use the
   16-bit number as the UDP source port in the encapsulating header.
   When the ICMP Time Exceeded message is returned to the ITR, the UDP
   header of the encapsulating header is present in the ICMP payload
   thereby allowing the ITR to find the cached headers for the
   traceroute source.  The ITR puts the cached headers in the payload
   and sends the ICMP Time Exceeded message to the traceroute source
   retaining the source address of the original ICMP Time Exceeded
   message (a core router or the ETR of the site of the traceroute
   destination).

   The signature of a traceroute packet comes in two forms.  The first
   form is encoded as a UDP message where the destination port is
   inspected for a range of values.  The second form is encoded as an
   ICMP message where the IP identification field is inspected for a
   well-known value.

9.3.  Traceroute using Mixed Locators

   When either an IPv4 traceroute or IPv6 traceroute is originated and
   the ITR encapsulates it in the other address family header, you



Farinacci, et al.       Expires February 3, 2011               [Page 57]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   cannot get all 3 segments of the traceroute.  Segment 2 of the
   traceroute can not be conveyed to the traceroute source since it is
   expecting addresses from intermediate hops in the same address format
   for the type of traceroute it originated.  Therefore, in this case,
   segment 2 will make the tunnel look like one hop.  All the ITR has to
   do to make this work is to not copy the inner TTL to the outer,
   encapsulating header's TTL when a traceroute packet is encapsulated
   using an RLOC from a different address family.  This will cause no
   TTL decrement to 0 to occur in core routers between the ITR and ETR.










































Farinacci, et al.       Expires February 3, 2011               [Page 58]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


10.  Mobility Considerations

   There are several kinds of mobility of which only some might be of
   concern to LISP.  Essentially they are as follows.

10.1.  Site Mobility

   A site wishes to change its attachment points to the Internet, and
   its LISP Tunnel Routers will have new RLOCs when it changes upstream
   providers.  Changes in EID-RLOC mappings for sites are expected to be
   handled by configuration, outside of the LISP protocol.

10.2.  Slow Endpoint Mobility

   An individual endpoint wishes to move, but is not concerned about
   maintaining session continuity.  Renumbering is involved.  LISP can
   help with the issues surrounding renumbering [RFC4192] [LISA96] by
   decoupling the address space used by a site from the address spaces
   used by its ISPs.  [RFC4984]

10.3.  Fast Endpoint Mobility

   Fast endpoint mobility occurs when an endpoint moves relatively
   rapidly, changing its IP layer network attachment point.  Maintenance
   of session continuity is a goal.  This is where the Mobile IPv4
   [RFC3344bis] and Mobile IPv6 [RFC3775] [RFC4866] mechanisms are used,
   and primarily where interactions with LISP need to be explored.

   The problem is that as an endpoint moves, it may require changes to
   the mapping between its EID and a set of RLOCs for its new network
   location.  When this is added to the overhead of mobile IP binding
   updates, some packets might be delayed or dropped.

   In IPv4 mobility, when an endpoint is away from home, packets to it
   are encapsulated and forwarded via a home agent which resides in the
   home area the endpoint's address belongs to.  The home agent will
   encapsulate and forward packets either directly to the endpoint or to
   a foreign agent which resides where the endpoint has moved to.
   Packets from the endpoint may be sent directly to the correspondent
   node, may be sent via the foreign agent, or may be reverse-tunneled
   back to the home agent for delivery to the mobile node.  As the
   mobile node's EID or available RLOC changes, LISP EID-to-RLOC
   mappings are required for communication between the mobile node and
   the home agent, whether via foreign agent or not.  As a mobile
   endpoint changes networks, up to three LISP mapping changes may be
   required:





Farinacci, et al.       Expires February 3, 2011               [Page 59]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  The mobile node moves from an old location to a new visited
      network location and notifies its home agent that it has done so.
      The Mobile IPv4 control packets the mobile node sends pass through
      one of the new visited network's ITRs, which needs a EID-RLOC
      mapping for the home agent.

   o  The home agent might not have the EID-RLOC mappings for the mobile
      node's "care-of" address or its foreign agent in the new visited
      network, in which case it will need to acquire them.

   o  When packets are sent directly to the correspondent node, it may
      be that no traffic has been sent from the new visited network to
      the correspondent node's network, and the new visited network's
      ITR will need to obtain an EID-RLOC mapping for the correspondent
      node's site.

   In addition, if the IPv4 endpoint is sending packets from the new
   visited network using its original EID, then LISP will need to
   perform a route-returnability check on the new EID-RLOC mapping for
   that EID.

   In IPv6 mobility, packets can flow directly between the mobile node
   and the correspondent node in either direction.  The mobile node uses
   its "care-of" address (EID).  In this case, the route-returnability
   check would not be needed but one more LISP mapping lookup may be
   required instead:

   o  As above, three mapping changes may be needed for the mobile node
      to communicate with its home agent and to send packets to the
      correspondent node.

   o  In addition, another mapping will be needed in the correspondent
      node's ITR, in order for the correspondent node to send packets to
      the mobile node's "care-of" address (EID) at the new network
      location.

   When both endpoints are mobile the number of potential mapping
   lookups increases accordingly.

   As a mobile node moves there are not only mobility state changes in
   the mobile node, correspondent node, and home agent, but also state
   changes in the ITRs and ETRs for at least some EID-prefixes.

   The goal is to support rapid adaptation, with little delay or packet
   loss for the entire system.  Also IP mobility can be modified to
   require fewer mapping changes.  In order to increase overall system
   performance, there may be a need to reduce the optimization of one
   area in order to place fewer demands on another.



Farinacci, et al.       Expires February 3, 2011               [Page 60]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   In LISP, one possibility is to "glean" information.  When a packet
   arrives, the ETR could examine the EID-RLOC mapping and use that
   mapping for all outgoing traffic to that EID.  It can do this after
   performing a route-returnability check, to ensure that the new
   network location does have a internal route to that endpoint.
   However, this does not cover the case where an ITR (the node assigned
   the RLOC) at the mobile-node location has been compromised.

   Mobile IP packet exchange is designed for an environment in which all
   routing information is disseminated before packets can be forwarded.
   In order to allow the Internet to grow to support expected future
   use, we are moving to an environment where some information may have
   to be obtained after packets are in flight.  Modifications to IP
   mobility should be considered in order to optimize the behavior of
   the overall system.  Anything which decreases the number of new EID-
   RLOC mappings needed when a node moves, or maintains the validity of
   an EID-RLOC mapping for a longer time, is useful.

10.4.  Fast Network Mobility

   In addition to endpoints, a network can be mobile, possibly changing
   xTRs.  A "network" can be as small as a single router and as large as
   a whole site.  This is different from site mobility in that it is
   fast and possibly short-lived, but different from endpoint mobility
   in that a whole prefix is changing RLOCs.  However, the mechanisms
   are the same and there is no new overhead in LISP.  A map request for
   any endpoint will return a binding for the entire mobile prefix.

   If mobile networks become a more common occurrence, it may be useful
   to revisit the design of the mapping service and allow for dynamic
   updates of the database.

   The issue of interactions between mobility and LISP needs to be
   explored further.  Specific improvements to the entire system will
   depend on the details of mapping mechanisms.  Mapping mechanisms
   should be evaluated on how well they support session continuity for
   mobile nodes.

10.5.  LISP Mobile Node Mobility

   A mobile device can use the LISP infrastructure to achieve mobility
   by implementing the LISP encapsulation and decapsulation functions
   and acting as a simple ITR/ETR.  By doing this, such a "LISP mobile
   node" can use topologically-independent EID IP addresses that are not
   advertised into and do not impose a cost on the global routing
   system.  These EIDs are maintained at the edges of the mapping system
   (in LISP Map-Servers and Map-Resolvers) and are provided on demand to
   only the correspondents of the LISP mobile node.



Farinacci, et al.       Expires February 3, 2011               [Page 61]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Refer to the LISP Mobility Architecture specification [LISP-MN] for
   more details.

















































Farinacci, et al.       Expires February 3, 2011               [Page 62]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


11.  Multicast Considerations

   A multicast group address, as defined in the original Internet
   architecture is an identifier of a grouping of topologically
   independent receiver host locations.  The address encoding itself
   does not determine the location of the receiver(s).  The multicast
   routing protocol, and the network-based state the protocol creates,
   determines where the receivers are located.

   In the context of LISP, a multicast group address is both an EID and
   a Routing Locator.  Therefore, no specific semantic or action needs
   to be taken for a destination address, as it would appear in an IP
   header.  Therefore, a group address that appears in an inner IP
   header built by a source host will be used as the destination EID.
   The outer IP header (the destination Routing Locator address),
   prepended by a LISP router, will use the same group address as the
   destination Routing Locator.

   Having said that, only the source EID and source Routing Locator
   needs to be dealt with.  Therefore, an ITR merely needs to put its
   own IP address in the source Routing Locator field when prepending
   the outer IP header.  This source Routing Locator address, like any
   other Routing Locator address MUST be globally routable.

   Therefore, an EID-to-RLOC mapping does not need to be performed by an
   ITR when a received data packet is a multicast data packet or when
   processing a source-specific Join (either by IGMPv3 or PIM).  But the
   source Routing Locator is decided by the multicast routing protocol
   in a receiver site.  That is, an EID to Routing Locator translation
   is done at control-time.

   Another approach is to have the ITR not encapsulate a multicast
   packet and allow the host built packet to flow into the core even if
   the source address is allocated out of the EID namespace.  If the
   RPF-Vector TLV [RFC5496] is used by PIM in the core, then core
   routers can RPF to the ITR (the Locator address which is injected
   into core routing) rather than the host source address (the EID
   address which is not injected into core routing).

   To avoid any EID-based multicast state in the network core, the first
   approach is chosen for LISP-Multicast.  Details for LISP-Multicast
   and Interworking with non-LISP sites is described in specification
   [MLISP].








Farinacci, et al.       Expires February 3, 2011               [Page 63]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


12.  Security Considerations

   It is believed that most of the security mechanisms will be part of
   the mapping database service when using control plane procedures for
   obtaining EID-to-RLOC mappings.  For data plane triggered mappings,
   as described in this specification, protection is provided against
   ETR spoofing by using Return- Routability mechanisms evidenced by the
   use of a 24-bit Nonce field in the LISP encapsulation header and a
   64-bit Nonce field in the LISP control message.  The nonce, coupled
   with the ITR accepting only solicited Map-Replies goes a long way
   toward providing decent authentication.

   LISP does not rely on a PKI infrastructure or a more heavy weight
   authentication system.  These systems challenge the scalability of
   LISP which was a primary design goal.

   DoS attack prevention will depend on implementations rate-limiting
   Map-Requests and Map-Replies to the control plane as well as rate-
   limiting the number of data-triggered Map-Replies.

   To deal with map-cache exhaustion attempts in an ITR/PTR, the
   implementation should consider putting a maximum cap on the number of
   entries stored with a reserve list for special or frequently accessed
   sites.  This should be a configuration policy control set by the
   network administrator who manages ITRs and PTRs.


























Farinacci, et al.       Expires February 3, 2011               [Page 64]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


13.  IANA Considerations

   This specification has already allocated UDP port numbers 4341 and
   4342 assigned from the IANA registry.















































Farinacci, et al.       Expires February 3, 2011               [Page 65]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


14.  Prototype Plans and Status

   The operator community has requested that the IETF take a practical
   approach to solving the scaling problems associated with global
   routing state growth.  This document offers a simple solution which
   is intended for use in a pilot program to gain experience in working
   on this problem.

   The authors hope that publishing this specification will allow the
   rapid implementation of multiple vendor prototypes and deployment on
   a small scale.  Doing this will help the community:

   o  Decide whether a new EID-to-RLOC mapping database infrastructure
      is needed or if a simple, UDP-based, data-triggered approach is
      flexible and robust enough.

   o  Experiment with provider-independent assignment of EIDs while at
      the same time decreasing the size of DFZ routing tables through
      the use of topologically-aligned, provider-based RLOCs.

   o  Determine whether multiple levels of tunneling can be used by ISPs
      to achieve their Traffic Engineering goals while simultaneously
      removing the more specific routes currently injected into the
      global routing system for this purpose.

   o  Experiment with mobility to determine if both acceptable
      convergence and session continuity properties can be scalably
      implemented to support both individual device roaming and site
      service provider changes.

   Here is a rough set of milestones:

   1.  Interoperable implementations have been available since the
       beginning of 2009.

   2.  Continue pilot deployment using LISP-ALT as the database mapping
       mechanism.

   3.  Continue prototyping and studying other database lookup schemes,
       be it DNS, DHTs, CONS, ALT, NERD, or other mechanisms.

   4.  Implement the LISP Multicast draft [MLISP].

   5.  Implement the LISP Mobile Node draft [LISP-MN].

   6.  Research more on how policy affects what gets returned in a Map-
       Reply from an ETR.




Farinacci, et al.       Expires February 3, 2011               [Page 66]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   7.  Continue to experiment with mixed locator-sets to understand how
       LISP can help the IPv4 to IPv6 transition.

   8.  Add more robustness to locator reachability between LISP sites.

   9.  Continue the deployment of Proxy-ETRs (PETRs) for uses like uRPF
       avoidance, IPv6 connectivity, and LISP-MN.

   As of this writing the following accomplishments have been achieved:

   1.   A unit- and system-tested software switching implementation has
        been completed on cisco NX-OS for this draft for both IPv4 and
        IPv6 EIDs using a mixed locator-set of IPv4 and IPv6 locators.

   2.   A unit- and system-tested software switching implementation on
        cisco NX-OS has been completed for draft [ALT].

   3.   A unit- and system-tested software switching implementation on
        cisco NX-OS has been completed for draft [INTERWORK].  Support
        for IPv4 translation is provided and PTR support for IPv4 and
        IPv6 is provided.

   4.   The cisco NX-OS implementation supports an experimental
        mechanism for slow mobility.

   5.   There are 5 LISP implementations that exist and the first 4
        below have gone through interoperability testing at IETF
        Hiroshima, based on the draft-ietf-lisp-05.txt spec:

        1.  cisco NX-OS

        2.  OpenLISP

        3.  LISP-Click

        4.  ZLisp

        5.  cisco IOS

   6.   Vince Fuller, Darrel Lewis, Dave Meyer, Gregg Schudel, Andrew
        Partan and the rest of the lisp-beta team continue to test all
        the features described above on a dual-stack infrastructure.

   7.   Darrel Lewis and Dave Meyer have deployed both LISP translation
        and LISP PTR support in the pilot network.  Point your browser
        to http://www.lisp4.net to see translation happening in action
        so your non-LISP site can access a web server in a LISP site.




Farinacci, et al.       Expires February 3, 2011               [Page 67]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   8.   http://www.lisp6.net is available where your IPv6 LISP site can
        talk to a IPv6 web server in a LISP site by using mixed address-
        family based locators.

   9.   An public domain implementation of LISP is available.  See
        [OPENLISP] for details.

   10.  Map-Resolvers and Map-Servers have been deployed on the LISP
        pilot network to gather experience with [LISP-MS].  The first
        layer of the architecture are the xTRs.  The second layer are
        the Map-Resolvers and Map-Servers which connect to the ALT BGP
        peering infrastructure.  And the third layer are ALT-routers
        which aggregate EID-prefixes and forward Map-Requests.

   11.  A cisco IOS implementation is available which currently supports
        IPv4 and IPv6 encapsulation and decapsulation features.

   12.  A LISP router based LIG implementation is supported, deployed,
        and used daily to debug and test the LISP pilot network.  See
        [LIG] for details.

   13.  A Linux implementation of LIG has been made available and
        supported by Dave Meyer.  It can be run on any Linux system
        which resides in either a LISP site or non-LISP site.  See [LIG]
        for details.  Public domain code can be downloaded from
        http://github.com/davidmeyer/lig/tree/master.

   14.  Three locator reachability algorithms have been written.  The
        first two, Echo-Noncing and RLOC-Probing are documented in this
        specification.  The third, TCP-counts, will be documented in
        future drafts.

   15.  The LISP pilot network has been converted from using MD5 HMAC
        authentication for Map-Register messages to SHA-1 HMAC
        authentication.

   16.  The LISP pilot network is in its 3rd generation.  Current
        experiments are evaulating EID-prefix aggregation and various
        deployment models for Mapping Service Providers (MSPs).












Farinacci, et al.       Expires February 3, 2011               [Page 68]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


15.  References

15.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,
              August 1980.

   [RFC1191]  Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191,
              November 1990.

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC1955]  Hinden, R., "New Scheme for Internet Routing and
              Addressing (ENCAPS) for IPNG", RFC 1955, June 1996.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use of HMAC-SHA-1-96 within
              ESP and AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D., and P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              March 2000.

   [RFC3056]  Carpenter, B. and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3168]  Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
              of Explicit Congestion Notification (ECN) to IP",
              RFC 3168, September 2001.

   [RFC3775]  Johnson, D., Perkins, C., and J. Arkko, "Mobility Support
              in IPv6", RFC 3775, June 2004.

   [RFC4086]  Eastlake, D., Schiller, J., and S. Crocker, "Randomness
              Requirements for Security", BCP 106, RFC 4086, June 2005.

   [RFC4634]  Eastlake, D. and T. Hansen, "US Secure Hash Algorithms
              (SHA and HMAC-SHA)", RFC 4634, July 2006.

   [RFC4866]  Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route
              Optimization for Mobile IPv6", RFC 4866, May 2007.



Farinacci, et al.       Expires February 3, 2011               [Page 69]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   [RFC4984]  Meyer, D., Zhang, L., and K. Fall, "Report from the IAB
              Workshop on Routing and Addressing", RFC 4984,
              September 2007.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC5496]  Wijnands, IJ., Boers, A., and E. Rosen, "The Reverse Path
              Forwarding (RPF) Vector TLV", RFC 5496, March 2009.

   [UDP-TUNNELS]
              Eubanks, M. and P. Chimento, "UDP Checksums for Tunneled
              Packets"", draft-eubanks-chimento-6man-00.txt (work in
              progress), February 2009.

15.2.  Informative References

   [AFI]      IANA, "Address Family Indicators (AFIs)", ADDRESS FAMILY
              NUMBERS http://www.iana.org/numbers.html, Febuary 2007.

   [ALT]      Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "LISP
              Alternative Topology (LISP-ALT)",
              draft-ietf-lisp-alt-04.txt (work in progress), April 2010.

   [CHIAPPA]  Chiappa, J., "Endpoints and Endpoint names: A Proposed
              Enhancement to the Internet Architecture", Internet-
              Draft http://www.chiappa.net/~jnc/tech/endpoints.txt,
              1999.

   [CONS]     Farinacci, D., Fuller, V., and D. Meyer, "LISP-CONS: A
              Content distribution Overlay Network  Service for LISP",
              draft-meyer-lisp-cons-03.txt (work in progress),
              November 2007.

   [EMACS]    Brim, S., Farinacci, D., Meyer, D., and J. Curran, "EID
              Mappings Multicast Across Cooperating Systems for LISP",
              draft-curran-lisp-emacs-00.txt (work in progress),
              November 2007.

   [INTERWORK]
              Lewis, D., Meyer, D., Farinacci, D., and V. Fuller,
              "Interworking LISP with IPv4 and IPv6",
              draft-ietf-lisp-interworking-01.txt (work in progress),
              March 2010.

   [LCAF]     Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical
              Address Format", draft-farinacci-lisp-lcaf-00.txt (work in



Farinacci, et al.       Expires February 3, 2011               [Page 70]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


              progress), April 2010.

   [LIG]      Farinacci, D. and D. Meyer, "LISP Internet Groper (LIG)",
              draft-ietf-lisp-lig-00.txt (work in progress), April 2010.

   [LISA96]   Lear, E., Katinsky, J., Coffin, J., and D. Tharp,
              "Renumbering: Threat or Menace?", Usenix , September 1996.

   [LISP-MAIN]
              Farinacci, D., Fuller, V., Meyer, D., and D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-farinacci-lisp-12.txt (work in progress),
              March 2009.

   [LISP-MN]  Farinacci, D., Fuller, V., Lewis, D., and D. Meyer, "LISP
              Mobility Architecture", draft-meyer-lisp-mn-00.txt (work
              in progress), July 2009.

   [LISP-MS]  Farinacci, D. and V. Fuller, "LISP Map Server",
              draft-ietf-lisp-ms-05.txt (work in progress), April 2010.

   [LOC-ID-ARCH]
              Meyer, D. and D. Lewis, "Architectural Implications of
              Locator/ID  Separation",
              draft-meyer-loc-id-implications-01.txt (work in progress),
              Januaryr 2009.

   [MLISP]    Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas,
              "LISP for Multicast Environments",
              draft-ietf-lisp-multicast-03.txt (work in progress),
              April 2010.

   [NERD]     Lear, E., "NERD: A Not-so-novel EID to RLOC Database",
              draft-lear-lisp-nerd-08.txt (work in progress),
              March 2010.

   [OPENLISP]
              Iannone, L. and O. Bonaventure, "OpenLISP Implementation
              Report", draft-iannone-openlisp-implementation-01.txt
              (work in progress), July 2008.

   [RADIR]    Narten, T., "Routing and Addressing Problem Statement",
              draft-narten-radir-problem-statement-00.txt (work in
              progress), July 2007.

   [RFC3344bis]
              Perkins, C., "IP Mobility Support for IPv4, revised",
              draft-ietf-mip4-rfc3344bis-05 (work in progress),



Farinacci, et al.       Expires February 3, 2011               [Page 71]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


              July 2007.

   [RFC4192]  Baker, F., Lear, E., and R. Droms, "Procedures for
              Renumbering an IPv6 Network without a Flag Day", RFC 4192,
              September 2005.

   [RPMD]     Handley, M., Huici, F., and A. Greenhalgh, "RPMD: Protocol
              for Routing Protocol Meta-data  Dissemination",
              draft-handley-p2ppush-unpublished-2007726.txt (work in
              progress), July 2007.

   [VERSIONING]
              Iannone, L., Saucez, D., and O. Bonaventure, "LISP Mapping
              Versioning", draft-iannone-lisp-mapping-versioning-01.txt
              (work in progress), March 2010.




































Farinacci, et al.       Expires February 3, 2011               [Page 72]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Appendix A.  Acknowledgments

   An initial thank you goes to Dave Oran for planting the seeds for the
   initial ideas for LISP.  His consultation continues to provide value
   to the LISP authors.

   A special and appreciative thank you goes to Noel Chiappa for
   providing architectural impetus over the past decades on separation
   of location and identity, as well as detailed review of the LISP
   architecture and documents, coupled with enthusiasm for making LISP a
   practical and incremental transition for the Internet.

   The authors would like to gratefully acknowledge many people who have
   contributed discussion and ideas to the making of this proposal.
   They include Scott Brim, Andrew Partan, John Zwiebel, Jason Schiller,
   Lixia Zhang, Dorian Kim, Peter Schoenmaker, Vijay Gill, Geoff Huston,
   David Conrad, Mark Handley, Ron Bonica, Ted Seely, Mark Townsley,
   Chris Morrow, Brian Weis, Dave McGrew, Peter Lothberg, Dave Thaler,
   Eliot Lear, Shane Amante, Ved Kafle, Olivier Bonaventure, Luigi
   Iannone, Robin Whittle, Brian Carpenter, Joel Halpern, Roger
   Jorgensen, Ran Atkinson, Stig Venaas, Iljitsch van Beijnum, Roland
   Bless, Dana Blair, Bill Lynch, Marc Woolward, Damien Saucez, Damian
   Lezama, Attilla De Groot, Parantap Lahiri, David Black, Roque
   Gagliano, Isidor Kouvelas, Jesper Skriver, Fred Templin, Margaret
   Wasserman, Sam Hartman, Michael Hofling, Pedro Marques, Jari Arkko,
   Gregg Schudel, Srinivas Subramanian, Amit Jain, Xu Xiaohu, Dhirendra
   Trivedi, Yakov Rekhter, John Scudder, John Drake, Dimitri
   Papadimitriou, Ross Callon, Selina Heimlich, and Job Snijders.

   This work originated in the Routing Research Group (RRG) of the IRTF.
   The individual submission [LISP-MAIN] was converted into this IETF
   LISP working group draft.



















Farinacci, et al.       Expires February 3, 2011               [Page 73]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Appendix B.  Document Change Log

B.1.  Changes to draft-ietf-lisp-08.txt

   o  Posted August 2010.

   o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
      Register messages.

   o  Clarify language in section 6.1.5 about Map-Replying to Data-
      Probes or Map-Requests.

   o  Indicate that outer TTL should only be copied to inner TTL when it
      is less than inner TTL.

   o  Indicate a source-EID for RLOC-probes are encoded with an AFI
      value of 0.

   o  Indicate that SMRs can have a global or per SMR destination rate-
      limiter.

   o  Add clarifications to the SMR procedures.

   o  Add definitions for "client-side" and 'server-side" terms used in
      this specification.

   o  Clear up language in section 6.4, last paragraph.

   o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
      probe a PETR and have it return a Map-Reply with a locator-set of
      size 0.  The way it is spec'ed the map-cache entry has action
      "dropped".  Drop-action is set to 3.

   o  Add statement about normalizing locator weights.

   o  Clarify R-bit definition in the Map-Reply locator record.

   o  Add section on EID Reachability within a LISP site.

   o  Clarify another disadvantage of using anycast locators.

   o  Reworded Abstract.

   o  Change section 2.0 Introduction to remove obsolete information
      such as the LISP variant definitions.

   o  Change section 5 title from "Tunneling Details" to "LISP
      Encapsulation Details".



Farinacci, et al.       Expires February 3, 2011               [Page 74]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Changes to section 5 to include results of network deployment
      experience with MTU.  Recommend that implementations use either
      the stateful or stateless handling.

   o  Updated current events in the "Prototype Plans and Status"
      section.

B.2.  Changes to draft-ietf-lisp-07.txt

   o  Posted April 2010.

   o  Added I-bit to data header so LSB field can also be used as an
      Instance ID field.  When this occurs, the LSB field is reduced to
      8-bits (from 32-bits).

   o  Added V-bit to the data header so the 24-bit nonce field can also
      be used for source and destination version numbers.

   o  Added Map-Version 12-bit value to the EID-record to be used in all
      of Map-Request, Map-Reply, and Map-Register messages.

   o  Added multiple ITR-RLOC fields to the Map-Request packet so an ETR
      can decide what address to select for the destination of a Map-
      Reply.

   o  Added L-bit (Local RLOC bit) and p-bit (Probe-Reply RLOC bit) to
      the Locator-Set record of an EID-record for a Map-Reply message.
      The L-bit indicates which RLOCs in the locator-set are local to
      the sender of the message.  The P-bit indicates which RLOC is the
      source of a RLOC-probe Reply (Map-Reply) message.

   o  Add reference to the LISP Canonical Address Format [LCAF] draft.

   o  Made editorial and clarification changes based on comments from
      Dhirendra Trivedi.

   o  Added wordsmithing comments from Joel Halpern on DF=3D1 setting.

   o  Add John Zwiebel clarification to Echo Nonce Algorithm section
      6.3.1.

   o  Add John Zwiebel comment about expanding on proxy-map-reply bit
      for Map-Register messages.

   o  Add NAT section per Ron Bonica comments.

   o  Fix IDnits issues per Ron Bonica.




Farinacci, et al.       Expires February 3, 2011               [Page 75]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Added section on Virtualization and Segmentation to explain the
      use if the Instance ID field in the data header.

   o  There are too many P-bits, keep their scope to the packet format
      description and refer to them by name every where else in the
      spec.

   o  Scanned all occurrences of "should", "should not", "must" and
      "must not" and uppercased them.

   o  John Zwiebel offered text for section 4.1 to modernize the
      example.  Thanks Z!

   o  Make it more clear in the definition of "EID-to-RLOC Database"
      that all ETRs need to have the same database mapping.  This
      reflects a comment from John Scudder.

   o  Add a definition "Route-returnability" to the Definition of Terms
      section.

   o  In section 9.2, add text to describe what the signature of
      traceroute packets can look like.

   o  Removed references to Data Probe for introductory example.  Data-
      probes are still part of the LISP design but not encouraged.

   o  Added the definition for "LISP site" to the Definition of Terms"
      section.

B.3.  Changes to draft-ietf-lisp-06.txt

   Editorial based changes:

   o  Posted December 2009.

   o  Fix typo for flags in LISP data header.  Changed from "4" to "5".

   o  Add text to indicate that Map-Register messages must contain a
      computed UDP checksum.

   o  Add definitions for PITR and PETR.

   o  Indicate an AFI value of 0 is an unspecified address.

   o  Indicate that the TTL field of a Map-Register is not used and set
      to 0 by the sender.  This change makes this spec consistent with
      [LISP-MS].




Farinacci, et al.       Expires February 3, 2011               [Page 76]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Change "... yield a packet size of L bytes" to "... yield a packet
      size greater than L bytes".

   o  Clarify section 6.1.5 on what addresses and ports are used in Map-
      Reply messages.

   o  Clarify that LSBs that go beyond the number of locators do not to
      be SMRed when the locator addresses are greater lexicographically
      than the locator in the existing locator-set.

   o  Add Gregg, Srini, and Amit to acknowledgment section.

   o  Clarify in the definition of a LISP header what is following the
      UDP header.

   o  Clarify "verifying Map-Request" text in section 6.1.3.

   o  Add Xu Xiaohu to the acknowledgment section for introducing the
      problem of overlapping EID-prefixes among multiple sites in an RRG
      email message.

   Design based changes:

   o  Use stronger language to have the outer IPv4 header set DF=3D1 so =
we
      can avoid fragment reassembly in an ETR or PETR.  This will also
      make IPv4 and IPv6 encapsulation have consistent behavior.

   o  Map-Requests should not be sent in ECM with the Probe bit is set.
      These type of Map-Requests are used as RLOC-probes and are sent
      directly to locator addresses in the underlying network.

   o  Add text in section 6.1.5 about returning all EID-prefixes in a
      Map-Reply sent by an ETR when there are overlapping EID-prefixes
      configure.

   o  Add text in a new subsection of section 6.1.5 about dealing with
      Map-Replies with coarse EID-prefixes.

B.4.  Changes to draft-ietf-lisp-05.txt

   o  Posted September 2009.

   o  Added this Document Change Log appendix.

   o  Added section indicating that encapsulated Map-Requests must use
      destination UDP port 4342.





Farinacci, et al.       Expires February 3, 2011               [Page 77]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Don't use AH in Map-Registers.  Put key-id, auth-length, and auth-
      data in Map-Register payload.

   o  Added Jari to acknowledgment section.

   o  State the source-EID is set to 0 when using Map-Requests to
      refresh or RLOC-probe.

   o  Make more clear what source-RLOC should be for a Map-Request.

   o  The LISP-CONS authors thought that the Type definitions for CONS
      should be removed from this specification.

   o  Removed nonce from Map-Register message, it wasn't used so no need
      for it.

   o  Clarify what to do for unspecified Action bits for negative Map-
      Replies.  Since No Action is a drop, make value 0 Drop.

B.5.  Changes to draft-ietf-lisp-04.txt

   o  Posted September 2009.

   o  How do deal with record count greater than 1 for a Map-Request.
      Damien and Joel comment.  Joel suggests: 1) Specify that senders
      compliant with the current document will always set the count to
      1, and note that the count is included for future extensibility.
      2) Specify what a receiver compliant with the draft should do if
      it receives a request with a count greater than 1.  Presumably, it
      should send some error back?

   o  Add Fred Templin in acknowledgment section.

   o  Add Margaret and Sam to the acknowledgment section for their great
      comments.

   o  Say more about LAGs in the UDP section per Sam Hartman's comment.

   o  Sam wants to use MAY instead of SHOULD for ignoring checksums on
      ETR.  =46rom the mailing list: "You'd need to word it as an ITR =
MAY
      send a zero checksum, an ETR MUST accept a 0 checksum and MAY
      ignore the checksum completely.  And of course we'd need to
      confirm that can actually be implemented.  In particular, hardware
      that verifies UDP checksums on receive needs to be checked to make
      sure it permits 0 checksums."

   o  Margaret wants a reference to
      http://www.ietf.org/id/draft-eubanks-chimento-6man-00.txt.



Farinacci, et al.       Expires February 3, 2011               [Page 78]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Fix description in Map-Request section.  Where we describe Map-
      Reply Record, change "R-bit" to "M-bit".

   o  Add the mobility bit to Map-Replies.  So PTRs don't probe so often
      for MNs but often enough to get mapping updates.

   o  Indicate SHA1 can be used as well for Map-Registers.

   o  More Fred comments on MTU handling.

   o  Isidor comment about spec'ing better periodic Map-Registers.  Will
      be fixed in draft-ietf-lisp-ms-02.txt.

   o  Margaret's comment on gleaning: "The current specification does
      not make it clear how long gleaned map entries should be retained
      in the cache, nor does it make it clear how/ when they will be
      validated.  The LISP spec should, at the very least, include a
      (short) default lifetime for gleaned entries, require that they be
      validated within a short period of time, and state that a new
      gleaned entry should never overwrite an entry that was obtained
      from the mapping system.  The security implications of storing
      "gleaned" entries should also be explored in detail."

   o  Add section on RLOC-probing per working group feedback.

   o  Change "loc-reach-bits" to "loc-status-bits" per comment from
      Noel.

   o  Remove SMR-bit from data-plane.  Dino prefers to have it in the
      control plane only.

   o  Change LISP header to allow a "Research Bit" so the Nonce and LSB
      fields can be turned off and used for another future purpose.  For
      Luigi et al versioning convergence.

   o  Add a N-bit to the data header suggested by Noel.  Then the nonce
      field could be used when N is not 1.

   o  Clarify that when E-bit is 0, the nonce field can be an echoed
      nonce or a random nonce.  Comment from Jesper.

   o  Indicate when doing data-gleaning that a verifying Map-Request is
      sent to the source-EID of the gleaned data packet so we can avoid
      map-cache corruption by a 3rd party.  Comment from Pedro.

   o  Indicate that a verifying Map-Request, for accepting mapping data,
      should be sent over the ALT (or to the EID).




Farinacci, et al.       Expires February 3, 2011               [Page 79]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Reference IPsec RFC 4302.  Comment from Sam and Brian Weis.

   o  Put E-bit in Map-Reply to tell ITRs that the ETR supports echo-
      noncing.  Comment by Pedro and Dino.

   o  Jesper made a comment to loosen the language about requiring the
      copy of inner TTL to outer TTL since the text to get mixed-AF
      traceroute to work would violate the "MUST" clause.  Changed from
      MUST to SHOULD in section 5.3.

B.6.  Changes to draft-ietf-lisp-03.txt

   o  Posted July 2009.

   o  Removed loc-reach-bits longword from control packets per Damien
      comment.

   o  Clarifications in MTU text from Roque.

   o  Added text to indicate that the locator-set be sorted by locator
      address from Isidor.

   o  Clarification text from John Zwiebel in Echo-Nonce section.

B.7.  Changes to draft-ietf-lisp-02.txt

   o  Posted July 2009.

   o  Encapsulation packet format change to add E-bit and make loc-
      reach-bits 32-bits in length.

   o  Added Echo-Nonce Algorithm section.

   o  Clarification how ECN bits are copied.

   o  Moved S-bit in Map-Request.

   o  Added P-bit in Map-Request and Map-Reply messages to anticipate
      RLOC-Probe Algorithm.

   o  Added to Mobility section to reference draft-meyer-lisp-mn-00.txt.

B.8.  Changes to draft-ietf-lisp-01.txt

   o  Posted 2 days after draft-ietf-lisp-00.txt in May 2009.

   o  Defined LEID to be a "LISP EID".




Farinacci, et al.       Expires February 3, 2011               [Page 80]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Indicate encapsulation use IPv4 DF=3D0.

   o  Added negative Map-Reply messages with drop, native-forward, and
      send-map-request actions.

   o  Added Proxy-Map-Reply bit to Map-Register.

B.9.  Changes to draft-ietf-lisp-00.txt

   o  Posted May 2009.

   o  Rename of draft-farinacci-lisp-12.txt.

   o  Acknowledgment to RRG.





































Farinacci, et al.       Expires February 3, 2011               [Page 81]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Authors' Addresses

   Dino Farinacci
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: dino@cisco.com


   Vince Fuller
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: vaf@cisco.com


   Dave Meyer
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: dmm@cisco.com


   Darrel Lewis
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: darlewis@cisco.com















Farinacci, et al.       Expires February 3, 2011               [Page 82]
=0C

--Apple-Mail-24--337873069
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed
Content-Transfer-Encoding: 7bit



--Apple-Mail-24--337873069--

From darlewis@cisco.com  Fri Aug  6 15:44:18 2010
Return-Path: <darlewis@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9EABB3A68E1 for <lisp@core3.amsl.com>; Fri,  6 Aug 2010 15:44:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.578
X-Spam-Level: 
X-Spam-Status: No, score=-10.578 tagged_above=-999 required=5 tests=[AWL=0.021, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TvJ21ZXB2MCC for <lisp@core3.amsl.com>; Fri,  6 Aug 2010 15:44:17 -0700 (PDT)
Received: from sj-iport-5.cisco.com (sj-iport-5.cisco.com [171.68.10.87]) by core3.amsl.com (Postfix) with ESMTP id 999883A687F for <lisp@ietf.org>; Fri,  6 Aug 2010 15:44:17 -0700 (PDT)
Authentication-Results: sj-iport-5.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-AV: E=Sophos;i="4.55,331,1278288000"; d="scan'208";a="236910811"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-5.cisco.com with ESMTP; 06 Aug 2010 22:44:49 +0000
Received: from [10.21.75.244] ([10.21.75.244]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o76MimSG026246; Fri, 6 Aug 2010 22:44:49 GMT
From: Darrel Lewis <darlewis@cisco.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Date: Fri, 6 Aug 2010 13:48:06 -0700
Message-Id: <CF20E4F3-E8D6-4143-80C9-EF64F8626A09@cisco.com>
To: lisp@ietf.org
Mime-Version: 1.0 (Apple Message framework v1081)
X-Mailer: Apple Mail (2.1081)
Subject: [lisp] Issue Title (number):  Map Reply Consistency (47, 48, 49, 50)
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Fri, 06 Aug 2010 22:44:18 -0000

There are 4 very closely related issues about Map-Reply consistency.  =
See below for details.


-------------
Issue Title (number):  Map Reply Consistency (47)
Draft Section: ?
Issue Description: Map Reply - Ambiguous Text

Comments:

Ambiguity related to the existence (or not) of a clear requirements that =
all entities that return MAP-Replies for a given EID return the same =
content?

Recommended Action:  Add text explaining consistency (wg mail thread has =
details) This is related to issue 48 and 49, 50.

-----------------------
Issue Title (number):  Map Replies with Different Content (48)
Draft Section: ?
Issue Description: ITR handling of Map-Replies

Comments:

What are the consequences if two entities do return MAP-replies with =
different contents for a given EID?


-----------------------
Issue Title (number):  Map Replies with Different Content (49)
Draft Section: ?
Issue Description: ITR handling of Map-Replies

Comments:

If MAP-Replies content for a given EID are not supposed to change then =
what is the content that is allowed to vary (Locator status bits?)

-----------------------
Issue Title (number):  Map Replies with Different Content (50)
Draft Section: ?
Issue Description: xTR handling of Map-Replies

Comments:

If MAP-Replies content for a given EID are not supposed to change then =
what is the content that MUST be invariant?

--------------------


Dear Yakov-

Thank you for your contribution to draft-ietf-lisp-06.txt. The draft =
authors have changed=20
the text accordingly.  We added clarifying language in section 6.1.5 =
about Map-Replying=20
to Data Probes or Map-Requests. We believe these text changes have =
resolved this issue,=20
but if you feel that further changes are warranted please bring this =
issue to the LISP=20
working group mailing list, lisp@ietf.org, for further discussion.=20

	Thanks!
	Darrel, for the LISP document authors



From darlewis@cisco.com  Fri Aug  6 15:44:21 2010
Return-Path: <darlewis@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id BF4D83A69BF for <lisp@core3.amsl.com>; Fri,  6 Aug 2010 15:44:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.65
X-Spam-Level: 
X-Spam-Status: No, score=-8.65 tagged_above=-999 required=5 tests=[AWL=-1.909,  BAYES_00=-2.599, FRT_PROFIT1=3.858, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ygJn5yCVF5wF for <lisp@core3.amsl.com>; Fri,  6 Aug 2010 15:44:20 -0700 (PDT)
Received: from sj-iport-4.cisco.com (sj-iport-4.cisco.com [171.68.10.86]) by core3.amsl.com (Postfix) with ESMTP id 132C53A698C for <lisp@ietf.org>; Fri,  6 Aug 2010 15:44:20 -0700 (PDT)
Authentication-Results: sj-iport-4.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-AV: E=Sophos;i="4.55,331,1278288000"; d="scan'208";a="168784537"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-4.cisco.com with ESMTP; 06 Aug 2010 22:44:51 +0000
Received: from [10.21.75.244] ([10.21.75.244]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o76MimSH026246; Fri, 6 Aug 2010 22:44:51 GMT
From: Darrel Lewis <darlewis@cisco.com>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Date: Fri, 6 Aug 2010 13:48:37 -0700
Message-Id: <E06BA688-7760-41F8-97DC-955A9B6ABAD5@cisco.com>
To: lisp@ietf.org
Mime-Version: 1.0 (Apple Message framework v1081)
X-Mailer: Apple Mail (2.1081)
Subject: [lisp] Issue Title (number):  RLOC Reachability (43)
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Fri, 06 Aug 2010 22:44:21 -0000

-----------------------
Issue Title (number):  RLOC Reachability (43)
Draft Section: 6.1.5, 6.3
Issue Description: RLOC Reachability questions=20

Comments:

Section 6.1.5 where is the =93Data Probe packet=94 format defined =
actually ?

Section 6.1.5 states =93The RLOCs in the Map-Reply are the
globally-routable IP addresses of the ETR but are not necessarily
reachable; separate testing of reachability is required.=94 Section 6.3
does not define any procedure actually and does not define any
criteria for deciding when the RLOC is reachable or not. The key
question is if the ITR persists in testing reachability and there is
no criteria process by which such decision would stop, the traffic
would be forwarded by means of the =93separate/alternative topology=94
forever.

Section 6.3 proposes =93encapsulated traffic=94 based procedures thus, =
if
there is no traffic there is no RLOC reachability =93test=94 possible. =
On
the other hand, that section states certain =93ICMP exchanges=94 are
documented but reachability of RLOC does not mean availability of the
associated EID. There no actual =93EID-to-RLOC=94 testing procedure =
being
defined in the document?

What is struggling here is that the =93introductory=94 sections of the
document refer to =93functional=94 separations but all the techniques
described in this document (and for RLOC reachability testing in
particular) result in a complex inter-twin between control messaging
as part of the forwarding plane and forwarding date as part of the
control plane of routers. The latter is typical from Data Probes
processing. If this is the design choice of LISP so let it be but 1)
please proof it offers any better functionality compared to =93current=94
design and 2) better cost/performance. It is far from obvious that the
complexity concentrated at TR taking into the proposed design offers
any real compelling argument. This may also defeat the argument stated
in the introduction that =93network deployment=94 is facilitated by
network-based solutions.

Section 6.3 Point 1 what is the use of the =93Loc-Status-Bits=94 if =
there
is no return traffic (or more precisely no return traffic passing via
this ETR i.e. the ETR is not an ITR for the source RLOC-EID pair). The
ETR may process this information but never use it.

Section 6.3 states =93Each ITR can thus observe the presence or lack of
a default route originated by the others to determine the Locator
Status Bits it sets for them.=94 This does not tell which technique to
use when no default route are used at all (under =93non-normal=94
circumstances =85 what should define normality in this context).

Section 6.3.1 states =93This mechanism does not completely solve the
forward path reachability problem as traffic may be unidirectional.=94
The forwarding path may simply be asymmetric (there is nothing that
imposes reverse path reaching the source RLOC in case of dual attached
sites). This shortcoming defeats this mechanism as an ITR is not
=93aware=94 of its neighboring ITR EID-to-RLOC mappings (connected to =
the
same site). This mechanism can only be safely used if the RLOC pair
between two sites is unique and remains unique.

Section 6.3.2 RLOC Probing by means of the =93control plane=94 this =
opens
the question of what is actually probed the =93RLOC=94 or the =
EID-to-RLOC
entries of the ETR=92s database. The difference stems because the latter
are static entries the liveness of the former are dependent on the
incoming interface liveness. That is entries can be available in the
database but if database entries are not in sync with the actual RLOC
status there is no possibility to detect reachability of RLOCs by
means of this mechanism.

=46rom Y. Rekhter's Review:
This is Comment 27

Section 6.3
Several mechanisms for determining RLOC reachability are currently
defined:

1. An ETR may examine the Loc-Status-Bits in the LISP header of an =
encapsulated data packet received from an ITR. If the ETR is also acting =
as an ITR and has traffic to return to the original ITR site, it can use =
this status information to help select an
RLOC.

2. An ITR may receive an ICMP Network or ICMP Host Unreachable message
for an RLOC it is using. This indicates that the RLOC is likely down.

3. An ITR which participates in the global routing system can
determine that an RLOC is down if no BGP RIB route exists that matches
the RLOC IP address.

4. An ITR may receive an ICMP Port Unreachable message from a
destination host. This occurs if an ITR attempts to use interworking
[INTERWORK] and LISP-encapsulated data is sent to a non-LISP-capable
site.

5. An ITR may receive a Map-Reply from a ETR in response to a
previously sent Map-Request. The RLOC source of the Map-Reply is
likely up since the ETR was able to send the Map-Reply to the ITR.

6. When an ETR receives an encapsulated packet from an ITR, the source
RLOC from the outer header of the packet is likely up.

7. An ITR/ETR pair can use the Locator Reachability Algorithms
described in this section, namely Echo-Noncing or RLOC-Probing.

For the first mechanism to work it is not sufficient for the ETR to
have traffic "to return to the original ITR site" - the ETR has to
have traffic to return to the original ITR. And if the ETR has no
traffic to return to the original ITR (even if the ETR has traffic to
return to some other ITR of the site), then the first mechanism is
useless.

Moreover, the first mechanism is predicated on the assumption that the
Loc-Status-Bits contain up to date information about reachability
of all ETRs at the site. The document describes how the ITR obtains
this information only for the case of CE-based or intra-site based
ITRs. Thus it does not cover the case where the ITR is the
PE. Moreover, for the case of CE-based ITR the scheme does not work if
the site runs RIP as its IGP. Furthermore it assumes that just because
the correspondent ITR can reach the given RLOC, the ETR also
will. Since IP connectivity is not always transitive in this
way, the fact that the corresponding ITR can reach the given RLOC does
not mean that the ETR also can.

The second mechanism depends on ICMP Unreachable. As such it may
result in sustained traffic blackholing due to ICMP Unreachable being
dropped along the path. Also, how would that mechanism handle DoS
attacks caused by spoofed ICMP Unreachables ? Finally, if ITR
is within a site, and behind a firewall, would the firewall pass ICMP
Unreachables in the first place ?

The third mechanism is likely to be of very limited use, as an ETR
going down is unlikely to cause the route that covers the RLOC of that
ETR to be withdrawn (unless this is /32 route).

The fourth mechanism is applicable only for LISP interworking between
a LISP and a non-LISP site.

The fifth and the sixth mechanisms do provide the indication that the
ETR is up, but do not provide the information when the ETR is down. As
such they are not applicable for determining unreachability, as
unreachability requires the ability to determine that the ETR is down.

That leaves us with the seventh mechanism. This mechanism offers two
options: Echo Nonce (section 6.3.1) and RLOC Probing (section
6.3.2). The Echo Nonce mechanism is applicable only when there is a
bidirectional flow between a pair of RLOCs. The RLOC Probing mechanism
has scaling limitations - quoting from 6.3.2:

    The major disadvantage of RLOC Probing is in the number of control
    messages required and the amount of bandwidth used to obtain those
    benefits, especially if the requirement for failure detection times
    are very small.

Given the above, what are the mechanisms that are available when xTRs
are PEs (as described in 8.3), and what are their scaling
characteristics ?

Consider an example of site A with two xTRs A1 and A2, and site B with
two xTRs, B1 and B2. Now imagine that outbound traffic from A to B is
using the ITR component of A1, and talking to the ETR component B1 of
B. But the traffic from B back to A uses the ITR component of B2 and
is sending to the ETR component of A2. So each ITR->ETR flow is
unidirectional, even though all four devices are
fully capable of bidirectional communication. What are the options for
the RLOC reachability in this scenario ?

This is Comment 28

Section 6.3

    The ITR can test the reachability of the unreachable Locator by
    sending periodic Requests. Both Requests and Replies MUST be rate-
    limited. Locator reachability testing is never done with data =
packets
    since that increases the risk of packet loss for end-to-end =
sessions.

How would one use data packets for testing locator reachability ?

------------

Response:

-----------


Dear Dimitri & Yakov-

Thank you for your contribution to draft-ietf-lisp-06.txt. The draft=20
authors have changed the text accordingly.  Based on Dimitri's comments
we made significant changes to the Draft's Introduction (section 2),=20
as well as clarifying text to section 6, including clarifying language =
in=20
section 6.1.5 about Map-Replying to Data-Probes or Map-Requests.
We believe these text changes have resolved this issue, but if you=20
feel that further changes are warranted please bring this issue to=20
the LISP working group mailing list, lisp@ietf.org, for further =
discussion.=20

	Thanks!
	Darrel, for the LISP document authors



From darlewis@cisco.com  Fri Aug  6 15:44:22 2010
Return-Path: <darlewis@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D4DDD3A69C6 for <lisp@core3.amsl.com>; Fri,  6 Aug 2010 15:44:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.526
X-Spam-Level: 
X-Spam-Status: No, score=-10.526 tagged_above=-999 required=5 tests=[AWL=0.073, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id v0jg4stKmydj for <lisp@core3.amsl.com>; Fri,  6 Aug 2010 15:44:21 -0700 (PDT)
Received: from sj-iport-5.cisco.com (sj-iport-5.cisco.com [171.68.10.87]) by core3.amsl.com (Postfix) with ESMTP id BE2363A69B4 for <lisp@ietf.org>; Fri,  6 Aug 2010 15:44:21 -0700 (PDT)
Authentication-Results: sj-iport-5.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-AV: E=Sophos;i="4.55,331,1278288000"; d="scan'208";a="236910825"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-5.cisco.com with ESMTP; 06 Aug 2010 22:44:53 +0000
Received: from [10.21.75.244] ([10.21.75.244]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o76MimSI026246; Fri, 6 Aug 2010 22:44:53 GMT
From: Darrel Lewis <darlewis@cisco.com>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Date: Fri, 6 Aug 2010 15:43:05 -0700
Message-Id: <3D22A6B7-3C97-4F52-8B09-7289BA47C801@cisco.com>
To: lisp@ietf.org
Mime-Version: 1.0 (Apple Message framework v1081)
X-Mailer: Apple Mail (2.1081)
Subject: [lisp] Issue Title (number):  SMR handling (42)
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Fri, 06 Aug 2010 22:44:22 -0000

Issue Title (number):  SMR handling (42)
Draft Section: 6.5.2
Issue Description: SMR Mechanism

Comments:

=46rom Demitri:

Section 6.5.2 is this technique mandatory or not (this is not
specified in the text). Point 5 results in obvious situations where
the ETR may never stop sending SMR messages. As there is no means a
way to prevent that ITR use =93old mappings=94 this result in a deadlock
situation (a non-cooperating ITR prevents ETR to stop sending SMR
messages).

Section 6.5.2 states =93So an xTR will solicit Map-Requests from sites
it is currently sending encapsulated data to, and only from those
sites.=94 Thus instead of keeping track of ITR, ETR keep track of the
encapsulated traffic ITR send. The mechanism is often cited but never
explained e.g. over which time period is the ETR expected to determine
the set of communicating ITR=92s ?

Section 6.5.2 states =93Map request=94 shall be rate limited =85 rather
unclear: assume a single ETR sends one SMR message to 10 different
ITRs how the 10 ITR will individually rate limit a single Map Request
in response to this SMR message. It is thus worth specifying the flow
control of SMR and Map-Request messages in a more systematic way to
prevent ETR overloads.=20

=46rom Yakov (his comment 34)


Section 6.5.2 Solicited-Map-Request

   Since the xTRs don't keep track of remote ITRs that have cached their
   mappings, they can not tell exactly who needs the new mapping
   entries. So an xTR will solicit Map-Requests from sites it is
   currently sending encapsulated data to, and only from those sites.

"currently" needs to be quantified. E.g., if the local xTR detected
change in the mapping at time T1, and sends the encapsulated data to a
particlar remote xTR at time T2, what is the max allowable (T2-T1) ?
Is it 1 sec, 1 min, 1 hour, 1 day ?

What is the meaning of "solicit Map-Requests from sites" ? Does it
mean soliciting it from all the xTRs of a given site ? If yes, then
how would it determine all such xTRs ? And if no, and it means just
one xTR of a given site, then how would Solicited-Map-Request work in
the scenario where an xTR-A sends encapsulated data to xTR-B of a
given (remote) site, but that site uses some other xTR, xTR-C, to send
the data to xTR-A, and it is xTR-C that needs the new mapping ?

   The remote xTR retransmits the Map-Request slowly until it gets a

"slowly" needs to be quantified.

   The ETRs at the site with the changed mapping will reply to the
   Map-Request with a Map-Reply message provided the Map-Request nonce
   matches the nonce from the SMR. The Map-Reply messages SHOULD be rate
   limited. This is important to avoid Map-Reply implosion.

Is the implication that during this procedure, normal new Map-Requests
will not be replied to in the usual way, since they won't have the
nonce?

   with an EID destination to the mapping database system. Since the
   mapping database system is more secure to reach an authoritative ETR,

What is the justification for this assumption about the mapping
database's security?=20


Response:

Dear Yakov-

Thank you for your contribution to draft-ietf-lisp-06.txt. The draft =
authors
have reviewed your comments above and have attempted to changed the =
draft's
text accordingly.   The text now indicates that SMRs can have a global =
or=20
per SMR destination rate-limiters.  We also added text that we hope=20
clarifies the Solicit Map Request procedures. We believe these changes=20=

have resolved  this issue, but if you feel that further changes are=20
warranted please bring this issue to the LISP working group mailing=20
list, lisp@ietf.org, for further discussion.=20

	Thanks!
	Darrel, for the LISP document authors=

From damien.saucez@uclouvain.be  Mon Aug  9 02:58:10 2010
Return-Path: <damien.saucez@uclouvain.be>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id CDA733A6915 for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 02:58:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.399
X-Spam-Level: 
X-Spam-Status: No, score=-3.399 tagged_above=-999 required=5 tests=[BAYES_50=0.001, J_CHICKENPOX_42=0.6, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id G70+SQQQn6kg for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 02:58:09 -0700 (PDT)
Received: from smtp4.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by core3.amsl.com (Postfix) with ESMTP id 331BA3A67C0 for <lisp@ietf.org>; Mon,  9 Aug 2010 02:58:09 -0700 (PDT)
Received: from sleipnier.dhcp.info.ucl.ac.be (sleipnier.dhcp.info.ucl.ac.be [130.104.228.23]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: dsaucez@smtp4.sgsi.ucl.ac.be) by smtp4.sgsi.ucl.ac.be (Postfix) with ESMTPSA id F238CF283B; Mon,  9 Aug 2010 11:58:15 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.2 smtp4.sgsi.ucl.ac.be F238CF283B
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1281347904; bh=M4LbQUmU++bC4s0Vq7dKk+iHPn6aJkJEmBYHpu41Gys=; h=Subject:Mime-Version:Content-Type:From:In-Reply-To:Date:Cc: Content-Transfer-Encoding:Message-Id:References:To; b=vFguozmrUAeMdk/gsmmsbtXzoD3vxmFy8bZWjd2+C1Bhc9vK5pNCmzpjmAUkSKMXS jh0/fNpT+5uBNR6Pr9I1bYvLSC6iEJUP2mVFFr0M7ZR8uDOSfcVWr9/2SeB//SBe+s +gIYJomvLTtsQguSoFeNhhwBEm7wGdFejyvRokVk=
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com>
Date: Mon, 9 Aug 2010 11:58:15 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be>
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com>
To: Dino Farinacci <dino@cisco.com>
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96-exp at smtp-4.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-Sgsi-Spamcheck: SASL authenticated, 
X-SGSI-MailScanner-ID: F238CF283B.00000
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: damien.saucez@uclouvain.be
X-SGSI-Spam-Status: No
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 09 Aug 2010 09:58:10 -0000

Hello,

would it be possible to clarify the following points?

Sec 6.1.2:
 Record Count:  The number of records in this Map-Request message.  A
      record is comprised of the portion of the packet that is labeled
      'Rec' above and occurs the number of times equal to Record Count.
      For this version of the protocol, a receiver MUST accept and
      process Map-Requests that contain one or more records, but a
      sender MUST only send Map-Requests containing one record.  Support
      for requesting multiple EIDs in a single Map-Request message will
      be specified in a future version of the protocol.

Could you replace the "a receiver MUST accept and process Map-Requests=20=

that contain one or more records" by something like "a receiver MUST =
accept=20
and process Map-Requests that contain one record and MAY accept and=20
process Map-Requests that contain more than one record." Therefore, it =
is
possible to implement Map-Request processor that does not support =
multiple
records as nothing is define to say how to deal with more than one =
record.
Personally, my map server implementation accept requests with several
records but simply ignore the additional records (the packet is not =
dropped but
only the first record is resolved).


Section 6.1.2:
IRC:  This 5-bit field is the ITR-RLOC Count which encodes the number
      of (ITR-RLOC-AFI, ITR-RLOC Address) fields present in this
      message.  Multiple ITR-RLOC Address fields are used so a Map-
      Replier can select which destination address to use for a Map-
      Reply.  The IRC value ranges from 0 to 31, where IRC value 0 means
      an ITR-RLOC address count of 1, an IRC value of 1 means an ITR-
      RLOC address count of 2, and so on up to an IRC value of 31, which
      means an ITR-RLOC address count of 32.

and "'Rec' above and occurs the number of times equal to Record Count."

meaning that for IRC, the counter is 0 =3D 1, 1 =3D 2, ... and for RLOC =
count 0 =3D 0, 1 =3D 1, ...
it seems to be a "bug prone" specification. Indeed, in the packet, there =
is two
counters but both have a different computation. Do you think it could be =
possible
to say that the two counters follow the 0 =3D 0, 1 =3D 1, ... pattern =
and that 0 is prohibited=20
for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32 to 31, =
but the specs=20
then seem more consistent. Do we really need to have 32 ITR-RLOCs?

Regards,

Damien Saucez

On 02 Aug 2010, at 17:55, Dino Farinacci wrote:

> Would like to thank everyone who has contributed to the commentary, =
discussion, and emails toward producing draft-ietf-lisp-08.txt. This was =
definitely a joint working group effort. Changes included in this =
version are:
>=20
> B.1.  Changes to draft-ietf-lisp-08.txt
>=20
>  o  Posted August 2010.
>=20
>  o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
>     Register messages.
>=20
>  o  Clarify language in section 6.1.5 about Map-Replying to Data-
>     Probes or Map-Requests.
>=20
>  o  Indicate that outer TTL should only be copied to inner TTL when it
>     is less than inner TTL.
>=20
>  o  Indicate a source-EID for RLOC-probes are encoded with an AFI
>     value of 0.
>=20
>  o  Indicate that SMRs can have a global or per SMR destination rate-
>     limiter.
>=20
>  o  Add clarifications to the SMR procedures.
>=20
>  o  Add definitions for "client-side" and 'server-side" terms used in
>     this specification.
>=20
>  o  Clear up language in section 6.4, last paragraph.
>=20
>  o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
>     probe a PETR and have it return a Map-Reply with a locator-set of
>     size 0.  The way it is spec'ed the map-cache entry has action
>     "dropped".  Drop-action is set to 3.
>=20
>  o  Add statement about normalizing locator weights.
>=20
>  o  Clarify R-bit definition in the Map-Reply locator record.
>=20
>  o  Add section on EID Reachability within a LISP site.
>=20
>  o  Clarify another disadvantage of using anycast locators.
>=20
>  o  Reworded Abstract.
>=20
>  o  Change section 2.0 Introduction to remove obsolete information
>     such as the LISP variant definitions.
>=20
>  o  Change section 5 title from "Tunneling Details" to "LISP
>     Encapsulation Details".
>=20
>  o  Changes to section 5 to include results of network deployment
>     experience with MTU.  Recommend that implementations use either
>     the stateful or stateless handling.
>=20
>  o  Updated current events in the "Prototype Plans and Status"
>     section.
>=20
> You can find the html diff file enclosed as well as the text spec =
file. We would like to give a 10 day review period before posting =
changes. So comments are due by Thursday August 12th. At that time we =
will post draft-ietf-lisp-08.txt to the ID directory.
>=20
> Darrel is about to send an email message for each tracker issue that =
is classified in the "we changed spec" category.
>=20
> Thanks again,
> Dino/Darrel/Vince/Dave
>=20
> <rfcdiff-ietf-lisp-07-to-08.html>
>=20
>=20
> <draft-ietf-lisp-08.txt>
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp


From dino@cisco.com  Mon Aug  9 16:58:27 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 14F073A67B2 for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 16:58:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.299
X-Spam-Level: 
X-Spam-Status: No, score=-10.299 tagged_above=-999 required=5 tests=[AWL=-0.300, BAYES_00=-2.599, J_CHICKENPOX_42=0.6, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NeD2hJnJyruK for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 16:58:25 -0700 (PDT)
Received: from sj-iport-5.cisco.com (sj-iport-5.cisco.com [171.68.10.87]) by core3.amsl.com (Postfix) with ESMTP id 8BD8A3A68B6 for <lisp@ietf.org>; Mon,  9 Aug 2010 16:58:25 -0700 (PDT)
Authentication-Results: sj-iport-5.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAPYyYEyrR7Ht/2dsb2JhbACgUXGoG5tihToEhCaFFQ
X-IronPort-AV: E=Sophos;i="4.55,345,1278288000"; d="scan'208";a="237965120"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-5.cisco.com with ESMTP; 09 Aug 2010 23:59:00 +0000
Received: from [192.168.1.4] (sjc-vpn7-1896.cisco.com [10.21.151.104]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o79Nx0pG015293; Mon, 9 Aug 2010 23:59:00 GMT
Message-Id: <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Mon, 9 Aug 2010 16:58:59 -0700
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com> <A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be>
X-Mailer: Apple Mail (2.936)
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 09 Aug 2010 23:58:27 -0000

> Hello,
>
> would it be possible to clarify the following points?

Sure, if we can get working group consensus on them.

> Sec 6.1.2:
> Record Count:  The number of records in this Map-Request message.  A
>      record is comprised of the portion of the packet that is labeled
>      'Rec' above and occurs the number of times equal to Record Count.
>      For this version of the protocol, a receiver MUST accept and
>      process Map-Requests that contain one or more records, but a
>      sender MUST only send Map-Requests containing one record.   
> Support
>      for requesting multiple EIDs in a single Map-Request message will
>      be specified in a future version of the protocol.
>
> Could you replace the "a receiver MUST accept and process Map-Requests
> that contain one or more records" by something like "a receiver MUST  
> accept
> and process Map-Requests that contain one record and MAY accept and
> process Map-Requests that contain more than one record." Therefore,  
> it is
> possible to implement Map-Request processor that does not support  
> multiple
> records as nothing is define to say how to deal with more than one  
> record.
> Personally, my map server implementation accept requests with several
> records but simply ignore the additional records (the packet is not  
> dropped but
> only the first record is resolved).

So we went around and around on this for changes to draft-ietf- 
lisp-04.txt. Joel had comments that were recorded in the Change Log  
section. Here is an excerpt:

    o  How do deal with record count greater than 1 for a Map-Request.
       Damien and Joel comment.  Joel suggests: 1) Specify that senders
       compliant with the current document will always set the count to
       1, and note that the count is included for future extensibility.
       2) Specify what a receiver compliant with the draft should do if
       it receives a request with a count greater than 1.  Presumably,  
it
       should send some error back?

So the language was written to meet this requirement.

> Section 6.1.2:
> IRC:  This 5-bit field is the ITR-RLOC Count which encodes the number
>      of (ITR-RLOC-AFI, ITR-RLOC Address) fields present in this
>      message.  Multiple ITR-RLOC Address fields are used so a Map-
>      Replier can select which destination address to use for a Map-
>      Reply.  The IRC value ranges from 0 to 31, where IRC value 0  
> means
>      an ITR-RLOC address count of 1, an IRC value of 1 means an ITR-
>      RLOC address count of 2, and so on up to an IRC value of 31,  
> which
>      means an ITR-RLOC address count of 32.
>
> and "'Rec' above and occurs the number of times equal to Record  
> Count."
>
> meaning that for IRC, the counter is 0 = 1, 1 = 2, ... and for RLOC  
> count 0 = 0, 1 = 1, ...
> it seems to be a "bug prone" specification. Indeed, in the packet,  
> there is two
> counters but both have a different computation. Do you think it  
> could be possible
> to say that the two counters follow the 0 = 0, 1 = 1, ... pattern  
> and that 0 is prohibited
> for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32 to  
> 31, but the specs
> then seem more consistent. Do we really need to have 32 ITR-RLOCs?

We did this for 3 reasons:

(1) We wanted to not have a receiver deal with a invalid value of 0.
(2) We *do want* the value to reflect up to 32 locators to be  
consistent with the number of
     locator-status-bits.
(3) It forces the implementor to store at least one ITR-RLOC in the  
Map-Request. We did not
     want this to be optional.

We thought it was easy to take the packet's IRC value, add 1 to it to  
get an ITR-RLOC count for internal processing of the ITR-RLOC list.

Thanks,
Dino

>
> Regards,
>
> Damien Saucez
>
> On 02 Aug 2010, at 17:55, Dino Farinacci wrote:
>
>> Would like to thank everyone who has contributed to the commentary,  
>> discussion, and emails toward producing draft-ietf-lisp-08.txt.  
>> This was definitely a joint working group effort. Changes included  
>> in this version are:
>>
>> B.1.  Changes to draft-ietf-lisp-08.txt
>>
>> o  Posted August 2010.
>>
>> o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
>>    Register messages.
>>
>> o  Clarify language in section 6.1.5 about Map-Replying to Data-
>>    Probes or Map-Requests.
>>
>> o  Indicate that outer TTL should only be copied to inner TTL when it
>>    is less than inner TTL.
>>
>> o  Indicate a source-EID for RLOC-probes are encoded with an AFI
>>    value of 0.
>>
>> o  Indicate that SMRs can have a global or per SMR destination rate-
>>    limiter.
>>
>> o  Add clarifications to the SMR procedures.
>>
>> o  Add definitions for "client-side" and 'server-side" terms used in
>>    this specification.
>>
>> o  Clear up language in section 6.4, last paragraph.
>>
>> o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
>>    probe a PETR and have it return a Map-Reply with a locator-set of
>>    size 0.  The way it is spec'ed the map-cache entry has action
>>    "dropped".  Drop-action is set to 3.
>>
>> o  Add statement about normalizing locator weights.
>>
>> o  Clarify R-bit definition in the Map-Reply locator record.
>>
>> o  Add section on EID Reachability within a LISP site.
>>
>> o  Clarify another disadvantage of using anycast locators.
>>
>> o  Reworded Abstract.
>>
>> o  Change section 2.0 Introduction to remove obsolete information
>>    such as the LISP variant definitions.
>>
>> o  Change section 5 title from "Tunneling Details" to "LISP
>>    Encapsulation Details".
>>
>> o  Changes to section 5 to include results of network deployment
>>    experience with MTU.  Recommend that implementations use either
>>    the stateful or stateless handling.
>>
>> o  Updated current events in the "Prototype Plans and Status"
>>    section.
>>
>> You can find the html diff file enclosed as well as the text spec  
>> file. We would like to give a 10 day review period before posting  
>> changes. So comments are due by Thursday August 12th. At that time  
>> we will post draft-ietf-lisp-08.txt to the ID directory.
>>
>> Darrel is about to send an email message for each tracker issue  
>> that is classified in the "we changed spec" category.
>>
>> Thanks again,
>> Dino/Darrel/Vince/Dave
>>
>> <rfcdiff-ietf-lisp-07-to-08.html>
>>
>>
>> <draft-ietf-lisp-08.txt>
>> _______________________________________________
>> lisp mailing list
>> lisp@ietf.org
>> https://www.ietf.org/mailman/listinfo/lisp
>


From jmh@joelhalpern.com  Mon Aug  9 19:32:18 2010
Return-Path: <jmh@joelhalpern.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7AE533A69F1 for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 19:32:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.418
X-Spam-Level: 
X-Spam-Status: No, score=-102.418 tagged_above=-999 required=5 tests=[AWL=0.181, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4JxRY06bIrtD for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 19:32:16 -0700 (PDT)
Received: from hgblob.mail.tigertech.net (hgblob.mail.tigertech.net [64.62.209.71]) by core3.amsl.com (Postfix) with ESMTP id A2FC13A69E0 for <lisp@ietf.org>; Mon,  9 Aug 2010 19:32:16 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by hgblob.tigertech.net (Postfix) with ESMTP id 85BEA3236DB7; Mon,  9 Aug 2010 19:32:51 -0700 (PDT)
X-Virus-Scanned: Debian amavisd-new at hgblob.tigertech.net
Received: from [10.10.10.101] (pool-71-161-51-217.clppva.btas.verizon.net [71.161.51.217]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by hgblob.tigertech.net (Postfix) with ESMTPSA id CB35E3236DB4; Mon,  9 Aug 2010 19:32:50 -0700 (PDT)
Message-ID: <4C60BA4F.8060204@joelhalpern.com>
Date: Mon, 09 Aug 2010 22:32:47 -0400
From: "Joel M. Halpern" <jmh@joelhalpern.com>
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
To: Dino Farinacci <dino@cisco.com>
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com>	<A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be> <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com>
In-Reply-To: <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 10 Aug 2010 02:32:18 -0000

Given the stated goal, would it make sense to define the count field as 
the additional-rloc-count.  That would serve to emphasis that there is 
always at least 1 entry, and that the count tells you how many 
additional values there are.

Not a big deal to me, but I wondered if that might improve readability.

Joel

Dino Farinacci wrote:
...
>> and "'Rec' above and occurs the number of times equal to Record Count."
>>
>> meaning that for IRC, the counter is 0 = 1, 1 = 2, ... and for RLOC 
>> count 0 = 0, 1 = 1, ...
>> it seems to be a "bug prone" specification. Indeed, in the packet, 
>> there is two
>> counters but both have a different computation. Do you think it could 
>> be possible
>> to say that the two counters follow the 0 = 0, 1 = 1, ... pattern and 
>> that 0 is prohibited
>> for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32 to 
>> 31, but the specs
>> then seem more consistent. Do we really need to have 32 ITR-RLOCs?
> 
> We did this for 3 reasons:
> 
> (1) We wanted to not have a receiver deal with a invalid value of 0.
> (2) We *do want* the value to reflect up to 32 locators to be consistent 
> with the number of
>     locator-status-bits.
> (3) It forces the implementor to store at least one ITR-RLOC in the 
> Map-Request. We did not
>     want this to be optional.
> 
> We thought it was easy to take the packet's IRC value, add 1 to it to 
> get an ITR-RLOC count for internal processing of the ITR-RLOC list.
> 
> Thanks,
> Dino
>

From dino@cisco.com  Mon Aug  9 23:44:13 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 2E7983A6A5C for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 23:44:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.524
X-Spam-Level: 
X-Spam-Status: No, score=-10.524 tagged_above=-999 required=5 tests=[AWL=0.075, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3zb682tPRlwn for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 23:44:12 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id F04CA3A6A2E for <lisp@ietf.org>; Mon,  9 Aug 2010 23:44:11 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAJGSYEyrR7Ht/2dsb2JhbACgVnGmA5trhToEhCaFFA
X-IronPort-AV: E=Sophos;i="4.55,346,1278288000"; d="scan'208";a="571120174"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-6.cisco.com with ESMTP; 10 Aug 2010 06:44:46 +0000
Received: from [192.168.1.4] (sjc-vpn6-1807.cisco.com [10.21.127.15]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o7A6hqWA020477; Tue, 10 Aug 2010 06:44:46 GMT
Message-Id: <AB7A641B-3E6D-477F-B7FD-F52AA2047D9F@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
In-Reply-To: <4C60BA4F.8060204@joelhalpern.com>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Mon, 9 Aug 2010 23:44:46 -0700
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com>	<A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be> <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com> <4C60BA4F.8060204@joelhalpern.com>
X-Mailer: Apple Mail (2.936)
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 10 Aug 2010 06:44:13 -0000

> Given the stated goal, would it make sense to define the count field  
> as the additional-rloc-count.  That would serve to emphasis that  
> there is always at least 1 entry, and that the count tells you how  
> many additional values there are.
>
> Not a big deal to me, but I wondered if that might improve  
> readability.

The authors have discussed this and think this would be a decent  
compromise. Damien, is this okay with you?

Dino

>
> Joel
>
> Dino Farinacci wrote:
> ...
>>> and "'Rec' above and occurs the number of times equal to Record  
>>> Count."
>>>
>>> meaning that for IRC, the counter is 0 = 1, 1 = 2, ... and for  
>>> RLOC count 0 = 0, 1 = 1, ...
>>> it seems to be a "bug prone" specification. Indeed, in the packet,  
>>> there is two
>>> counters but both have a different computation. Do you think it  
>>> could be possible
>>> to say that the two counters follow the 0 = 0, 1 = 1, ... pattern  
>>> and that 0 is prohibited
>>> for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32  
>>> to 31, but the specs
>>> then seem more consistent. Do we really need to have 32 ITR-RLOCs?
>> We did this for 3 reasons:
>> (1) We wanted to not have a receiver deal with a invalid value of 0.
>> (2) We *do want* the value to reflect up to 32 locators to be  
>> consistent with the number of
>>    locator-status-bits.
>> (3) It forces the implementor to store at least one ITR-RLOC in the  
>> Map-Request. We did not
>>    want this to be optional.
>> We thought it was easy to take the packet's IRC value, add 1 to it  
>> to get an ITR-RLOC count for internal processing of the ITR-RLOC  
>> list.
>> Thanks,
>> Dino
>>


From damien.saucez@uclouvain.be  Mon Aug  9 23:46:18 2010
Return-Path: <damien.saucez@uclouvain.be>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 82FB13A6A33 for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 23:46:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.999
X-Spam-Level: 
X-Spam-Status: No, score=-4.999 tagged_above=-999 required=5 tests=[AWL=1.600,  BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w4-q45qBUhqJ for <lisp@core3.amsl.com>; Mon,  9 Aug 2010 23:46:17 -0700 (PDT)
Received: from smtp3.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by core3.amsl.com (Postfix) with ESMTP id 1B1EC3A6A2E for <lisp@ietf.org>; Mon,  9 Aug 2010 23:46:16 -0700 (PDT)
Received: from [130.104.228.23] (sleipnier.dhcp.info.ucl.ac.be [130.104.228.23]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: dsaucez@smtp3.sgsi.ucl.ac.be) by smtp3.sgsi.ucl.ac.be (Postfix) with ESMTPSA id 2D8501C602C; Tue, 10 Aug 2010 08:46:44 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.2 smtp3.sgsi.ucl.ac.be 2D8501C602C
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1281422804; bh=AUdG9Y9xhnnVuBVSH5U3Dfx2MgxnYmfSn2B90Ze4dJc=; h=Subject:Mime-Version:Content-Type:From:In-Reply-To:Date:Cc: Content-Transfer-Encoding:Message-Id:References:To; b=L/Z1UKtG5fFLjcXZKgUqDHhm0xqeIagispMIg6QM2azDYLfVMB9vqmFVU0wJ8RoJY cyCzYfoVFseYKHMubevnFkBTKvKP2gIx324nftKLtRL1hWh05crhSM4V0n+BVfSo3u ySt87hOen92XTiBFWW3zXw5Obux3dlH5ZrxqxUBc=
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <AB7A641B-3E6D-477F-B7FD-F52AA2047D9F@cisco.com>
Date: Tue, 10 Aug 2010 08:46:43 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <D723C327-19A6-4E3A-AB5B-3364B95E6842@uclouvain.be>
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com> <A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be> <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com> <4C60BA4F.8060204@joelhalpern.com> <AB7A641B-3E6D-477F-B7FD-F52AA2047D9F@cisco.com>
To: Dino Farinacci <dino@cisco.com>
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96-exp at smtp-3.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-Sgsi-Spamcheck: SASL authenticated, 
X-SGSI-MailScanner-ID: 2D8501C602C.00000
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: damien.saucez@uclouvain.be
X-SGSI-Spam-Status: No
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 10 Aug 2010 06:46:18 -0000

On 10 Aug 2010, at 08:44, Dino Farinacci wrote:

>> Given the stated goal, would it make sense to define the count field =
as the additional-rloc-count.  That would serve to emphasis that there =
is always at least 1 entry, and that the count tells you how many =
additional values there are.
>>=20
>> Not a big deal to me, but I wondered if that might improve =
readability.
>=20
> The authors have discussed this and think this would be a decent =
compromise. Damien, is this okay with you?
>=20

Yes, it make the text more readable.

Damien Saucez

> Dino
>=20
>>=20
>> Joel
>>=20
>> Dino Farinacci wrote:
>> ...
>>>> and "'Rec' above and occurs the number of times equal to Record =
Count."
>>>>=20
>>>> meaning that for IRC, the counter is 0 =3D 1, 1 =3D 2, ... and for =
RLOC count 0 =3D 0, 1 =3D 1, ...
>>>> it seems to be a "bug prone" specification. Indeed, in the packet, =
there is two
>>>> counters but both have a different computation. Do you think it =
could be possible
>>>> to say that the two counters follow the 0 =3D 0, 1 =3D 1, ... =
pattern and that 0 is prohibited
>>>> for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32 to =
31, but the specs
>>>> then seem more consistent. Do we really need to have 32 ITR-RLOCs?
>>> We did this for 3 reasons:
>>> (1) We wanted to not have a receiver deal with a invalid value of 0.
>>> (2) We *do want* the value to reflect up to 32 locators to be =
consistent with the number of
>>>   locator-status-bits.
>>> (3) It forces the implementor to store at least one ITR-RLOC in the =
Map-Request. We did not
>>>   want this to be optional.
>>> We thought it was easy to take the packet's IRC value, add 1 to it =
to get an ITR-RLOC count for internal processing of the ITR-RLOC list.
>>> Thanks,
>>> Dino
>>>=20
>=20


From dino@cisco.com  Tue Aug 10 00:04:40 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D9E3A3A68BB for <lisp@core3.amsl.com>; Tue, 10 Aug 2010 00:04:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.539
X-Spam-Level: 
X-Spam-Status: No, score=-10.539 tagged_above=-999 required=5 tests=[AWL=0.060, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 81M4MkIlI1WZ for <lisp@core3.amsl.com>; Tue, 10 Aug 2010 00:04:39 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id D22D23A6851 for <lisp@ietf.org>; Tue, 10 Aug 2010 00:04:39 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEADeXYEyrR7Ht/2dsb2JhbACgVnGlcJtphToEhCaFFA
X-IronPort-AV: E=Sophos;i="4.55,347,1278288000"; d="scan'208";a="571130112"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-6.cisco.com with ESMTP; 10 Aug 2010 07:05:14 +0000
Received: from [192.168.1.4] (sjc-vpn6-1807.cisco.com [10.21.127.15]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o7A75E2v005515; Tue, 10 Aug 2010 07:05:14 GMT
Message-Id: <EB97AF37-C741-44DB-8195-0DF173A4C41B@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <D723C327-19A6-4E3A-AB5B-3364B95E6842@uclouvain.be>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Tue, 10 Aug 2010 00:05:14 -0700
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com> <A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be> <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com> <4C60BA4F.8060204@joelhalpern.com> <AB7A641B-3E6D-477F-B7FD-F52AA2047D9F@cisco.com> <D723C327-19A6-4E3A-AB5B-3364B95E6842@uclouvain.be>
X-Mailer: Apple Mail (2.936)
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 10 Aug 2010 07:04:41 -0000

Okay, if there are no objections, I will use this language. Please  
comment.

    IRC:  This 5-bit field is the ITR-RLOC Count which encodes the
       additional number of (ITR-RLOC-AFI, ITR-RLOC Address) fields
       present in this message.  It is assumed that at least one (ITR-
       RLOC-AFI, ITR_RLOC Address) pair is always encoded.  Multiple  
ITR-
       RLOC Address fields are used so a Map-Replier can select which
       destination address to use for a Map-Reply.  The IRC value ranges
       from 0 to 31, and for a value of 1, there are 2 ITR-RLOC  
addresses
       encoded and so on up to 31 which encodes a total of 32 ITR-RLOC
       addresses.

Dino

On Aug 9, 2010, at 11:46 PM, Damien Saucez wrote:

>
> On 10 Aug 2010, at 08:44, Dino Farinacci wrote:
>
>>> Given the stated goal, would it make sense to define the count  
>>> field as the additional-rloc-count.  That would serve to emphasis  
>>> that there is always at least 1 entry, and that the count tells  
>>> you how many additional values there are.
>>>
>>> Not a big deal to me, but I wondered if that might improve  
>>> readability.
>>
>> The authors have discussed this and think this would be a decent  
>> compromise. Damien, is this okay with you?
>>
>
> Yes, it make the text more readable.
>
> Damien Saucez
>
>> Dino
>>
>>>
>>> Joel
>>>
>>> Dino Farinacci wrote:
>>> ...
>>>>> and "'Rec' above and occurs the number of times equal to Record  
>>>>> Count."
>>>>>
>>>>> meaning that for IRC, the counter is 0 = 1, 1 = 2, ... and for  
>>>>> RLOC count 0 = 0, 1 = 1, ...
>>>>> it seems to be a "bug prone" specification. Indeed, in the  
>>>>> packet, there is two
>>>>> counters but both have a different computation. Do you think it  
>>>>> could be possible
>>>>> to say that the two counters follow the 0 = 0, 1 = 1, ...  
>>>>> pattern and that 0 is prohibited
>>>>> for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32  
>>>>> to 31, but the specs
>>>>> then seem more consistent. Do we really need to have 32 ITR-RLOCs?
>>>> We did this for 3 reasons:
>>>> (1) We wanted to not have a receiver deal with a invalid value of  
>>>> 0.
>>>> (2) We *do want* the value to reflect up to 32 locators to be  
>>>> consistent with the number of
>>>>  locator-status-bits.
>>>> (3) It forces the implementor to store at least one ITR-RLOC in  
>>>> the Map-Request. We did not
>>>>  want this to be optional.
>>>> We thought it was easy to take the packet's IRC value, add 1 to  
>>>> it to get an ITR-RLOC count for internal processing of the ITR- 
>>>> RLOC list.
>>>> Thanks,
>>>> Dino
>>>>
>>
>


From damien.saucez@uclouvain.be  Tue Aug 10 00:09:15 2010
Return-Path: <damien.saucez@uclouvain.be>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id F3C773A6A2D for <lisp@core3.amsl.com>; Tue, 10 Aug 2010 00:09:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.799
X-Spam-Level: 
X-Spam-Status: No, score=-5.799 tagged_above=-999 required=5 tests=[AWL=0.800,  BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id g1eJaGe3VLNW for <lisp@core3.amsl.com>; Tue, 10 Aug 2010 00:09:13 -0700 (PDT)
Received: from smtp4.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by core3.amsl.com (Postfix) with ESMTP id 873B83A69CA for <lisp@ietf.org>; Tue, 10 Aug 2010 00:09:13 -0700 (PDT)
Received: from [130.104.228.23] (sleipnier.dhcp.info.ucl.ac.be [130.104.228.23]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: dsaucez@smtp4.sgsi.ucl.ac.be) by smtp4.sgsi.ucl.ac.be (Postfix) with ESMTPSA id E5A9EF2847; Tue, 10 Aug 2010 09:09:32 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.2 smtp4.sgsi.ucl.ac.be E5A9EF2847
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1281424173; bh=+oQ+fB5I+g8aVdn8QW19PhY/YzkHIbM3kNPJECNbz8g=; h=Subject:Mime-Version:Content-Type:From:In-Reply-To:Date:Cc: Content-Transfer-Encoding:Message-Id:References:To; b=dpNb82MIoyWQ/EcMWEqHgkQBpXYdnoln0uTx62WHKix8j2KGVSo6BsKNxOxQKEEkn MtReNdenC6EbQ9qAEezVav5QzhOOxrGACebVHiOFpy3duIn0GmKK+Lxdth0TGRGrsZ a21+KHoUNA/KTaOJvJ0PYeBcyvKm8mQiezkCuZWs=
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <EB97AF37-C741-44DB-8195-0DF173A4C41B@cisco.com>
Date: Tue, 10 Aug 2010 09:09:32 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <09702978-3B02-47F4-8B1C-FDC3FD744C80@uclouvain.be>
References: <67F27929-BF26-4772-AA96-1C5D1F6D8909@cisco.com> <A08A9905-8150-4A8D-A43A-3B19F1C22DBB@uclouvain.be> <7C6E4B53-F495-4909-A704-B01B3B0E4430@cisco.com> <4C60BA4F.8060204@joelhalpern.com> <AB7A641B-3E6D-477F-B7FD-F52AA2047D9F@cisco.com> <D723C327-19A6-4E3A-AB5B-3364B95E6842@uclouvain.be> <EB97AF37-C741-44DB-8195-0DF173A4C41B@cisco.com>
To: Dino Farinacci <dino@cisco.com>
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96-exp at smtp-4.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-Sgsi-Spamcheck: SASL authenticated, 
X-SGSI-MailScanner-ID: E5A9EF2847.00000
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: damien.saucez@uclouvain.be
X-SGSI-Spam-Status: No
Cc: lisp@ietf.org
Subject: Re: [lisp] Proposed changes to draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 10 Aug 2010 07:09:15 -0000

On 10 Aug 2010, at 09:05, Dino Farinacci wrote:

> Okay, if there are no objections, I will use this language. Please =
comment.
>=20
>   IRC:  This 5-bit field is the ITR-RLOC Count which encodes the
>      additional number of (ITR-RLOC-AFI, ITR-RLOC Address) fields
>      present in this message.  It is assumed that at least one (ITR-
>      RLOC-AFI, ITR_RLOC Address) pair is always encoded.  Multiple =
ITR-
>      RLOC Address fields are used so a Map-Replier can select which
>      destination address to use for a Map-Reply.  The IRC value ranges
>      from 0 to 31, and for a value of 1, there are 2 ITR-RLOC =
addresses
>      encoded and so on up to 31 which encodes a total of 32 ITR-RLOC
>      addresses.
>=20
> Dino
>=20

perfect for me


> On Aug 9, 2010, at 11:46 PM, Damien Saucez wrote:
>=20
>>=20
>> On 10 Aug 2010, at 08:44, Dino Farinacci wrote:
>>=20
>>>> Given the stated goal, would it make sense to define the count =
field as the additional-rloc-count.  That would serve to emphasis that =
there is always at least 1 entry, and that the count tells you how many =
additional values there are.
>>>>=20
>>>> Not a big deal to me, but I wondered if that might improve =
readability.
>>>=20
>>> The authors have discussed this and think this would be a decent =
compromise. Damien, is this okay with you?
>>>=20
>>=20
>> Yes, it make the text more readable.
s/make/makes

Damien Saucez

>>=20
>> Damien Saucez
>>=20
>>> Dino
>>>=20
>>>>=20
>>>> Joel
>>>>=20
>>>> Dino Farinacci wrote:
>>>> ...
>>>>>> and "'Rec' above and occurs the number of times equal to Record =
Count."
>>>>>>=20
>>>>>> meaning that for IRC, the counter is 0 =3D 1, 1 =3D 2, ... and =
for RLOC count 0 =3D 0, 1 =3D 1, ...
>>>>>> it seems to be a "bug prone" specification. Indeed, in the =
packet, there is two
>>>>>> counters but both have a different computation. Do you think it =
could be possible
>>>>>> to say that the two counters follow the 0 =3D 0, 1 =3D 1, ... =
pattern and that 0 is prohibited
>>>>>> for IRC. Ok, it reduces the number of ITR-RLOCs locators from 32 =
to 31, but the specs
>>>>>> then seem more consistent. Do we really need to have 32 =
ITR-RLOCs?
>>>>> We did this for 3 reasons:
>>>>> (1) We wanted to not have a receiver deal with a invalid value of =
0.
>>>>> (2) We *do want* the value to reflect up to 32 locators to be =
consistent with the number of
>>>>> locator-status-bits.
>>>>> (3) It forces the implementor to store at least one ITR-RLOC in =
the Map-Request. We did not
>>>>> want this to be optional.
>>>>> We thought it was easy to take the packet's IRC value, add 1 to it =
to get an ITR-RLOC count for internal processing of the ITR-RLOC list.
>>>>> Thanks,
>>>>> Dino
>>>>>=20
>>>=20
>>=20
>=20


From dino@cisco.com  Wed Aug 11 10:21:29 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 0A7E33A6A77 for <lisp@core3.amsl.com>; Wed, 11 Aug 2010 10:21:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0
X-Spam-Level: 
X-Spam-Status: No, score=x tagged_above=-999 required=5 tests=[]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FLjYMdQzmXZL for <lisp@core3.amsl.com>; Wed, 11 Aug 2010 10:21:28 -0700 (PDT)
Received: from sj-iport-1.cisco.com (sj-iport-1.cisco.com [171.71.176.70]) by core3.amsl.com (Postfix) with ESMTP id C3CEA3A69D0 for <lisp@ietf.org>; Wed, 11 Aug 2010 10:21:25 -0700 (PDT)
Authentication-Results: sj-iport-1.cisco.com; dkim=neutral (message not signed) header.i=none
X-Files: draft-ietf-lisp-08.txt, rfcdiff-ietf-lisp-08-to-08.html, rfcdiff-ietf-lisp-07-to-08.html : 178236, 193346, 234278
X-IronPort-AV: E=Sophos;i="4.55,354,1278288000";  d="txt'?html'217?scan'217,208,217";a="351234525"
Received: from sj-core-4.cisco.com ([171.68.223.138]) by sj-iport-1.cisco.com with ESMTP; 11 Aug 2010 17:22:01 +0000
Received: from [192.168.5.145] ([10.21.78.4]) by sj-core-4.cisco.com (8.13.8/8.14.3) with ESMTP id o7BHLv4p029416 for <lisp@ietf.org>; Wed, 11 Aug 2010 17:21:57 GMT
Message-Id: <72FCC8DD-3560-49A9-96E5-ABE81844FFF7@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: lisp@ietf.org
Content-Type: multipart/mixed; boundary=Apple-Mail-54-444922375
Mime-Version: 1.0 (Apple Message framework v936)
Date: Wed, 11 Aug 2010 10:21:56 -0700
X-Mailer: Apple Mail (2.936)
Subject: [lisp] Updates for draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Wed, 11 Aug 2010 17:21:29 -0000

--Apple-Mail-54-444922375
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed;
	delsp=yes
Content-Transfer-Encoding: 7bit

With roughly 48 hours left in the draft-ietf-lisp-08.txt review  
period, we have received numerous comments on the spec. Thanks to the  
commenters for your responses.

Here are the new changes added as a result of the comments during this  
comment period:

    o  Numerous wordsmithing changes from Dave Meyer.  He fine toothed
       combed the spec.

    o  Removed Section 14 "Prototype Plans and Status".  We felt this
       type of section is no longer appropriate for a protocol
       specification.

    o  Add clarification text for the IRC description per Damien's
       commentary.

    o  Remove text on copying nonce from SMR to SMR-invoked Map- Request
       per Vina's comment about a possible DoS vector.

    o  Clarify (S/2 + H) in the stateless MTU section.

You can find a diff file (rfcdiff-ietf-lisp-08-to-08.html) comparing  
the ID text submitted at the beginning of the review period with the  
one attached in this email.

You can also find a diff file (rfcdiff-ietf-lisp-07-to-08.html)  
comparing -07 with the the -08 proposed changes attached in this email.

Thanks,
Dino/Dave/Darrel/Vince


--Apple-Mail-54-444922375
Content-Disposition: attachment;
	filename=draft-ietf-lisp-08.txt
Content-Type: text/plain;
	x-unix-mode=0644;
	name="draft-ietf-lisp-08.txt"
Content-Transfer-Encoding: quoted-printable




Network Working Group                                       D. Farinacci
Internet-Draft                                                 V. Fuller
Intended status: Experimental                                   D. Meyer
Expires: February 12, 2011                                      D. Lewis
                                                           cisco Systems
                                                         August 11, 2010


                 Locator/ID Separation Protocol (LISP)
                           draft-ietf-lisp-08

Abstract

   This draft describes a network-based protocol that enables separation
   of IP addresses into two new numbering spaces: Endpoint Identifiers
   (EIDs) and Routing Locators (RLOCs).  No changes are required to
   either host protocol stacks or to the "core" of the Internet
   infrastructure.  LISP can be incrementally deployed, without a "flag
   day", and offers traffic engineering, multi-homing, and mobility
   benefits even to early adopters, when there are relatively few LISP-
   capable sites.

   Design and development of LISP was largely motivated by the problem
   statement produced by the October, 2006 IAB Routing and Addressing
   Workshop.

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on February 12, 2011.



Farinacci, et al.       Expires February 12, 2011               [Page 1]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Copyright Notice

   Copyright (c) 2010 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
   the Trust Legal Provisions and are provided without warranty as
   described in the BSD License.


Table of Contents

   1.  Requirements Notation  . . . . . . . . . . . . . . . . . . . .  4
   2.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
   3.  Definition of Terms  . . . . . . . . . . . . . . . . . . . . .  7
   4.  Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 12
     4.1.  Packet Flow Sequence . . . . . . . . . . . . . . . . . . . 14
   5.  LISP Encapsulation Details . . . . . . . . . . . . . . . . . . 16
     5.1.  LISP IPv4-in-IPv4 Header Format  . . . . . . . . . . . . . 17
     5.2.  LISP IPv6-in-IPv6 Header Format  . . . . . . . . . . . . . 17
     5.3.  Tunnel Header Field Descriptions . . . . . . . . . . . . . 19
     5.4.  Dealing with Large Encapsulated Packets  . . . . . . . . . 22
       5.4.1.  A Stateless Solution to MTU Handling . . . . . . . . . 23
       5.4.2.  A Stateful Solution to MTU Handling  . . . . . . . . . 24
     5.5.  Using Virtualization and Segmentation with LISP  . . . . . 24
   6.  EID-to-RLOC Mapping  . . . . . . . . . . . . . . . . . . . . . 26
     6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats  . . . . . 26
       6.1.1.  LISP Packet Type Allocations . . . . . . . . . . . . . 28
       6.1.2.  Map-Request Message Format . . . . . . . . . . . . . . 28
       6.1.3.  EID-to-RLOC UDP Map-Request Message  . . . . . . . . . 30
       6.1.4.  Map-Reply Message Format . . . . . . . . . . . . . . . 32
       6.1.5.  EID-to-RLOC UDP Map-Reply Message  . . . . . . . . . . 35
       6.1.6.  Map-Register Message Format  . . . . . . . . . . . . . 38
       6.1.7.  Encapsulated Control Message Format  . . . . . . . . . 39
     6.2.  Routing Locator Selection  . . . . . . . . . . . . . . . . 41
     6.3.  Routing Locator Reachability . . . . . . . . . . . . . . . 42
       6.3.1.  Echo Nonce Algorithm . . . . . . . . . . . . . . . . . 45
       6.3.2.  RLOC Probing Algorithm . . . . . . . . . . . . . . . . 46
     6.4.  EID Reachability within a LISP Site  . . . . . . . . . . . 47
     6.5.  Routing Locator Hashing  . . . . . . . . . . . . . . . . . 47
     6.6.  Changing the Contents of EID-to-RLOC Mappings  . . . . . . 48
       6.6.1.  Clock Sweep  . . . . . . . . . . . . . . . . . . . . . 49



Farinacci, et al.       Expires February 12, 2011               [Page 2]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       6.6.2.  Solicit-Map-Request (SMR)  . . . . . . . . . . . . . . 49
       6.6.3.  Database Map Versioning  . . . . . . . . . . . . . . . 51
   7.  Router Performance Considerations  . . . . . . . . . . . . . . 52
   8.  Deployment Scenarios . . . . . . . . . . . . . . . . . . . . . 53
     8.1.  First-hop/Last-hop Tunnel Routers  . . . . . . . . . . . . 54
     8.2.  Border/Edge Tunnel Routers . . . . . . . . . . . . . . . . 54
     8.3.  ISP Provider-Edge (PE) Tunnel Routers  . . . . . . . . . . 55
     8.4.  LISP Functionality with Conventional NATs  . . . . . . . . 55
   9.  Traceroute Considerations  . . . . . . . . . . . . . . . . . . 56
     9.1.  IPv6 Traceroute  . . . . . . . . . . . . . . . . . . . . . 57
     9.2.  IPv4 Traceroute  . . . . . . . . . . . . . . . . . . . . . 57
     9.3.  Traceroute using Mixed Locators  . . . . . . . . . . . . . 57
   10. Mobility Considerations  . . . . . . . . . . . . . . . . . . . 59
     10.1. Site Mobility  . . . . . . . . . . . . . . . . . . . . . . 59
     10.2. Slow Endpoint Mobility . . . . . . . . . . . . . . . . . . 59
     10.3. Fast Endpoint Mobility . . . . . . . . . . . . . . . . . . 59
     10.4. Fast Network Mobility  . . . . . . . . . . . . . . . . . . 61
     10.5. LISP Mobile Node Mobility  . . . . . . . . . . . . . . . . 61
   11. Multicast Considerations . . . . . . . . . . . . . . . . . . . 63
   12. Security Considerations  . . . . . . . . . . . . . . . . . . . 64
   13. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 65
   14. References . . . . . . . . . . . . . . . . . . . . . . . . . . 66
     14.1. Normative References . . . . . . . . . . . . . . . . . . . 66
     14.2. Informative References . . . . . . . . . . . . . . . . . . 67
   Appendix A.  Acknowledgments . . . . . . . . . . . . . . . . . . . 70
   Appendix B.  Document Change Log . . . . . . . . . . . . . . . . . 71
     B.1.  Changes to draft-ietf-lisp-08.txt  . . . . . . . . . . . . 71
     B.2.  Changes to draft-ietf-lisp-07.txt  . . . . . . . . . . . . 72
     B.3.  Changes to draft-ietf-lisp-06.txt  . . . . . . . . . . . . 74
     B.4.  Changes to draft-ietf-lisp-05.txt  . . . . . . . . . . . . 75
     B.5.  Changes to draft-ietf-lisp-04.txt  . . . . . . . . . . . . 76
     B.6.  Changes to draft-ietf-lisp-03.txt  . . . . . . . . . . . . 77
     B.7.  Changes to draft-ietf-lisp-02.txt  . . . . . . . . . . . . 78
     B.8.  Changes to draft-ietf-lisp-01.txt  . . . . . . . . . . . . 78
     B.9.  Changes to draft-ietf-lisp-00.txt  . . . . . . . . . . . . 78
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 79















Farinacci, et al.       Expires February 12, 2011               [Page 3]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


1.  Requirements Notation

   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 [RFC2119].














































Farinacci, et al.       Expires February 12, 2011               [Page 4]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


2.  Introduction

   This document describes the Locator/Identifier Separation Protocol
   (LISP), which provides a set of functions for routers to exchange
   information used to map from non-routeable Endpoint Identifiers
   (EIDs) to routeable Routing Locators (RLOCs).  It also defines a
   mechanism for these LISP routers to encapsulate IP packets addressed
   with EIDs for transmission across an Internet that uses RLOCs for
   routing and forwarding.

   Creation of LISP was initially motivated by discussions during the
   IAB-sponsored Routing and Addressing Workshop held in Amsterdam in
   October, 2006 (see [RFC4984]).  A key conclusion of the workshop was
   that the Internet routing and addressing system was not scaling well
   in the face of the explosive growth of new sites; one reason for this
   poor scaling is the increasing number of multi-homed and other sites
   that cannot be addressed as part of topologically- or provider-based
   aggregated prefixes.  Additional work that more completely described
   the problem statement may be found in [RADIR].

   A basic observation, made many years ago in early networking research
   such as that documented in [CHIAPPA] and [RFC4984], is that using a
   single address field for both identifying a device and for
   determining where it is topologically located in the network requires
   optimization along two conflicting axes: for routing to be efficient,
   the address must be assigned topologically; for collections of
   devices to be easily and effectively managed, without the need for
   renumbering in response to topological change (such as that caused by
   adding or removing attachment points to the network or by mobility
   events), the address must explicitly not be tied to the topology.

   The approach that LISP takes to solving the routing scalability
   problem is to replace IP addresses with two new types of numbers:
   Routing Locators (RLOCs), which are topologically assigned to network
   attachment points (and are therefore amenable to aggregation) and
   used for routing and forwarding of packets through the network; and
   Endpoint Identifiers (EIDs), which are assigned independently from
   the network topology, are used for numbering devices, and are
   aggregated along administrative boundaries.  LISP then defines
   functions for mapping between the two numbering spaces and for
   encapsulating traffic originated by devices using non-routeable EIDs
   for transport across a network infrastructure that routes and
   forwards using RLOCs.  Both RLOCs and EIDs are syntactically-
   identical to IP addresses; it is the semantics of how they are used
   that differs.

   This document describes the protocol that implements these functions.
   The database which stores the mappings between EIDs and RLOCs is



Farinacci, et al.       Expires February 12, 2011               [Page 5]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   explicitly a separate "module" to facilitate experimentation with a
   variety of approaches.  One database design that is being developed
   and prototyped as part of the LISP working group work is [ALT].
   Others that have been described but not implemented include [CONS],
   [EMACS], [RPMD], [NERD].  Finally, [LISP-MS], documents a general-
   purpose service interface for accessing a mapping database; this
   interface is intended to make the mapping database modular so that
   different approaches can be tried without the need to modify
   installed xTRs.










































Farinacci, et al.       Expires February 12, 2011               [Page 6]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


3.  Definition of Terms

   Provider Independent (PI) Addresses:   PI addresses are an address
      block assigned from a pool where blocks are not associated with
      any particular location in the network (e.g. from a particular
      service provider), and is therefore not topologically aggregatable
      in the routing system.

   Provider Assigned (PA) Addresses:   PA addresses are an a address
      block assigned to a site by each service provider to which a site
      connects.  Typically, each block is sub-block of a service
      provider Classless Inter-Domain Routing (CIDR) [RFC4632] block and
      is aggregated into the larger block before being advertised into
      the global Internet.  Traditionally, IP multihoming has been
      implemented by each multi-homed site acquiring its own, globally-
      visible prefix.  LISP uses only topologically-assigned and
      aggregatable address blocks for RLOCs, eliminating this
      demonstrably non-scalable practice.

   Routing Locator (RLOC):   A RLOC is an IPv4 or IPv6 address of an
      egress tunnel router (ETR).  A RLOC is the output of a EID-to-RLOC
      mapping lookup.  An EID maps to one or more RLOCs.  Typically,
      RLOCs are numbered from topologically-aggregatable blocks that are
      assigned to a site at each point to which it attaches to the
      global Internet; where the topology is defined by the connectivity
      of provider networks, RLOCs can be thought of as PA addresses.
      Multiple RLOCs can be assigned to the same ETR device or to
      multiple ETR devices at a site.

   Endpoint ID (EID):   An EID is a 32-bit (for IPv4) or 128-bit (for
      IPv6) value used in the source and destination address fields of
      the first (most inner) LISP header of a packet.  The host obtains
      a destination EID the same way it obtains an destination address
      today, for example through a Domain Name System (DNS) [RFC1034]
      lookup or Session Invitation Protocol (SIP) [RFC3261] exchange.
      The source EID is obtained via existing mechanisms used to set a
      host's "local" IP address.  An EID is allocated to a host from an
      EID-prefix block associated with the site where the host is
      located.  An EID can be used by a host to refer to other hosts.
      EIDs MUST NOT be used as LISP RLOCs.  Note that EID blocks may be
      assigned in a hierarchical manner, independent of the network
      topology, to facilitate scaling of the mapping database.  In
      addition, an EID block assigned to a site may have site-local
      structure (subnetting) for routing within the site; this structure
      is not visible to the global routing system.  When used in
      discussions with other Locator/ID separation proposals, a LISP EID
      will be called a "LEID".  Throughout this document, any references
      to "EID" refers to an LEID.



Farinacci, et al.       Expires February 12, 2011               [Page 7]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   EID-prefix:   An EID-prefix is a power-of-two block of EIDs which are
      allocated to a site by an address allocation authority.  EID-
      prefixes are associated with a set of RLOC addresses which make up
      a "database mapping".  EID-prefix allocations can be broken up
      into smaller blocks when an RLOC set is to be associated with the
      smaller EID-prefix.  A globally routed address block (whether PI
      or PA) is not an EID-prefix.  However, a globally routed address
      block may be removed from global routing and reused as an EID-
      prefix.  A site that receives an explicitly allocated EID-prefix
      may not use that EID-prefix as a globally routed prefix assigned
      to RLOCs.

   End-system:   An end-system is an IPv4 or IPv6 device that originates
      packets with a single IPv4 or IPv6 header.  The end-system
      supplies an EID value for the destination address field of the IP
      header when communicating globally (i.e. outside of its routing
      domain).  An end-system can be a host computer, a switch or router
      device, or any network appliance.

   Ingress Tunnel Router (ITR):   An ITR is a router which accepts an IP
      packet with a single IP header (more precisely, an IP packet that
      does not contain a LISP header).  The router treats this "inner"
      IP destination address as an EID and performs an EID-to-RLOC
      mapping lookup.  The router then prepends an "outer" IP header
      with one of its globally-routable RLOCs in the source address
      field and the result of the mapping lookup in the destination
      address field.  Note that this destination RLOC may be an
      intermediate, proxy device that has better knowledge of the EID-
      to-RLOC mapping closer to the destination EID.  In general, an ITR
      receives IP packets from site end-systems on one side and sends
      LISP-encapsulated IP packets toward the Internet on the other
      side.

      Specifically, when a service provider prepends a LISP header for
      Traffic Engineering purposes, the router that does this is also
      regarded as an ITR.  The outer RLOC the ISP ITR uses can be based
      on the outer destination address (the originating ITR's supplied
      RLOC) or the inner destination address (the originating hosts
      supplied EID).

   TE-ITR:   A TE-ITR is an ITR that is deployed in a service provider
      network that prepends an additional LISP header for Traffic
      Engineering purposes.

   Egress Tunnel Router (ETR):   An ETR is a router that accepts an IP
      packet where the destination address in the "outer" IP header is
      one of its own RLOCs.  The router strips the "outer" header and
      forwards the packet based on the next IP header found.  In



Farinacci, et al.       Expires February 12, 2011               [Page 8]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      general, an ETR receives LISP-encapsulated IP packets from the
      Internet on one side and sends decapsulated IP packets to site
      end-systems on the other side.  ETR functionality does not have to
      be limited to a router device.  A server host can be the endpoint
      of a LISP tunnel as well.

   TE-ETR:   A TE-ETR is an ETR that is deployed in a service provider
      network that strips an outer LISP header for Traffic Engineering
      purposes.

   xTR:   A xTR is a reference to an ITR or ETR when direction of data
      flow is not part of the context description. xTR refers to the
      router that is the tunnel endpoint.  Used synonymously with the
      term "Tunnel Router".  For example, "An xTR can be located at the
      Customer Edge (CE) router", meaning both ITR and ETR functionality
      is at the CE router.

   EID-to-RLOC Cache:   The EID-to-RLOC cache is a short-lived, on-
      demand table in an ITR that stores, tracks, and is responsible for
      timing-out and otherwise validating EID-to-RLOC mappings.  This
      cache is distinct from the full "database" of EID-to-RLOC
      mappings, it is dynamic, local to the ITR(s), and relatively small
      while the database is distributed, relatively static, and much
      more global in scope.

   EID-to-RLOC Database:   The EID-to-RLOC database is a global
      distributed database that contains all known EID-prefix to RLOC
      mappings.  Each potential ETR typically contains a small piece of
      the database: the EID-to-RLOC mappings for the EID prefixes
      "behind" the router.  These map to one of the router's own,
      globally-visible, IP addresses.  The same database mapping entries
      MUST be configured on all ETRs for a given site.  That is, the
      EID-prefixes for the site and locator-set for each EID-prefix MUST
      be the same on all ETRs so they consistently send Map-Reply
      messages with the same database mapping contents.

   Recursive Tunneling:   Recursive tunneling occurs when a packet has
      more than one LISP IP header.  Additional layers of tunneling may
      be employed to implement traffic engineering or other re-routing
      as needed.  When this is done, an additional "outer" LISP header
      is added and the original RLOCs are preserved in the "inner"
      header.  Any references to tunnels in this specification refers to
      dynamic encapsulating tunnels and never are they statically
      configured.







Farinacci, et al.       Expires February 12, 2011               [Page 9]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Reencapsulating Tunnels:   Reencapsulating tunneling occurs when a
      packet has no more than one LISP IP header (two IP headers total)
      and when it needs to be diverted to new RLOC, an ETR can
      decapsulate the packet (remove the LISP header) and prepends a new
      tunnel header, with new RLOC, on to the packet.  Doing this allows
      a packet to be re-routed by the re-encapsulating router without
      adding the overhead of additional tunnel headers.  Any references
      to tunnels in this specification refers to dynamic encapsulating
      tunnels and never are they statically configured.

   LISP Header:   a term used in this document to refer to the outer
      IPv4 or IPv6 header, a UDP header, and a LISP-specific 8-byte
      header that follows the UDP header, an ITR prepends or an ETR
      strips.

   Address Family Identifier (AFI):   a term used to describe an address
      encoding in a packet.  An address family currently pertains to an
      IPv4 or IPv6 address.  See [AFI] and [RFC1700] for details.  An
      AFI value of 0 used in this specification indicates an unspecified
      encoded address where the length of the address is 0 bytes
      following the 16-bit AFI value of 0.

   Negative Mapping Entry:   A negative mapping entry, also known as a
      negative cache entry, is an EID-to-RLOC entry where an EID-prefix
      is advertised or stored with no RLOCs.  That is, the locator-set
      for the EID-to-RLOC entry is empty or has an encoded locator count
      of 0.  This type of entry could be used to describe a prefix from
      a non-LISP site, which is explicitly not in the mapping database.
      There are a set of well defined actions that are encoded in a
      Negative Map-Reply.

   Data Probe:   A data-probe is a LISP-encapsulated data packet where
      the inner header destination address equals the outer header
      destination address used to trigger a Map-Reply by a decapsulating
      ETR.  In addition, the original packet is decapsulated and
      delivered to the destination host.  A Data Probe is used in some
      of the mapping database designs to "probe" or request a Map-Reply
      from an ETR; in other cases, Map-Requests are used.  See each
      mapping database design for details.

   Proxy ITR (PITR):   A PITR is also known as a PTR is defined and
      described in [INTERWORK], a PITR acts like an ITR but does so on
      behalf of non-LISP sites which send packets to destinations at
      LISP sites.







Farinacci, et al.       Expires February 12, 2011              [Page 10]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Proxy ETR (PETR):   A PETR is defined and described in [INTERWORK], a
      PETR acts like an ETR but does so on behalf of LISP sites which
      send packets to destinations at non-LISP sites.

   Route-returnability:  is an assumption that the underlying routing
      system will deliver packets to the destination.  When combined
      with a nonce that is provided by a sender and returned by a
      receiver limits off-path data insertion.

   LISP site:  is a set of routers in an edge network that are under a
      single technical administration.  LISP routers which reside in the
      edge network are the demarcation points to separate the edge
      network from the core network.

   Client-side:  a term used in this document to indicate a connection
      initiation attempt by an EID.  The ITR(s) at the LISP site are the
      first to get involved in obtaining database map cache entries by
      sending Map-Request messages.

   Server-side:  a term used in this document to indicate a connection
      initiation attempt is being accepted for a destination EID.  The
      ETR(s) at the destination LISP site are the first to send Map-
      Replies to the source site initiating the connection.  The ETR(s)
      at this destination site can obtain mappings by gleaning
      information from Map-Requests, Data-Probes, or encapsulated
      packets.

























Farinacci, et al.       Expires February 12, 2011              [Page 11]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


4.  Basic Overview

   One key concept of LISP is that end-systems (hosts) operate the same
   way they do today.  The IP addresses that hosts use for tracking
   sockets, connections, and for sending and receiving packets do not
   change.  In LISP terminology, these IP addresses are called Endpoint
   Identifiers (EIDs).

   Routers continue to forward packets based on IP destination
   addresses.  When a packet is LISP encapsulated, these addresses are
   referred to as Routing Locators (RLOCs).  Most routers along a path
   between two hosts will not change; they continue to perform routing/
   forwarding lookups on the destination addresses.  For routers between
   the source host and the ITR as well as routers from the ETR to the
   destination host, the destination address is an EID.  For the routers
   between the ITR and the ETR, the destination address is an RLOC.

   Another key LISP concept is the "Tunnel Router".  A tunnel router
   prepends LISP headers on host-originated packets and strip them prior
   to final delivery to their destination.  The IP addresses in this
   "outer header" are RLOCs.  During end-to-end packet exchange between
   two Internet hosts, an ITR prepends a new LISP header to each packet
   and an egress tunnel router strips the new header.  The ITR performs
   EID-to-RLOC lookups to determine the routing path to the ETR, which
   has the RLOC as one of its IP addresses.

   Some basic rules governing LISP are:

   o  End-systems (hosts) only send to addresses which are EIDs.  They
      don't know addresses are EIDs versus RLOCs but assume packets get
      to LISP routers, which in turn, deliver packets to the destination
      the end-system has specified.

   o  EIDs are always IP addresses assigned to hosts.

   o  LISP routers mostly deal with Routing Locator addresses.  See
      details later in Section 4.1 to clarify what is meant by "mostly".

   o  RLOCs are always IP addresses assigned to routers; preferably,
      topologically-oriented addresses from provider CIDR blocks.

   o  When a router originates packets it may use as a source address
      either an EID or RLOC.  When acting as a host (e.g. when
      terminating a transport session such as SSH, TELNET, or SNMP), it
      may use an EID that is explicitly assigned for that purpose.  An
      EID that identifies the router as a host MUST NOT be used as an
      RLOC; an EID is only routable within the scope of a site.  A
      typical BGP configuration might demonstrate this "hybrid" EID/RLOC



Farinacci, et al.       Expires February 12, 2011              [Page 12]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      usage where a router could use its "host-like" EID to terminate
      iBGP sessions to other routers in a site while at the same time
      using RLOCs to terminate eBGP sessions to routers outside the
      site.

   o  EIDs are not expected to be usable for global end-to-end
      communication in the absence of an EID-to-RLOC mapping operation.
      They are expected to be used locally for intra-site communication.

   o  EID prefixes are likely to be hierarchically assigned in a manner
      which is optimized for administrative convenience and to
      facilitate scaling of the EID-to-RLOC mapping database.  The
      hierarchy is based on a address allocation hierarchy which is
      independent of the network topology.

   o  EIDs may also be structured (subnetted) in a manner suitable for
      local routing within an autonomous system.

   An additional LISP header may be prepended to packets by a TE-ITR
   when re-routing of the path for a packet is desired.  An obvious
   instance of this would be an ISP router that needs to perform traffic
   engineering for packets flowing through its network.  In such a
   situation, termed Recursive Tunneling, an ISP transit acts as an
   additional ingress tunnel router and the RLOC it uses for the new
   prepended header would be either a TE-ETR within the ISP (along
   intra-ISP traffic engineered path) or a TE-ETR within another ISP (an
   inter-ISP traffic engineered path, where an agreement to build such a
   path exists).

   In order to avoid excessive packet overhead as well as possible
   encapsulation loops, this document mandates that a maximum of two
   LISP headers can be prepended to a packet.  It is believed two
   headers is sufficient, where the first prepended header is used at a
   site for Location/Identity separation and second prepended header is
   used inside a service provider for Traffic Engineering purposes.

   Tunnel Routers can be placed fairly flexibly in a multi-AS topology.
   For example, the ITR for a particular end-to-end packet exchange
   might be the first-hop or default router within a site for the source
   host.  Similarly, the egress tunnel router might be the last-hop
   router directly-connected to the destination host.  Another example,
   perhaps for a VPN service out-sourced to an ISP by a site, the ITR
   could be the site's border router at the service provider attachment
   point.  Mixing and matching of site-operated, ISP-operated, and other
   tunnel routers is allowed for maximum flexibility.  See Section 8 for
   more details.





Farinacci, et al.       Expires February 12, 2011              [Page 13]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


4.1.  Packet Flow Sequence

   This section provides an example of the unicast packet flow with the
   following conditions:

   o  Source host "host1.abc.com" is sending a packet to
      "host2.xyz.com", exactly what host1 would do if the site was not
      using LISP.

   o  Each site is multi-homed, so each tunnel router has an address
      (RLOC) assigned from the service provider address block for each
      provider to which that particular tunnel router is attached.

   o  The ITR(s) and ETR(s) are directly connected to the source and
      destination, respectively, but the source and destination can be
      located anywhere in LISP site.

   o  Map-Requests can be sent on the underlying routing system topology
      or over an alternative topology [ALT].

   o  Map-Replies are sent on the underlying routing system topology.

   Client host1.abc.com wants to communicate with server host2.xyz.com:

   1.  host1.abc.com wants to open a TCP connection to host2.xyz.com.
       It does a DNS lookup on host2.xyz.com.  An A/AAAA record is
       returned.  This address is the destination EID.  The locally-
       assigned address of host1.abc.com is used as the source EID.  An
       IPv4 or IPv6 packet is built and forwarded through the LISP site
       as a normal IP packet until it reaches a LISP ITR.

   2.  The LISP ITR must be able to map the EID destination to an RLOC
       of one of the ETRs at the destination site.  The specific method
       used to do this is not described in this example.  See [ALT] or
       [CONS] for possible solutions.

   3.  The ITR will send a LISP Map-Request.  Map-Requests SHOULD be
       rate-limited.

   4.  When an alternate mapping system is not in use, the Map-Request
       packet is routed through the underlying routing system.
       Otherwise, the Map-Request packet is routed on an alternate
       logical topology.  In either case, when the Map-Request arrives
       at one of the ETRs at the destination site, it will process the
       packet as a control message.

   5.  The ETR looks at the destination EID of the Map-Request and
       matches it against the prefixes in the ETR's configured EID-to-



Farinacci, et al.       Expires February 12, 2011              [Page 14]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       RLOC mapping database.  This is the list of EID-prefixes the ETR
       is supporting for the site it resides in.  If there is no match,
       the Map-Request is dropped.  Otherwise, a LISP Map-Reply is
       returned to the ITR.

   6.  The ITR receives the Map-Reply message, parses the message (to
       check for format validity) and stores the mapping information
       from the packet.  This information is stored in the ITR's EID-to-
       RLOC mapping cache.  Note that the map cache is an on-demand
       cache.  An ITR will manage its map cache in such a way that
       optimizes for its resource constraints.

   7.  Subsequent packets from host1.abc.com to host2.xyz.com will have
       a LISP header prepended by the ITR using the appropriate RLOC as
       the LISP header destination address learned from the ETR.  Note
       the packet may be sent to a different ETR than the one which
       returned the Map-Reply due to the source site's hashing policy or
       the destination site's locator-set policy.

   8.  The ETR receives these packets directly (since the destination
       address is one of its assigned IP addresses), strips the LISP
       header and forwards the packets to the attached destination host.

   In order to eliminate the need for a mapping lookup in the reverse
   direction, an ETR MAY create a cache entry that maps the source EID
   (inner header source IP address) to the source RLOC (outer header
   source IP address) in a received LISP packet.  Such a cache entry is
   termed a "gleaned" mapping and only contains a single RLOC for the
   EID in question.  More complete information about additional RLOCs
   SHOULD be verified by sending a LISP Map-Request for that EID.  Both
   ITR and the ETR may also influence the decision the other makes in
   selecting an RLOC.  See Section 6 for more details.



















Farinacci, et al.       Expires February 12, 2011              [Page 15]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.  LISP Encapsulation Details

   Since additional tunnel headers are prepended, the packet becomes
   larger and can exceed the MTU of any link traversed from the ITR to
   the ETR.  It is recommended in IPv4 that packets do not get
   fragmented as they are encapsulated by the ITR.  Instead, the packet
   is dropped and an ICMP Too Big message is returned to the source.

   This specification recommends that implementations support for one of
   the proposed fragmentation and reassembly schemes.  These two simple
   existing schemes are detailed in Section 5.4.








































Farinacci, et al.       Expires February 12, 2011              [Page 16]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.1.  LISP IPv4-in-IPv4 Header Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   OH  |  Time to Live | Protocol =3D 17 |         Header Checksum       =
|
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                    Source Routing Locator                     |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D 4341      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   IH  |  Time to Live |    Protocol   |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                           Source EID                          |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                         Destination EID                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+




5.2.  LISP IPv6-in-IPv6 Header Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



Farinacci, et al.       Expires February 12, 2011              [Page 17]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   |   |         Payload Length        | Next Header=3D17|   Hop Limit   =
|
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   O   +                                                               +
   u   |                                                               |
   t   +                     Source Routing Locator                    +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                  Destination Routing Locator                  +
   |   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D 4341      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   /   |         Payload Length        |  Next Header  |   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   I   +                                                               +
   n   |                                                               |
   n   +                          Source EID                           +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                        Destination EID                        +
   \   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+





Farinacci, et al.       Expires February 12, 2011              [Page 18]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.3.  Tunnel Header Field Descriptions

   Inner Header:  The inner header is the header on the datagram
      received from the originating host.  The source and destination IP
      addresses are EIDs.

   Outer Header:  The outer header is a new header prepended by an ITR.
      The address fields contain RLOCs obtained from the ingress
      router's EID-to-RLOC cache.  The IP protocol number is "UDP (17)"
      from [RFC0768].  The DF bit of the Flags field is set to 0 when
      the method in Section 5.4.1 is used and set to 1 when the method
      in Section 5.4.2 is used.

   UDP Header:  The UDP header contains a ITR selected source port when
      encapsulating a packet.  See Section 6.5 for details on the hash
      algorithm used to select a source port based on the 5-tuple of the
      inner header.  The destination port MUST be set to the well-known
      IANA assigned port value 4341.

   UDP Checksum:  The UDP checksum field SHOULD be transmitted as zero
      by an ITR for either IPv4 [RFC0768] or IPv6 encapsulation
      [UDP-TUNNELS].  When a packet with a zero UDP checksum is received
      by an ETR, the ETR MUST accept the packet for decapsulation.  When
      an ITR transmits a non-zero value for the UDP checksum, it MUST
      send a correctly computed value in this field.  When an ETR
      receives a packet with a non-zero UDP checksum, it MAY choose to
      verify the checksum value.  If it chooses to perform such
      verification, and the verification fails, the packet MUST be
      silently dropped.  If the ETR chooses not to perform the
      verification, or performs the verification successfully, the
      packet MUST be accepted for decapsulation.  The handling of UDP
      checksums for all tunneling protocols, including LISP, is under
      active discussion within the IETF.  When that discussion
      concludes, any necessary changes will be made to align LISP with
      the outcome of the broader discussion.

   UDP Length:  The UDP length field is for an IPv4 encapsulated packet,
      the inner header Total Length plus the UDP and LISP header lengths
      are used.  For an IPv6 encapsulated packet, the inner header
      Payload Length plus the size of the IPv6 header (40 bytes) plus
      the size of the UDP and LISP headers are used.  The UDP header
      length is 8 bytes.

   N: The N bit is the nonce-present bit.  When this bit is set to 1,
      the low-order 24-bits of the first 32-bits of the LISP header
      contains a Nonce.  See Section 6.3.1 for details.  Both N and V
      bits MUST NOT be set in the same packet.  If they are, a
      decapsulating ETR MUST treat the "Nonce/Map-Version" field as



Farinacci, et al.       Expires February 12, 2011              [Page 19]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      having a Nonce value present.

   L: The L bit is the Locator-Status-Bits field enabled bit.  When this
      bit is set to 1, the Locator-Status-Bits in the second 32-bits of
      the LISP header are in use.


     x 1 x x 0 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                      Locator Status Bits                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   E: The E bit is the echo-nonce-request bit.  When this bit is set to
      1, the N bit MUST be 1.  This bit SHOULD be ignored and has no
      meaning when the N bit is set to 0.  See Section 6.3.1 for
      details.

   V: The B bit is the Map-Version present bit.  When this bit is set to
      1, the N bit MUST be 0.  Refer to Section 6.6.3 for more details.
      This bit indicates that the first 4 bytes of the LISP header is
      encoded as:


     0 x 0 1 x x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|  Source Map-Version   |   Dest Map-Version    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID/Locator Status Bits               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   I: The I bit is the Instance ID bit.  See Section 5.5 for more
      details.  When this bit is set to 1, the Locator Status Bits field
      is reduced to 8-bits and the high-order 24-bits are used as an
      Instance ID.  If the L-bit is set to 0, then the low-order 8 bits
      are transmitted as zero and ignored on receipt.  The format of the
      last 4 bytes of the LISP header would look like:













Farinacci, et al.       Expires February 12, 2011              [Page 20]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


     x x x x 1 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID                   |     LSBs      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   flags:  The flags field is a 3-bit field is reserved for future flag
      use.  It is set to 0 on transmit and ignored on receipt.

   LISP Nonce:  The LISP nonce field is a 24-bit value that is randomly
      generated by an ITR when the N-bit is set to 1.  The nonce is also
      used when the E-bit is set to request the nonce value to be echoed
      by the other side when packets are returned.  When the E-bit is
      clear but the N-bit is set, a remote ITR is either echoing a
      previously requested echo-nonce or providing a random nonce.  See
      Section 6.3.1 for more details.

   LISP Locator Status Bits:  The locator status bits field in the LISP
      header is set by an ITR to indicate to an ETR the up/down status
      of the Locators in the source site.  Each RLOC in a Map-Reply is
      assigned an ordinal value from 0 to n-1 (when there are n RLOCs in
      a mapping entry).  The Locator Status Bits are numbered from 0 to
      n-1 from the least significant bit of field.  The field is 32-bits
      when the I-bit is set to 0 and is 8 bits when the I-bit is set to
      1.  When a Locator Status Bit is set to 1, the ITR is indicating
      to the ETR the RLOC associated with the bit ordinal has up status.
      See Section 6.3 for details on how an ITR can determine the status
      of other ITRs at the same site.  When a site has multiple EID-
      prefixes which result in multiple mappings (where each could have
      a different locator-set), the Locator Status Bits setting in an
      encapsulated packet MUST reflect the mapping for the EID-prefix
      that the inner-header source EID address matches.

   When doing ITR/PITR encapsulation:

   o  The outer header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the inner header Time to Live
      field.

   o  The outer header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the inner header
      Type of Service field (with one caveat, see below).

   When doing ETR/PETR decapsulation:






Farinacci, et al.       Expires February 12, 2011              [Page 21]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  The inner header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the outer header Time to Live
      field, when the Time to Live field of the outer header is less
      than the Time to Live of the inner header.  Failing to perform
      this check can cause the Time to Live of the inner header to
      increment across encapsulation/decapsulation cycle.  This check is
      also performed when doing initial encapsulation when a packet
      comes to an ITR or PITR destined for a LISP site.

   o  The inner header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the outer header
      Type of Service field (with one caveat, see below).

   Note if an ETR/PETR is also an ITR/PITR and choose to reencapsulate
   after decapsulating, the net effect of this is that the new outer
   header will carry the same Time to Live as the old outer header.

   Copying the TTL serves two purposes: first, it preserves the distance
   the host intended the packet to travel; second, and more importantly,
   it provides for suppression of looping packets in the event there is
   a loop of concatenated tunnels due to misconfiguration.  See
   Section 9.3 for TTL exception handling for traceroute packets.

   The ECN field occupies bits 6 and 7 of both the IPv4 Type of Service
   field and the IPv6 Traffic Class field [RFC3168].  The ECN field
   requires special treatment in order to avoid discarding indications
   of congestion [RFC3168].  ITR encapsulation MUST copy the 2-bit ECN
   field from the inner header to the outer header.  Re-encapsulation
   MUST copy the 2-bit ECN field from the stripped outer header to the
   new outer header.  If the ECN field contains a congestion indication
   codepoint (the value is '11', the Congestion Experienced (CE)
   codepoint), then ETR decapsulation MUST copy the 2-bit ECN field from
   the stripped outer header to the surviving inner header that is used
   to forward the packet beyond the ETR.  These requirements preserve
   Congestion Experienced (CE) indications when a packet that uses ECN
   traverses a LISP tunnel and becomes marked with a CE indication due
   to congestion between the tunnel endpoints.

5.4.  Dealing with Large Encapsulated Packets

   This section proposes two simple mechanisms to deal with packets that
   exceed the path MTU between the ITR and ETR.

   It is left to the implementor to decide if the stateless or stateful
   mechanism should be implemented.  Both or neither can be used since
   it is a local decision in the ITR regarding how to deal with MTU
   issues, and sites can interoperate with differing mechanisms.




Farinacci, et al.       Expires February 12, 2011              [Page 22]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Both stateless and stateful mechanisms also apply to Reencapsulating
   and Recursive Tunneling.  So any actions below referring to an ITR
   also apply to an TE-ITR.

5.4.1.  A Stateless Solution to MTU Handling

   An ITR stateless solution to handle MTU issues is described as
   follows:

   1.  Define an architectural constant S for the maximum size of a
       packet, in bytes, an ITR would like to receive from a source
       inside of its site.

   2.  Define L to be the maximum size, in bytes, a packet of size S
       would be after the ITR prepends the LISP header, UDP header, and
       outer network layer header of size H.

   3.  Calculate: S + H =3D L.

   When an ITR receives a packet from a site-facing interface and adds H
   bytes worth of encapsulation to yield a packet size greater than L
   bytes, it resolves the MTU issue by first splitting the original
   packet into 2 equal-sized fragments.  A LISP header is then prepended
   to each fragment.  The size of the encapsulated fragments is then
   (S/2 + H), which is less than the ITR's estimate of the path MTU
   between the ITR and its correspondent ETR.

   When an ETR receives encapsulated fragments, it treats them as two
   individually encapsulated packets.  It strips the LISP headers then
   forwards each fragment to the destination host of the destination
   site.  The two fragments are reassembled at the destination host into
   the single IP datagram that was originated by the source host.

   This behavior is performed by the ITR when the source host originates
   a packet with the DF field of the IP header is set to 0.  When the DF
   field of the IP header is set to 1, or the packet is an IPv6 packet
   originated by the source host, the ITR will drop the packet when the
   size is greater than L, and sends an ICMP Too Big message to the
   source with a value of S, where S is (L - H).

   When the outer header encapsulation uses an IPv4 header, an
   implementation SHOULD set the DF bit to 1 so ETR fragment reassembly
   can be avoided.  An implementation MAY set the DF bit in such headers
   to 0 if it has good reason to believe there are unresolvable path MTU
   issues between the sending ITR and the receiving ETR.

   This specification recommends that L be defined as 1500.




Farinacci, et al.       Expires February 12, 2011              [Page 23]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


5.4.2.  A Stateful Solution to MTU Handling

   An ITR stateful solution to handle MTU issues is described as follows
   and was first introduced in [OPENLISP]:

   1.  The ITR will keep state of the effective MTU for each locator per
       mapping cache entry.  The effective MTU is what the core network
       can deliver along the path between ITR and ETR.

   2.  When an IPv6 encapsulated packet or an IPv4 encapsulated packet
       with DF bit set to 1, exceeds what the core network can deliver,
       one of the intermediate routers on the path will send an ICMP Too
       Big message to the ITR.  The ITR will parse the ICMP message to
       determine which locator is affected by the effective MTU change
       and then record the new effective MTU value in the mapping cache
       entry.

   3.  When a packet is received by the ITR from a source inside of the
       site and the size of the packet is greater than the effective MTU
       stored with the mapping cache entry associated with the
       destination EID the packet is for, the ITR will send an ICMP Too
       Big message back to the source.  The packet size advertised by
       the ITR in the ICMP Too Big message is the effective MTU minus
       the LISP encapsulation length.

   Even though this mechanism is stateful, it has advantages over the
   stateless IP fragmentation mechanism, by not involving the
   destination host with reassembly of ITR fragmented packets.

5.5.  Using Virtualization and Segmentation with LISP

   When multiple organizations inside of a LISP site are using private
   addresses [RFC1918] as EID-prefixes, their address spaces MUST remain
   segregated due to possible address duplication.  An Instance ID in
   the address encoding can aid in making the entire AFI based address
   unique.  See [LCAF] for details for a possible address encoding.  The
   LCAF encoding is an area for further study.

   An Instance ID can be carried in a LISP encapsulated packet.  An ITR
   that prepends a LISP header, will copy a 24-bit value, used by the
   LISP router to uniquely identify the address space.  The value is
   copied to the Instance ID field of the LISP header and the I-bit is
   set to 1.

   When an ETR decapsulates a packet, the Instance ID from the LISP
   header is used as a table identifier to locate the forwarding table
   to use for the inner destination EID lookup.




Farinacci, et al.       Expires February 12, 2011              [Page 24]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   For example, a 802.1Q VLAN tag or VPN identifier could be used as a
   24-bit Instance ID.

















































Farinacci, et al.       Expires February 12, 2011              [Page 25]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.  EID-to-RLOC Mapping

6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats

   The following new UDP packet types are used to retrieve EID-to-RLOC
   mappings:


       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version|  IHL  |Type of Service|          Total Length         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Identification        |Flags|      Fragment Offset    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Time to Live | Protocol =3D 17 |         Header Checksum       =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Source Routing Locator                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version| Traffic Class |           Flow Label                  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Payload Length        | Next Header=3D17|   Hop Limit   =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                     Source Routing Locator                    +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +



Farinacci, et al.       Expires February 12, 2011              [Page 26]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       |                                                               |
       +                  Destination Routing Locator                  +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   The LISP UDP-based messages are the Map-Request and Map-Reply
   messages.  When a UDP Map-Request is sent, the UDP source port is
   chosen by the sender and the destination UDP port number is set to
   4342.  When a UDP Map-Reply is sent, the source UDP port number is
   set to 4342 and the destination UDP port number is copied from the
   source port of either the Map-Request or the invoking data packet.

   The UDP Length field will reflect the length of the UDP header and
   the LISP Message payload.

   The UDP Checksum is computed and set to non-zero for Map-Request,
   Map-Reply, Map-Register and ECM control messages.  It MUST be checked
   on receipt and if the checksum fails, the packet MUST be dropped.

   LISP-CONS [CONS] uses TCP to send LISP control messages.  The format
   of control messages includes the UDP header so the checksum and
   length fields can be used to protect and delimit message boundaries.

   This main LISP specification is the authoritative source for message
   format definitions for the Map-Request and Map-Reply messages.















Farinacci, et al.       Expires February 12, 2011              [Page 27]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.1.1.  LISP Packet Type Allocations

   This section will be the authoritative source for allocating LISP
   Type values.  Current allocations are:


       Reserved:                          0    b'0000'
       LISP Map-Request:                  1    b'0001'
       LISP Map-Reply:                    2    b'0010'
       LISP Map-Register:                 3    b'0011'
       LISP Encapsulated Control Message: 8    b'1000'


6.1.2.  Map-Request Message Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3D1 |A|M|P|S|       Reserved      |   IRC   | Record Count  =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Source-EID-AFI        |   Source EID Address  ...     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI 1        |    ITR-RLOC Address 1  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                              ...                              |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI n        |    ITR-RLOC Address n  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |   Reserved    | EID mask-len  |        EID-prefix-AFI         |
   Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                       EID-prefix  ...                         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Map-Reply Record  ...                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Packet field descriptions:






Farinacci, et al.       Expires February 12, 2011              [Page 28]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Type:   1 (Map-Request)

   A: This is an authoritative bit, which is set to 0 for UDP-based Map-
      Requests sent by an ITR.

   M: When set, it indicates a Map-Reply Record segment is included in
      the Map-Request.

   P: This is the probe-bit which indicates that a Map-Request SHOULD be
      treated as a locator reachability probe.  The receiver SHOULD
      respond with a Map-Reply with the probe-bit set, indicating the
      Map-Reply is a locator reachability probe reply, with the nonce
      copied from the Map-Request.  See Section 6.3.2 for more details.

   S: This is the SMR bit.  See Section 6.6.2 for details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   IRC:  This 5-bit field is the ITR-RLOC Count which encodes the
      additional number of (ITR-RLOC-AFI, ITR-RLOC Address) fields
      present in this message.  At least one (ITR-RLOC-AFI, ITR-RLOC-
      Address) pair must always be encoded.  Multiple ITR-RLOC Address
      fields are used so a Map-Replier can select which destination
      address to use for a Map-Reply.  The IRC value ranges from 0 to
      31, and for a value of 1, there are 2 ITR-RLOC addresses encoded
      and so on up to 31 which encodes a total of 32 ITR-RLOC addresses.

   Record Count:  The number of records in this Map-Request message.  A
      record is comprised of the portion of the packet that is labeled
      'Rec' above and occurs the number of times equal to Record Count.
      For this version of the protocol, a receiver MUST accept and
      process Map-Requests that contain one or more records, but a
      sender MUST only send Map-Requests containing one record.  Support
      for requesting multiple EIDs in a single Map-Request message will
      be specified in a future version of the protocol.

   Nonce:  An 8-byte random value created by the sender of the Map-
      Request.  This nonce will be returned in the Map-Reply.  The
      security of the LISP mapping protocol depends critically on the
      strength of the nonce in the Map-Request message.  The nonce
      SHOULD be generated by a properly seeded pseudo-random (or strong
      random) source.  See [RFC4086] for advice on generating security-
      sensitive random data.

   Source-EID-AFI:  Address family of the "Source EID Address" field.






Farinacci, et al.       Expires February 12, 2011              [Page 29]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Source EID Address:  This is the EID of the source host which
      originated the packet which is invoking this Map-Request.  When
      Map-Requests are used for refreshing a map-cache entry or for
      RLOC-probing, an AFI value 0 is used and this field is of zero
      length.

   ITR-RLOC-AFI:  Address family of the "ITR-RLOC Address" field that
      follows this field.

   ITR-RLOC Address:  Used to give the ETR the option of selecting the
      destination address from any address family for the Map-Reply
      message.  This address MUST be a routable RLOC address.

   EID mask-len:  Mask length for EID prefix.

   EID-prefix-AFI:  Address family of EID-prefix according to [RFC5226]

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.  When a Map-Request is sent by an ITR because a
      data packet is received for a destination where there is no
      mapping entry, the EID-prefix is set to the destination IP address
      of the data packet.  And the 'EID mask-len' is set to 32 or 128
      for IPv4 or IPv6, respectively.  When an xTR wants to query a site
      about the status of a mapping it already has cached, the EID-
      prefix used in the Map-Request has the same mask-length as the
      EID-prefix returned from the site when it sent a Map-Reply
      message.

   Map-Reply Record:  When the M bit is set, this field is the size of a
      single "Record" in the Map-Reply format.  This Map-Reply record
      contains the EID-to-RLOC mapping entry associated with the Source
      EID.  This allows the ETR which will receive this Map-Request to
      cache the data if it chooses to do so.

   Mapping Protocol Data:  See [CONS] for details.  This field is
      optional and present when the UDP length indicates there is enough
      space in the packet to include it.

6.1.3.  EID-to-RLOC UDP Map-Request Message

   A Map-Request is sent from an ITR when it needs a mapping for an EID,
   wants to test an RLOC for reachability, or wants to refresh a mapping
   before TTL expiration.  For the initial case, the destination IP
   address used for the Map-Request is the destination-EID from the
   packet which had a mapping cache lookup failure.  For the latter 2
   cases, the destination IP address used for the Map-Request is one of
   the RLOC addresses from the locator-set of the map cache entry.  The
   source address is either an IPv4 or IPv6 RLOC address depending if



Farinacci, et al.       Expires February 12, 2011              [Page 30]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   the Map-Request is using an IPv4 versus IPv6 header, respectively.
   In all cases, the UDP source port number for the Map-Request message
   is an ITR/PITR selected 16-bit value and the UDP destination port
   number is set to the well-known destination port number 4342.  A
   successful Map-Reply updates the cached set of RLOCs associated with
   the EID prefix range.

   One or more Map-Request (ITR-RLOC-AFI, ITR-RLOC-Address) fields MUST
   be filled in by the ITR.  The number of fields (minus 1) encoded MUST
   be placed in the IRC field.  The ITR MAY include all locally
   configured locators in this list or just provide one locator address
   from each address family it supports.  If the ITR erroneously
   provides no ITR-RLOC addresses, the Map-Replier MUST drop the Map-
   Request.

   Map-Requests can also be LISP encapsulated using UDP destination port
   4342 with a LISP type value set to "Encapsulated Control Message",
   when sent from an ITR to a Map-Resolver.  Likewise, Map-Requests are
   LISP encapsulated the same way from a Map-Server to an ETR.  Details
   on encapsulated Map-Requests and Map-Resolvers can be found in
   [LISP-MS].

   Map-Requests MUST be rate-limited.  It is recommended that a Map-
   Request for the same EID-prefix be sent no more than once per second.

   An ITR that is configured with mapping database information (i.e. it
   is also an ETR) may optionally include those mappings in a Map-
   Request.  When an ETR configured to accept and verify such
   "piggybacked" mapping data receives such a Map-Request and it does
   not have this mapping in the map-cache, it may originate a "verifying
   Map-Request", addressed to the map-requesting ITR.  If the ETR has a
   map-cache entry that matches the "piggybacked" EID and the RLOC is in
   the locator-set for the entry, then it may send the "verifying Map-
   Request" directly to the originating Map-Request source.  If the RLOC
   is not in the locator-set, then the ETR MUST send the "verifying Map-
   Request" to the "piggybacked" EID.  Doing this forces the "verifying
   Map-Request" to go through the mapping database system to reach the
   authoritative source of information about that EID, guarding against
   RLOC-spoofing in in the "piggybacked" mapping data.












Farinacci, et al.       Expires February 12, 2011              [Page 31]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.1.4.  Map-Reply Message Format



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3D2 |P|E|            Reserved               | Record Count  =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Packet field descriptions:

   Type:   2 (Map-Reply)

   P: This is the probe-bit which indicates that the Map-Reply is in
      response to a locator reachability probe Map-Request.  The nonce
      field MUST contain a copy of the nonce value from the original
      Map-Request.  See Section 6.3.2 for more details.

   E: Indicates that the ETR which sends this Map-Reply message is
      advertising that the site is enabled for the Echo-Nonce locator
      reachability algorithm.  See Section 6.3.1 for more details.

   Reserved:  Set to 0 on transmission and ignored on receipt.






Farinacci, et al.       Expires February 12, 2011              [Page 32]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Record Count:  The number of records in this reply message.  A record
      is comprised of that portion of the packet labeled 'Record' above
      and occurs the number of times equal to Record count.

   Nonce:  A 24-bit value set in a Data-Probe packet or a 64-bit value
      from the Map-Request is echoed in this Nonce field of the Map-
      Reply.

   Record TTL:  The time in minutes the recipient of the Map-Reply will
      store the mapping.  If the TTL is 0, the entry SHOULD be removed
      from the cache immediately.  If the value is 0xffffffff, the
      recipient can decide locally how long to store the mapping.

   Locator Count:  The number of Locator entries.  A locator entry
      comprises what is labeled above as 'Loc'.  The locator count can
      be 0 indicating there are no locators for the EID-prefix.

   EID mask-len:  Mask length for EID prefix.

   ACT:  This 3-bit field describes negative Map-Reply actions.  These
      bits are used only when the 'Locator Count' field is set to 0.
      The action bits are encoded only in Map-Reply messages.  The
      actions defined are used by an ITR or PTR when a destination EID
      matches a negative mapping cache entry.  Unassigned values should
      cause a map-cache entry to be created and, when packets match this
      negative cache entry, they will be dropped.  The current assigned
      values are:



      (0) No-Action:  The map-cache is kept alive and packet
         encapsulation occurs.

      (1) Natively-Forward:  The packet is not encapsulated or dropped
         but natively forwarded.

      (2) Send-Map-Request:  The packet invokes sending a Map-Request.

      (3) Drop:  A packet that matches this map-cache entry is dropped.

   A: The Authoritative bit, when sent by a UDP-based message is always
      set to 1 by an ETR.  See [CONS] for TCP-based Map-Replies.  When a
      Map-Server is proxy Map-Replying [LISP-MS] for a LISP site, the
      Authoritative bit is set to 0.  This indicates to requesting ITRs
      that the Map-Reply was not originated by a LISP node managed at
      the site that owns the EID-prefix.





Farinacci, et al.       Expires February 12, 2011              [Page 33]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Map-Version Number:  When this 12-bit value is non-zero the Map-Reply
      sender is informing the ITR what the version number is for the
      EID-record contained in the Map-Reply.  The ETR can allocate this
      number internally but MUST coordinate this value with other ETRs
      for the site.  When this value is 0, there is no versioning
      information conveyed.  The Map-Version Number can be included in
      Map-Request and Map-Register messages.  See Section 6.6.3 for more
      details.

   EID-AFI:  Address family of EID-prefix according to [RFC5226].

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.

   Priority:  each RLOC is assigned a unicast priority.  Lower values
      are more preferable.  When multiple RLOCs have the same priority,
      they may be used in a load-split fashion.  A value of 255 means
      the RLOC MUST NOT be used for unicast forwarding.

   Weight:  when priorities are the same for multiple RLOCs, the weight
      indicates how to balance unicast traffic between them.  Weight is
      encoded as a relative weight of total unicast packets that match
      the mapping entry.  If a non-zero weight value is used for any
      RLOC, then all RLOCs MUST use a non-zero weight value and then the
      sum of all weight values MUST equal 100.  If a zero value is used
      for any RLOC weight, then all weights MUST be zero and the
      receiver of the Map-Reply will decide how to load-split traffic.
      See Section 6.5 for a suggested hash algorithm to distribute load
      across locators with same priority and equal weight values.

   M Priority:  each RLOC is assigned a multicast priority used by an
      ETR in a receiver multicast site to select an ITR in a source
      multicast site for building multicast distribution trees.  A value
      of 255 means the RLOC MUST NOT be used for joining a multicast
      distribution tree.

   M Weight:  when priorities are the same for multiple RLOCs, the
      weight indicates how to balance building multicast distribution
      trees across multiple ITRs.  The weight is encoded as a relative
      weight of total number of trees built to the source site
      identified by the EID-prefix.  If a non-zero weight value is used
      for any RLOC, then all RLOCs MUST use a non-zero weight value and
      then the sum of all weight values MUST equal 100.  If a zero value
      is used for any RLOC weight, then all weights MUST be zero and the
      receiver of the Map-Reply will decide how to distribute multicast
      state across ITRs.





Farinacci, et al.       Expires February 12, 2011              [Page 34]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Unused Flags:  set to 0 when sending and ignored on receipt.

   L: when this bit is set, the locator is flagged as a local locator to
      the ETR that is sending the Map-Reply.  When a Map-Server is doing
      proxy Map-Replying [LISP-MS] for a LISP site, the L bit is set to
      0 for all locators in this locator-set.

   p: when this bit is set, an ETR informs the RLOC-probing ITR that the
      locator address, for which this bit is set, is the one being RLOC-
      probed and may be different from the source address of the Map-
      Reply.  An ITR that RLOC-probes a particular locator, MUST use
      this locator for retrieving the data structure used to store the
      fact that the locator is reachable.  The "p" bit is set for a
      single locator in the same locator set.  If an implementation sets
      more than one "p" bit erroneously, the receiver of the Map-Reply
      MUST select the first locator.  The "p" bit MUST NOT be set for
      locator-set records sent in Map-Request and Map-Register messages.

   R: set when the sender of a Map-Reply has a route to the locator in
      the locator data record.  This receiver may find this useful to
      know when determining if the locator is reachable from the
      receiver.  See also Section 6.4 for another way the R-bit may be
      used.

   Locator:  an IPv4 or IPv6 address (as encoded by the 'Loc-AFI' field)
      assigned to an ETR.  Note that the destination RLOC address MAY be
      an anycast address.  A source RLOC can be an anycast address as
      well.  The source or destination RLOC MUST NOT be the broadcast
      address (255.255.255.255 or any subnet broadcast address known to
      the router), and MUST NOT be a link-local multicast address.  The
      source RLOC MUST NOT be a multicast address.  The destination RLOC
      SHOULD be a multicast address if it is being mapped from a
      multicast destination EID.

   Mapping Protocol Data:  See [CONS] or [ALT] for details.  This field
      is optional and present when the UDP length indicates there is
      enough space in the packet to include it.

6.1.5.  EID-to-RLOC UDP Map-Reply Message

   A Map-Reply returns an EID-prefix with a prefix length that is less
   than or equal to the EID being requested.  The EID being requested is
   either from the destination field of an IP header of a Data-Probe or
   the EID record of a Map-Request.  The RLOCs in the Map-Reply are
   globally-routable IP addresses of all ETRs for the LISP site.  Each
   RLOC conveys status reachability but does not convey path
   reachability from a requesters perspective.  Separate testing of path
   reachability is required, See Section 6.3 for details.



Farinacci, et al.       Expires February 12, 2011              [Page 35]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Note that a Map-Reply may contain different EID-prefix granularity
   (prefix + length) than the Map-Request which triggers it.  This might
   occur if a Map-Request were for a prefix that had been returned by an
   earlier Map-Reply.  In such a case, the requester updates its cache
   with the new prefix information and granularity.  For example, a
   requester with two cached EID-prefixes that are covered by a Map-
   Reply containing one, less-specific prefix, replaces the entry with
   the less-specific EID-prefix.  Note that the reverse, replacement of
   one less-specific prefix with multiple more-specific prefixes, can
   also occur but not by removing the less-specific prefix rather by
   adding the more-specific prefixes which during a lookup will override
   the less-specific prefix.

   When an ETR is configured with overlapping EID-prefixes, a Map-
   Request with an EID that longest matches any EID-prefix MUST be
   returned in a single Map-Reply message.  For instance, if an ETR had
   database mapping entries for EID-prefixes:

     10.0.0.0/8
     10.1.0.0/16
     10.1.1.0/24
     10.1.2.0/24

   A Map-Request for EID 10.1.1.1 would cause a Map-Reply with a record
   count of 1 to be returned with a mapping record EID-prefix of
   10.1.1.0/24.

   A Map-Request for EID 10.1.5.5, would cause a Map-Reply with a record
   count of 3 to be returned with mapping records for EID-prefixes
   10.1.0.0/16, 10.1.1.0/24, and 10.1.2.0/24.

   Note that not all overlapping EID-prefixes need to be returned, only
   the more specifics (note in the second example above 10.0.0.0/8 was
   not returned for requesting EID 10.1.5.5) entries for the matching
   EID-prefix of the requesting EID.  When more than one EID-prefix is
   returned, all SHOULD use the same Time-to-Live value so they can all
   time out at the same time.  When a more specific EID-prefix is
   received later, its Time-to-Live value in the Map-Reply record can be
   stored even when other less specifics exist.  When a less specific
   EID-prefix is received later, its map-cache expiration time SHOULD be
   set to the minimum expiration time of any more specific EID-prefix in
   the map-cache.

   Map-Replies SHOULD be sent for an EID-prefix no more often than once
   per second to the same requesting router.  For scalability, it is
   expected that aggregation of EID addresses into EID-prefixes will
   allow one Map-Reply to satisfy a mapping for the EID addresses in the
   prefix range thereby reducing the number of Map-Request messages.



Farinacci, et al.       Expires February 12, 2011              [Page 36]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Map-Reply records can have an empty locator-set.  A negative Map-
   Reply is a Map-Reply with an empty locator-set.  Negative Map-Replies
   convey special actions by the sender to the ITR or PTR which have
   solicited the Map-Reply.  There are two primary applications for
   Negative Map-Replies.  The first is for a Map-Resolver to instruct an
   ITR or PTR when a destination is for a LISP site versus a non-LISP
   site.  And the other is to source quench Map-Requests which are sent
   for non-allocated EIDs.

   For each Map-Reply record, the list of locators in a locator-set MUST
   appear in the same order for each ETR that originates a Map-Reply
   message.  The locator-set MUST be sorted in order of ascending IP
   address where an IPv4 locator address is considered numerically 'less
   than' an IPv6 locator address.

   When sending a Map-Reply message, the destination address is copied
   from the one of the ITR-RLOC fields from the Map-Request.  The ETR
   can choose a locator address from one of the address families it
   supports.  For Data-Probes, the destination address of the Map-Reply
   is copied from the source address of the Data-Probe message which is
   invoking the reply.  The source address of the Map-Reply is one of
   the local locator addresses listed in the locator-set of any mapping
   record in the message and SHOULD be chosen to allow uRPF checks to
   succeed in the upstream service provider.  The destination port of a
   Map-Reply message is copied from the source port of the Map-Request
   or Data-Probe and the source port of the Map-Reply message is set to
   the well-known UDP port 4342.

6.1.5.1.  Traffic Redirection with Coarse EID-Prefixes

   When an ETR is misconfigured or compromised, it could return coarse
   EID-prefixes in Map-Reply messages it sends.  The EID-prefix could
   cover EID-prefixes which are allocated to other sites redirecting
   their traffic to the locators of the compromised site.

   To solve this problem, there are two basic solutions that could be
   used.  The first is to have Map-Servers proxy-map-reply on behalf of
   ETRs so their registered EID-prefixes are the ones returned in Map-
   Replies.  Since the interaction between an ETR and Map-Server is
   secured with shared-keys, it is more difficult for an ETR to
   misbehave.  The second solution is to have ITRs and PTRs cache EID-
   prefixes with mask-lengths that are greater than or equal to a
   configured prefix length.  This limits the damage to a specific width
   of any EID-prefix advertised, but needs to be coordinated with the
   allocation of site prefixes.  These solutions can be used
   independently or at the same time.

   At the time of this writing, other approaches are being considered



Farinacci, et al.       Expires February 12, 2011              [Page 37]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   and researched.

6.1.6.  Map-Register Message Format

   The usage details of the Map-Register message can be found in
   specification [LISP-MS].  This section solely defines the message
   format.

   The message is sent in UDP with a destination UDP port of 4342 and a
   randomly selected UDP source port number.

   The Map-Register message format is:



        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3D3 |P|            Reserved                 | Record Count  =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |            Key ID             |  Authentication Data Length   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       ~                     Authentication Data                       ~
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Packet field descriptions:






Farinacci, et al.       Expires February 12, 2011              [Page 38]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Type:   3 (Map-Register)

   P: This is the proxy-map-reply bit, when set to 1 an ETR sends a Map-
      Register message requesting for the Map-Server to proxy Map-Reply.
      The Map-Server will send non-authoritative Map-Replies on behalf
      of the ETR.  Details on this usage will be provided in a future
      version of this draft.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this Map-Register message.  A
      record is comprised of that portion of the packet labeled 'Record'
      above and occurs the number of times equal to Record count.

   Nonce:  This 8-byte Nonce field is set to 0 in Map-Register messages.

   Key ID:  A configured ID to find the configured Message
      Authentication Code (MAC) algorithm and key value used for the
      authentication function.

   Authentication Data Length:  The length in bytes of the
      Authentication Data field that follows this field.  The length of
      the Authentication Data field is dependent on the Message
      Authentication Code (MAC) algorithm used.  The length field allows
      a device that doesn't know the MAC algorithm to correctly parse
      the packet.

   Authentication Data:  The message digest used from the output of the
      Message Authentication Code (MAC) algorithm.  The entire Map-
      Register payload is authenticated with this field preset to 0.
      After the MAC is computed, it is placed in this field.
      Implementations of this specification MUST include support for
      HMAC-SHA-1-96 [RFC2404] and support for HMAC-SHA-128-256 [RFC4634]
      is recommended.

   The definition of the rest of the Map-Register can be found in the
   Map-Reply section.

6.1.7.  Encapsulated Control Message Format

   An Encapsulated Control Message is used to encapsulate control
   packets sent between xTRs and the mapping database system described
   in [LISP-MS].








Farinacci, et al.       Expires February 12, 2011              [Page 39]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   OH  |                      (uses RLOC addresses)                    |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D 4342      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LH  |Type=3D8 |                   Reserved                            =
|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   IH  |                  (uses RLOC or EID addresses)                 |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port =3D xxxx      |       Dest Port =3D yyyy      =
  |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LCM |                      LISP Control Message                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet header descriptions:

   OH:   The outer IPv4 or IPv6 header which uses RLOC addresses in the
      source and destination header address fields.

   UDP:   The outer UDP header with destination port 4342.  The source
      port is randomly allocated.  The checksum field MUST be non-zero.

   LH:   Type 8 is defined to be a "LISP Encapsulated Control Message"
      and what follows is either an IPv4 or IPv6 header as encoded by
      the first 4 bits after the reserved field.

   IH:   The inner IPv4 or IPv6 header which can use either RLOC or EID
      addresses in the header address fields.  When a Map-Request is
      encapsulated in this packet format the destination address in this
      header is an EID.

   UDP:   The inner UDP header where the port assignments depends on the
      control packet being encapsulated.  When the control packet is a
      Map-Request or Map-Register, the source port is ITR/PITR selected
      and the destination port is 4342.  When the control packet is a
      Map-Reply, the source port is 4342 and the destination port is
      assigned from the source port of the invoking Map-Request.  Port
      number 4341 MUST NOT be assigned to either port.  The checksum



Farinacci, et al.       Expires February 12, 2011              [Page 40]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      field MUST be non-zero.

   LCM:   The format is one of the control message formats described in
      this section.  At this time, only Map-Request messages and PIM
      Join-Prune messages [MLISP] are allowed to be encapsulated.
      Encapsulating other types of LISP control messages are for further
      study.  When Map-Requests are sent for RLOC-probing purposes (i.e
      the probe-bit is set), they MUST NOT be sent inside Encapsulated
      Control Messages.

6.2.  Routing Locator Selection

   Both client-side and server-side may need control over the selection
   of RLOCs for conversations between them.  This control is achieved by
   manipulating the Priority and Weight fields in EID-to-RLOC Map-Reply
   messages.  Alternatively, RLOC information may be gleaned from
   received tunneled packets or EID-to-RLOC Map-Request messages.

   The following enumerates different scenarios for choosing RLOCs and
   the controls that are available:

   o  Server-side returns one RLOC.  Client-side can only use one RLOC.
      Server-side has complete control of the selection.

   o  Server-side returns a list of RLOC where a subset of the list has
      the same best priority.  Client can only use the subset list
      according to the weighting assigned by the server-side.  In this
      case, the server-side controls both the subset list and load-
      splitting across its members.  The client-side can use RLOCs
      outside of the subset list if it determines that the subset list
      is unreachable (unless RLOCs are set to a Priority of 255).  Some
      sharing of control exists: the server-side determines the
      destination RLOC list and load distribution while the client-side
      has the option of using alternatives to this list if RLOCs in the
      list are unreachable.

   o  Server-side sets weight of 0 for the RLOC subset list.  In this
      case, the client-side can choose how the traffic load is spread
      across the subset list.  Control is shared by the server-side
      determining the list and the client determining load distribution.
      Again, the client can use alternative RLOCs if the server-provided
      list of RLOCs are unreachable.

   o  Either side (more likely on the server-side ETR) decides not to
      send a Map-Request.  For example, if the server-side ETR does not
      send Map-Requests, it gleans RLOCs from the client-side ITR,
      giving the client-side ITR responsibility for bidirectional RLOC
      reachability and preferability.  Server-side ETR gleaning of the



Farinacci, et al.       Expires February 12, 2011              [Page 41]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      client-side ITR RLOC is done by caching the inner header source
      EID and the outer header source RLOC of received packets.  The
      client-side ITR controls how traffic is returned and can alternate
      using an outer header source RLOC, which then can be added to the
      list the server-side ETR uses to return traffic.  Since no
      Priority or Weights are provided using this method, the server-
      side ETR MUST assume each client-side ITR RLOC uses the same best
      Priority with a Weight of zero.  In addition, since EID-prefix
      encoding cannot be conveyed in data packets, the EID-to-RLOC cache
      on tunnel routers can grow to be very large.

   o  A "gleaned" map-cache entry, one learned from the source RLOC of a
      received encapsulated packet, is only stored and used for a few
      seconds, pending verification.  Verification is performed by
      sending a Map-Request to the source EID (the inner header IP
      source address) of the received encapsulated packet.  A reply to
      this "verifying Map-Request" is used to fully populate the map-
      cache entry for the "gleaned" EID and is stored and used for the
      time indicated from the TTL field of a received Map-Reply.  When a
      verified map-cache entry is stored, data gleaning no longer occurs
      for subsequent packets which have a source EID that matches the
      EID-prefix of the verified entry.

   RLOCs that appear in EID-to-RLOC Map-Reply messages are assumed to be
   reachable when the R-bit for the locator record is set to 1.  Neither
   the information contained in a Map-Reply or that stored in the
   mapping database system provides reachability information for RLOCs.
   Note that reachability is not part of the mapping system and is
   determined using one or more of the Routing Locator Reachability
   Algorithms described in the next section.

6.3.  Routing Locator Reachability

   Several mechanisms for determining RLOC reachability are currently
   defined:

   1.  An ETR may examine the Loc-Status-Bits in the LISP header of an
       encapsulated data packet received from an ITR.  If the ETR is
       also acting as an ITR and has traffic to return to the original
       ITR site, it can use this status information to help select an
       RLOC.

   2.  An ITR may receive an ICMP Network or ICMP Host Unreachable
       message for an RLOC it is using.  This indicates that the RLOC is
       likely down.

   3.  An ITR which participates in the global routing system can
       determine that an RLOC is down if no BGP RIB route exists that



Farinacci, et al.       Expires February 12, 2011              [Page 42]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


       matches the RLOC IP address.

   4.  An ITR may receive an ICMP Port Unreachable message from a
       destination host.  This occurs if an ITR attempts to use
       interworking [INTERWORK] and LISP-encapsulated data is sent to a
       non-LISP-capable site.

   5.  An ITR may receive a Map-Reply from a ETR in response to a
       previously sent Map-Request.  The RLOC source of the Map-Reply is
       likely up since the ETR was able to send the Map-Reply to the
       ITR.

   6.  When an ETR receives an encapsulated packet from an ITR, the
       source RLOC from the outer header of the packet is likely up.

   7.  An ITR/ETR pair can use the Locator Reachability Algorithms
       described in this section, namely Echo-Noncing or RLOC-Probing.

   When determining Locator up/down reachability by examining the Loc-
   Status-Bits from the LISP encapsulated data packet, an ETR will
   receive up to date status from an encapsulating ITR about
   reachability for all ETRs at the site.  CE-based ITRs at the source
   site can determine reachability relative to each other using the site
   IGP as follows:

   o  Under normal circumstances, each ITR will advertise a default
      route into the site IGP.

   o  If an ITR fails or if the upstream link to its PE fails, its
      default route will either time-out or be withdrawn.

   Each ITR can thus observe the presence or lack of a default route
   originated by the others to determine the Locator Status Bits it sets
   for them.

   RLOCs listed in a Map-Reply are numbered with ordinals 0 to n-1.  The
   Loc-Status-Bits in a LISP encapsulated packet are numbered from 0 to
   n-1 starting with the least significant bit.  For example, if an RLOC
   listed in the 3rd position of the Map-Reply goes down (ordinal value
   2), then all ITRs at the site will clear the 3rd least significant
   bit (xxxx x0xx) of the Loc-Status-Bits field for the packets they
   encapsulate.

   When an ETR decapsulates a packet, it will check for any change in
   the Loc-Status-Bits field.  When a bit goes from 1 to 0, the ETR will
   refrain from encapsulating packets to an RLOC that is indicated as
   down.  It will only resume using that RLOC if the corresponding Loc-
   Status-Bit returns to a value of 1.  Loc-Status-Bits are associated



Farinacci, et al.       Expires February 12, 2011              [Page 43]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   with a locator-set per EID-prefix.  Therefore, when a locator becomes
   unreachable, the Loc-Status-Bit that corresponds to that locator's
   position in the list returned by the last Map-Reply will be set to
   zero for that particular EID-prefix.

   When ITRs at the site are not deployed in CE routers, the IGP can
   still be used to determine the reachability of Locators provided they
   are injected into the IGP.  This is typically done when a /32 address
   is configured on a loopback interface.

   When ITRs receive ICMP Network or Host Unreachable messages as a
   method to determine unreachability, they will refrain from using
   Locators which are described in Locator lists of Map-Replies.
   However, using this approach is unreliable because many network
   operators turn off generation of ICMP Unreachable messages.

   If an ITR does receive an ICMP Network or Host Unreachable message,
   it MAY originate its own ICMP Unreachable message destined for the
   host that originated the data packet the ITR encapsulated.

   Also, BGP-enabled ITRs can unilaterally examine the BGP RIB to see if
   a locator address from a locator-set in a mapping entry matches a
   prefix.  If it does not find one and BGP is running in the Default
   Free Zone (DFZ), it can decide to not use the locator even though the
   Loc-Status-Bits indicate the locator is up.  In this case, the path
   from the ITR to the ETR that is assigned the locator is not
   available.  More details are in [LOC-ID-ARCH].

   Optionally, an ITR can send a Map-Request to a Locator and if a Map-
   Reply is returned, reachability of the Locator has been determined.
   Obviously, sending such probes increases the number of control
   messages originated by tunnel routers for active flows, so Locators
   are assumed to be reachable when they are advertised.

   This assumption does create a dependency: Locator unreachability is
   detected by the receipt of ICMP Host Unreachable messages.  When an
   Locator has been determined to be unreachable, it is not used for
   active traffic; this is the same as if it were listed in a Map-Reply
   with priority 255.

   The ITR can test the reachability of the unreachable Locator by
   sending periodic Requests.  Both Requests and Replies MUST be rate-
   limited.  Locator reachability testing is never done with data
   packets since that increases the risk of packet loss for end-to-end
   sessions.

   When an ETR decapsulates a packet, it knows that it is reachable from
   the encapsulating ITR because that is how the packet arrived.  In



Farinacci, et al.       Expires February 12, 2011              [Page 44]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   most cases, the ETR can also reach the ITR but cannot assume this to
   be true due to the possibility of path asymmetry.  In the presence of
   unidirectional traffic flow from an ITR to an ETR, the ITR SHOULD NOT
   use the lack of return traffic as an indication that the ETR is
   unreachable.  Instead, it MUST use an alternate mechanisms to
   determine reachability.

6.3.1.  Echo Nonce Algorithm

   When data flows bidirectionally between locators from different
   sites, a simple mechanism called "nonce echoing" can be used to
   determine reachability between an ITR and ETR.  When an ITR wants to
   solicit a nonce echo, it sets the N and E bits and places a 24-bit
   nonce in the LISP header of the next encapsulated data packet.

   When this packet is received by the ETR, the encapsulated packet is
   forwarded as normal.  When the ETR next sends a data packet to the
   ITR, it includes the nonce received earlier with the N bit set and E
   bit cleared.  The ITR sees this "echoed nonce" and knows the path to
   and from the ETR is up.

   The ITR will set the E-bit and N-bit for every packet it sends while
   in echo-nonce-request state.  The time the ITR waits to process the
   echoed nonce before it determines the path is unreachable is variable
   and a choice left for the implementation.

   If the ITR is receiving packets from the ETR but does not see the
   nonce echoed while being in echo-nonce-request state, then the path
   to the ETR is unreachable.  This decision may be overridden by other
   locator reachability algorithms.  Once the ITR determines the path to
   the ETR is down it can switch to another locator for that EID-prefix.

   Note that "ITR" and "ETR" are relative terms here.  Both devices MUST
   be implementing both ITR and ETR functionality for the echo nonce
   mechanism to operate.

   The ITR and ETR may both go into echo-nonce-request state at the same
   time.  The number of packets sent or the time during which echo nonce
   requests are sent is an implementation specific setting.  However,
   when an ITR is in echo-nonce-request state, it can echo the ETR's
   nonce in the next set of packets that it encapsulates and then
   subsequently, continue sending echo-nonce-request packets.

   This mechanism does not completely solve the forward path
   reachability problem as traffic may be unidirectional.  That is, the
   ETR receiving traffic at a site may not be the same device as an ITR
   which transmits traffic from that site or the site to site traffic is
   unidirectional so there is no ITR returning traffic.



Farinacci, et al.       Expires February 12, 2011              [Page 45]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   The echo-nonce algorithm is bilateral.  That is, if one side sets the
   E-bit and the other side is not enabled for echo-noncing, then the
   echoing of the nonce does not occur and the requesting side may
   regard the locator unreachable erroneously.  An ITR SHOULD only set
   the E-bit in a encapsulated data packet when it knows the ETR is
   enabled for echo-noncing.  This is conveyed by the E-bit in the Map-
   Reply message.

   Note that other locator reachability mechanisms are being researched
   and can be used to compliment or even override the Echo Nonce
   Algorithm.  See next section for an example of control-plane probing.

6.3.2.  RLOC Probing Algorithm

   RLOC Probing is a method that an ITR or PTR can use to determine the
   reachability status of one or more locators that it has cached in a
   map-cache entry.  The probe-bit of the Map-Request and Map-Reply
   messages are used for RLOC Probing.

   RLOC probing is done in the control-plane on a timer basis where an
   ITR or PTR will originate a Map-Request destined to a locator address
   from one of its own locator addresses.  A Map-Request used as an
   RLOC-probe is NOT encapsulated and NOT sent to a Map-Server or on the
   ALT like one would when soliciting mapping data.  The EID record
   encoded in the Map-Request is the EID-prefix of the map-cache entry
   cached by the ITR or PTR.  The ITR may include a mapping data record
   for its own database mapping information which contains the local
   EID-prefixes and RLOCs for its site.

   When an ETR receives a Map-Request message with the probe-bit set, it
   returns a Map-Reply with the probe-bit set.  The source address of
   the Map-Reply is set from the destination address of the Map-Request
   and the destination address of the Map-Reply is set from the source
   address of the Map-Request.  The Map-Reply SHOULD contain mapping
   data for the EID-prefix contained in the Map-Request.  This provides
   the opportunity for the ITR or PTR, which sent the RLOC-probe to get
   mapping updates if there were changes to the ETR's database mapping
   entries.

   There are advantages and disadvantages of RLOC Probing.  The greatest
   benefit of RLOC Probing is that it can handle many failure scenarios
   allowing the ITR to determine when the path to a specific locator is
   reachable or has become unreachable, thus providing a robust
   mechanism for switching to using another locator from the cached
   locator.  RLOC Probing can also provide rough RTT estimates between a
   pair of locators which can be useful for network management purposes
   as well as for selecting low delay paths.  The major disadvantage of
   RLOC Probing is in the number of control messages required and the



Farinacci, et al.       Expires February 12, 2011              [Page 46]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   amount of bandwidth used to obtain those benefits, especially if the
   requirement for failure detection times are very small.

   Continued research and testing will attempt to characterize the
   tradeoffs of failure detection times versus message overhead.

6.4.  EID Reachability within a LISP Site

   A site may be multihomed using two or more ETRs.  The hosts and
   infrastructure within a site will be addressed using one or more EID
   prefixes that are mapped to the RLOCs of the relevant ETRs in the
   mapping system.  One possible failure mode is for an ETR to lose
   reachability to one or more of the EID prefixes within its own site.
   When this occurs when the ETR sends Map-Replies, it can clear the
   R-bit associated with its own locator.  And when the ETR is also an
   ITR, it can clear its locator-status-bit in the encapsulation data
   header.

6.5.  Routing Locator Hashing

   When an ETR provides an EID-to-RLOC mapping in a Map-Reply message to
   a requesting ITR, the locator-set for the EID-prefix may contain
   different priority values for each locator address.  When more than
   one best priority locator exists, the ITR can decide how to load
   share traffic against the corresponding locators.

   The following hash algorithm may be used by an ITR to select a
   locator for a packet destined to an EID for the EID-to-RLOC mapping:

   1.  Either a source and destination address hash can be used or the
       traditional 5-tuple hash which includes the source and
       destination addresses, source and destination TCP, UDP, or SCTP
       port numbers and the IP protocol number field or IPv6 next-
       protocol fields of a packet a host originates from within a LISP
       site.  When a packet is not a TCP, UDP, or SCTP packet, the
       source and destination addresses only from the header are used to
       compute the hash.

   2.  Take the hash value and divide it by the number of locators
       stored in the locator-set for the EID-to-RLOC mapping.

   3.  The remainder will be yield a value of 0 to "number of locators
       minus 1".  Use the remainder to select the locator in the
       locator-set.

   Note that when a packet is LISP encapsulated, the source port number
   in the outer UDP header needs to be set.  Selecting a hashed value
   allows core routers which are attached to Link Aggregation Groups



Farinacci, et al.       Expires February 12, 2011              [Page 47]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   (LAGs) to load-split the encapsulated packets across member links of
   such LAGs.  Otherwise, core routers would see a single flow, since
   packets have a source address of the ITR, for packets which are
   originated by different EIDs at the source site.  A suggested setting
   for the source port number computed by an ITR is a 5-tuple hash
   function on the inner header, as described above.

   Many core router implementations use a 5-tuple hash to decide how to
   balance packet load across members of a LAG.  The 5-tuple hash
   includes the source and destination addresses of the packet and the
   source and destination ports when the protocol number in the packet
   is TCP or UDP.  For this reason, UDP encoding is used for LISP
   encapsulation.

6.6.  Changing the Contents of EID-to-RLOC Mappings

   Since the LISP architecture uses a caching scheme to retrieve and
   store EID-to-RLOC mappings, the only way an ITR can get a more up-to-
   date mapping is to re-request the mapping.  However, the ITRs do not
   know when the mappings change and the ETRs do not keep track of which
   ITRs requested its mappings.  For scalability reasons, we want to
   maintain this approach but need to provide a way for ETRs change
   their mappings and inform the sites that are currently communicating
   with the ETR site using such mappings.

   When a locator record is added to the end of a locator-set, it is
   easy to update mappings.  We assume new mappings will maintain the
   same locator ordering as the old mapping but just have new locators
   appended to the end of the list.  So some ITRs can have a new mapping
   while other ITRs have only an old mapping that is used until they
   time out.  When an ITR has only an old mapping but detects bits set
   in the loc-status-bits that correspond to locators beyond the list it
   has cached, it simply ignores them.  However, this can only happen
   for locator addresses that are lexicographically greater than the
   locator addresses in the existing locator-set.

   When a locator record is removed from a locator-set, ITRs that have
   the mapping cached will not use the removed locator because the xTRs
   will set the loc-status-bit to 0.  So even if the locator is in the
   list, it will not be used.  For new mapping requests, the xTRs can
   set the locator AFI to 0 (indicating an unspecified address), as well
   as setting the corresponding loc-status-bit to 0.  This forces ITRs
   with old or new mappings to avoid using the removed locator.

   If many changes occur to a mapping over a long period of time, one
   will find empty record slots in the middle of the locator-set and new
   records appended to the locator-set.  At some point, it would be
   useful to compact the locator-set so the loc-status-bit settings can



Farinacci, et al.       Expires February 12, 2011              [Page 48]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   be efficiently packed.

   We propose here three approaches for locator-set compaction, one
   operational and two protocol mechanisms.  The operational approach
   uses a clock sweep method.  The protocol approaches use the concept
   of Solicit-Map-Requests and Map-Versioning.

6.6.1.  Clock Sweep

   The clock sweep approach uses planning in advance and the use of
   count-down TTLs to time out mappings that have already been cached.
   The default setting for an EID-to-RLOC mapping TTL is 24 hours.  So
   there is a 24 hour window to time out old mappings.  The following
   clock sweep procedure is used:

   1.  24 hours before a mapping change is to take effect, a network
       administrator configures the ETRs at a site to start the clock
       sweep window.

   2.  During the clock sweep window, ETRs continue to send Map-Reply
       messages with the current (unchanged) mapping records.  The TTL
       for these mappings is set to 1 hour.

   3.  24 hours later, all previous cache entries will have timed out,
       and any active cache entries will time out within 1 hour.  During
       this 1 hour window the ETRs continue to send Map-Reply messages
       with the current (unchanged) mapping records with the TTL set to
       1 minute.

   4.  At the end of the 1 hour window, the ETRs will send Map-Reply
       messages with the new (changed) mapping records.  So any active
       caches can get the new mapping contents right away if not cached,
       or in 1 minute if they had the mapping cached.  The new mappings
       are cached with a time to live equal to the TTL in the Map-Reply.

6.6.2.  Solicit-Map-Request (SMR)

   Soliciting a Map-Request is a selective way for ETRs, at the site
   where mappings change, to control the rate they receive requests for
   Map-Reply messages.  SMRs are also used to tell remote ITRs to update
   the mappings they have cached.

   Since the ETRs don't keep track of remote ITRs that have cached their
   mappings, they do not know which ITRs need to have their mappings
   updated.  As a result, an ETR will solicit Map-Requests (called an
   SMR message) from those sites to which it has been sending
   encapsulated data to for the last minute.  In particular, an ETR will
   send an SMR an ITR to which it has recently sent encapsulated data.



Farinacci, et al.       Expires February 12, 2011              [Page 49]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   An SMR message is simply a bit set in a Map-Request message.  An ITR
   or PTR will send a Map-Request when they receive an SMR message.
   Both the SMR sender and the Map-Request responder MUST rate-limited
   these messages.  Rate-limiting can be implemented as a global rate-
   limiter or one rate-limiter per SMR destination.

   The following procedure shows how a SMR exchange occurs when a site
   is doing locator-set compaction for an EID-to-RLOC mapping:

   1.  When the database mappings in an ETR change, the ETRs at the site
       begin to send Map-Requests with the SMR bit set for each locator
       in each map-cache entry the ETR caches.

   2.  A remote ITR which receives the SMR message will schedule sending
       a Map-Request message to the source locator address of the SMR
       message.  A newly allocated random nonce is selected and the EID-
       prefix used is the one copied from the SMR message.  If the
       source locator is the only locator in the cached locator-set, the
       remote ITR SHOULD send a Map-Request to the database mapping
       system just in case the single locator has changed and may no
       longer be reachable to accept the Map-Request.

   3.  The remote ITR MUST rate-limit the Map-Request until it gets a
       Map-Reply while continuing to use the cached mapping.  When Map
       Versioning is used, described in Section 6.6.3, an SMR sender can
       detect if an ITR is using the most up to date database mapping.

   4.  The ETRs at the site with the changed mapping will reply to the
       Map-Request with a Map-Reply message that has a nonce from the
       SMR-invoked Map-Request.  The Map-Reply messages SHOULD be rate
       limited.  This is important to avoid Map-Reply implosion.

   5.  The ETRs, at the site with the changed mapping, record the fact
       that the site that sent the Map-Request has received the new
       mapping data in the mapping cache entry for the remote site so
       the loc-status-bits are reflective of the new mapping for packets
       going to the remote site.  The ETR then stops sending SMR
       messages.

   For security reasons an ITR MUST NOT process unsolicited Map-Replies.
   To avoid map-cache entry corruption by a third-party, a sender of an
   SMR-based Map-Request MUST be verified.  If an ITR receives an SMR-
   based Map-Request and the source is not in the locator-set for the
   stored map-cache entry, then the responding Map-Request MUST be sent
   with an EID destination to the mapping database system.  Since the
   mapping database system is more secure to reach an authoritative ETR,
   it will deliver the Map-Request to the authoritative source of the
   mapping data.



Farinacci, et al.       Expires February 12, 2011              [Page 50]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


6.6.3.  Database Map Versioning

   When there is unidirectional packet flow between an ITR and ETR, and
   the EID-to-RLOC mappings change on the ETR, it needs to inform the
   ITR so encapsulation can stop to a removed locator and start to a new
   locator in the locator-set.

   An ETR, when it sends Map-Reply messages, conveys its own Map-Version
   number.  This is known as the Destination Map-Version Number.  ITRs
   include the Destination Map-Version Number in packets they
   encapsulate to the site.  When an ETR decapsulates a packet and
   detects the Destination Map-Version Number is less than the current
   version for its mapping, the SMR procedure described in Section 6.6.2
   occurs.

   An ITR, when it encapsulates packets to ETRs, can convey its own Map-
   Version number.  This is known as the Source Map-Version Number.
   When an ETR decapsulates a packet and detects the Source Map-Version
   Number is greater than the last Map-Version Number sent in a Map-
   Reply from the ITR's site, the ETR will send a Map-Request to one of
   the ETRs for the source site.

   A Map-Version Number is used as a sequence number per EID-prefix.  So
   values that are greater, are considered to be more recent.  A value
   of 0 for the Source Map-Version Number or the Destination Map-Version
   Number conveys no versioning information and an ITR does no
   comparison with previously received Map-Version Numbers.

   A Map-Version Number can be included in Map-Register messages as
   well.  This is a good way for the Map-Server can assure that all ETRs
   for a site registering to it will be Map-Version number synchronized.

   See [VERSIONING] for a more detailed analysis and description of
   Database Map Versioning.

















Farinacci, et al.       Expires February 12, 2011              [Page 51]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


7.  Router Performance Considerations

   LISP is designed to be very hardware-based forwarding friendly.  A
   few implementation techniques can be used to incrementally implement
   LISP:

   o  When a tunnel encapsulated packet is received by an ETR, the outer
      destination address may not be the address of the router.  This
      makes it challenging for the control plane to get packets from the
      hardware.  This may be mitigated by creating special FIB entries
      for the EID-prefixes of EIDs served by the ETR (those for which
      the router provides an RLOC translation).  These FIB entries are
      marked with a flag indicating that control plane processing should
      be performed.  The forwarding logic of testing for particular IP
      protocol number value is not necessary.  No changes to existing,
      deployed hardware should be needed to support this.

   o  On an ITR, prepending a new IP header consists of adding more
      bytes to a MAC rewrite string and prepending the string as part of
      the outgoing encapsulation procedure.  Routers that support GRE
      tunneling [RFC2784] or 6to4 tunneling [RFC3056] may already
      support this action.

   o  A packet's source address or interface the packet was received on
      can be used to select a VRF (Virtual Routing/Forwarding).  The
      VRF's routing table can be used to find EID-to-RLOC mappings.

























Farinacci, et al.       Expires February 12, 2011              [Page 52]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


8.  Deployment Scenarios

   This section will explore how and where ITRs and ETRs can be deployed
   and will discuss the pros and cons of each deployment scenario.
   There are two basic deployment trade-offs to consider: centralized
   versus distributed caches and flat, recursive, or re-encapsulating
   tunneling.

   When deciding on centralized versus distributed caching, the
   following issues should be considered:

   o  Are the tunnel routers spread out so that the caches are spread
      across all the memories of each router?

   o  Should management "touch points" be minimized by choosing few
      tunnel routers, just enough for redundancy?

   o  In general, using more ITRs doesn't increase management load,
      since caches are built and stored dynamically.  On the other hand,
      more ETRs does require more management since EID-prefix-to-RLOC
      mappings need to be explicitly configured.

   When deciding on flat, recursive, or re-encapsulation tunneling, the
   following issues should be considered:

   o  Flat tunneling implements a single tunnel between source site and
      destination site.  This generally offers better paths between
      sources and destinations with a single tunnel path.

   o  Recursive tunneling is when tunneled traffic is again further
      encapsulated in another tunnel, either to implement VPNs or to
      perform Traffic Engineering.  When doing VPN-based tunneling, the
      site has some control since the site is prepending a new tunnel
      header.  In the case of TE-based tunneling, the site may have
      control if it is prepending a new tunnel header, but if the site's
      ISP is doing the TE, then the site has no control.  Recursive
      tunneling generally will result in suboptimal paths but at the
      benefit of steering traffic to resource available parts of the
      network.

   o  The technique of re-encapsulation ensures that packets only
      require one tunnel header.  So if a packet needs to be rerouted,
      it is first decapsulated by the ETR and then re-encapsulated with
      a new tunnel header using a new RLOC.

   The next sub-sections will survey where tunnel routers can reside in
   the network.




Farinacci, et al.       Expires February 12, 2011              [Page 53]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


8.1.  First-hop/Last-hop Tunnel Routers

   By locating tunnel routers close to hosts, the EID-prefix set is at
   the granularity of an IP subnet.  So at the expense of more EID-
   prefix-to-RLOC sets for the site, the caches in each tunnel router
   can remain relatively small.  But caches always depend on the number
   of non-aggregated EID destination flows active through these tunnel
   routers.

   With more tunnel routers doing encapsulation, the increase in control
   traffic grows as well: since the EID-granularity is greater, more
   Map-Requests and Map-Replies are traveling between more routers.

   The advantage of placing the caches and databases at these stub
   routers is that the products deployed in this part of the network
   have better price-memory ratios then their core router counterparts.
   Memory is typically less expensive in these devices and fewer routes
   are stored (only IGP routes).  These devices tend to have excess
   capacity, both for forwarding and routing state.

   LISP functionality can also be deployed in edge switches.  These
   devices generally have layer-2 ports facing hosts and layer-3 ports
   facing the Internet.  Spare capacity is also often available in these
   devices as well.

8.2.  Border/Edge Tunnel Routers

   Using customer-edge (CE) routers for tunnel endpoints allows the EID
   space associated with a site to be reachable via a small set of RLOCs
   assigned to the CE routers for that site.  This is the default
   behavior envisioned in the rest of this specification.

   This offers the opposite benefit of the first-hop/last-hop tunnel
   router scenario: the number of mapping entries and network management
   touch points are reduced, allowing better scaling.

   One disadvantage is that less of the network's resources are used to
   reach host endpoints thereby centralizing the point-of-failure domain
   and creating network choke points at the CE router.

   Note that more than one CE router at a site can be configured with
   the same IP address.  In this case an RLOC is an anycast address.
   This allows resilience between the CE routers.  That is, if a CE
   router fails, traffic is automatically routed to the other routers
   using the same anycast address.  However, this comes with the
   disadvantage where the site cannot control the entrance point when
   the anycast route is advertised out from all border routers.  Another
   disadvantage of using anycast locators is the limited advertisement



Farinacci, et al.       Expires February 12, 2011              [Page 54]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   scope of /32 (or /128 for IPv6) routes.

8.3.  ISP Provider-Edge (PE) Tunnel Routers

   Use of ISP PE routers as tunnel endpoint routers is not the typical
   deployment scenario envisioned in the specification.  This section
   attempts to capture some of reasoning behind this preference of
   implementing LISP on CE routers.

   Use of ISP PE routers as tunnel endpoint routers gives an ISP, rather
   than a site, control over the location of the egress tunnel
   endpoints.  That is, the ISP can decide if the tunnel endpoints are
   in the destination site (in either CE routers or last-hop routers
   within a site) or at other PE edges.  The advantage of this case is
   that two tunnel headers can be avoided.  By having the PE be the
   first router on the path to encapsulate, it can choose a TE path
   first, and the ETR can decapsulate and re-encapsulate for a tunnel to
   the destination end site.

   An obvious disadvantage is that the end site has no control over
   where its packets flow or the RLOCs used.  Other disadvantages
   include the difficulty in synchronizing path liveness updates between
   CE and PE routers.

   As mentioned in earlier sections a combination of these scenarios is
   possible at the expense of extra packet header overhead, if both site
   and provider want control, then recursive or re-encapsulating tunnels
   are used.

8.4.  LISP Functionality with Conventional NATs

   LISP routers can be deployed behind Network Address Translator (NAT)
   devices to provide the same set of packet services hosts have today
   when they are addressed out of private address space.

   It is important to note that a locator address in any LISP control
   message MUST be a globally routable address and therefore SHOULD NOT
   contain [RFC1918] addresses.  If a LISP router is configured with
   private addresses, they MUST be used only in the outer IP header so
   the NAT device can translate properly.  Otherwise, EID addresses MUST
   be translated before encapsulation is performed.  Both NAT
   translation and LISP encapsulation functions could be co-located in
   the same device.

   More details on LISP address translation can be found in [INTERWORK].






Farinacci, et al.       Expires February 12, 2011              [Page 55]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


9.  Traceroute Considerations

   When a source host in a LISP site initiates a traceroute to a
   destination host in another LISP site, it is highly desirable for it
   to see the entire path.  Since packets are encapsulated from ITR to
   ETR, the hop across the tunnel could be viewed as a single hop.
   However, LISP traceroute will provide the entire path so the user can
   see 3 distinct segments of the path from a source LISP host to a
   destination LISP host:


      Segment 1 (in source LISP site based on EIDs):

          source-host ---> first-hop ... next-hop ---> ITR

      Segment 2 (in the core network based on RLOCs):

          ITR ---> next-hop ... next-hop ---> ETR

      Segment 3 (in the destination LISP site based on EIDs):

          ETR ---> next-hop ... last-hop ---> destination-host

   For segment 1 of the path, ICMP Time Exceeded messages are returned
   in the normal matter as they are today.  The ITR performs a TTL
   decrement and test for 0 before encapsulating.  So the ITR hop is
   seen by the traceroute source has an EID address (the address of
   site-facing interface).

   For segment 2 of the path, ICMP Time Exceeded messages are returned
   to the ITR because the TTL decrement to 0 is done on the outer
   header, so the destination of the ICMP messages are to the ITR RLOC
   address, the source RLOC address of the encapsulated traceroute
   packet.  The ITR looks inside of the ICMP payload to inspect the
   traceroute source so it can return the ICMP message to the address of
   the traceroute client as well as retaining the core router IP address
   in the ICMP message.  This is so the traceroute client can display
   the core router address (the RLOC address) in the traceroute output.
   The ETR returns its RLOC address and responds to the TTL decrement to
   0 like the previous core routers did.

   For segment 3, the next-hop router downstream from the ETR will be
   decrementing the TTL for the packet that was encapsulated, sent into
   the core, decapsulated by the ETR, and forwarded because it isn't the
   final destination.  If the TTL is decremented to 0, any router on the
   path to the destination of the traceroute, including the next-hop
   router or destination, will send an ICMP Time Exceeded message to the
   source EID of the traceroute client.  The ICMP message will be



Farinacci, et al.       Expires February 12, 2011              [Page 56]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   encapsulated by the local ITR and sent back to the ETR in the
   originated traceroute source site, where the packet will be delivered
   to the host.

9.1.  IPv6 Traceroute

   IPv6 traceroute follows the procedure described above since the
   entire traceroute data packet is included in ICMP Time Exceeded
   message payload.  Therefore, only the ITR needs to pay special
   attention for forwarding ICMP messages back to the traceroute source.

9.2.  IPv4 Traceroute

   For IPv4 traceroute, we cannot follow the above procedure since IPv4
   ICMP Time Exceeded messages only include the invoking IP header and 8
   bytes that follow the IP header.  Therefore, when a core router sends
   an IPv4 Time Exceeded message to an ITR, all the ITR has in the ICMP
   payload is the encapsulated header it prepended followed by a UDP
   header.  The original invoking IP header, and therefore the identity
   of the traceroute source is lost.

   The solution we propose to solve this problem is to cache traceroute
   IPv4 headers in the ITR and to match them up with corresponding IPv4
   Time Exceeded messages received from core routers and the ETR.  The
   ITR will use a circular buffer for caching the IPv4 and UDP headers
   of traceroute packets.  It will select a 16-bit number as a key to
   find them later when the IPv4 Time Exceeded messages are received.
   When an ITR encapsulates an IPv4 traceroute packet, it will use the
   16-bit number as the UDP source port in the encapsulating header.
   When the ICMP Time Exceeded message is returned to the ITR, the UDP
   header of the encapsulating header is present in the ICMP payload
   thereby allowing the ITR to find the cached headers for the
   traceroute source.  The ITR puts the cached headers in the payload
   and sends the ICMP Time Exceeded message to the traceroute source
   retaining the source address of the original ICMP Time Exceeded
   message (a core router or the ETR of the site of the traceroute
   destination).

   The signature of a traceroute packet comes in two forms.  The first
   form is encoded as a UDP message where the destination port is
   inspected for a range of values.  The second form is encoded as an
   ICMP message where the IP identification field is inspected for a
   well-known value.

9.3.  Traceroute using Mixed Locators

   When either an IPv4 traceroute or IPv6 traceroute is originated and
   the ITR encapsulates it in the other address family header, you



Farinacci, et al.       Expires February 12, 2011              [Page 57]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   cannot get all 3 segments of the traceroute.  Segment 2 of the
   traceroute can not be conveyed to the traceroute source since it is
   expecting addresses from intermediate hops in the same address format
   for the type of traceroute it originated.  Therefore, in this case,
   segment 2 will make the tunnel look like one hop.  All the ITR has to
   do to make this work is to not copy the inner TTL to the outer,
   encapsulating header's TTL when a traceroute packet is encapsulated
   using an RLOC from a different address family.  This will cause no
   TTL decrement to 0 to occur in core routers between the ITR and ETR.










































Farinacci, et al.       Expires February 12, 2011              [Page 58]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


10.  Mobility Considerations

   There are several kinds of mobility of which only some might be of
   concern to LISP.  Essentially they are as follows.

10.1.  Site Mobility

   A site wishes to change its attachment points to the Internet, and
   its LISP Tunnel Routers will have new RLOCs when it changes upstream
   providers.  Changes in EID-RLOC mappings for sites are expected to be
   handled by configuration, outside of the LISP protocol.

10.2.  Slow Endpoint Mobility

   An individual endpoint wishes to move, but is not concerned about
   maintaining session continuity.  Renumbering is involved.  LISP can
   help with the issues surrounding renumbering [RFC4192] [LISA96] by
   decoupling the address space used by a site from the address spaces
   used by its ISPs.  [RFC4984]

10.3.  Fast Endpoint Mobility

   Fast endpoint mobility occurs when an endpoint moves relatively
   rapidly, changing its IP layer network attachment point.  Maintenance
   of session continuity is a goal.  This is where the Mobile IPv4
   [RFC3344bis] and Mobile IPv6 [RFC3775] [RFC4866] mechanisms are used,
   and primarily where interactions with LISP need to be explored.

   The problem is that as an endpoint moves, it may require changes to
   the mapping between its EID and a set of RLOCs for its new network
   location.  When this is added to the overhead of mobile IP binding
   updates, some packets might be delayed or dropped.

   In IPv4 mobility, when an endpoint is away from home, packets to it
   are encapsulated and forwarded via a home agent which resides in the
   home area the endpoint's address belongs to.  The home agent will
   encapsulate and forward packets either directly to the endpoint or to
   a foreign agent which resides where the endpoint has moved to.
   Packets from the endpoint may be sent directly to the correspondent
   node, may be sent via the foreign agent, or may be reverse-tunneled
   back to the home agent for delivery to the mobile node.  As the
   mobile node's EID or available RLOC changes, LISP EID-to-RLOC
   mappings are required for communication between the mobile node and
   the home agent, whether via foreign agent or not.  As a mobile
   endpoint changes networks, up to three LISP mapping changes may be
   required:





Farinacci, et al.       Expires February 12, 2011              [Page 59]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  The mobile node moves from an old location to a new visited
      network location and notifies its home agent that it has done so.
      The Mobile IPv4 control packets the mobile node sends pass through
      one of the new visited network's ITRs, which needs a EID-RLOC
      mapping for the home agent.

   o  The home agent might not have the EID-RLOC mappings for the mobile
      node's "care-of" address or its foreign agent in the new visited
      network, in which case it will need to acquire them.

   o  When packets are sent directly to the correspondent node, it may
      be that no traffic has been sent from the new visited network to
      the correspondent node's network, and the new visited network's
      ITR will need to obtain an EID-RLOC mapping for the correspondent
      node's site.

   In addition, if the IPv4 endpoint is sending packets from the new
   visited network using its original EID, then LISP will need to
   perform a route-returnability check on the new EID-RLOC mapping for
   that EID.

   In IPv6 mobility, packets can flow directly between the mobile node
   and the correspondent node in either direction.  The mobile node uses
   its "care-of" address (EID).  In this case, the route-returnability
   check would not be needed but one more LISP mapping lookup may be
   required instead:

   o  As above, three mapping changes may be needed for the mobile node
      to communicate with its home agent and to send packets to the
      correspondent node.

   o  In addition, another mapping will be needed in the correspondent
      node's ITR, in order for the correspondent node to send packets to
      the mobile node's "care-of" address (EID) at the new network
      location.

   When both endpoints are mobile the number of potential mapping
   lookups increases accordingly.

   As a mobile node moves there are not only mobility state changes in
   the mobile node, correspondent node, and home agent, but also state
   changes in the ITRs and ETRs for at least some EID-prefixes.

   The goal is to support rapid adaptation, with little delay or packet
   loss for the entire system.  Also IP mobility can be modified to
   require fewer mapping changes.  In order to increase overall system
   performance, there may be a need to reduce the optimization of one
   area in order to place fewer demands on another.



Farinacci, et al.       Expires February 12, 2011              [Page 60]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   In LISP, one possibility is to "glean" information.  When a packet
   arrives, the ETR could examine the EID-RLOC mapping and use that
   mapping for all outgoing traffic to that EID.  It can do this after
   performing a route-returnability check, to ensure that the new
   network location does have a internal route to that endpoint.
   However, this does not cover the case where an ITR (the node assigned
   the RLOC) at the mobile-node location has been compromised.

   Mobile IP packet exchange is designed for an environment in which all
   routing information is disseminated before packets can be forwarded.
   In order to allow the Internet to grow to support expected future
   use, we are moving to an environment where some information may have
   to be obtained after packets are in flight.  Modifications to IP
   mobility should be considered in order to optimize the behavior of
   the overall system.  Anything which decreases the number of new EID-
   RLOC mappings needed when a node moves, or maintains the validity of
   an EID-RLOC mapping for a longer time, is useful.

10.4.  Fast Network Mobility

   In addition to endpoints, a network can be mobile, possibly changing
   xTRs.  A "network" can be as small as a single router and as large as
   a whole site.  This is different from site mobility in that it is
   fast and possibly short-lived, but different from endpoint mobility
   in that a whole prefix is changing RLOCs.  However, the mechanisms
   are the same and there is no new overhead in LISP.  A map request for
   any endpoint will return a binding for the entire mobile prefix.

   If mobile networks become a more common occurrence, it may be useful
   to revisit the design of the mapping service and allow for dynamic
   updates of the database.

   The issue of interactions between mobility and LISP needs to be
   explored further.  Specific improvements to the entire system will
   depend on the details of mapping mechanisms.  Mapping mechanisms
   should be evaluated on how well they support session continuity for
   mobile nodes.

10.5.  LISP Mobile Node Mobility

   A mobile device can use the LISP infrastructure to achieve mobility
   by implementing the LISP encapsulation and decapsulation functions
   and acting as a simple ITR/ETR.  By doing this, such a "LISP mobile
   node" can use topologically-independent EID IP addresses that are not
   advertised into and do not impose a cost on the global routing
   system.  These EIDs are maintained at the edges of the mapping system
   (in LISP Map-Servers and Map-Resolvers) and are provided on demand to
   only the correspondents of the LISP mobile node.



Farinacci, et al.       Expires February 12, 2011              [Page 61]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Refer to the LISP Mobility Architecture specification [LISP-MN] for
   more details.

















































Farinacci, et al.       Expires February 12, 2011              [Page 62]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


11.  Multicast Considerations

   A multicast group address, as defined in the original Internet
   architecture is an identifier of a grouping of topologically
   independent receiver host locations.  The address encoding itself
   does not determine the location of the receiver(s).  The multicast
   routing protocol, and the network-based state the protocol creates,
   determines where the receivers are located.

   In the context of LISP, a multicast group address is both an EID and
   a Routing Locator.  Therefore, no specific semantic or action needs
   to be taken for a destination address, as it would appear in an IP
   header.  Therefore, a group address that appears in an inner IP
   header built by a source host will be used as the destination EID.
   The outer IP header (the destination Routing Locator address),
   prepended by a LISP router, will use the same group address as the
   destination Routing Locator.

   Having said that, only the source EID and source Routing Locator
   needs to be dealt with.  Therefore, an ITR merely needs to put its
   own IP address in the source Routing Locator field when prepending
   the outer IP header.  This source Routing Locator address, like any
   other Routing Locator address MUST be globally routable.

   Therefore, an EID-to-RLOC mapping does not need to be performed by an
   ITR when a received data packet is a multicast data packet or when
   processing a source-specific Join (either by IGMPv3 or PIM).  But the
   source Routing Locator is decided by the multicast routing protocol
   in a receiver site.  That is, an EID to Routing Locator translation
   is done at control-time.

   Another approach is to have the ITR not encapsulate a multicast
   packet and allow the host built packet to flow into the core even if
   the source address is allocated out of the EID namespace.  If the
   RPF-Vector TLV [RFC5496] is used by PIM in the core, then core
   routers can RPF to the ITR (the Locator address which is injected
   into core routing) rather than the host source address (the EID
   address which is not injected into core routing).

   To avoid any EID-based multicast state in the network core, the first
   approach is chosen for LISP-Multicast.  Details for LISP-Multicast
   and Interworking with non-LISP sites is described in specification
   [MLISP].








Farinacci, et al.       Expires February 12, 2011              [Page 63]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


12.  Security Considerations

   It is believed that most of the security mechanisms will be part of
   the mapping database service when using control plane procedures for
   obtaining EID-to-RLOC mappings.  For data plane triggered mappings,
   as described in this specification, protection is provided against
   ETR spoofing by using Return- Routability mechanisms evidenced by the
   use of a 24-bit Nonce field in the LISP encapsulation header and a
   64-bit Nonce field in the LISP control message.  The nonce, coupled
   with the ITR accepting only solicited Map-Replies goes a long way
   toward providing decent authentication.

   LISP does not rely on a PKI infrastructure or a more heavy weight
   authentication system.  These systems challenge the scalability of
   LISP which was a primary design goal.

   DoS attack prevention will depend on implementations rate-limiting
   Map-Requests and Map-Replies to the control plane as well as rate-
   limiting the number of data-triggered Map-Replies.

   To deal with map-cache exhaustion attempts in an ITR/PTR, the
   implementation should consider putting a maximum cap on the number of
   entries stored with a reserve list for special or frequently accessed
   sites.  This should be a configuration policy control set by the
   network administrator who manages ITRs and PTRs.


























Farinacci, et al.       Expires February 12, 2011              [Page 64]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


13.  IANA Considerations

   This specification has already allocated UDP port numbers 4341 and
   4342 assigned from the IANA registry.















































Farinacci, et al.       Expires February 12, 2011              [Page 65]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


14.  References

14.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,
              August 1980.

   [RFC1034]  Mockapetris, P., "Domain names - concepts and facilities",
              STD 13, RFC 1034, November 1987.

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use of HMAC-SHA-1-96 within
              ESP and AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D., and P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              March 2000.

   [RFC3056]  Carpenter, B. and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3168]  Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
              of Explicit Congestion Notification (ECN) to IP",
              RFC 3168, September 2001.

   [RFC3261]  Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
              A., Peterson, J., Sparks, R., Handley, M., and E.
              Schooler, "SIP: Session Initiation Protocol", RFC 3261,
              June 2002.

   [RFC3775]  Johnson, D., Perkins, C., and J. Arkko, "Mobility Support
              in IPv6", RFC 3775, June 2004.

   [RFC4086]  Eastlake, D., Schiller, J., and S. Crocker, "Randomness
              Requirements for Security", BCP 106, RFC 4086, June 2005.

   [RFC4632]  Fuller, V. and T. Li, "Classless Inter-domain Routing
              (CIDR): The Internet Address Assignment and Aggregation
              Plan", BCP 122, RFC 4632, August 2006.



Farinacci, et al.       Expires February 12, 2011              [Page 66]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   [RFC4634]  Eastlake, D. and T. Hansen, "US Secure Hash Algorithms
              (SHA and HMAC-SHA)", RFC 4634, July 2006.

   [RFC4866]  Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route
              Optimization for Mobile IPv6", RFC 4866, May 2007.

   [RFC4984]  Meyer, D., Zhang, L., and K. Fall, "Report from the IAB
              Workshop on Routing and Addressing", RFC 4984,
              September 2007.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC5496]  Wijnands, IJ., Boers, A., and E. Rosen, "The Reverse Path
              Forwarding (RPF) Vector TLV", RFC 5496, March 2009.

   [UDP-TUNNELS]
              Eubanks, M. and P. Chimento, "UDP Checksums for Tunneled
              Packets"", draft-eubanks-chimento-6man-00.txt (work in
              progress), February 2009.

14.2.  Informative References

   [AFI]      IANA, "Address Family Indicators (AFIs)", ADDRESS FAMILY
              NUMBERS http://www.iana.org/numbers.html, Febuary 2007.

   [ALT]      Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "LISP
              Alternative Topology (LISP-ALT)",
              draft-ietf-lisp-alt-04.txt (work in progress), April 2010.

   [CHIAPPA]  Chiappa, J., "Endpoints and Endpoint names: A Proposed
              Enhancement to the Internet Architecture", Internet-
              Draft http://www.chiappa.net/~jnc/tech/endpoints.txt,
              1999.

   [CONS]     Farinacci, D., Fuller, V., and D. Meyer, "LISP-CONS: A
              Content distribution Overlay Network  Service for LISP",
              draft-meyer-lisp-cons-03.txt (work in progress),
              November 2007.

   [EMACS]    Brim, S., Farinacci, D., Meyer, D., and J. Curran, "EID
              Mappings Multicast Across Cooperating Systems for LISP",
              draft-curran-lisp-emacs-00.txt (work in progress),
              November 2007.

   [INTERWORK]
              Lewis, D., Meyer, D., Farinacci, D., and V. Fuller,



Farinacci, et al.       Expires February 12, 2011              [Page 67]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


              "Interworking LISP with IPv4 and IPv6",
              draft-ietf-lisp-interworking-01.txt (work in progress),
              March 2010.

   [LCAF]     Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical
              Address Format", draft-farinacci-lisp-lcaf-00.txt (work in
              progress), April 2010.

   [LISA96]   Lear, E., Katinsky, J., Coffin, J., and D. Tharp,
              "Renumbering: Threat or Menace?", Usenix , September 1996.

   [LISP-MAIN]
              Farinacci, D., Fuller, V., Meyer, D., and D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-farinacci-lisp-12.txt (work in progress),
              March 2009.

   [LISP-MN]  Farinacci, D., Fuller, V., Lewis, D., and D. Meyer, "LISP
              Mobility Architecture", draft-meyer-lisp-mn-03.txt (work
              in progress), August 2010.

   [LISP-MS]  Farinacci, D. and V. Fuller, "LISP Map Server",
              draft-ietf-lisp-ms-05.txt (work in progress), April 2010.

   [LOC-ID-ARCH]
              Meyer, D. and D. Lewis, "Architectural Implications of
              Locator/ID  Separation",
              draft-meyer-loc-id-implications-01.txt (work in progress),
              Januaryr 2009.

   [MLISP]    Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas,
              "LISP for Multicast Environments",
              draft-ietf-lisp-multicast-03.txt (work in progress),
              April 2010.

   [NERD]     Lear, E., "NERD: A Not-so-novel EID to RLOC Database",
              draft-lear-lisp-nerd-08.txt (work in progress),
              March 2010.

   [OPENLISP]
              Iannone, L. and O. Bonaventure, "OpenLISP Implementation
              Report", draft-iannone-openlisp-implementation-01.txt
              (work in progress), July 2008.

   [RADIR]    Narten, T., "Routing and Addressing Problem Statement",
              draft-narten-radir-problem-statement-00.txt (work in
              progress), July 2007.




Farinacci, et al.       Expires February 12, 2011              [Page 68]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   [RFC3344bis]
              Perkins, C., "IP Mobility Support for IPv4, revised",
              draft-ietf-mip4-rfc3344bis-05 (work in progress),
              July 2007.

   [RFC4192]  Baker, F., Lear, E., and R. Droms, "Procedures for
              Renumbering an IPv6 Network without a Flag Day", RFC 4192,
              September 2005.

   [RPMD]     Handley, M., Huici, F., and A. Greenhalgh, "RPMD: Protocol
              for Routing Protocol Meta-data  Dissemination",
              draft-handley-p2ppush-unpublished-2007726.txt (work in
              progress), July 2007.

   [VERSIONING]
              Iannone, L., Saucez, D., and O. Bonaventure, "LISP Mapping
              Versioning", draft-iannone-lisp-mapping-versioning-01.txt
              (work in progress), March 2010.

































Farinacci, et al.       Expires February 12, 2011              [Page 69]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Appendix A.  Acknowledgments

   An initial thank you goes to Dave Oran for planting the seeds for the
   initial ideas for LISP.  His consultation continues to provide value
   to the LISP authors.

   A special and appreciative thank you goes to Noel Chiappa for
   providing architectural impetus over the past decades on separation
   of location and identity, as well as detailed review of the LISP
   architecture and documents, coupled with enthusiasm for making LISP a
   practical and incremental transition for the Internet.

   The authors would like to gratefully acknowledge many people who have
   contributed discussion and ideas to the making of this proposal.
   They include Scott Brim, Andrew Partan, John Zwiebel, Jason Schiller,
   Lixia Zhang, Dorian Kim, Peter Schoenmaker, Vijay Gill, Geoff Huston,
   David Conrad, Mark Handley, Ron Bonica, Ted Seely, Mark Townsley,
   Chris Morrow, Brian Weis, Dave McGrew, Peter Lothberg, Dave Thaler,
   Eliot Lear, Shane Amante, Ved Kafle, Olivier Bonaventure, Luigi
   Iannone, Robin Whittle, Brian Carpenter, Joel Halpern, Roger
   Jorgensen, Ran Atkinson, Stig Venaas, Iljitsch van Beijnum, Roland
   Bless, Dana Blair, Bill Lynch, Marc Woolward, Damien Saucez, Damian
   Lezama, Attilla De Groot, Parantap Lahiri, David Black, Roque
   Gagliano, Isidor Kouvelas, Jesper Skriver, Fred Templin, Margaret
   Wasserman, Sam Hartman, Michael Hofling, Pedro Marques, Jari Arkko,
   Gregg Schudel, Srinivas Subramanian, Amit Jain, Xu Xiaohu, Dhirendra
   Trivedi, Yakov Rekhter, John Scudder, John Drake, Dimitri
   Papadimitriou, Ross Callon, Selina Heimlich, Job Snijders, and Vina
   Ermagan.

   This work originated in the Routing Research Group (RRG) of the IRTF.
   The individual submission [LISP-MAIN] was converted into this IETF
   LISP working group draft.


















Farinacci, et al.       Expires February 12, 2011              [Page 70]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Appendix B.  Document Change Log

B.1.  Changes to draft-ietf-lisp-08.txt

   o  Posted August 2010.

   o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
      Register messages.

   o  Clarify language in section 6.1.5 about Map-Replying to Data-
      Probes or Map-Requests.

   o  Indicate that outer TTL should only be copied to inner TTL when it
      is less than inner TTL.

   o  Indicate a source-EID for RLOC-probes are encoded with an AFI
      value of 0.

   o  Indicate that SMRs can have a global or per SMR destination rate-
      limiter.

   o  Add clarifications to the SMR procedures.

   o  Add definitions for "client-side" and 'server-side" terms used in
      this specification.

   o  Clear up language in section 6.4, last paragraph.

   o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
      probe a PETR and have it return a Map-Reply with a locator-set of
      size 0.  The way it is spec'ed the map-cache entry has action
      "dropped".  Drop-action is set to 3.

   o  Add statement about normalizing locator weights.

   o  Clarify R-bit definition in the Map-Reply locator record.

   o  Add section on EID Reachability within a LISP site.

   o  Clarify another disadvantage of using anycast locators.

   o  Reworded Abstract.

   o  Change section 2.0 Introduction to remove obsolete information
      such as the LISP variant definitions.

   o  Change section 5 title from "Tunneling Details" to "LISP
      Encapsulation Details".



Farinacci, et al.       Expires February 12, 2011              [Page 71]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Changes to section 5 to include results of network deployment
      experience with MTU.  Recommend that implementations use either
      the stateful or stateless handling.

   o  Make clarification wordsmithing to Section 7 and 8.

   o  Identify that if there is one locator in the locator-set of a map-
      cache entry, that an SMR from that locator should be responded to
      by sending the the SMR-invoked Map-Request to the database mapping
      system rather than to the RLOC itself (which may be unreachable).

   o  When describing Unicast and Multicast Weights indicate the the
      values are relative weights rather than percentages.  So it
      doesn't imply the sum of all locator weights in the locator-set
      need to be 100.

   o  Do some wordsmithing on copying TTL and TOS fields.

   o  Numerous wordsmithing changes from Dave Meyer.  He fine toothed
      combed the spec.

   o  Removed Section 14 "Prototype Plans and Status".  We felt this
      type of section is no longer appropriate for a protocol
      specification.

   o  Add clarification text for the IRC description per Damien's
      commentary.

   o  Remove text on copying nonce from SMR to SMR-invoked Map- Request
      per Vina's comment about a possible DoS vector.

   o  Clarify (S/2 + H) in the stateless MTU section.

B.2.  Changes to draft-ietf-lisp-07.txt

   o  Posted April 2010.

   o  Added I-bit to data header so LSB field can also be used as an
      Instance ID field.  When this occurs, the LSB field is reduced to
      8-bits (from 32-bits).

   o  Added V-bit to the data header so the 24-bit nonce field can also
      be used for source and destination version numbers.

   o  Added Map-Version 12-bit value to the EID-record to be used in all
      of Map-Request, Map-Reply, and Map-Register messages.





Farinacci, et al.       Expires February 12, 2011              [Page 72]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Added multiple ITR-RLOC fields to the Map-Request packet so an ETR
      can decide what address to select for the destination of a Map-
      Reply.

   o  Added L-bit (Local RLOC bit) and p-bit (Probe-Reply RLOC bit) to
      the Locator-Set record of an EID-record for a Map-Reply message.
      The L-bit indicates which RLOCs in the locator-set are local to
      the sender of the message.  The P-bit indicates which RLOC is the
      source of a RLOC-probe Reply (Map-Reply) message.

   o  Add reference to the LISP Canonical Address Format [LCAF] draft.

   o  Made editorial and clarification changes based on comments from
      Dhirendra Trivedi.

   o  Added wordsmithing comments from Joel Halpern on DF=3D1 setting.

   o  Add John Zwiebel clarification to Echo Nonce Algorithm section
      6.3.1.

   o  Add John Zwiebel comment about expanding on proxy-map-reply bit
      for Map-Register messages.

   o  Add NAT section per Ron Bonica comments.

   o  Fix IDnits issues per Ron Bonica.

   o  Added section on Virtualization and Segmentation to explain the
      use if the Instance ID field in the data header.

   o  There are too many P-bits, keep their scope to the packet format
      description and refer to them by name every where else in the
      spec.

   o  Scanned all occurrences of "should", "should not", "must" and
      "must not" and uppercased them.

   o  John Zwiebel offered text for section 4.1 to modernize the
      example.  Thanks Z!

   o  Make it more clear in the definition of "EID-to-RLOC Database"
      that all ETRs need to have the same database mapping.  This
      reflects a comment from John Scudder.

   o  Add a definition "Route-returnability" to the Definition of Terms
      section.





Farinacci, et al.       Expires February 12, 2011              [Page 73]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  In section 9.2, add text to describe what the signature of
      traceroute packets can look like.

   o  Removed references to Data Probe for introductory example.  Data-
      probes are still part of the LISP design but not encouraged.

   o  Added the definition for "LISP site" to the Definition of Terms"
      section.

B.3.  Changes to draft-ietf-lisp-06.txt

   Editorial based changes:

   o  Posted December 2009.

   o  Fix typo for flags in LISP data header.  Changed from "4" to "5".

   o  Add text to indicate that Map-Register messages must contain a
      computed UDP checksum.

   o  Add definitions for PITR and PETR.

   o  Indicate an AFI value of 0 is an unspecified address.

   o  Indicate that the TTL field of a Map-Register is not used and set
      to 0 by the sender.  This change makes this spec consistent with
      [LISP-MS].

   o  Change "... yield a packet size of L bytes" to "... yield a packet
      size greater than L bytes".

   o  Clarify section 6.1.5 on what addresses and ports are used in Map-
      Reply messages.

   o  Clarify that LSBs that go beyond the number of locators do not to
      be SMRed when the locator addresses are greater lexicographically
      than the locator in the existing locator-set.

   o  Add Gregg, Srini, and Amit to acknowledgment section.

   o  Clarify in the definition of a LISP header what is following the
      UDP header.

   o  Clarify "verifying Map-Request" text in section 6.1.3.

   o  Add Xu Xiaohu to the acknowledgment section for introducing the
      problem of overlapping EID-prefixes among multiple sites in an RRG
      email message.



Farinacci, et al.       Expires February 12, 2011              [Page 74]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   Design based changes:

   o  Use stronger language to have the outer IPv4 header set DF=3D1 so =
we
      can avoid fragment reassembly in an ETR or PETR.  This will also
      make IPv4 and IPv6 encapsulation have consistent behavior.

   o  Map-Requests should not be sent in ECM with the Probe bit is set.
      These type of Map-Requests are used as RLOC-probes and are sent
      directly to locator addresses in the underlying network.

   o  Add text in section 6.1.5 about returning all EID-prefixes in a
      Map-Reply sent by an ETR when there are overlapping EID-prefixes
      configure.

   o  Add text in a new subsection of section 6.1.5 about dealing with
      Map-Replies with coarse EID-prefixes.

B.4.  Changes to draft-ietf-lisp-05.txt

   o  Posted September 2009.

   o  Added this Document Change Log appendix.

   o  Added section indicating that encapsulated Map-Requests must use
      destination UDP port 4342.

   o  Don't use AH in Map-Registers.  Put key-id, auth-length, and auth-
      data in Map-Register payload.

   o  Added Jari to acknowledgment section.

   o  State the source-EID is set to 0 when using Map-Requests to
      refresh or RLOC-probe.

   o  Make more clear what source-RLOC should be for a Map-Request.

   o  The LISP-CONS authors thought that the Type definitions for CONS
      should be removed from this specification.

   o  Removed nonce from Map-Register message, it wasn't used so no need
      for it.

   o  Clarify what to do for unspecified Action bits for negative Map-
      Replies.  Since No Action is a drop, make value 0 Drop.







Farinacci, et al.       Expires February 12, 2011              [Page 75]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


B.5.  Changes to draft-ietf-lisp-04.txt

   o  Posted September 2009.

   o  How do deal with record count greater than 1 for a Map-Request.
      Damien and Joel comment.  Joel suggests: 1) Specify that senders
      compliant with the current document will always set the count to
      1, and note that the count is included for future extensibility.
      2) Specify what a receiver compliant with the draft should do if
      it receives a request with a count greater than 1.  Presumably, it
      should send some error back?

   o  Add Fred Templin in acknowledgment section.

   o  Add Margaret and Sam to the acknowledgment section for their great
      comments.

   o  Say more about LAGs in the UDP section per Sam Hartman's comment.

   o  Sam wants to use MAY instead of SHOULD for ignoring checksums on
      ETR.  =46rom the mailing list: "You'd need to word it as an ITR =
MAY
      send a zero checksum, an ETR MUST accept a 0 checksum and MAY
      ignore the checksum completely.  And of course we'd need to
      confirm that can actually be implemented.  In particular, hardware
      that verifies UDP checksums on receive needs to be checked to make
      sure it permits 0 checksums."

   o  Margaret wants a reference to
      http://www.ietf.org/id/draft-eubanks-chimento-6man-00.txt.

   o  Fix description in Map-Request section.  Where we describe Map-
      Reply Record, change "R-bit" to "M-bit".

   o  Add the mobility bit to Map-Replies.  So PTRs don't probe so often
      for MNs but often enough to get mapping updates.

   o  Indicate SHA1 can be used as well for Map-Registers.

   o  More Fred comments on MTU handling.

   o  Isidor comment about spec'ing better periodic Map-Registers.  Will
      be fixed in draft-ietf-lisp-ms-02.txt.

   o  Margaret's comment on gleaning: "The current specification does
      not make it clear how long gleaned map entries should be retained
      in the cache, nor does it make it clear how/ when they will be
      validated.  The LISP spec should, at the very least, include a
      (short) default lifetime for gleaned entries, require that they be



Farinacci, et al.       Expires February 12, 2011              [Page 76]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


      validated within a short period of time, and state that a new
      gleaned entry should never overwrite an entry that was obtained
      from the mapping system.  The security implications of storing
      "gleaned" entries should also be explored in detail."

   o  Add section on RLOC-probing per working group feedback.

   o  Change "loc-reach-bits" to "loc-status-bits" per comment from
      Noel.

   o  Remove SMR-bit from data-plane.  Dino prefers to have it in the
      control plane only.

   o  Change LISP header to allow a "Research Bit" so the Nonce and LSB
      fields can be turned off and used for another future purpose.  For
      Luigi et al versioning convergence.

   o  Add a N-bit to the data header suggested by Noel.  Then the nonce
      field could be used when N is not 1.

   o  Clarify that when E-bit is 0, the nonce field can be an echoed
      nonce or a random nonce.  Comment from Jesper.

   o  Indicate when doing data-gleaning that a verifying Map-Request is
      sent to the source-EID of the gleaned data packet so we can avoid
      map-cache corruption by a 3rd party.  Comment from Pedro.

   o  Indicate that a verifying Map-Request, for accepting mapping data,
      should be sent over the ALT (or to the EID).

   o  Reference IPsec RFC 4302.  Comment from Sam and Brian Weis.

   o  Put E-bit in Map-Reply to tell ITRs that the ETR supports echo-
      noncing.  Comment by Pedro and Dino.

   o  Jesper made a comment to loosen the language about requiring the
      copy of inner TTL to outer TTL since the text to get mixed-AF
      traceroute to work would violate the "MUST" clause.  Changed from
      MUST to SHOULD in section 5.3.

B.6.  Changes to draft-ietf-lisp-03.txt

   o  Posted July 2009.

   o  Removed loc-reach-bits longword from control packets per Damien
      comment.





Farinacci, et al.       Expires February 12, 2011              [Page 77]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


   o  Clarifications in MTU text from Roque.

   o  Added text to indicate that the locator-set be sorted by locator
      address from Isidor.

   o  Clarification text from John Zwiebel in Echo-Nonce section.

B.7.  Changes to draft-ietf-lisp-02.txt

   o  Posted July 2009.

   o  Encapsulation packet format change to add E-bit and make loc-
      reach-bits 32-bits in length.

   o  Added Echo-Nonce Algorithm section.

   o  Clarification how ECN bits are copied.

   o  Moved S-bit in Map-Request.

   o  Added P-bit in Map-Request and Map-Reply messages to anticipate
      RLOC-Probe Algorithm.

   o  Added to Mobility section to reference [LISP-MN].

B.8.  Changes to draft-ietf-lisp-01.txt

   o  Posted 2 days after draft-ietf-lisp-00.txt in May 2009.

   o  Defined LEID to be a "LISP EID".

   o  Indicate encapsulation use IPv4 DF=3D0.

   o  Added negative Map-Reply messages with drop, native-forward, and
      send-map-request actions.

   o  Added Proxy-Map-Reply bit to Map-Register.

B.9.  Changes to draft-ietf-lisp-00.txt

   o  Posted May 2009.

   o  Rename of draft-farinacci-lisp-12.txt.

   o  Acknowledgment to RRG.






Farinacci, et al.       Expires February 12, 2011              [Page 78]
=0C
Internet-Draft    Locator/ID Separation Protocol (LISP)      August 2010


Authors' Addresses

   Dino Farinacci
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: dino@cisco.com


   Vince Fuller
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: vaf@cisco.com


   Dave Meyer
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: dmm@cisco.com


   Darrel Lewis
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: darlewis@cisco.com















Farinacci, et al.       Expires February 12, 2011              [Page 79]
=0C

--Apple-Mail-54-444922375
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed
Content-Transfer-Encoding: 7bit





--Apple-Mail-54-444922375
Content-Disposition: attachment;
	filename=rfcdiff-ietf-lisp-08-to-08.html
Content-Type: text/html;
	x-unix-mode=0600;
	name="rfcdiff-ietf-lisp-08-to-08.html"
Content-Transfer-Encoding: 7bit


<!-- saved from url=(0029)http://tools.ietf.org/rfcdiff -->
<HTML><HEAD><META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><TITLE>wdiff dino-draft-ietf-lisp-08.txt draft-ietf-lisp-08.txt</TITLE></HEAD><BODY>
<PRE>
Network Working Group                                       D. Farinacci
Internet-Draft                                                 V. Fuller
Intended status: Experimental                                   D. Meyer
Expires: February <STRIKE><FONT color="red">9,</FONT></STRIKE> <STRONG><FONT color="green">12,</FONT></STRONG> 2011                                      D. Lewis
                                                           cisco Systems
                                                         August <STRIKE><FONT color="red">8,</FONT></STRIKE> <STRONG><FONT color="green">11,</FONT></STRONG> 2010

                 Locator/ID Separation Protocol (LISP)
                           draft-ietf-lisp-08

Abstract

   This draft describes a network-based protocol that enables separation
   of IP addresses into two new numbering spaces: Endpoint Identifiers
   (EIDs) and Routing Locators (RLOCs).  No changes are required to
   either host protocol stacks or to the "core" of the Internet
   infrastructure.  LISP can be incrementally deployed, without a "flag
   day", and offers traffic engineering, multi-homing, and mobility
   benefits even to early adopters, when there are relatively few LISP-
   capable sites.

   Design and development of LISP was largely motivated by the problem
   statement produced by the October, 2006 IAB Routing and Addressing
   Workshop.

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on February <STRIKE><FONT color="red">9,</FONT></STRIKE> <STRONG><FONT color="green">12,</FONT></STRONG> 2011.

Copyright Notice

   Copyright (c) 2010 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
   the Trust Legal Provisions and are provided without warranty as
   described in the BSD License.

Table of Contents

   1.  Requirements Notation  . . . . . . . . . . . . . . . . . . . .  4
   2.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
   3.  Definition of Terms  . . . . . . . . . . . . . . . . . . . . .  7
   4.  Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 12
     4.1.  Packet Flow Sequence . . . . . . . . . . . . . . . . . . . 14
   5.  LISP Encapsulation Details . . . . . . . . . . . . . . . . . . 16
     5.1.  LISP IPv4-in-IPv4 Header Format  . . . . . . . . . . . . . 17
     5.2.  LISP IPv6-in-IPv6 Header Format  . . . . . . . . . . . . . 17
     5.3.  Tunnel Header Field Descriptions . . . . . . . . . . . . . 19
     5.4.  Dealing with Large Encapsulated Packets  . . . . . . . . . 22
       5.4.1.  A Stateless Solution to MTU Handling . . . . . . . . . 23
       5.4.2.  A Stateful Solution to MTU Handling  . . . . . . . . . <STRIKE><FONT color="red">23</FONT></STRIKE> <STRONG><FONT color="green">24</FONT></STRONG>
     5.5.  Using Virtualization and Segmentation with LISP  . . . . . 24
   6.  EID-to-RLOC Mapping  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">25</FONT></STRIKE> <STRONG><FONT color="green">26</FONT></STRONG>
     6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats  . . . . . <STRIKE><FONT color="red">25</FONT></STRIKE> <STRONG><FONT color="green">26</FONT></STRONG>
       6.1.1.  LISP Packet Type Allocations . . . . . . . . . . . . . <STRIKE><FONT color="red">27</FONT></STRIKE> <STRONG><FONT color="green">28</FONT></STRONG>
       6.1.2.  Map-Request Message Format . . . . . . . . . . . . . . <STRIKE><FONT color="red">27</FONT></STRIKE> <STRONG><FONT color="green">28</FONT></STRONG>
       6.1.3.  EID-to-RLOC UDP Map-Request Message  . . . . . . . . . <STRIKE><FONT color="red">29</FONT></STRIKE> <STRONG><FONT color="green">30</FONT></STRONG>
       6.1.4.  Map-Reply Message Format . . . . . . . . . . . . . . . <STRIKE><FONT color="red">31</FONT></STRIKE> <STRONG><FONT color="green">32</FONT></STRONG>
       6.1.5.  EID-to-RLOC UDP Map-Reply Message  . . . . . . . . . . <STRIKE><FONT color="red">34</FONT></STRIKE> <STRONG><FONT color="green">35</FONT></STRONG>
       6.1.6.  Map-Register Message Format  . . . . . . . . . . . . . <STRIKE><FONT color="red">37</FONT></STRIKE> <STRONG><FONT color="green">38</FONT></STRONG>
       6.1.7.  Encapsulated Control Message Format  . . . . . . . . . <STRIKE><FONT color="red">38</FONT></STRIKE> <STRONG><FONT color="green">39</FONT></STRONG>
     6.2.  Routing Locator Selection  . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">40</FONT></STRIKE> <STRONG><FONT color="green">41</FONT></STRONG>
     6.3.  Routing Locator Reachability . . . . . . . . . . . . . . . <STRIKE><FONT color="red">41</FONT></STRIKE> <STRONG><FONT color="green">42</FONT></STRONG>
       6.3.1.  Echo Nonce Algorithm . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">44</FONT></STRIKE> <STRONG><FONT color="green">45</FONT></STRONG>
       6.3.2.  RLOC Probing Algorithm . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">45</FONT></STRIKE> <STRONG><FONT color="green">46</FONT></STRONG>
     6.4.  EID Reachability within a LISP Site  . . . . . . . . . . . <STRIKE><FONT color="red">46</FONT></STRIKE> <STRONG><FONT color="green">47</FONT></STRONG>
     6.5.  Routing Locator Hashing  . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">46</FONT></STRIKE> <STRONG><FONT color="green">47</FONT></STRONG>
     6.6.  Changing the Contents of EID-to-RLOC Mappings  . . . . . . <STRIKE><FONT color="red">47</FONT></STRIKE> <STRONG><FONT color="green">48</FONT></STRONG>
       6.6.1.  Clock Sweep  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">48</FONT></STRIKE> <STRONG><FONT color="green">49</FONT></STRONG>
       6.6.2.  Solicit-Map-Request (SMR)  . . . . . . . . . . . . . . <STRIKE><FONT color="red">48</FONT></STRIKE> <STRONG><FONT color="green">49</FONT></STRONG>
       6.6.3.  Database Map Versioning  . . . . . . . . . . . . . . . <STRIKE><FONT color="red">50</FONT></STRIKE> <STRONG><FONT color="green">51</FONT></STRONG>
   7.  Router Performance Considerations  . . . . . . . . . . . . . . <STRIKE><FONT color="red">51</FONT></STRIKE> <STRONG><FONT color="green">52</FONT></STRONG>
   8.  Deployment Scenarios . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">52</FONT></STRIKE> <STRONG><FONT color="green">53</FONT></STRONG>
     8.1.  First-hop/Last-hop Tunnel Routers  . . . . . . . . . . . . <STRIKE><FONT color="red">53</FONT></STRIKE> <STRONG><FONT color="green">54</FONT></STRONG>
     8.2.  Border/Edge Tunnel Routers . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">53</FONT></STRIKE> <STRONG><FONT color="green">54</FONT></STRONG>
     8.3.  ISP Provider-Edge (PE) Tunnel Routers  . . . . . . . . . . <STRIKE><FONT color="red">54</FONT></STRIKE> <STRONG><FONT color="green">55</FONT></STRONG>
     8.4.  LISP Functionality with Conventional NATs  . . . . . . . . <STRIKE><FONT color="red">54</FONT></STRIKE> <STRONG><FONT color="green">55</FONT></STRONG>
   9.  Traceroute Considerations  . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">55</FONT></STRIKE> <STRONG><FONT color="green">56</FONT></STRONG>
     9.1.  IPv6 Traceroute  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
     9.2.  IPv4 Traceroute  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
     9.3.  Traceroute using Mixed Locators  . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
   10. Mobility Considerations  . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.1. Site Mobility  . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.2. Slow Endpoint Mobility . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.3. Fast Endpoint Mobility . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.4. Fast Network Mobility  . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">60</FONT></STRIKE> <STRONG><FONT color="green">61</FONT></STRONG>
     10.5. LISP Mobile Node Mobility  . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">60</FONT></STRIKE> <STRONG><FONT color="green">61</FONT></STRONG>
   11. Multicast Considerations . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">62</FONT></STRIKE> <STRONG><FONT color="green">63</FONT></STRONG>
   12. Security Considerations  . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">63</FONT></STRIKE> <STRONG><FONT color="green">64</FONT></STRONG>
   13. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">64
   14. Prototype Plans and Status . . . . . . . . . . . . . . . . . .</FONT></STRIKE> 65
   <STRIKE><FONT color="red">15.</FONT></STRIKE>
   <STRONG><FONT color="green">14.</FONT></STRONG> References . . . . . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">68
     15.1.</FONT></STRIKE> <STRONG><FONT color="green">66
     14.1.</FONT></STRONG> Normative References . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">68
     15.2.</FONT></STRIKE> <STRONG><FONT color="green">66
     14.2.</FONT></STRONG> Informative References . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">69</FONT></STRIKE> <STRONG><FONT color="green">67</FONT></STRONG>
   Appendix A.  Acknowledgments . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">72</FONT></STRIKE> <STRONG><FONT color="green">70</FONT></STRONG>
   Appendix B.  Document Change Log . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">73</FONT></STRIKE> <STRONG><FONT color="green">71</FONT></STRONG>
     B.1.  Changes to draft-ietf-lisp-08.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">73</FONT></STRIKE> <STRONG><FONT color="green">71</FONT></STRONG>
     B.2.  Changes to draft-ietf-lisp-07.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">74</FONT></STRIKE> <STRONG><FONT color="green">72</FONT></STRONG>
     B.3.  Changes to draft-ietf-lisp-06.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">76</FONT></STRIKE> <STRONG><FONT color="green">74</FONT></STRONG>
     B.4.  Changes to draft-ietf-lisp-05.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">77</FONT></STRIKE> <STRONG><FONT color="green">75</FONT></STRONG>
     B.5.  Changes to draft-ietf-lisp-04.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">77</FONT></STRIKE> <STRONG><FONT color="green">76</FONT></STRONG>
     B.6.  Changes to draft-ietf-lisp-03.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">77</FONT></STRONG>
     B.7.  Changes to draft-ietf-lisp-02.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">78</FONT></STRONG>
     B.8.  Changes to draft-ietf-lisp-01.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">80</FONT></STRIKE> <STRONG><FONT color="green">78</FONT></STRONG>
     B.9.  Changes to draft-ietf-lisp-00.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">80</FONT></STRIKE> <STRONG><FONT color="green">78</FONT></STRONG>
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">81</FONT></STRIKE> <STRONG><FONT color="green">79</FONT></STRONG>

1.  Requirements Notation

   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 [RFC2119].

2.  Introduction

   This document describes the Locator/Identifier Separation Protocol
   (LISP), which provides a set of functions for routers to exchange
   information used to map from non-routeable Endpoint Identifiers
   (EIDs) to routeable Routing Locators (RLOCs).  It also defines a
   mechanism for these LISP routers to encapsulate IP packets addressed
   with EIDs for transmission across an Internet that uses RLOCs for
   routing and forwarding.

   Creation of LISP was initially motivated by discussions during the
   IAB-sponsored Routing and Addressing Workshop <STRIKE><FONT color="red">(RAWS)</FONT></STRIKE> held in Amsterdam in
   October, 2006 (see [RFC4984]).  A key conclusion of the workshop was
   that the Internet routing and addressing system was not scaling well
   in the face of the explosive growth of new sites; one reason for this
   poor scaling is the increasing number of multi-homed and other sites
   that cannot be addressed as part of topologically- or provider-based
   aggregated prefixes.  Additional work that more completely described
   the problem statement may be found in [RADIR].

   A basic observation, made many years ago in early networking research
   such as that documented in [CHIAPPA] and [RFC4984], is that using a
   single address field for both identifying a device and for
   determining where it is topologically located in the network requires
   optimization along two conflicting axes: for routing to be efficient,
   the address must be assigned topologically; for collections of
   devices to be easily and effectively managed, without the need for
   renumbering in response to topological change (such as that caused by
   adding or removing attachment points to the network or by mobility
   events), the address must explicitly not be tied to the topology.

   The approach that LISP takes to solving the routing scalability
   problem is to replace IP addresses with two new types of numbers:
   Routing Locators (RLOCs), which are topologically assigned to network
   attachment points (and are therefore amenable to aggregation) and
   used for routing and forwarding of packets through the network; and
   Endpoint Identifiers (EIDs), which are assigned independently from
   the network topology, are used for numbering devices, and are
   aggregated along administrative boundaries.  LISP then defines
   functions for mapping between the two numbering spaces and for
   encapsulating traffic originated by devices using non-routeable EIDs
   for transport across a network infrastructure that routes and
   forwards using RLOCs.  Both RLOCs and EIDs are syntactically-
   identical to IP addresses; it is the semantics of how they are used
   that differs.

   <STRIKE><FONT color="red">Note that this</FONT></STRIKE>

   <STRONG><FONT color="green">This</FONT></STRONG> document describes the protocol that implements these functions.
   The database which stores the mappings between EIDs and RLOCs is
   explicitly a separate "module" to facilitate experimentation with a
   variety of approaches.  One database design that is being developed
   and prototyped as part of the LISP working group work is
   <STRIKE><FONT color="red">[ALT] others</FONT></STRIKE> <STRONG><FONT color="green">[ALT].
   Others</FONT></STRONG> that have been described but not implemented include [CONS],
   [EMACS], [RPMD], [NERD].  <STRIKE><FONT color="red">See also</FONT></STRIKE>  <STRONG><FONT color="green">Finally,</FONT></STRONG> [LISP-MS], <STRIKE><FONT color="red">which</FONT></STRIKE> documents a <STRIKE><FONT color="red">general-purpose "service interface"</FONT></STRIKE> <STRONG><FONT color="green">general-
   purpose service interface</FONT></STRONG> for accessing a mapping database; this
   <STRONG><FONT color="green">interface</FONT></STRONG> is intended to make the mapping database modular so that
   different approaches can be tried without the need to modify
   installed xTRs.

3.  Definition of Terms

   Provider Independent (PI) Addresses:   <STRONG><FONT color="green">PI addresses are</FONT></STRONG> an address
      block assigned from a pool where blocks are not associated with
      any particular location in the network (e.g. from a particular
      service provider), and is therefore not topologically aggregatable
      in the routing system.

   Provider Assigned (PA) Addresses:   <STRIKE><FONT color="red">a block of IP</FONT></STRIKE>   <STRONG><FONT color="green">PA</FONT></STRONG> addresses <STRIKE><FONT color="red">that</FONT></STRIKE> are <STRONG><FONT color="green">an a address
      block</FONT></STRONG> assigned to a site by each service provider to which a site
      connects.  Typically, each block is sub-block of a service
      provider <STRIKE><FONT color="red">CIDR</FONT></STRIKE> <STRONG><FONT color="green">Classless Inter-Domain Routing (CIDR) [RFC4632]</FONT></STRONG> block and
      is aggregated into the larger block before being advertised into
      the global Internet.  Traditionally, IP multihoming has been
      implemented by each multi-homed site acquiring its own, <STRIKE><FONT color="red">globally-visible</FONT></STRIKE> <STRONG><FONT color="green">globally-
      visible</FONT></STRONG> prefix.  LISP uses only topologically-assigned and
      aggregatable address blocks for RLOCs, eliminating this
      demonstrably non-scalable practice.

   Routing Locator (RLOC):   <STRIKE><FONT color="red">the</FONT></STRIKE>   <STRONG><FONT color="green">A RLOC is an</FONT></STRONG> IPv4 or IPv6 address of an
      egress tunnel router (ETR).  <STRIKE><FONT color="red">It</FONT></STRIKE>  <STRONG><FONT color="green">A RLOC</FONT></STRONG> is the output of a EID-to-RLOC
      mapping lookup.  An EID maps to one or more RLOCs.  Typically,
      RLOCs are numbered from topologically-aggregatable blocks that are
      assigned to a site at each point to which it attaches to the
      global Internet; where the topology is defined by the connectivity
      of provider networks, RLOCs can be thought of as PA addresses.
      Multiple RLOCs can be assigned to the same ETR device or to
      multiple ETR devices at a site.

   Endpoint ID (EID):   <STRONG><FONT color="green">An EID is</FONT></STRONG> a 32-bit (for IPv4) or 128-bit (for
      IPv6) value used in the source and destination address fields of
      the first (most inner) LISP header of a packet.  The host obtains
      a destination EID the same way it obtains an destination address
      today, for example through a <STRIKE><FONT color="red">DNS</FONT></STRIKE> <STRONG><FONT color="green">Domain Name System (DNS) [RFC1034]</FONT></STRONG>
      lookup or <STRIKE><FONT color="red">SIP</FONT></STRIKE> <STRONG><FONT color="green">Session Invitation Protocol (SIP) [RFC3261]</FONT></STRONG> exchange.
      The source EID is obtained via existing mechanisms used to set a
      host's "local" IP address.  An EID is allocated to a host from an
      EID-prefix block associated with the site where the host is
      located.  An EID can be used by a host to refer to other hosts.
      EIDs MUST NOT be used as LISP RLOCs.  Note that EID blocks may be
      assigned in a hierarchical manner, independent of the network
      topology, to facilitate scaling of the mapping database.  In
      addition, an EID block assigned to a site may have site-local
      structure (subnetting) for routing within the site; this structure
      is not visible to the global routing system.  When used in
      discussions with other Locator/ID separation proposals, a LISP EID
      will be called a "LEID".  Throughout this document, any references
      to "EID" refers to an LEID.

   EID-prefix:   <STRIKE><FONT color="red">A power-of-2</FONT></STRIKE>   <STRONG><FONT color="green">An EID-prefix is a power-of-two</FONT></STRONG> block of EIDs which are
      allocated to a site by an address allocation authority.  <STRIKE><FONT color="red">EID-prefixes</FONT></STRIKE>  <STRONG><FONT color="green">EID-
      prefixes</FONT></STRONG> are associated with a set of RLOC addresses which make up
      a "database mapping".  EID-prefix allocations can be broken up
      into smaller blocks when an RLOC set is to be associated with the
      smaller <STRIKE><FONT color="red">EID-
      prefix.</FONT></STRIKE> <STRONG><FONT color="green">EID-prefix.</FONT></STRONG>  A globally routed address block (whether PI
      or PA) is not an EID-prefix.  However, a globally routed address
      block may be removed from global routing and reused as an <STRIKE><FONT color="red">EID-prefix.</FONT></STRIKE> <STRONG><FONT color="green">EID-
      prefix.</FONT></STRONG>  A site that receives an explicitly allocated EID-prefix
      may not use that EID-prefix as a globally routed prefix assigned
      to RLOCs.

   End-system:   <STRONG><FONT color="green">An end-system</FONT></STRONG> is an IPv4 or IPv6 device that originates
      packets with a single IPv4 or IPv6 header.  The end-system
      supplies an EID value for the destination address field of the IP
      header when communicating globally (i.e. outside of its routing
      domain).  An end-system can be a host computer, a switch or router
      device, or any network appliance.

   Ingress Tunnel Router (ITR):   <STRONG><FONT color="green">An ITR is</FONT></STRONG> a router which accepts an IP
      packet with a single IP header (more precisely, an IP packet that
      does not contain a LISP header).  The router treats this "inner"
      IP destination address as an EID and performs an EID-to-RLOC
      mapping lookup.  The router then prepends an "outer" IP header
      with one of its globally-routable RLOCs in the source address
      field and the result of the mapping lookup in the destination
      address field.  Note that this destination RLOC may be an
      intermediate, proxy device that has better knowledge of the <STRIKE><FONT color="red">EID-to-RLOC</FONT></STRIKE> <STRONG><FONT color="green">EID-
      to-RLOC</FONT></STRONG> mapping closer to the destination EID.  In general, an ITR
      receives IP packets from site end-systems on one side and sends
      LISP-encapsulated IP packets toward the Internet on the other
      side.

      Specifically, when a service provider prepends a LISP header for
      Traffic Engineering purposes, the router that does this is also
      regarded as an ITR.  The outer RLOC the ISP ITR uses can be based
      on the outer destination address (the originating ITR's supplied
      RLOC) or the inner destination address (the originating hosts
      supplied EID).

   TE-ITR:   <STRONG><FONT color="green">A TE-ITR</FONT></STRONG> is an ITR that is deployed in a service provider
      network that prepends an additional LISP header for Traffic
      Engineering purposes.

   Egress Tunnel Router (ETR):   <STRONG><FONT color="green">An ETR is</FONT></STRONG> a router that accepts an IP
      packet where the destination address in the "outer" IP header is
      one of its own RLOCs.  The router strips the "outer" header and
      forwards the packet based on the next IP header found.  In
      general, an ETR receives LISP-encapsulated IP packets from the
      Internet on one side and sends decapsulated IP packets to site
      end-systems on the other side.  ETR functionality does not have to
      be limited to a router device.  A server host can be the endpoint
      of a LISP tunnel as well.

   TE-ETR:   <STRONG><FONT color="green">A TE-ETR</FONT></STRONG> is an ETR that is deployed in a service provider
      network that strips an outer LISP header for Traffic Engineering
      purposes.

   xTR:   <STRONG><FONT color="green">A xTR</FONT></STRONG> is a reference to an ITR or ETR when direction of data
      flow is not part of the context description. xTR refers to the
      router that is the tunnel endpoint.  Used synonymously with the
      term "Tunnel Router".  For example, "An xTR can be located at the
      Customer Edge (CE) router", meaning both ITR and ETR functionality
      is at the CE router.

   EID-to-RLOC Cache:   <STRONG><FONT color="green">The EID-to-RLOC cache is</FONT></STRONG> a short-lived, <STRIKE><FONT color="red">on-demand</FONT></STRIKE> <STRONG><FONT color="green">on-
      demand</FONT></STRONG> table in an ITR that stores, tracks, and is responsible for
      timing-out and otherwise validating EID-to-RLOC mappings.  This
      cache is distinct from the full "database" of EID-to-RLOC
      mappings, it is dynamic, local to the ITR(s), and relatively small
      while the database is distributed, relatively static, and much
      more global in scope.

   EID-to-RLOC Database:   <STRONG><FONT color="green">The EID-to-RLOC database is</FONT></STRONG> a global
      distributed database that contains all known EID-prefix to RLOC
      mappings.  Each potential ETR typically contains a small piece of
      the database: the EID-to-RLOC mappings for the EID prefixes
      "behind" the router.  These map to one of the router's own,
      globally-visible, IP addresses.  The same database mapping entries
      MUST be configured on all ETRs for a given site.  That is, the
      EID-prefixes for the site and <STRIKE><FONT color="red">locator-
      set</FONT></STRIKE> <STRONG><FONT color="green">locator-set</FONT></STRONG> for each EID-prefix MUST
      be the same on all ETRs so they consistently send Map-Reply
      messages with the same database mapping contents.

   Recursive Tunneling:   <STRONG><FONT color="green">Recursive tunneling occurs</FONT></STRONG> when a packet has
      more than one LISP IP header.  Additional layers of tunneling may
      be employed to implement traffic engineering or other re-routing
      as needed.  When this is done, an additional "outer" LISP header
      is added and the original RLOCs are preserved in the "inner"
      header.  Any references to tunnels in this specification refers to
      dynamic encapsulating tunnels and never are they statically
      configured.

   Reencapsulating Tunnels:   <STRONG><FONT color="green">Reencapsulating tunneling occurs</FONT></STRONG> when a
      packet has no more than one LISP IP header (two IP headers total)
      and when it needs to be diverted to new RLOC, an ETR can
      decapsulate the packet (remove the LISP header) and prepends a new
      tunnel header, with new RLOC, on to the packet.  Doing this allows
      a packet to be re-routed by the <STRIKE><FONT color="red">re-
      encapsulating</FONT></STRIKE> <STRONG><FONT color="green">re-encapsulating</FONT></STRONG> router without
      adding the overhead of additional tunnel headers.  Any references
      to tunnels in this specification refers to dynamic encapsulating
      tunnels and never are they statically configured.

   LISP Header:   a term used in this document to refer to the outer
      IPv4 or IPv6 header, a UDP header, and a LISP-specific 8-byte
      header that follows the UDP header, an ITR prepends or an ETR
      strips.

   Address Family Identifier (AFI):   a term used to describe an address
      encoding in a packet.  An address family currently pertains to an
      IPv4 or IPv6 address.  See [AFI] and [RFC1700] for details.  An
      AFI value of 0 used in this specification indicates an unspecified
      encoded address where the length of the address is 0 bytes
      following the 16-bit AFI value of 0.

   Negative Mapping Entry:   <STRONG><FONT color="green">A negative mapping entry,</FONT></STRONG> also known as a
      negative cache entry, is an EID-to-RLOC entry where an EID-prefix
      is advertised or stored with no RLOCs.  That is, the locator-set
      for the EID-to-RLOC entry is empty or has an encoded locator count
      of 0.  This type of entry could be used to describe a prefix from
      a non-LISP site, which is explicitly not in the mapping database.
      There are a set of well defined actions that are encoded in a
      Negative Map-Reply.

   Data Probe:   <STRONG><FONT color="green">A data-probe is</FONT></STRONG> a LISP-encapsulated data packet where
      the inner header destination address equals the outer header
      destination address used to trigger a Map-Reply by a decapsulating
      ETR.  In addition, the original packet is decapsulated and
      delivered to the destination host.  A Data Probe is used in some
      of the mapping database designs to "probe" or request a Map-Reply
      from an ETR; in other cases, Map-Requests are used.  See each
      mapping database design for details.

   Proxy ITR (PITR):   <STRONG><FONT color="green">A PITR is</FONT></STRONG> also known as a PTR is defined and
      described in [INTERWORK], a PITR acts like an ITR but does so on
      behalf of <STRIKE><FONT color="red">non-
      LISP</FONT></STRIKE> <STRONG><FONT color="green">non-LISP</FONT></STRONG> sites which send packets to destinations at
      LISP sites.

   Proxy ETR (PETR):   <STRONG><FONT color="green">A PETR</FONT></STRONG> is defined and described in [INTERWORK], a
      PETR acts like an ETR but does so on behalf of LISP sites which
      send packets to destinations at non-LISP sites.

   Route-returnability:  is an assumption that the underlying routing
      system will deliver packets to the destination.  When combined
      with a nonce that is provided by a sender and returned by a
      receiver limits off-path data insertion.

   LISP site:  is a set of routers in an edge network that are under a
      single technical administration.  LISP routers which reside in the
      edge network are the demarcation points to separate the edge
      network from the core network.

   Client-side:  a term used in this document to indicate a connection
      initiation attempt by an EID.  The ITR(s) at the LISP site are the
      first to get involved in obtaining database map cache entries by
      sending Map-Request messages.

   Server-side:  a term used in this document to indicate a connection
      initiation attempt is being accepted for a destination EID.  The
      ETR(s) at the destination LISP site are the first to send Map-
      Replies to the source site initiating the connection.  The ETR(s)
      at this destination site can obtain mappings by gleaning
      information from Map-Requests, Data-Probes, or encapsulated
      packets.

4.  Basic Overview

   One key concept of LISP is that end-systems (hosts) operate the same
   way they do today.  The IP addresses that hosts use for tracking
   sockets, connections, and for sending and receiving packets do not
   change.  In LISP terminology, these IP addresses are called Endpoint
   Identifiers (EIDs).

   Routers continue to forward packets based on IP destination
   addresses.  When a packet is LISP encapsulated, these addresses are
   referred to as Routing Locators (RLOCs).  Most routers along a path
   between two hosts will not change; they continue to perform routing/
   forwarding lookups on the destination addresses.  For routers between
   the source host and the ITR as well as routers from the ETR to the
   destination host, the destination address is an EID.  For the routers
   between the ITR and the ETR, the destination address is an RLOC.

   <STRIKE><FONT color="red">This design introduces</FONT></STRIKE>

   <STRONG><FONT color="green">Another key LISP concept is the</FONT></STRONG> "Tunnel <STRIKE><FONT color="red">Routers", which</FONT></STRIKE> <STRONG><FONT color="green">Router".  A tunnel router</FONT></STRONG>
   prepends LISP headers on host-originated packets and strip them prior
   to final delivery to their destination.  The IP addresses in this
   "outer header" are RLOCs.  During end-to-end packet exchange between
   two Internet hosts, an ITR prepends a new LISP header to each packet
   and an egress tunnel router strips the new header.  The ITR performs
   EID-to-RLOC lookups to determine the routing path to the ETR, which
   has the RLOC as one of its IP addresses.

   Some basic rules governing LISP are:

   o  End-systems (hosts) only send to addresses which are EIDs.  They
      don't know addresses are EIDs versus RLOCs but assume packets get
      to LISP routers, which in turn, deliver packets to the destination
      the end-system has specified.

   o  EIDs are always IP addresses assigned to hosts.

   o  LISP routers mostly deal with Routing Locator addresses.  See
      details later in Section 4.1 to clarify what is meant by "mostly".

   o  RLOCs are always IP addresses assigned to routers; preferably,
      topologically-oriented addresses from provider CIDR blocks.

   o  When a router originates packets it may use as a source address
      either an EID or RLOC.  When acting as a host (e.g. when
      terminating a transport session such as SSH, TELNET, or SNMP), it
      may use an EID that is explicitly assigned for that purpose.  An
      EID that identifies the router as a host MUST NOT be used as an
      RLOC; an EID is only routable within the scope of a site.  A
      typical BGP configuration might demonstrate this "hybrid" EID/RLOC
      usage where a router could use its "host-like" EID to terminate
      iBGP sessions to other routers in a site while at the same time
      using RLOCs to terminate eBGP sessions to routers outside the
      site.

   o  EIDs are not expected to be usable for global end-to-end
      communication in the absence of an EID-to-RLOC mapping operation.
      They are expected to be used locally for intra-site communication.

   o  EID prefixes are likely to be hierarchically assigned in a manner
      which is optimized for administrative convenience and to
      facilitate scaling of the EID-to-RLOC mapping database.  The
      hierarchy is based on a address allocation hierarchy which is <STRIKE><FONT color="red">not
      dependent on</FONT></STRIKE>
      <STRONG><FONT color="green">independent of</FONT></STRONG> the network topology.

   o  EIDs may also be structured (subnetted) in a manner suitable for
      local routing within an autonomous system.

   An additional LISP header may be prepended to packets by a <STRIKE><FONT color="red">transit
   router (i.e.  TE-ITR)</FONT></STRIKE> <STRONG><FONT color="green">TE-ITR</FONT></STRONG>
   when re-routing of the path for a packet is desired.  An obvious
   instance of this would be an ISP router that needs to perform traffic
   engineering for packets flowing through its network.  In such a
   situation, termed Recursive Tunneling, an ISP transit acts as an
   additional ingress tunnel router and the RLOC it uses for the new
   prepended header would be either a TE-ETR within the ISP (along
   intra-ISP traffic engineered path) or a TE-ETR within another ISP (an
   inter-ISP traffic engineered path, where an agreement to build such a
   path exists).

   <STRIKE><FONT color="red">This specification mandates that no more than two LISP headers get
   prepended</FONT></STRIKE>

   <STRONG><FONT color="green">In order</FONT></STRONG> to <STRIKE><FONT color="red">a packet.  This avoids</FONT></STRIKE> <STRONG><FONT color="green">avoid</FONT></STRONG> excessive packet overhead as well as possible
   encapsulation <STRIKE><FONT color="red">loops.</FONT></STRIKE> <STRONG><FONT color="green">loops, this document mandates that a maximum of two
   LISP headers can be prepended to a packet.</FONT></STRONG>  It is believed two
   headers is sufficient, where the first prepended header is used at a
   site for Location/Identity separation and second prepended header is
   used inside a service provider for Traffic Engineering purposes.

   Tunnel Routers can be placed fairly flexibly in a multi-AS topology.
   For example, the ITR for a particular end-to-end packet exchange
   might be the first-hop or default router within a site for the source
   host.  Similarly, the egress tunnel router might be the last-hop
   router directly-connected to the destination host.  Another example,
   perhaps for a VPN service out-sourced to an ISP by a site, the ITR
   could be the site's border router at the service provider attachment
   point.  Mixing and matching of site-operated, ISP-operated, and other
   tunnel routers is allowed for maximum flexibility.  See Section 8 for
   more details.

4.1.  Packet Flow Sequence

   This section provides an example of the unicast packet flow with the
   following conditions:

   o  Source host "host1.abc.com" is sending a packet to
      "host2.xyz.com", exactly what host1 would do if the site was not
      using LISP.

   o  Each site is multi-homed, so each tunnel router has an address
      (RLOC) assigned from the service provider address block for each
      provider to which that particular tunnel router is attached.

   o  The ITR(s) and ETR(s) are directly connected to the source and
      destination, respectively, but the source and destination can be
      located anywhere in LISP site.

   o  Map-Requests can be sent on the underlying routing system topology
      <STRIKE><FONT color="red">(LISP 1.0)</FONT></STRIKE>
      or over an alternative topology [ALT].

   o  Map-Replies are sent on the underlying routing system topology.

   Client host1.abc.com wants to communicate with server host2.xyz.com:

   1.  host1.abc.com wants to open a TCP connection to host2.xyz.com.
       It does a DNS lookup on host2.xyz.com.  An A/AAAA record is
       returned.  This address is the destination EID.  The locally-
       assigned address of host1.abc.com is used as the source EID.  An
       IPv4 or IPv6 packet is built and forwarded through the LISP site
       as a normal IP packet until it reaches a LISP ITR.

   2.  The LISP ITR must be able to map the EID destination to an RLOC
       of one of the ETRs at the destination site.  The specific method
       used to do this is not described in this example.  See [ALT] or
       [CONS] for possible solutions.

   3.  The ITR will send a LISP Map-Request.  Map-Requests SHOULD be
       rate-limited.

   4.  <STRIKE><FONT color="red">In LISP 1.0,</FONT></STRIKE>  <STRONG><FONT color="green">When an alternate mapping system is not in use,</FONT></STRONG> the Map-Request
       packet is routed through the underlying routing system.  <STRIKE><FONT color="red">In LISP 1.5,</FONT></STRIKE>
       <STRONG><FONT color="green">Otherwise,</FONT></STRONG> the Map-Request packet is routed on an alternate
       logical topology.  In either case, when the Map-Request arrives
       at one of the ETRs at the destination site, it will process the
       packet as a control message.

   5.  The ETR looks at the destination EID of the Map-Request and
       matches it against the prefixes in the ETR's configured EID-to-
       RLOC mapping database.  This is the list of EID-prefixes the ETR
       is supporting for the site it resides in.  If there is no match,
       the Map-Request is dropped.  Otherwise, a LISP Map-Reply is
       returned to the ITR.

   6.  The ITR receives the Map-Reply message, parses the message (to
       check for format validity) and stores the mapping information
       from the packet.  This information is <STRIKE><FONT color="red">put</FONT></STRIKE> <STRONG><FONT color="green">stored</FONT></STRONG> in the ITR's EID-to-
       RLOC mapping <STRIKE><FONT color="red">cache (this is</FONT></STRIKE> <STRONG><FONT color="green">cache.  Note that</FONT></STRONG> the <STRONG><FONT color="green">map cache is an</FONT></STRONG> on-demand <STRIKE><FONT color="red">cache, the</FONT></STRIKE>
       <STRONG><FONT color="green">cache.  An ITR will manage its map</FONT></STRONG> cache <STRIKE><FONT color="red">where
       entries time out due to inactivity).</FONT></STRIKE> <STRONG><FONT color="green">in such a way that
       optimizes for its resource constraints.</FONT></STRONG>

   7.  Subsequent packets from host1.abc.com to host2.xyz.com will have
       a LISP header prepended by the ITR using the appropriate RLOC as
       the LISP header destination address learned from the ETR.  <STRIKE><FONT color="red">Note,</FONT></STRIKE>  <STRONG><FONT color="green">Note</FONT></STRONG>
       the packet may be sent to a different ETR than the one which
       returned the Map-Reply due to the source site's hashing policy or
       the destination site's locator-set policy.

   8.  The ETR receives these packets directly (since the destination
       address is one of its assigned IP addresses), strips the LISP
       header and forwards the packets to the attached destination host.

   In order to eliminate the need for a mapping lookup in the reverse
   direction, an ETR MAY create a cache entry that maps the source EID
   (inner header source IP address) to the source RLOC (outer header
   source IP address) in a received LISP packet.  Such a cache entry is
   termed a "gleaned" mapping and only contains a single RLOC for the
   EID in question.  More complete information about additional RLOCs
   SHOULD be verified by sending a LISP Map-Request for that EID.  Both
   ITR and the ETR may also influence the decision the other makes in
   selecting an RLOC.  See Section 6 for more details.

5.  LISP Encapsulation Details

   Since additional tunnel headers are prepended, the packet becomes
   larger and can exceed the MTU of any link traversed from the ITR to
   the ETR.  It is recommended in IPv4 that packets do not get
   fragmented as they are encapsulated by the ITR.  Instead, the packet
   is dropped and an ICMP Too Big message is returned to the source.

   <STRIKE><FONT color="red">Based on informal surveys of large ISP network configurations, it
   appears that most transit paths can accommodate a path MTU of at
   least 4470 bytes.  However, the LISP deployment effort has included
   collecting data during its pilot phase to confirm or refute this
   assumption.  These deployments have shown that (typically the edge)
   of the network has a non-trivial number of lower MTU (1500 byte)
   links.</FONT></STRIKE>

   This specification recommends that implementations support for one of
   the proposed fragmentation and reassembly schemes.  These two simple
   existing schemes are detailed in Section 5.4.

5.1.  LISP IPv4-in-IPv4 Header Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   OH  |  Time to Live | Protocol = 17 |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                    Source Routing Locator                     |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4341        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   IH  |  Time to Live |    Protocol   |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                           Source EID                          |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                         Destination EID                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.2.  LISP IPv6-in-IPv6 Header Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |   |         Payload Length        | Next Header=17|   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   O   +                                                               +
   u   |                                                               |
   t   +                     Source Routing Locator                    +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                  Destination Routing Locator                  +
   |   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4341        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   /   |         Payload Length        |  Next Header  |   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   I   +                                                               +
   n   |                                                               |
   n   +                          Source EID                           +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                        Destination EID                        +
   \   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.3.  Tunnel Header Field Descriptions

   Inner Header:  <STRONG><FONT color="green">The inner header</FONT></STRONG> is the <STRIKE><FONT color="red">inner header, preserved from</FONT></STRIKE> <STRONG><FONT color="green">header on</FONT></STRONG> the datagram
      received from the originating host.  The source and destination IP
      addresses are EIDs.

   Outer Header:  <STRIKE><FONT color="red">is the</FONT></STRIKE>  <STRONG><FONT color="green">The</FONT></STRONG> outer header <STRONG><FONT color="green">is a new header</FONT></STRONG> prepended by an ITR.
      The address fields contain RLOCs obtained from the ingress
      router's <STRIKE><FONT color="red">EID-to-
      RLOC</FONT></STRIKE> <STRONG><FONT color="green">EID-to-RLOC</FONT></STRONG> cache.  The IP protocol number is "UDP (17)"
      from [RFC0768].  The DF bit of the Flags field is set to 0 when
      the method in Section 5.4.1 is used and set to 1 when the method
      in Section 5.4.2 is used.

   UDP Header:  <STRONG><FONT color="green">The UDP header</FONT></STRONG> contains a ITR selected source port when
      encapsulating a packet.  See Section 6.5 for details on the hash
      algorithm used to select a source port based on the 5-tuple of the
      inner header.  The destination port MUST be set to the well-known
      IANA assigned port value 4341.

   UDP Checksum:  <STRIKE><FONT color="red">this</FONT></STRIKE>  <STRONG><FONT color="green">The UDP checksum</FONT></STRONG> field SHOULD be transmitted as zero
      by an ITR for either IPv4 [RFC0768] or IPv6 encapsulation
      [UDP-TUNNELS].  When a packet with a zero UDP checksum is received
      by an ETR, the ETR MUST accept the packet for decapsulation.  When
      an ITR transmits a non-zero value for the UDP checksum, it MUST
      send a correctly computed value in this field.  When an ETR
      receives a packet with a non-zero UDP checksum, it MAY choose to
      verify the checksum value.  If it chooses to perform such
      verification, and the verification fails, the packet MUST be
      silently dropped.  If the ETR chooses not to perform the
      verification, or performs the verification successfully, the
      packet MUST be accepted for decapsulation.  The handling of UDP
      checksums for all tunneling protocols, including LISP, is under
      active discussion within the IETF.  When that discussion
      concludes, any necessary changes will be made to align LISP with
      the outcome of the broader discussion.

   UDP Length:  <STRONG><FONT color="green">The UDP length field is</FONT></STRONG> for an IPv4 encapsulated packet,
      the inner header Total Length plus the UDP and LISP header lengths
      are used.  For an IPv6 encapsulated packet, the inner header
      Payload Length plus the size of the IPv6 header (40 bytes) plus
      the size of the UDP and LISP headers are used.  The UDP header
      length is 8 bytes.

   N: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The N bit</FONT></STRONG> is the nonce-present bit.  When this bit is set to 1,
      the low-order 24-bits of the first 32-bits of the LISP header
      contains a Nonce.  See Section 6.3.1 for details.  Both N and V
      bits MUST NOT be set in the same packet.  If they are, a
      decapsulating ETR MUST treat the "Nonce/Map-Version" field as
      having a Nonce value present.

   L: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The L bit</FONT></STRONG> is the Locator-Status-Bits field enabled bit.  When this
      bit is set to 1, the Locator-Status-Bits in the second 32-bits of
      the LISP header are in use.

     x 1 x x 0 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                      Locator Status Bits                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   E: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The E bit</FONT></STRONG> is the echo-nonce-request bit.  When this bit is set to
      1, the N bit MUST be 1.  This bit SHOULD be ignored and has no
      meaning when the N bit is set to 0.  See Section 6.3.1 for
      details.

   V: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The B bit</FONT></STRONG> is the Map-Version present bit.  When this bit is set to
      1, the N bit MUST be 0.  Refer to Section 6.6.3 for more details.
      This bit indicates that the first 4 bytes of the LISP header is
      encoded as:

     0 x 0 1 x x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|  Source Map-Version   |   Dest Map-Version    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID/Locator Status Bits               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   I: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The I bit</FONT></STRONG> is the Instance ID bit.  See Section 5.5 for more
      details.  When this bit is set to 1, the Locator Status Bits field
      is reduced to 8-bits and the high-order 24-bits are used as an
      Instance ID.  If the L-bit is set to 0, then the low-order 8 bits
      are transmitted as zero and ignored on receipt.  The format of the
      last 4 bytes of the LISP header would look like:

     x x x x 1 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID                   |     LSBs      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   flags:  <STRIKE><FONT color="red">this</FONT></STRIKE>  <STRONG><FONT color="green">The flags field is a</FONT></STRONG> 3-bit field is reserved for future flag
      use.  It is set to 0 on transmit and ignored on receipt.

   LISP Nonce:  <STRONG><FONT color="green">The LISP nonce field</FONT></STRONG> is a 24-bit value that is randomly
      generated by an ITR when the N-bit is set to 1.  The nonce is also
      used when the E-bit is set to request the nonce value to be echoed
      by the other side when packets are returned.  When the E-bit is
      clear but the N-bit is set, a remote ITR is either echoing a
      previously requested echo-nonce or providing a random nonce.  See
      Section 6.3.1 for more details.

   LISP Locator Status Bits:  <STRONG><FONT color="green">The locator status bits field</FONT></STRONG> in the LISP
      header <STRIKE><FONT color="red">are</FONT></STRIKE> <STRONG><FONT color="green">is</FONT></STRONG> set by an ITR to indicate to an ETR the up/down status
      of the Locators in the source site.  Each RLOC in a Map-Reply is
      assigned an ordinal value from 0 to n-1 (when there are n RLOCs in
      a mapping entry).  The Locator Status Bits are numbered from 0 to
      n-1 from the least significant bit of field.  The field is 32-bits
      when the I-bit is set to 0 and is 8 bits when the I-bit is set to
      1.  When a Locator Status Bit is set to 1, the ITR is indicating
      to the ETR the RLOC associated with the bit ordinal has up status.
      See Section 6.3 for details on how an ITR can determine the status
      of other ITRs at the same site.  When a site has multiple <STRIKE><FONT color="red">EID-prefixes</FONT></STRIKE> <STRONG><FONT color="green">EID-
      prefixes</FONT></STRONG> which result in multiple mappings (where each could have
      a different locator-set), the Locator Status Bits setting in an
      encapsulated packet MUST reflect the mapping for the EID-prefix
      that the <STRIKE><FONT color="red">inner-
      header</FONT></STRIKE> <STRONG><FONT color="green">inner-header</FONT></STRONG> source EID address matches.

   When doing ITR/PITR encapsulation:

   o  The outer header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the inner header Time to Live
      field.

   o  The outer header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the inner header
      Type of Service field (with one caveat, see below).

   When doing ETR/PETR decapsulation:

   o  The inner header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the outer header Time to Live
      field, when the Time to Live field of the outer header is less
      than the Time to Live of the inner header.  Failing to perform
      this <STRIKE><FONT color="red">check,</FONT></STRIKE> <STRONG><FONT color="green">check</FONT></STRONG> can cause the Time to Live of the inner header to
      increment across encapsulation/decapsulation cycle.  This <STRONG><FONT color="green">check</FONT></STRONG> is
      also performed when doing initial encapsulation when a packet
      comes to an ITR or PITR destined for a LISP site.

   o  The inner header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the outer header
      Type of Service field (with one caveat, see below).

   Note if an ETR/PETR is also an ITR/PITR and choose to reencapsulate
   after decapsulating, the net effect of this is that the new outer
   header will carry the same Time to Live as the old outer header.

   Copying the TTL serves two purposes: first, it preserves the distance
   the host intended the packet to travel; second, and more importantly,
   it provides for suppression of looping packets in the event there is
   a loop of concatenated tunnels due to misconfiguration.  See
   Section 9.3 for TTL exception handling for traceroute packets.

   The ECN field occupies bits 6 and 7 of both the IPv4 Type of Service
   field and the IPv6 Traffic Class field [RFC3168].  The ECN field
   requires special treatment in order to avoid discarding indications
   of congestion [RFC3168].  ITR encapsulation MUST copy the 2-bit ECN
   field from the inner header to the outer header.  Re-encapsulation
   MUST copy the 2-bit ECN field from the stripped outer header to the
   new outer header.  If the ECN field contains a congestion indication
   codepoint (the value is '11', the Congestion Experienced (CE)
   codepoint), then ETR decapsulation MUST copy the 2-bit ECN field from
   the stripped outer header to the surviving inner header that is used
   to forward the packet beyond the ETR.  These requirements preserve
   Congestion Experienced (CE) indications when a packet that uses ECN
   traverses a LISP tunnel and becomes marked with a CE indication due
   to congestion between the tunnel endpoints.

5.4.  Dealing with Large Encapsulated Packets

   <STRIKE><FONT color="red">In the event that the MTU issues mentioned above prove to be more
   serious than expected, this</FONT></STRIKE>

   <STRONG><FONT color="green">This</FONT></STRONG> section proposes <STRIKE><FONT color="red">2</FONT></STRIKE> <STRONG><FONT color="green">two</FONT></STRONG> simple mechanisms to deal with <STRIKE><FONT color="red">large packets.  One is stateless using IP fragmentation and</FONT></STRIKE> <STRONG><FONT color="green">packets that
   exceed</FONT></STRONG> the <STRIKE><FONT color="red">other is stateful using Path</FONT></STRIKE> <STRONG><FONT color="green">path</FONT></STRONG> MTU <STRIKE><FONT color="red">Discovery [RFC1191].</FONT></STRIKE> <STRONG><FONT color="green">between the ITR and ETR.</FONT></STRONG>

   It is left to the implementor to decide if the stateless or stateful
   mechanism <STRIKE><FONT color="red">SHOULD</FONT></STRIKE> <STRONG><FONT color="green">should</FONT></STRONG> be implemented.  Both or neither can be <STRIKE><FONT color="red">decided as
   well</FONT></STRIKE> <STRONG><FONT color="green">used</FONT></STRONG> since
   it is a local decision in the ITR regarding how to deal with MTU <STRIKE><FONT color="red">issues.  Sites</FONT></STRIKE>
   <STRONG><FONT color="green">issues, and sites</FONT></STRONG> can interoperate with differing mechanisms.

   Both stateless and stateful mechanisms also apply to Reencapsulating
   and Recursive Tunneling.  So any actions below referring to an ITR
   also apply to an TE-ITR.

5.4.1.  A Stateless Solution to MTU Handling

   An ITR stateless solution to handle MTU issues is described as
   follows:

   1.  Define an architectural constant S for the maximum size of a
       packet, in bytes, an ITR would like to receive from a source
       inside of its site.

   2.  Define L to be the maximum size, in bytes, a packet of size S
       would be after the ITR prepends the LISP header, UDP header, and
       outer network layer header of size H.

   3.  Calculate: S + H = L.

   When an ITR receives a packet from a site-facing interface and adds H
   bytes worth of encapsulation to yield a packet size greater than L
   bytes, it resolves the MTU issue by first splitting the original
   packet into 2 equal-sized fragments.  A LISP header is then prepended
   to each fragment.  <STRIKE><FONT color="red">This will ensure that</FONT></STRIKE>  <STRONG><FONT color="green">The size of</FONT></STRONG> the <STRIKE><FONT color="red">new,</FONT></STRIKE> encapsulated
   <STRIKE><FONT color="red">packets are of size</FONT></STRIKE> <STRONG><FONT color="green">fragments is then</FONT></STRONG>
   (S/2 + H), which is <STRIKE><FONT color="red">always below</FONT></STRIKE> <STRONG><FONT color="green">less than</FONT></STRONG> the <STRIKE><FONT color="red">effective
   tunnel MTU.</FONT></STRIKE> <STRONG><FONT color="green">ITR's estimate of the path MTU
   between the ITR and its correspondent ETR.</FONT></STRONG>

   When an ETR receives encapsulated fragments, it treats them as two
   individually encapsulated packets.  It strips the LISP headers then
   forwards each fragment to the destination host of the destination
   site.  The two fragments are reassembled at the destination host into
   the single IP datagram that was originated by the source host.

   This behavior is performed by the ITR when the source host originates
   a packet with the DF field of the IP header is set to 0.  When the DF
   field of the IP header is set to 1, or the packet is an IPv6 packet
   originated by the source host, the ITR will drop the packet when the
   size is greater than L, and sends an ICMP Too Big message to the
   source with a value of S, where S is (L - H).

   When the outer header encapsulation uses an IPv4 header, an
   implementation SHOULD set the DF bit to 1 so ETR fragment reassembly
   can be avoided.  An implementation MAY set the DF bit in such headers
   to 0 if it has good reason to believe there are unresolvable path MTU
   issues between the sending ITR and the receiving ETR.

   This specification recommends that L be defined as 1500.

5.4.2.  A Stateful Solution to MTU Handling

   An ITR stateful solution to handle MTU issues is described as follows
   and was first introduced in [OPENLISP]:

   1.  The ITR will keep state of the effective MTU for each locator per
       mapping cache entry.  The effective MTU is what the core network
       can deliver along the path between ITR and ETR.

   2.  When an IPv6 encapsulated packet or an IPv4 encapsulated packet
       with DF bit set to 1, exceeds what the core network can deliver,
       one of the intermediate routers on the path will send an ICMP Too
       Big message to the ITR.  The ITR will parse the ICMP message to
       determine which locator is affected by the effective MTU change
       and then record the new effective MTU value in the mapping cache
       entry.

   3.  When a packet is received by the ITR from a source inside of the
       site and the size of the packet is greater than the effective MTU
       stored with the mapping cache entry associated with the
       destination EID the packet is for, the ITR will send an ICMP Too
       Big message back to the source.  The packet size advertised by
       the ITR in the ICMP Too Big message is the effective MTU minus
       the LISP encapsulation length.

   Even though this mechanism is stateful, it has advantages over the
   stateless IP fragmentation mechanism, by not involving the
   destination host with reassembly of ITR fragmented packets.

5.5.  Using Virtualization and Segmentation with LISP

   When multiple organizations inside of a LISP site are using private
   addresses [RFC1918] as EID-prefixes, their address spaces MUST remain
   segregated due to possible address duplication.  An Instance ID in
   the address encoding can aid in making the entire AFI based address
   unique.  See [LCAF] for details for a possible address encoding.  The
   LCAF encoding is an area for further study.

   An Instance ID can be carried in a LISP encapsulated packet.  An ITR
   that prepends a LISP header, will copy a 24-bit value, used by the
   LISP router to uniquely identify the address space.  The value is
   copied to the Instance ID field of the LISP header and the I-bit is
   set to 1.

   When an ETR <STRIKE><FONT color="red">decapsulate</FONT></STRIKE> <STRONG><FONT color="green">decapsulates</FONT></STRONG> a packet, the Instance ID from the LISP
   header is used as a table identifier to locate the forwarding table
   to use for the inner destination EID lookup.

   <STRIKE><FONT color="red">Some examples of the 24-bit value to copy or map into the Instance ID
   field could be</FONT></STRIKE>

   <STRONG><FONT color="green">For example,</FONT></STRONG> a 802.1Q VLAN tag or <STRIKE><FONT color="red">a</FONT></STRIKE> VPN <STRIKE><FONT color="red">value associated with a
   configured VRF.

6.</FONT></STRIKE> <STRONG><FONT color="green">identifier could be used as a
   24-bit Instance ID.

6.</FONT></STRONG>  EID-to-RLOC Mapping

6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats

   The following new UDP packet types are used to retrieve EID-to-RLOC
   mappings:

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version|  IHL  |Type of Service|          Total Length         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Identification        |Flags|      Fragment Offset    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Time to Live | Protocol = 17 |         Header Checksum       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Source Routing Locator                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version| Traffic Class |           Flow Label                  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Payload Length        | Next Header=17|   Hop Limit   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                     Source Routing Locator                    +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                  Destination Routing Locator                  +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The LISP UDP-based messages are the Map-Request and Map-Reply
   messages.  When a UDP Map-Request is sent, the UDP source port is
   chosen by the sender and the destination UDP port number is set to
   4342.  When a UDP Map-Reply is sent, the source UDP port number is
   set to 4342 and the destination UDP port number is copied from the
   source port of either the Map-Request or the invoking data packet.

   The UDP Length field will reflect the length of the UDP header and
   the LISP Message payload.

   The UDP Checksum is computed and set to non-zero for Map-Request,
   Map-Reply, Map-Register and ECM control messages.  It MUST be checked
   on receipt and if the checksum fails, the packet MUST be dropped.

   LISP-CONS [CONS] <STRIKE><FONT color="red">use</FONT></STRIKE> <STRONG><FONT color="green">uses</FONT></STRONG> TCP to send LISP control messages.  The format
   of control messages includes the UDP header so the checksum and
   length fields can be used to protect and delimit message boundaries.

   This main LISP specification is the authoritative source for message
   format definitions for the Map-Request and Map-Reply messages.

6.1.1.  LISP Packet Type Allocations

   This section will be the authoritative source for allocating LISP
   Type values.  Current allocations are:

       Reserved:                          0    b'0000'
       LISP Map-Request:                  1    b'0001'
       LISP Map-Reply:                    2    b'0010'
       LISP Map-Register:                 3    b'0011'
       LISP Encapsulated Control Message: 8    b'1000'

6.1.2.  Map-Request Message Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=1 |A|M|P|S|       Reserved      |   IRC   | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Source-EID-AFI        |   Source EID Address  ...     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI 1        |    ITR-RLOC Address 1  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                              ...                              |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI n        |    ITR-RLOC Address n  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |   Reserved    | EID mask-len  |        EID-prefix-AFI         |
   Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                       EID-prefix  ...                         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Map-Reply Record  ...                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   1 (Map-Request)

   A: This is an authoritative bit, which is set to 0 for UDP-based Map-
      Requests sent by an ITR.

   M: When set, it indicates a Map-Reply Record segment is included in
      the Map-Request.

   P: This is the probe-bit which indicates that a Map-Request SHOULD be
      treated as a locator reachability probe.  The receiver SHOULD
      respond with a Map-Reply with the probe-bit set, indicating the
      Map-Reply is a locator reachability probe reply, with the nonce
      copied from the Map-Request.  See Section 6.3.2 for more details.

   S: This is the SMR bit.  See Section 6.6.2 for details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   IRC:  This 5-bit field is the ITR-RLOC Count which encodes the
      <STRONG><FONT color="green">additional</FONT></STRONG> number of (ITR-RLOC-AFI, ITR-RLOC Address) fields
      present in this message.  <STRONG><FONT color="green">At least one (ITR-RLOC-AFI, ITR-RLOC-
      Address) pair must always be encoded.</FONT></STRONG>  Multiple ITR-RLOC Address
      fields are used so a <STRIKE><FONT color="red">Map-
      Replier</FONT></STRIKE> <STRONG><FONT color="green">Map-Replier</FONT></STRONG> can select which destination
      address to use for a <STRIKE><FONT color="red">Map-
      Reply.</FONT></STRIKE> <STRONG><FONT color="green">Map-Reply.</FONT></STRONG>  The IRC value ranges from 0 to
      31, <STRIKE><FONT color="red">where IRC</FONT></STRIKE> <STRONG><FONT color="green">and for a</FONT></STRONG> value <STRIKE><FONT color="red">0 means
      an ITR-RLOC address count</FONT></STRIKE> of 1, <STRIKE><FONT color="red">an IRC value of 1 means an ITR-
      RLOC address count of 2,</FONT></STRIKE> <STRONG><FONT color="green">there are 2 ITR-RLOC addresses encoded</FONT></STRONG>
      and so on up to <STRIKE><FONT color="red">an IRC value of 31,</FONT></STRIKE> <STRONG><FONT color="green">31</FONT></STRONG> which
      <STRIKE><FONT color="red">means an ITR-RLOC address count</FONT></STRIKE> <STRONG><FONT color="green">encodes a total</FONT></STRONG> of <STRIKE><FONT color="red">32.</FONT></STRIKE> <STRONG><FONT color="green">32 ITR-RLOC addresses.</FONT></STRONG>

   Record Count:  The number of records in this Map-Request message.  A
      record is comprised of the portion of the packet that is labeled
      'Rec' above and occurs the number of times equal to Record Count.
      For this version of the protocol, a receiver MUST accept and
      process Map-Requests that contain one or more records, but a
      sender MUST only send Map-Requests containing one record.  Support
      for requesting multiple EIDs in a single Map-Request message will
      be specified in a future version of the protocol.

   Nonce:  An 8-byte random value created by the sender of the Map-
      Request.  This nonce will be returned in the Map-Reply.  The
      security of the LISP mapping protocol depends critically on the
      strength of the nonce in the Map-Request message.  The nonce
      SHOULD be generated by a properly seeded pseudo-random (or strong
      random) source.  See [RFC4086] for advice on generating security-
      sensitive random data.

   Source-EID-AFI:  Address family of the "Source EID Address" field.

   Source EID Address:  This is the EID of the source host which
      originated the packet which is invoking this Map-Request.  When
      Map-Requests are used for refreshing a map-cache entry or for
      RLOC-probing, an AFI value 0 is used and this field is of zero
      length.

   ITR-RLOC-AFI:  Address family of the "ITR-RLOC Address" field that
      follows this field.

   ITR-RLOC Address:  Used to give the ETR the option of selecting the
      destination address from any address family for the Map-Reply
      message.  This address MUST be a routable RLOC address.

   EID mask-len:  Mask length for EID prefix.

   EID-prefix-AFI:  Address family of EID-prefix according to [RFC5226]

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.  When a Map-Request is sent by an ITR because a
      data packet is received for a destination where there is no
      mapping entry, the EID-prefix is set to the destination IP address
      of the data packet.  And the 'EID mask-len' is set to 32 or 128
      for IPv4 or IPv6, respectively.  When an xTR wants to query a site
      about the status of a mapping it already has cached, the EID-
      prefix used in the Map-Request has the same mask-length as the
      EID-prefix returned from the site when it sent a Map-Reply
      message.

   Map-Reply Record:  When the M bit is set, this field is the size of a
      single "Record" in the Map-Reply format.  This Map-Reply record
      contains the EID-to-RLOC mapping entry associated with the Source
      EID.  This allows the ETR which will receive this Map-Request to
      cache the data if it chooses to do so.

   Mapping Protocol Data:  See [CONS] for details.  This field is
      optional and present when the UDP length indicates there is enough
      space in the packet to include it.

6.1.3.  EID-to-RLOC UDP Map-Request Message

   A Map-Request is sent from an ITR when it needs a mapping for an EID,
   wants to test an RLOC for reachability, or wants to refresh a mapping
   before TTL expiration.  For the initial case, the destination IP
   address used for the Map-Request is the destination-EID from the
   packet which had a mapping cache lookup failure.  For the latter 2
   cases, the destination IP address used for the Map-Request is one of
   the RLOC addresses from the locator-set of the map cache entry.  The
   source address is either an IPv4 or IPv6 RLOC address depending if
   the Map-Request is using an IPv4 versus IPv6 header, respectively.
   In all cases, the UDP source port number for the Map-Request message
   is <STRIKE><FONT color="red">a randomly allocated</FONT></STRIKE> <STRONG><FONT color="green">an ITR/PITR selected</FONT></STRONG> 16-bit value and the UDP destination port
   number is set to the well-known destination port number 4342.  A
   successful Map-Reply updates the cached set of RLOCs associated with
   the EID prefix range.

   One or more Map-Request (ITR-RLOC-AFI, ITR-RLOC-Address) fields MUST
   be filled in by the ITR.  The number of fields (minus 1) encoded MUST
   be placed in the IRC field.  The ITR MAY include all locally
   configured locators in this list or just provide one locator address
   from each address family it supports.  If the ITR erroneously
   provides no ITR-RLOC addresses, the Map-Replier MUST drop the Map-
   Request.

   Map-Requests can also be LISP encapsulated using UDP destination port
   4342 with a LISP type value set to "Encapsulated Control Message",
   when sent from an ITR to a Map-Resolver.  Likewise, Map-Requests are
   LISP encapsulated the same way from a Map-Server to an ETR.  Details
   on encapsulated Map-Requests and Map-Resolvers can be found in
   [LISP-MS].

   Map-Requests MUST be rate-limited.  It is recommended that a Map-
   Request for the same EID-prefix be sent no more than once per second.

   An ITR that is configured with mapping database information (i.e. it
   is also an ETR) may optionally include those mappings in a Map-
   Request.  When an ETR configured to accept and verify such
   "piggybacked" mapping data receives such a Map-Request and it does
   not have this mapping in the map-cache, it may originate a "verifying
   Map-Request", addressed to the map-requesting ITR.  If the ETR has a
   map-cache entry that matches the "piggybacked" EID and the RLOC is in
   the locator-set for the entry, then it may send the "verifying Map-
   Request" directly to the originating Map-Request source.  If the RLOC
   is not in the locator-set, then the ETR MUST send the "verifying Map-
   Request" to the "piggybacked" EID.  Doing this forces the "verifying
   Map-Request" to go through the mapping database system to reach the
   authoritative source of information about that EID, guarding against
   RLOC-spoofing in in the "piggybacked" mapping data.

6.1.4.  Map-Reply Message Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=2 |P|E|            Reserved               | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   2 (Map-Reply)

   P: This is the probe-bit which indicates that the Map-Reply is in
      response to a locator reachability probe Map-Request.  The nonce
      field MUST contain a copy of the nonce value from the original
      Map-Request.  See Section 6.3.2 for more details.

   E: Indicates that the ETR which sends this Map-Reply message is
      advertising that the site is enabled for the Echo-Nonce locator
      reachability algorithm.  See Section 6.3.1 for more details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this reply message.  A record
      is comprised of that portion of the packet labeled 'Record' above
      and occurs the number of times equal to Record count.

   Nonce:  A 24-bit value set in a Data-Probe packet or a 64-bit value
      from the Map-Request is echoed in this Nonce field of the Map-
      Reply.

   Record TTL:  The time in minutes the recipient of the Map-Reply will
      store the mapping.  If the TTL is 0, the entry SHOULD be removed
      from the cache immediately.  If the value is 0xffffffff, the
      recipient can decide locally how long to store the mapping.

   Locator Count:  The number of Locator entries.  A locator entry
      comprises what is labeled above as 'Loc'.  The locator count can
      be 0 indicating there are no locators for the EID-prefix.

   EID mask-len:  Mask length for EID prefix.

   ACT:  This 3-bit field describes negative Map-Reply actions.  These
      bits are used only when the 'Locator Count' field is set to 0.
      The action bits are encoded only in Map-Reply messages.  The
      actions defined are used by an ITR or PTR when a destination EID
      matches a negative mapping cache entry.  Unassigned values should
      cause a map-cache entry to be created and, when packets match this
      negative cache entry, they will be dropped.  The current assigned
      values are:

      (0) No-Action:  The map-cache is kept alive and packet
         encapsulation occurs.

      (1) Natively-Forward:  The packet is not encapsulated or dropped
         but natively forwarded.

      (2) Send-Map-Request:  The packet invokes sending a Map-Request.

      (3) Drop:  A packet that matches this map-cache entry is dropped.

   A: The Authoritative bit, when sent by a UDP-based message is always
      set to 1 by an ETR.  See [CONS] for TCP-based Map-Replies.  When a
      Map-Server is proxy Map-Replying [LISP-MS] for a LISP site, the
      Authoritative bit is set to 0.  This indicates to requesting ITRs
      that the Map-Reply was not originated by a LISP node managed at
      the site that owns the EID-prefix.

   Map-Version Number:  When this 12-bit value is non-zero the Map-Reply
      sender is informing the ITR what the version number is for the
      EID-record contained in the Map-Reply.  The ETR can allocate this
      number internally but MUST coordinate this value with other ETRs
      for the site.  When this value is 0, there is no versioning
      information conveyed.  The Map-Version Number can be included in
      Map-Request and Map-Register messages.  See Section 6.6.3 for more
      details.

   EID-AFI:  Address family of EID-prefix according to [RFC5226].

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.

   Priority:  each RLOC is assigned a unicast priority.  Lower values
      are more preferable.  When multiple RLOCs have the same priority,
      they may be used in a load-split fashion.  A value of 255 means
      the RLOC MUST NOT be used for unicast forwarding.

   Weight:  when priorities are the same for multiple RLOCs, the weight
      indicates how to balance unicast traffic between them.  Weight is
      encoded as a relative weight of total unicast packets that match
      the mapping entry.  If a non-zero weight value is used for any
      RLOC, then all RLOCs MUST use a non-zero weight value and then the
      sum of all weight values MUST equal 100.  If a zero value is used
      for any RLOC weight, then all weights MUST be zero and the
      receiver of the Map-Reply will decide how to load-split traffic.
      See Section 6.5 for a suggested hash algorithm to distribute load
      across locators with same priority and equal weight values.

   M Priority:  each RLOC is assigned a multicast priority used by an
      ETR in a receiver multicast site to select an ITR in a source
      multicast site for building multicast distribution trees.  A value
      of 255 means the RLOC MUST NOT be used for joining a multicast
      distribution tree.

   M Weight:  when priorities are the same for multiple RLOCs, the
      weight indicates how to balance building multicast distribution
      trees across multiple ITRs.  The weight is encoded as a relative
      weight of total number of trees built to the source site
      identified by the EID-prefix.  If a non-zero weight value is used
      for any RLOC, then all RLOCs MUST use a non-zero weight value and
      then the sum of all weight values MUST equal 100.  If a zero value
      is used for any RLOC weight, then all weights MUST be zero and the
      receiver of the Map-Reply will decide how to distribute multicast
      state across ITRs.

   Unused Flags:  set to 0 when sending and ignored on receipt.

   L: when this bit is set, the locator is flagged as a local locator to
      the ETR that is sending the Map-Reply.  When a Map-Server is doing
      proxy Map-Replying [LISP-MS] for a LISP site, the L bit is set to
      0 for all locators in this locator-set.

   p: when this bit is set, an ETR informs the RLOC-probing ITR that the
      locator address, for which this bit is set, is the one being RLOC-
      probed and may be different from the source address of the Map-
      Reply.  An ITR that RLOC-probes a particular locator, MUST use
      this locator for retrieving the data structure used to store the
      fact that the locator is reachable.  The "p" bit is set for a
      single locator in the same locator set.  If an implementation sets
      more than one "p" bit erroneously, the receiver of the Map-Reply
      MUST select the first locator.  The "p" bit MUST NOT be set for
      locator-set records sent in Map-Request and Map-Register messages.

   R: <STRONG><FONT color="green">set</FONT></STRONG> when <STRIKE><FONT color="red">this bit is set, the locator is known to be reachable from
      the Map-Reply sender's perspective.  That is,</FONT></STRIKE> the sender <STRONG><FONT color="green">of a Map-Reply</FONT></STRONG> has a route <STRIKE><FONT color="red">for</FONT></STRIKE> <STRONG><FONT color="green">to</FONT></STRONG> the <STRIKE><FONT color="red">other locators</FONT></STRIKE> <STRONG><FONT color="green">locator</FONT></STRONG> in <STRIKE><FONT color="red">its site.</FONT></STRIKE>
      <STRONG><FONT color="green">the locator data record.</FONT></STRONG>  This <STRIKE><FONT color="red">status
      notification is used as a hint to signal</FONT></STRIKE> <STRONG><FONT color="green">receiver may find this useful</FONT></STRONG> to <STRIKE><FONT color="red">remote sites the up/
      down status of</FONT></STRIKE>
      <STRONG><FONT color="green">know when determining if</FONT></STRONG> the <STRIKE><FONT color="red">device that</FONT></STRIKE> <STRONG><FONT color="green">locator</FONT></STRONG> is <STRIKE><FONT color="red">assigned</FONT></STRIKE> <STRONG><FONT color="green">reachable from</FONT></STRONG> the <STRIKE><FONT color="red">locator address.
      Also see</FONT></STRIKE>
      <STRONG><FONT color="green">receiver.  See also</FONT></STRONG> Section 6.4 for another <STRIKE><FONT color="red">use-case for</FONT></STRIKE> <STRONG><FONT color="green">way</FONT></STRONG> the <STRIKE><FONT color="red">R-bit.</FONT></STRIKE> <STRONG><FONT color="green">R-bit may be
      used.</FONT></STRONG>

   Locator:  an IPv4 or IPv6 address (as encoded by the 'Loc-AFI' field)
      assigned to an ETR.  Note that the destination RLOC address MAY be
      an anycast address.  A source RLOC can be an anycast address as
      well.  The source or destination RLOC MUST NOT be the broadcast
      address (255.255.255.255 or any subnet broadcast address known to
      the router), and MUST NOT be a link-local multicast address.  The
      source RLOC MUST NOT be a multicast address.  The destination RLOC
      SHOULD be a multicast address if it is being mapped from a
      multicast destination EID.

   Mapping Protocol Data:  See [CONS] or [ALT] for details.  This field
      is optional and present when the UDP length indicates there is
      enough space in the packet to include it.

6.1.5.  EID-to-RLOC UDP Map-Reply Message

   A Map-Reply returns an EID-prefix <STRONG><FONT color="green">with a prefix length</FONT></STRONG> that is less
   than or equal <STRIKE><FONT color="red">specific
   for</FONT></STRIKE> <STRONG><FONT color="green">to</FONT></STRONG> the EID <STRIKE><FONT color="red">that is</FONT></STRIKE> being requested.  The EID being requested is
   either from the destination field of an IP header of a Data-Probe or
   the EID record of a Map-Request.  The RLOCs in the Map-Reply are
   globally-routable IP addresses of all ETRs for the LISP site.  Each
   RLOC conveys status reachability but does not convey path
   reachability from a requesters perspective.  Separate testing of path
   reachability is required, See Section 6.3 for details.

   Note that a Map-Reply may contain different EID-prefix granularity
   (prefix + length) than the Map-Request which triggers it.  This might
   occur if a Map-Request were for a prefix that had been returned by an
   earlier Map-Reply.  In such a case, the requester updates its cache
   with the new prefix information and granularity.  For example, a
   requester with two cached EID-prefixes that are covered by a Map-
   Reply containing one, less-specific prefix, replaces the entry with
   the less-specific EID-prefix.  Note that the reverse, replacement of
   one less-specific prefix with multiple more-specific prefixes, can
   also occur but not by removing the less-specific prefix rather by
   adding the more-specific prefixes which during a lookup will override
   the less-specific prefix.

   When an ETR is configured with overlapping EID-prefixes, a Map-
   Request with an EID that longest matches any EID-prefix MUST be
   returned in a single Map-Reply message.  For instance, if an ETR had
   database mapping entries for EID-prefixes:

     10.0.0.0/8
     10.1.0.0/16
     10.1.1.0/24
     10.1.2.0/24

   A Map-Request for EID 10.1.1.1 would cause a Map-Reply with a record
   count of 1 to be returned with a mapping record EID-prefix of
   10.1.1.0/24.

   A Map-Request for EID 10.1.5.5, would cause a Map-Reply with a record
   count of 3 to be returned with mapping records for EID-prefixes
   10.1.0.0/16, 10.1.1.0/24, and 10.1.2.0/24.

   Note that not all overlapping EID-prefixes need to be returned, only
   the more specifics (note in the second example above 10.0.0.0/8 was
   not returned for requesting EID 10.1.5.5) entries for the matching
   EID-prefix of the requesting EID.  When more than one EID-prefix is
   returned, all SHOULD use the same Time-to-Live value so they can all
   time out at the same time.  When a more specific EID-prefix is
   received later, its Time-to-Live value in the Map-Reply record can be
   stored even when other less specifics exist.  When a less specific
   EID-prefix is received later, its map-cache expiration time SHOULD be
   set to the minimum expiration time of any more specific EID-prefix in
   the map-cache.

   Map-Replies SHOULD be sent for an EID-prefix no more often than once
   per second to the same requesting router.  For scalability, it is
   expected that aggregation of EID addresses into EID-prefixes will
   allow one Map-Reply to satisfy a mapping for the EID addresses in the
   prefix range thereby reducing the number of Map-Request messages.

   Map-Reply records can have an empty locator-set.  <STRIKE><FONT color="red">This type of a</FONT></STRIKE>  <STRONG><FONT color="green">A negative</FONT></STRONG> Map-
   Reply is <STRIKE><FONT color="red">called</FONT></STRIKE> a <STRIKE><FONT color="red">Negative Map-Reply.</FONT></STRIKE> <STRONG><FONT color="green">Map-Reply with an empty locator-set.</FONT></STRONG>  Negative Map-Replies
   convey special actions by the sender to the ITR or PTR which have
   solicited the Map-Reply.  There are two primary applications for
   Negative <STRIKE><FONT color="red">Map-
   Replies.</FONT></STRIKE> <STRONG><FONT color="green">Map-Replies.</FONT></STRONG>  The first is for a Map-Resolver to instruct an
   ITR or PTR when a destination is for a LISP site versus a non-LISP
   site.  And the other is to source quench Map-Requests which are sent
   for <STRIKE><FONT color="red">non-
   allocated</FONT></STRIKE> <STRONG><FONT color="green">non-allocated</FONT></STRONG> EIDs.

   For each Map-Reply record, the list of locators in a locator-set MUST
   appear in the same order for each ETR that originates a Map-Reply
   message.  The locator-set MUST be sorted in order of ascending IP
   address where an IPv4 locator address is considered numerically 'less
   than' an IPv6 locator address.

   When sending a Map-Reply message, the destination address is copied
   from the one of the ITR-RLOC fields from the Map-Request.  The ETR
   can choose a locator address from one of the address families it
   supports.  For Data-Probes, the destination address of the Map-Reply
   is copied from the source address of the Data-Probe message which is
   invoking the reply.  The source address of the Map-Reply is one of
   the local locator addresses listed in the locator-set of any mapping
   record in the message and SHOULD be chosen to allow uRPF checks to
   succeed in the upstream service provider.  The destination port of a
   Map-Reply message is copied from the source port of the Map-Request
   or Data-Probe and the source port of the Map-Reply message is set to
   the well-known UDP port 4342.

6.1.5.1.  Traffic Redirection with Coarse EID-Prefixes

   When an ETR is misconfigured or compromised, it could return coarse
   EID-prefixes in Map-Reply messages it sends.  The EID-prefix could
   cover EID-prefixes which are allocated to other sites redirecting
   their traffic to the locators of the compromised site.

   To solve this problem, there are two basic solutions that could be
   used.  The first is to have Map-Servers proxy-map-reply on behalf of
   ETRs so their registered EID-prefixes are the ones returned in Map-
   Replies.  Since the interaction between an ETR and Map-Server is
   secured with shared-keys, it is more difficult for an ETR to
   misbehave.  The second solution is to have ITRs and PTRs cache EID-
   prefixes with mask-lengths that are greater than or equal to a
   configured prefix length.  This limits the damage to a specific width
   of any EID-prefix advertised, but needs to be coordinated with the
   allocation of site prefixes.  These solutions can be used
   independently or at the same time.

   At the time of this writing, other approaches are being considered
   and researched.

6.1.6.  Map-Register Message Format

   The usage details of the Map-Register message can be found in
   specification [LISP-MS].  This section solely defines the message
   format.

   The message is sent in UDP with a destination UDP port of 4342 and a
   randomly selected UDP source port number.

   The Map-Register message format is:

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3 |P|            Reserved                 | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |            Key ID             |  Authentication Data Length   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       ~                     Authentication Data                       ~
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   3 (Map-Register)

   P: This is the proxy-map-reply bit, when set to 1 an ETR sends a Map-
      Register message requesting for the Map-Server to proxy Map-Reply.
      The Map-Server will send non-authoritative Map-Replies on behalf
      of the ETR.  Details on this usage will be provided in a future
      version of this draft.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this Map-Register message.  A
      record is comprised of that portion of the packet labeled 'Record'
      above and occurs the number of times equal to Record count.

   Nonce:  This 8-byte Nonce field is set to 0 in Map-Register messages.

   Key ID:  A configured ID to find the configured Message
      Authentication Code (MAC) algorithm and key value used for the
      authentication function.

   Authentication Data Length:  The length in bytes of the
      Authentication Data field that follows this field.  The length of
      the Authentication Data field is dependent on the Message
      Authentication Code (MAC) algorithm used.  The length field allows
      a device that doesn't know the MAC algorithm to correctly parse
      the packet.

   Authentication Data:  The message digest used from the output of the
      Message Authentication Code (MAC) algorithm.  The entire Map-
      Register payload is authenticated with this field preset to 0.
      After the MAC is computed, it is placed in this field.
      Implementations of this specification MUST include support for
      HMAC-SHA-1-96 [RFC2404] and support for HMAC-SHA-128-256 [RFC4634]
      is recommended.

   The definition of the rest of the Map-Register can be found in the
   Map-Reply section.

6.1.7.  Encapsulated Control Message Format

   An Encapsulated Control Message is used to encapsulate control
   packets sent between xTRs and the mapping database system described
   in [LISP-MS].

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   OH  |                      (uses RLOC addresses)                    |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4342        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LH  |Type=8 |                   Reserved                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   IH  |                  (uses RLOC or EID addresses)                 |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = yyyy        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LCM |                      LISP Control Message                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet header descriptions:

   OH:   The outer IPv4 or IPv6 header which uses RLOC addresses in the
      source and destination header address fields.

   UDP:   The outer UDP header with destination port 4342.  The source
      port is randomly allocated.  The checksum field MUST be non-zero.

   LH:   Type 8 is defined to be a "LISP Encapsulated Control Message"
      and what follows is either an IPv4 or IPv6 header as encoded by
      the first 4 bits after the reserved field.

   IH:   The inner IPv4 or IPv6 header which can use either RLOC or EID
      addresses in the header address fields.  When a Map-Request is
      encapsulated in this packet format the destination address in this
      header is an EID.

   UDP:   The inner UDP header where the port assignments depends on the
      control packet being encapsulated.  When the control packet is a
      Map-Request or Map-Register, the source port is <STRIKE><FONT color="red">randomly assigned</FONT></STRIKE> <STRONG><FONT color="green">ITR/PITR selected</FONT></STRONG>
      and the destination port is 4342.  When the control packet is a
      Map-Reply, the source port is 4342 and the destination port is
      assigned from the source port of the invoking Map-Request.  Port
      number 4341 MUST NOT be assigned to either port.  The checksum
      field MUST be non-zero.

   LCM:   The format is one of the control message formats described in
      this section.  At this time, only Map-Request messages and PIM
      Join-Prune messages [MLISP] are allowed to be encapsulated.
      Encapsulating other types of LISP control messages are for further
      study.  When Map-Requests are sent for RLOC-probing purposes (i.e
      the probe-bit is set), they MUST NOT be sent inside Encapsulated
      Control Messages.

6.2.  Routing Locator Selection

   Both client-side and server-side may need control over the selection
   of RLOCs for conversations between them.  This control is achieved by
   manipulating the Priority and Weight fields in EID-to-RLOC Map-Reply
   messages.  Alternatively, RLOC information may be gleaned from
   received tunneled packets or EID-to-RLOC Map-Request messages.

   The following enumerates different scenarios for choosing RLOCs and
   the controls that are available:

   o  Server-side returns one RLOC.  Client-side can only use one RLOC.
      Server-side has complete control of the selection.

   o  Server-side returns a list of RLOC where a subset of the list has
      the same best priority.  Client can only use the subset list
      according to the weighting assigned by the server-side.  In this
      case, the server-side controls both the subset list and load-
      splitting across its members.  The client-side can use RLOCs
      outside of the subset list if it determines that the subset list
      is unreachable (unless RLOCs are set to a Priority of 255).  Some
      sharing of control exists: the server-side determines the
      destination RLOC list and load distribution while the client-side
      has the option of using alternatives to this list if RLOCs in the
      list are unreachable.

   o  Server-side sets weight of 0 for the RLOC subset list.  In this
      case, the client-side can choose how the traffic load is spread
      across the subset list.  Control is shared by the server-side
      determining the list and the client determining load distribution.
      Again, the client can use alternative RLOCs if the server-provided
      list of RLOCs are unreachable.

   o  Either side (more likely on the server-side ETR) decides not to
      send a Map-Request.  For example, if the server-side ETR does not
      send Map-Requests, it gleans RLOCs from the client-side ITR,
      giving the client-side ITR responsibility for bidirectional RLOC
      reachability and preferability.  Server-side ETR gleaning of the
      client-side ITR RLOC is done by caching the inner header source
      EID and the outer header source RLOC of received packets.  The
      client-side ITR controls how traffic is returned and can alternate
      using an outer header source RLOC, which then can be added to the
      list the server-side ETR uses to return traffic.  Since no
      Priority or Weights are provided using this method, the server-
      side ETR MUST assume each client-side ITR RLOC uses the same best
      Priority with a Weight of zero.  In addition, since EID-prefix
      encoding cannot be conveyed in data packets, the EID-to-RLOC cache
      on tunnel routers can grow to be very large.

   o  A "gleaned" map-cache entry, one learned from the source RLOC of a
      received encapsulated packet, is only stored and used for a few
      seconds, pending verification.  Verification is performed by
      sending a Map-Request to the source EID (the inner header IP
      source address) of the received encapsulated packet.  A reply to
      this "verifying Map-Request" is used to fully populate the map-
      cache entry for the "gleaned" EID and is stored and used for the
      time indicated from the TTL field of a received Map-Reply.  When a
      verified map-cache entry is stored, data gleaning no longer occurs
      for subsequent packets which have a source EID that matches the
      EID-prefix of the verified entry.

   RLOCs that appear in EID-to-RLOC Map-Reply messages are assumed to be
   reachable when the R-bit for the locator record is set to 1.  Neither
   the information contained in a Map-Reply or that stored in the
   mapping database system <STRIKE><FONT color="red">provide</FONT></STRIKE> <STRONG><FONT color="green">provides</FONT></STRONG> reachability information for RLOCs.
   <STRIKE><FONT color="red">Such</FONT></STRIKE>
   <STRONG><FONT color="green">Note that</FONT></STRONG> reachability <STRIKE><FONT color="red">needs to be</FONT></STRIKE> <STRONG><FONT color="green">is not part of the mapping system and is</FONT></STRONG>
   determined <STRIKE><FONT color="red">separately,</FONT></STRIKE> using one or more of the Routing Locator Reachability
   Algorithms described in the next section.

6.3.  Routing Locator Reachability

   Several mechanisms for determining RLOC reachability are currently
   defined:

   1.  An ETR may examine the Loc-Status-Bits in the LISP header of an
       encapsulated data packet received from an ITR.  If the ETR is
       also acting as an ITR and has traffic to return to the original
       ITR site, it can use this status information to help select an
       RLOC.

   2.  An ITR may receive an ICMP Network or ICMP Host Unreachable
       message for an RLOC it is using.  This indicates that the RLOC is
       likely down.

   3.  An ITR which participates in the global routing system can
       determine that an RLOC is down if no BGP RIB route exists that
       matches the RLOC IP address.

   4.  An ITR may receive an ICMP Port Unreachable message from a
       destination host.  This occurs if an ITR attempts to use
       interworking [INTERWORK] and LISP-encapsulated data is sent to a
       non-LISP-capable site.

   5.  An ITR may receive a Map-Reply from a ETR in response to a
       previously sent Map-Request.  The RLOC source of the Map-Reply is
       likely up since the ETR was able to send the Map-Reply to the
       ITR.

   6.  When an ETR receives an encapsulated packet from an ITR, the
       source RLOC from the outer header of the packet is likely up.

   7.  An ITR/ETR pair can use the Locator Reachability Algorithms
       described in this section, namely Echo-Noncing or RLOC-Probing.

   When determining Locator up/down reachability by examining the Loc-
   Status-Bits from the LISP encapsulated data packet, an ETR will
   receive up to date status from an encapsulating ITR about
   reachability for all ETRs at the site.  CE-based ITRs at the source
   site can determine reachability relative to each other using the site
   IGP as follows:

   o  Under normal circumstances, each ITR will advertise a default
      route into the site IGP.

   o  If an ITR fails or if the upstream link to its PE fails, its
      default route will either time-out or be withdrawn.

   Each ITR can thus observe the presence or lack of a default route
   originated by the others to determine the Locator Status Bits it sets
   for them.

   RLOCs listed in a Map-Reply are numbered with ordinals 0 to n-1.  The
   Loc-Status-Bits in a LISP encapsulated packet are numbered from 0 to
   n-1 starting with the least significant bit.  For example, if an RLOC
   listed in the 3rd position of the Map-Reply goes down (ordinal value
   2), then all ITRs at the site will clear the 3rd least significant
   bit (xxxx x0xx) of the Loc-Status-Bits field for the packets they
   encapsulate.

   When an ETR decapsulates a packet, it will check for any change in
   the Loc-Status-Bits field.  When a bit goes from 1 to 0, the ETR will
   refrain from encapsulating packets to an RLOC that is indicated as
   down.  It will only resume using that RLOC if the corresponding Loc-
   Status-Bit returns to a value of 1.  Loc-Status-Bits are associated
   with a locator-set per EID-prefix.  Therefore, when a locator becomes
   unreachable, the Loc-Status-Bit that corresponds to that locator's
   position in the list returned by the last Map-Reply will be set to
   zero for that particular EID-prefix.

   When ITRs at the site are not deployed in CE routers, the IGP can
   still be used to determine the reachability of Locators provided they
   are injected into the IGP.  This is typically done when a /32 address
   is configured on a loopback interface.

   When ITRs receive ICMP Network or Host Unreachable messages as a
   method to determine unreachability, they will refrain from using
   Locators which are described in Locator lists of Map-Replies.
   However, using this approach is unreliable because many network
   operators turn off generation of ICMP Unreachable messages.

   If an ITR does receive an ICMP Network or Host Unreachable message,
   it MAY originate its own ICMP Unreachable message destined for the
   host that originated the data packet the ITR encapsulated.

   Also, BGP-enabled ITRs can unilaterally examine the BGP RIB to see if
   a locator address from a locator-set in a mapping entry matches a
   prefix.  If it does not find one and BGP is running in the Default
   Free Zone (DFZ), it can decide to not use the locator even though the
   Loc-Status-Bits indicate the locator is up.  In this case, the path
   from the ITR to the ETR that is assigned the locator is not
   available.  More details are in [LOC-ID-ARCH].

   Optionally, an ITR can send a Map-Request to a Locator and if a Map-
   Reply is returned, reachability of the Locator has been determined.
   Obviously, sending such probes increases the number of control
   messages originated by tunnel routers for active flows, so Locators
   are assumed to be reachable when they are advertised.

   This assumption does create a dependency: Locator unreachability is
   detected by the receipt of ICMP Host Unreachable messages.  When an
   Locator has been determined to be unreachable, it is not used for
   active traffic; this is the same as if it were listed in a Map-Reply
   with priority 255.

   The ITR can test the reachability of the unreachable Locator by
   sending periodic Requests.  Both Requests and Replies MUST be rate-
   limited.  Locator reachability testing is never done with data
   packets since that increases the risk of packet loss for end-to-end
   sessions.

   When an ETR decapsulates a packet, it knows that it is reachable from
   the encapsulating ITR because that is how the packet arrived.  In
   most cases, the ETR can also reach the ITR but cannot assume this to
   be true due to the possibility of path asymmetry.  In the presence of
   unidirectional traffic flow from an ITR to an ETR, the ITR SHOULD NOT
   use the lack of return traffic as an indication that the ETR is
   unreachable.  Instead, it MUST use an alternate mechanisms to
   determine reachability.

6.3.1.  Echo Nonce Algorithm

   When data flows bidirectionally between locators from different
   sites, a simple mechanism called "nonce echoing" can be used to
   determine reachability between an ITR and ETR.  When an ITR wants to
   solicit a nonce echo, it sets the N and E bits and places a 24-bit
   nonce in the LISP header of the next encapsulated data packet.

   When this packet is received by the ETR, the encapsulated packet is
   forwarded as normal.  When the ETR next sends a data packet to the
   ITR, it includes the nonce received earlier with the N bit set and E
   bit cleared.  The ITR sees this "echoed nonce" and knows the path to
   and from the ETR is up.

   The ITR will set the E-bit and N-bit for every packet it sends while
   in echo-nonce-request state.  The time the ITR waits to process the
   echoed nonce before it determines the path is unreachable is variable
   and a choice left for the implementation.

   If the ITR is receiving packets from the ETR but does not see the
   nonce echoed while being in echo-nonce-request state, then the path
   to the ETR is unreachable.  This decision may be overridden by other
   locator reachability algorithms.  Once the ITR determines the path to
   the ETR is down it can switch to another locator for that EID-prefix.

   Note that "ITR" and "ETR" are relative terms here.  Both devices MUST
   be implementing both ITR and ETR functionality for the echo nonce
   mechanism to operate.

   The ITR and ETR may both go into echo-nonce-request state at the same
   time.  The number of packets sent or the time during which echo nonce
   requests are sent is an implementation specific setting.  However,
   when an ITR is in echo-nonce-request state, it can echo the ETR's
   nonce in the next set of packets that it encapsulates and then
   subsequently, continue sending echo-nonce-request packets.

   This mechanism does not completely solve the forward path
   reachability problem as traffic may be unidirectional.  That is, the
   ETR receiving traffic at a site may not be the same device as an ITR
   which transmits traffic from that site or the site to site traffic is
   unidirectional so there is no ITR returning traffic.

   The echo-nonce algorithm is bilateral.  That is, if one side sets the
   E-bit and the other side is not enabled for echo-noncing, then the
   echoing of the nonce does not occur and the requesting side may
   regard the locator unreachable erroneously.  An ITR SHOULD only set
   the E-bit in a encapsulated data packet when it knows the ETR is
   enabled for echo-noncing.  This is conveyed by the E-bit in the Map-
   Reply message.

   Note that other locator reachability mechanisms are being researched
   and can be used to compliment or even override the Echo Nonce
   Algorithm.  See next section for an example of control-plane probing.

6.3.2.  RLOC Probing Algorithm

   RLOC Probing is a method that an ITR or PTR can use to determine the
   reachability status of one or more locators that it has cached in a
   map-cache entry.  The probe-bit of the Map-Request and Map-Reply
   messages are used for RLOC Probing.

   RLOC probing is done in the control-plane on a timer basis where an
   ITR or PTR will originate a Map-Request destined to a locator address
   from one of its own locator addresses.  A Map-Request used as an
   RLOC-probe is NOT encapsulated and NOT sent to a Map-Server or on the
   ALT like one would when soliciting mapping data.  The EID record
   encoded in the Map-Request is the EID-prefix of the map-cache entry
   cached by the ITR or PTR.  The ITR may include a mapping data record
   for its own database mapping information which contains the local
   EID-prefixes and RLOCs for its site.

   When an ETR receives a Map-Request message with the probe-bit set, it
   returns a Map-Reply with the probe-bit set.  The source address of
   the Map-Reply is set from the destination address of the Map-Request
   and the destination address of the Map-Reply is set from the source
   address of the Map-Request.  The Map-Reply SHOULD contain mapping
   data for the EID-prefix contained in the Map-Request.  This provides
   the opportunity for the ITR or PTR, which sent the RLOC-probe to get
   mapping updates if there were changes to the ETR's database mapping
   entries.

   There are advantages and disadvantages of RLOC Probing.  The greatest
   benefit of RLOC Probing is that it can handle many failure scenarios
   allowing the ITR to determine when the path to a specific locator is
   reachable or has become unreachable, thus providing a robust
   mechanism for switching to using another locator from the cached
   locator.  RLOC Probing can also provide rough RTT estimates between a
   pair of locators which can be useful for network management purposes
   as well as for selecting low delay paths.  The major disadvantage of
   RLOC Probing is in the number of control messages required and the
   amount of bandwidth used to obtain those benefits, especially if the
   requirement for failure detection times are very small.

   Continued research and testing will attempt to characterize the
   tradeoffs of failure detection times versus message overhead.

6.4.  EID Reachability within a LISP Site

   A site may be multihomed using two or more ETRs.  The hosts and
   infrastructure within a site will be addressed using one or more EID
   prefixes that are mapped to the RLOCs of the relevant ETRs in the
   mapping system.  One possible failure mode is for an ETR to lose
   reachability to one or more of the EID prefixes within its own site.
   When this occurs when the ETR sends Map-Replies, it can clear the
   R-bit associated with its own locator.  And when the ETR is also an
   ITR, it can clear its locator-status-bit in the encapsulation data
   header.

6.5.  Routing Locator Hashing

   When an ETR provides an EID-to-RLOC mapping in a Map-Reply message to
   a requesting ITR, the locator-set for the EID-prefix may contain
   different priority values for each locator address.  When more than
   one best priority locator exists, the ITR can decide how to load
   share traffic against the corresponding locators.

   The following hash algorithm may be used by an ITR to select a
   locator for a packet destined to an EID for the EID-to-RLOC mapping:

   1.  Either a source and destination address hash can be used or the
       traditional 5-tuple hash which includes the source and
       destination addresses, source and destination TCP, UDP, or SCTP
       port numbers and the IP protocol number field or IPv6 next-
       protocol fields of a packet a host originates from within a LISP
       site.  When a packet is not a TCP, UDP, or SCTP packet, the
       source and destination addresses only from the header are used to
       compute the hash.

   2.  Take the hash value and divide it by the number of locators
       stored in the locator-set for the EID-to-RLOC mapping.

   3.  The remainder will be yield a value of 0 to "number of locators
       minus 1".  Use the remainder to select the locator in the
       locator-set.

   Note that when a packet is LISP encapsulated, the source port number
   in the outer UDP header needs to be set.  Selecting a hashed value
   allows core routers which are attached to Link Aggregation Groups
   (LAGs) to load-split the encapsulated packets across member links of
   such LAGs.  Otherwise, core routers would see a single flow, since
   packets have a source address of the ITR, for packets which are
   originated by different EIDs at the source site.  A suggested setting
   for the source port number computed by an ITR is a 5-tuple hash
   function on the inner header, as described above.

   Many core router implementations use a 5-tuple hash to decide how to
   balance packet load across members of a LAG.  The 5-tuple hash
   includes the source and destination addresses of the packet and the
   source and destination ports when the protocol number in the packet
   is TCP or UDP.  For this reason, UDP encoding is used for LISP
   encapsulation.

6.6.  Changing the Contents of EID-to-RLOC Mappings

   Since the LISP architecture uses a caching scheme to retrieve and
   store EID-to-RLOC mappings, the only way an ITR can get a more up-to-
   date mapping is to re-request the mapping.  However, the ITRs do not
   know when the mappings change and the ETRs do not keep track of <STRIKE><FONT color="red">who</FONT></STRIKE> <STRONG><FONT color="green">which
   ITRs</FONT></STRONG> requested its mappings.  For scalability reasons, we want to
   maintain this approach but need to provide a way for ETRs change
   their mappings and inform the sites that are currently communicating
   with the ETR site using such mappings.

   When a locator record is added to the end of a locator-set, it is
   easy to update mappings.  We assume new mappings will maintain the
   same locator ordering as the old mapping but just have new locators
   appended to the end of the list.  So some ITRs can have a new mapping
   while other ITRs have only an old mapping that is used until they
   time out.  When an ITR has only an old mapping but detects bits set
   in the loc-status-bits that correspond to locators beyond the list it
   has cached, it simply ignores them.  However, this can only happen
   for locator addresses that are lexicographically greater than the
   locator addresses in the existing locator-set.

   When a locator record is removed from a locator-set, ITRs that have
   the mapping cached will not use the removed locator because the xTRs
   will set the loc-status-bit to 0.  So even if the locator is in the
   list, it will not be used.  For new mapping requests, the xTRs can
   set the locator AFI to 0 (indicating an unspecified address), as well
   as setting the corresponding loc-status-bit to 0.  This forces ITRs
   with old or new mappings to avoid using the removed locator.

   If many changes occur to a mapping over a long period of time, one
   will find empty record slots in the middle of the locator-set and new
   records appended to the locator-set.  At some point, it would be
   useful to compact the locator-set so the loc-status-bit settings can
   be efficiently packed.

   We propose here three approaches for locator-set compaction, one
   operational and two protocol mechanisms.  The operational approach
   uses a clock sweep method.  The protocol approaches use the concept
   of Solicit-Map-Requests and Map-Versioning.

6.6.1.  Clock Sweep

   The clock sweep approach uses planning in advance and the use of
   count-down TTLs to time out mappings that have already been cached.
   The default setting for an EID-to-RLOC mapping TTL is 24 hours.  So
   there is a 24 hour window to time out old mappings.  The following
   clock sweep procedure is used:

   1.  24 hours before a mapping change is to take effect, a network
       administrator configures the ETRs at a site to start the clock
       sweep window.

   2.  During the clock sweep window, ETRs continue to send Map-Reply
       messages with the current (unchanged) mapping records.  The TTL
       for these mappings is set to 1 hour.

   3.  24 hours later, all previous cache entries will have timed out,
       and any active cache entries will time out within 1 hour.  During
       this 1 hour window the ETRs continue to send Map-Reply messages
       with the current (unchanged) mapping records with the TTL set to
       1 minute.

   4.  At the end of the 1 hour window, the ETRs will send Map-Reply
       messages with the new (changed) mapping records.  So any active
       caches can get the new mapping contents right away if not cached,
       or in 1 minute if they had the mapping cached.  The new mappings
       are cached with a time to live equal to the TTL in the Map-Reply.

6.6.2.  Solicit-Map-Request (SMR)

   Soliciting a Map-Request is a selective way for <STRIKE><FONT color="red">xTRs,</FONT></STRIKE> <STRONG><FONT color="green">ETRs,</FONT></STRONG> at the site
   where mappings change, to control the rate they receive requests for
   Map-Reply messages.  SMRs are also used to tell remote ITRs to update
   the mappings they have cached.

   Since the <STRIKE><FONT color="red">xTRs</FONT></STRIKE> <STRONG><FONT color="green">ETRs</FONT></STRONG> don't keep track of remote ITRs that have cached their
   mappings, they <STRIKE><FONT color="red">can</FONT></STRIKE> <STRONG><FONT color="green">do</FONT></STRONG> not <STRIKE><FONT color="red">tell exactly who needs the new mapping
   entries.  So</FONT></STRIKE> <STRONG><FONT color="green">know which ITRs need to have their mappings
   updated.  As a result,</FONT></STRONG> an <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ETR</FONT></STRONG> will solicit Map-Requests <STRONG><FONT color="green">(called an
   SMR message)</FONT></STRONG> from <STRONG><FONT color="green">those</FONT></STRONG> sites <STRONG><FONT color="green">to which</FONT></STRONG> it has been sending
   encapsulated data to for the last <STRIKE><FONT color="red">minute, and only from those
   sites.  The ETRs that the encapsulated data is going</FONT></STRIKE> <STRONG><FONT color="green">minute.  In particular, an ETR will
   send an SMR an ITR</FONT></STRONG> to <STRIKE><FONT color="red">are the LISP
   routers who receive SMR messages.  The xTRs can locally decide the
   algorithm for how often and to how many sites</FONT></STRIKE> <STRONG><FONT color="green">which</FONT></STRONG> it <STRIKE><FONT color="red">sends SMR messages.</FONT></STRIKE> <STRONG><FONT color="green">has recently sent encapsulated data.</FONT></STRONG>

   An SMR message is simply a bit set in a Map-Request message.  An ITR
   or PTR will send a Map-Request when they receive an SMR message.
   Both the SMR sender and the Map-Request responder MUST rate-limited
   these messages.  Rate-limiting can be implemented as a global rate-
   limiter or one rate-limiter per SMR destination.

   The following procedure shows how a SMR exchange occurs when a site
   is doing locator-set compaction for an EID-to-RLOC mapping:

   1.  When the database mappings in an ETR change, the ETRs at the site
       begin to send Map-Requests with the SMR bit set for each locator
       in each map-cache entry the ETR caches.

   2.  A remote <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> which receives the SMR message will schedule sending
       a Map-Request message to the source locator address of the SMR
       message.  A newly allocated random nonce is selected and the EID-
       prefix used is the one copied from the SMR message.  If the
       source locator is the only locator in the cached locator-set, the
       remote <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> SHOULD send a Map-Request to the database mapping
       system just in case the single locator has changed and may no
       longer be reachable to accept the Map-Request.

   3.  The remote <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> MUST rate-limit the Map-Request until it gets a
       Map-Reply while continuing to use the cached mapping.  When Map
       Versioning is used, described in Section 6.6.3, an SMR sender can
       detect if an ITR is using the most up to date database mapping.

   4.  The ETRs at the site with the changed mapping will reply to the
       Map-Request with a Map-Reply message that has a nonce from the
       SMR-invoked Map-Request.  The Map-Reply messages SHOULD be rate
       limited.  This is important to avoid Map-Reply implosion.

   5.  The ETRs, at the site with the changed mapping, record the fact
       that the site that sent the Map-Request has received the new
       mapping data in the mapping cache entry for the remote site so
       the loc-status-bits are reflective of the new mapping for packets
       going to the remote site.  The ETR then stops sending SMR
       messages.

   For security reasons an ITR MUST NOT process unsolicited Map-Replies.
   <STRIKE><FONT color="red">The nonce MAY be carried from SMR packet, into the resultant Map-
   Request, and then into Map-Reply to reduce spoofing attacks.</FONT></STRIKE>
   To avoid map-cache entry corruption by a third-party, a sender of an
   SMR-based Map-Request MUST be verified.  If an ITR receives an SMR-
   based Map-Request and the source is not in the locator-set for the
   stored map-cache entry, then the responding Map-Request MUST be sent
   with an EID destination to the mapping database system.  Since the
   mapping database system is more secure to reach an authoritative ETR,
   it will deliver the Map-Request to the authoritative source of the
   mapping data.

6.6.3.  Database Map Versioning

   When there is unidirectional packet flow between an ITR and ETR, and
   the EID-to-RLOC mappings change on the ETR, it needs to inform the
   ITR so encapsulation can stop to a removed locator and start to a new
   locator in the locator-set.

   An ETR, when it sends Map-Reply messages, conveys its own Map-Version
   number.  This is known as the Destination Map-Version Number.  ITRs
   include the Destination Map-Version Number in packets they
   encapsulate to the site.  When an ETR decapsulates a packet and
   detects the Destination Map-Version Number is less than the current
   version for its mapping, the SMR procedure described in Section 6.6.2
   occurs.

   An ITR, when it encapsulates packets to ETRs, can convey its own Map-
   Version number.  This is known as the Source Map-Version Number.
   When an ETR decapsulates a packet and detects the Source Map-Version
   Number is greater than the last Map-Version Number sent in a Map-
   Reply from the ITR's site, the ETR will send a Map-Request to one of
   the ETRs for the source site.

   A Map-Version Number is used as a sequence number per EID-prefix.  So
   values that are greater, are considered to be more recent.  A value
   of 0 for the Source Map-Version Number or the Destination Map-Version
   Number conveys no versioning information and an <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> does no
   comparison with previously received Map-Version Numbers.

   A Map-Version Number can be included in Map-Register messages as
   well.  This is a good way for the Map-Server can assure that all ETRs
   for a site registering to it will be Map-Version number synchronized.

   See [VERSIONING] for a more detailed analysis and description of
   Database Map Versioning.

7.  Router Performance Considerations

   LISP is designed to be very hardware-based forwarding friendly.
   <STRIKE><FONT color="red">Existing hardware which can do tunnel header prepending [RFC1955] and
   stripping may be able to support the forwarding model with little or
   no modification.</FONT></STRIKE>  A
   few implementation techniques can be used to incrementally implement
   LISP:

   o  When a tunnel encapsulated packet is received by an ETR, the outer
      destination address may not be the address of the router.  This
      makes it challenging for the control plane to get packets from the
      hardware.  This may be mitigated by creating special FIB entries
      for the EID-prefixes of EIDs served by the ETR (those for which
      the router provides an RLOC translation).  These FIB entries are
      marked with a flag indicating that control plane processing should
      be performed.  The forwarding logic of testing for particular IP
      protocol number value is not necessary.  No changes to existing,
      deployed hardware should be needed to support this.

   o  On an ITR, prepending a new IP header consists of adding more
      bytes to a MAC rewrite string and prepending the string as part of
      the outgoing encapsulation procedure.  Routers that support GRE
      tunneling [RFC2784] or 6to4 tunneling [RFC3056] may already
      support this action.

   o  A packet's source address or interface the packet was received on
      can be used to select a VRF (Virtual Routing/Forwarding).  The
      VRF's routing table can be used to find EID-to-RLOC mappings.

8.  Deployment Scenarios

   This section will explore how and where ITRs and ETRs can be deployed
   and will discuss the pros and cons of each deployment scenario.
   There are two basic deployment trade-offs to consider: centralized
   versus distributed caches and flat, recursive, or re-encapsulating
   tunneling.

   When deciding on centralized versus distributed caching, the
   following issues should be considered:

   o  Are the tunnel routers spread out so that the caches are spread
      across all the memories of each router?

   o  Should management "touch points" be minimized by choosing few
      tunnel routers, just enough for redundancy?

   o  In general, using more ITRs doesn't increase management load,
      since caches are built and stored dynamically.  On the other hand,
      more ETRs does require more management since EID-prefix-to-RLOC
      mappings need to be explicitly configured.

   When deciding on flat, recursive, or re-encapsulation tunneling, the
   following issues should be considered:

   o  Flat tunneling implements a single tunnel between source site and
      destination site.  This generally offers better paths between
      sources and destinations with a single tunnel path.

   o  Recursive tunneling is when tunneled traffic is again further
      encapsulated in another tunnel, either to implement VPNs or to
      perform Traffic Engineering.  When doing VPN-based tunneling, the
      site has some control since the site is prepending a new tunnel
      header.  In the case of TE-based tunneling, the site may have
      control if it is prepending a new tunnel header, but if the site's
      ISP is doing the TE, then the site has no control.  Recursive
      tunneling generally will result in suboptimal paths but at the
      benefit of steering traffic to resource available parts of the
      network.

   o  The technique of re-encapsulation ensures that packets only
      require one tunnel header.  So if a packet needs to be rerouted,
      it is first decapsulated by the ETR and then re-encapsulated with
      a new tunnel header using a new RLOC.

   The next sub-sections will survey where tunnel routers can reside in
   the network.

8.1.  First-hop/Last-hop Tunnel Routers

   By locating tunnel routers close to hosts, the EID-prefix set is at
   the granularity of an IP subnet.  So at the expense of more EID-
   prefix-to-RLOC sets for the site, the caches in each tunnel router
   can remain relatively small.  But caches always depend on the number
   of non-aggregated EID destination flows active through these tunnel
   routers.

   With more tunnel routers doing encapsulation, the increase in control
   traffic grows as well: since the EID-granularity is greater, more
   Map-Requests and Map-Replies are traveling between more routers.

   The advantage of placing the caches and databases at these stub
   routers is that the products deployed in this part of the network
   have better price-memory ratios then their core router counterparts.
   Memory is typically less expensive in these devices and fewer routes
   are stored (only IGP routes).  These devices tend to have excess
   capacity, both for forwarding and routing state.

   LISP functionality can also be deployed in edge switches.  These
   devices generally have layer-2 ports facing hosts and layer-3 ports
   facing the Internet.  Spare capacity is also often available in these
   devices as well.

8.2.  Border/Edge Tunnel Routers

   Using customer-edge (CE) routers for tunnel endpoints allows the EID
   space associated with a site to be reachable via a small set of RLOCs
   assigned to the CE routers for that site.  This is the default
   behavior envisioned in the rest of this specification.

   This offers the opposite benefit of the first-hop/last-hop tunnel
   router scenario: the number of mapping entries and network management
   touch points are reduced, allowing better scaling.

   One disadvantage is that less of the network's resources are used to
   reach host endpoints thereby centralizing the point-of-failure domain
   and creating network choke points at the CE router.

   Note that more than one CE router at a site can be configured with
   the same IP address.  In this case an RLOC is an anycast address.
   This allows resilience between the CE routers.  That is, if a CE
   router fails, traffic is automatically routed to the other routers
   using the same anycast address.  However, this comes with the
   disadvantage where the site cannot control the entrance point when
   the anycast route is advertised out from all border routers.  Another
   disadvantage of using anycast locators is the limited advertisement
   scope of /32 (or /128 for IPv6) routes.

8.3.  ISP Provider-Edge (PE) Tunnel Routers

   Use of ISP PE routers as tunnel endpoint routers is not the typical
   deployment scenario envisioned in the specification.  This section
   attempts to capture some of reasoning behind this preference of
   implementing LISP on CE routers.

   Use of ISP PE routers as tunnel endpoint routers gives an ISP, rather
   than a site, control over the location of the egress tunnel
   endpoints.  That is, the ISP can decide if the tunnel endpoints are
   in the destination site (in either CE routers or last-hop routers
   within a site) or at other PE edges.  The advantage of this case is
   that two tunnel headers can be avoided.  By having the PE be the
   first router on the path to encapsulate, it can choose a TE path
   first, and the ETR can decapsulate and re-encapsulate for a tunnel to
   the destination end site.

   An obvious disadvantage is that the end site has no control over
   where its packets flow or the RLOCs used.  Other disadvantages
   include the difficulty in synchronizing path liveness updates between
   CE and PE routers.

   As mentioned in earlier sections a combination of these scenarios is
   possible at the expense of extra packet header overhead, if both site
   and provider want control, then recursive or re-encapsulating tunnels
   are used.

8.4.  LISP Functionality with Conventional NATs

   LISP routers can be deployed behind Network Address Translator (NAT)
   devices to provide the same set of packet services hosts have today
   when they are addressed out of private address space.

   It is important to note that a locator address in any LISP control
   message MUST be a globally routable address and therefore SHOULD NOT
   contain [RFC1918] addresses.  If a LISP router is configured with
   private addresses, they MUST be used only in the outer IP header so
   the NAT device can translate properly.  Otherwise, EID addresses MUST
   be translated before encapsulation is performed.  Both NAT
   translation and LISP encapsulation functions could be co-located in
   the same device.

   More details on LISP address translation can be found in [INTERWORK].

9.  Traceroute Considerations

   When a source host in a LISP site initiates a traceroute to a
   destination host in another LISP site, it is highly desirable for it
   to see the entire path.  Since packets are encapsulated from ITR to
   ETR, the hop across the tunnel could be viewed as a single hop.
   However, LISP traceroute will provide the entire path so the user can
   see 3 distinct segments of the path from a source LISP host to a
   destination LISP host:

      Segment 1 (in source LISP site based on EIDs):

          source-host ---&gt; first-hop ... next-hop ---&gt; ITR

      Segment 2 (in the core network based on RLOCs):

          ITR ---&gt; next-hop ... next-hop ---&gt; ETR

      Segment 3 (in the destination LISP site based on EIDs):

          ETR ---&gt; next-hop ... last-hop ---&gt; destination-host

   For segment 1 of the path, ICMP Time Exceeded messages are returned
   in the normal matter as they are today.  The ITR performs a TTL
   decrement and test for 0 before encapsulating.  So the ITR hop is
   seen by the traceroute source has an EID address (the address of
   site-facing interface).

   For segment 2 of the path, ICMP Time Exceeded messages are returned
   to the ITR because the TTL decrement to 0 is done on the outer
   header, so the destination of the ICMP messages are to the ITR RLOC
   address, the source RLOC address of the encapsulated traceroute
   packet.  The ITR looks inside of the ICMP payload to inspect the
   traceroute source so it can return the ICMP message to the address of
   the traceroute client as well as retaining the core router IP address
   in the ICMP message.  This is so the traceroute client can display
   the core router address (the RLOC address) in the traceroute output.
   The ETR returns its RLOC address and responds to the TTL decrement to
   0 like the previous core routers did.

   For segment 3, the next-hop router downstream from the ETR will be
   decrementing the TTL for the packet that was encapsulated, sent into
   the core, decapsulated by the ETR, and forwarded because it isn't the
   final destination.  If the TTL is decremented to 0, any router on the
   path to the destination of the traceroute, including the next-hop
   router or destination, will send an ICMP Time Exceeded message to the
   source EID of the traceroute client.  The ICMP message will be
   encapsulated by the local ITR and sent back to the ETR in the
   originated traceroute source site, where the packet will be delivered
   to the host.

9.1.  IPv6 Traceroute

   IPv6 traceroute follows the procedure described above since the
   entire traceroute data packet is included in ICMP Time Exceeded
   message payload.  Therefore, only the ITR needs to pay special
   attention for forwarding ICMP messages back to the traceroute source.

9.2.  IPv4 Traceroute

   For IPv4 traceroute, we cannot follow the above procedure since IPv4
   ICMP Time Exceeded messages only include the invoking IP header and 8
   bytes that follow the IP header.  Therefore, when a core router sends
   an IPv4 Time Exceeded message to an ITR, all the ITR has in the ICMP
   payload is the encapsulated header it prepended followed by a UDP
   header.  The original invoking IP header, and therefore the identity
   of the traceroute source is lost.

   The solution we propose to solve this problem is to cache traceroute
   IPv4 headers in the ITR and to match them up with corresponding IPv4
   Time Exceeded messages received from core routers and the ETR.  The
   ITR will use a circular buffer for caching the IPv4 and UDP headers
   of traceroute packets.  It will select a 16-bit number as a key to
   find them later when the IPv4 Time Exceeded messages are received.
   When an ITR encapsulates an IPv4 traceroute packet, it will use the
   16-bit number as the UDP source port in the encapsulating header.
   When the ICMP Time Exceeded message is returned to the ITR, the UDP
   header of the encapsulating header is present in the ICMP payload
   thereby allowing the ITR to find the cached headers for the
   traceroute source.  The ITR puts the cached headers in the payload
   and sends the ICMP Time Exceeded message to the traceroute source
   retaining the source address of the original ICMP Time Exceeded
   message (a core router or the ETR of the site of the traceroute
   destination).

   The signature of a traceroute packet comes in two forms.  The first
   form is encoded as a UDP message where the destination port is
   inspected for a range of values.  The second form is encoded as an
   ICMP message where the IP identification field is inspected for a
   well-known value.

9.3.  Traceroute using Mixed Locators

   When either an IPv4 traceroute or IPv6 traceroute is originated and
   the ITR encapsulates it in the other address family header, you
   cannot get all 3 segments of the traceroute.  Segment 2 of the
   traceroute can not be conveyed to the traceroute source since it is
   expecting addresses from intermediate hops in the same address format
   for the type of traceroute it originated.  Therefore, in this case,
   segment 2 will make the tunnel look like one hop.  All the ITR has to
   do to make this work is to not copy the inner TTL to the outer,
   encapsulating header's TTL when a traceroute packet is encapsulated
   using an RLOC from a different address family.  This will cause no
   TTL decrement to 0 to occur in core routers between the ITR and ETR.

10.  Mobility Considerations

   There are several kinds of mobility of which only some might be of
   concern to LISP.  Essentially they are as follows.

10.1.  Site Mobility

   A site wishes to change its attachment points to the Internet, and
   its LISP Tunnel Routers will have new RLOCs when it changes upstream
   providers.  Changes in EID-RLOC mappings for sites are expected to be
   handled by configuration, outside of the LISP protocol.

10.2.  Slow Endpoint Mobility

   An individual endpoint wishes to move, but is not concerned about
   maintaining session continuity.  Renumbering is involved.  LISP can
   help with the issues surrounding renumbering [RFC4192] [LISA96] by
   decoupling the address space used by a site from the address spaces
   used by its ISPs.  [RFC4984]

10.3.  Fast Endpoint Mobility

   Fast endpoint mobility occurs when an endpoint moves relatively
   rapidly, changing its IP layer network attachment point.  Maintenance
   of session continuity is a goal.  This is where the Mobile IPv4
   [RFC3344bis] and Mobile IPv6 [RFC3775] [RFC4866] mechanisms are used,
   and primarily where interactions with LISP need to be explored.

   The problem is that as an endpoint moves, it may require changes to
   the mapping between its EID and a set of RLOCs for its new network
   location.  When this is added to the overhead of mobile IP binding
   updates, some packets might be delayed or dropped.

   In IPv4 mobility, when an endpoint is away from home, packets to it
   are encapsulated and forwarded via a home agent which resides in the
   home area the endpoint's address belongs to.  The home agent will
   encapsulate and forward packets either directly to the endpoint or to
   a foreign agent which resides where the endpoint has moved to.
   Packets from the endpoint may be sent directly to the correspondent
   node, may be sent via the foreign agent, or may be reverse-tunneled
   back to the home agent for delivery to the mobile node.  As the
   mobile node's EID or available RLOC changes, LISP EID-to-RLOC
   mappings are required for communication between the mobile node and
   the home agent, whether via foreign agent or not.  As a mobile
   endpoint changes networks, up to three LISP mapping changes may be
   required:

   o  The mobile node moves from an old location to a new visited
      network location and notifies its home agent that it has done so.
      The Mobile IPv4 control packets the mobile node sends pass through
      one of the new visited network's ITRs, which needs a EID-RLOC
      mapping for the home agent.

   o  The home agent might not have the EID-RLOC mappings for the mobile
      node's "care-of" address or its foreign agent in the new visited
      network, in which case it will need to acquire them.

   o  When packets are sent directly to the correspondent node, it may
      be that no traffic has been sent from the new visited network to
      the correspondent node's network, and the new visited network's
      ITR will need to obtain an EID-RLOC mapping for the correspondent
      node's site.

   In addition, if the IPv4 endpoint is sending packets from the new
   visited network using its original EID, then LISP will need to
   perform a route-returnability check on the new EID-RLOC mapping for
   that EID.

   In IPv6 mobility, packets can flow directly between the mobile node
   and the correspondent node in either direction.  The mobile node uses
   its "care-of" address (EID).  In this case, the route-returnability
   check would not be needed but one more LISP mapping lookup may be
   required instead:

   o  As above, three mapping changes may be needed for the mobile node
      to communicate with its home agent and to send packets to the
      correspondent node.

   o  In addition, another mapping will be needed in the correspondent
      node's ITR, in order for the correspondent node to send packets to
      the mobile node's "care-of" address (EID) at the new network
      location.

   When both endpoints are mobile the number of potential mapping
   lookups increases accordingly.

   As a mobile node moves there are not only mobility state changes in
   the mobile node, correspondent node, and home agent, but also state
   changes in the ITRs and ETRs for at least some EID-prefixes.

   The goal is to support rapid adaptation, with little delay or packet
   loss for the entire system.  Also IP mobility can be modified to
   require fewer mapping changes.  In order to increase overall system
   performance, there may be a need to reduce the optimization of one
   area in order to place fewer demands on another.

   In LISP, one possibility is to "glean" information.  When a packet
   arrives, the ETR could examine the EID-RLOC mapping and use that
   mapping for all outgoing traffic to that EID.  It can do this after
   performing a route-returnability check, to ensure that the new
   network location does have a internal route to that endpoint.
   However, this does not cover the case where an ITR (the node assigned
   the RLOC) at the mobile-node location has been compromised.

   Mobile IP packet exchange is designed for an environment in which all
   routing information is disseminated before packets can be forwarded.
   In order to allow the Internet to grow to support expected future
   use, we are moving to an environment where some information may have
   to be obtained after packets are in flight.  Modifications to IP
   mobility should be considered in order to optimize the behavior of
   the overall system.  Anything which decreases the number of new EID-
   RLOC mappings needed when a node moves, or maintains the validity of
   an EID-RLOC mapping for a longer time, is useful.

10.4.  Fast Network Mobility

   In addition to endpoints, a network can be mobile, possibly changing
   xTRs.  A "network" can be as small as a single router and as large as
   a whole site.  This is different from site mobility in that it is
   fast and possibly short-lived, but different from endpoint mobility
   in that a whole prefix is changing RLOCs.  However, the mechanisms
   are the same and there is no new overhead in LISP.  A map request for
   any endpoint will return a binding for the entire mobile prefix.

   If mobile networks become a more common occurrence, it may be useful
   to revisit the design of the mapping service and allow for dynamic
   updates of the database.

   The issue of interactions between mobility and LISP needs to be
   explored further.  Specific improvements to the entire system will
   depend on the details of mapping mechanisms.  Mapping mechanisms
   should be evaluated on how well they support session continuity for
   mobile nodes.

10.5.  LISP Mobile Node Mobility

   A mobile device can use the LISP infrastructure to achieve mobility
   by implementing the LISP encapsulation and decapsulation functions
   and acting as a simple ITR/ETR.  By doing this, such a "LISP mobile
   node" can use topologically-independent EID IP addresses that are not
   advertised into and do not impose a cost on the global routing
   system.  These EIDs are maintained at the edges of the mapping system
   (in LISP Map-Servers and Map-Resolvers) and are provided on demand to
   only the correspondents of the LISP mobile node.

   Refer to the LISP Mobility Architecture specification [LISP-MN] for
   more details.

11.  Multicast Considerations

   A multicast group address, as defined in the original Internet
   architecture is an identifier of a grouping of topologically
   independent receiver host locations.  The address encoding itself
   does not determine the location of the receiver(s).  The multicast
   routing protocol, and the network-based state the protocol creates,
   determines where the receivers are located.

   In the context of LISP, a multicast group address is both an EID and
   a Routing Locator.  Therefore, no specific semantic or action needs
   to be taken for a destination address, as it would appear in an IP
   header.  Therefore, a group address that appears in an inner IP
   header built by a source host will be used as the destination EID.
   The outer IP header (the destination Routing Locator address),
   prepended by a LISP router, will use the same group address as the
   destination Routing Locator.

   Having said that, only the source EID and source Routing Locator
   needs to be dealt with.  Therefore, an ITR merely needs to put its
   own IP address in the source Routing Locator field when prepending
   the outer IP header.  This source Routing Locator address, like any
   other Routing Locator address MUST be globally routable.

   Therefore, an EID-to-RLOC mapping does not need to be performed by an
   ITR when a received data packet is a multicast data packet or when
   processing a source-specific Join (either by IGMPv3 or PIM).  But the
   source Routing Locator is decided by the multicast routing protocol
   in a receiver site.  That is, an EID to Routing Locator translation
   is done at control-time.

   Another approach is to have the ITR not encapsulate a multicast
   packet and allow the host built packet to flow into the core even if
   the source address is allocated out of the EID namespace.  If the
   RPF-Vector TLV [RFC5496] is used by PIM in the core, then core
   routers can RPF to the ITR (the Locator address which is injected
   into core routing) rather than the host source address (the EID
   address which is not injected into core routing).

   To avoid any EID-based multicast state in the network core, the first
   approach is chosen for LISP-Multicast.  Details for LISP-Multicast
   and Interworking with non-LISP sites is described in specification
   [MLISP].

12.  Security Considerations

   It is believed that most of the security mechanisms will be part of
   the mapping database service when using control plane procedures for
   obtaining EID-to-RLOC mappings.  For data plane triggered mappings,
   as described in this specification, protection is provided against
   ETR spoofing by using Return- Routability mechanisms evidenced by the
   use of a 24-bit Nonce field in the LISP encapsulation header and a
   64-bit Nonce field in the LISP control message.  The nonce, coupled
   with the ITR accepting only solicited Map-Replies goes a long way
   toward providing decent authentication.

   LISP does not rely on a PKI infrastructure or a more heavy weight
   authentication system.  These systems challenge the scalability of
   LISP which was a primary design goal.

   DoS attack prevention will depend on implementations rate-limiting
   Map-Requests and Map-Replies to the control plane as well as rate-
   limiting the number of data-triggered Map-Replies.

   To deal with map-cache exhaustion attempts in an ITR/PTR, the
   implementation should consider putting a maximum cap on the number of
   entries stored with a reserve list for special or frequently accessed
   sites.  This should be a configuration policy control set by the
   network administrator who manages ITRs and PTRs.

13.  IANA Considerations

   This specification has already allocated UDP port numbers 4341 and
   4342 assigned from the IANA registry.

14.  <STRIKE><FONT color="red">Prototype Plans</FONT></STRIKE>  <STRONG><FONT color="green">References

14.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,
              August 1980.

   [RFC1034]  Mockapetris, P., "Domain names - concepts</FONT></STRONG> and <STRIKE><FONT color="red">Status

   The operator community has requested that the IETF take a practical
   approach to solving the scaling problems associated with global
   routing state growth.  This document offers a simple solution which
   is intended</FONT></STRIKE> <STRONG><FONT color="green">facilities",
              STD 13, RFC 1034, November 1987.

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC2119]  Bradner, S., "Key words</FONT></STRONG> for use in <STRIKE><FONT color="red">a pilot program</FONT></STRIKE> <STRONG><FONT color="green">RFCs</FONT></STRONG> to <STRIKE><FONT color="red">gain experience in working
   on this problem.

   The authors hope that publishing this specification will allow the
   rapid implementation</FONT></STRIKE> <STRONG><FONT color="green">Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use</FONT></STRONG> of <STRIKE><FONT color="red">multiple vendor prototypes</FONT></STRIKE> <STRONG><FONT color="green">HMAC-SHA-1-96 within
              ESP</FONT></STRONG> and <STRIKE><FONT color="red">deployment on
   a small scale.  Doing this will help the community:

   o  Decide whether a new EID-to-RLOC mapping database infrastructure
      is needed or if a simple, UDP-based, data-triggered approach is
      flexible and robust enough.

   o  Experiment with provider-independent assignment of EIDs while at
      the same time decreasing the size of DFZ routing tables through
      the use of topologically-aligned, provider-based RLOCs.

   o  Determine whether multiple levels of tunneling can be used by ISPs
      to achieve their Traffic Engineering goals while simultaneously
      removing the more specific routes currently injected into the
      global routing system for this purpose.

   o  Experiment with mobility to determine if both acceptable
      convergence and session continuity properties can be scalably
      implemented to support both individual device roaming and site
      service provider changes.

   Here is a rough set of milestones:

   1.  Interoperable implementations have been available since the
       beginning of 2009.

   2.  Continue pilot deployment using LISP-ALT as the database mapping
       mechanism.

   3.  Continue prototyping and studying other database lookup schemes,
       be it DNS, DHTs, CONS, ALT, NERD, or other mechanisms.

   4.  Implement the LISP Multicast draft [MLISP].

   5.  Implement the LISP Mobile Node draft [LISP-MN].

   6.  Research more on how policy affects what gets returned in a Map-
       Reply from an ETR.

   7.  Continue to experiment with mixed locator-sets to understand how
       LISP can help the IPv4 to IPv6 transition.

   8.  Add more robustness to locator reachability between LISP sites.

   9.  Continue the deployment of Proxy-ETRs (PETRs) for uses like uRPF
       avoidance, IPv6 connectivity, and LISP-MN.

   As of this writing the following accomplishments have been achieved:

   1.   A unit- and system-tested software switching implementation has
        been completed on cisco NX-OS for this draft for both IPv4 and
        IPv6 EIDs using a mixed locator-set of IPv4 and IPv6 locators.

   2.   A unit- and system-tested software switching implementation on
        cisco NX-OS has been completed for draft [ALT].

   3.   A unit- and system-tested software switching implementation on
        cisco NX-OS has been completed for draft [INTERWORK].  Support
        for IPv4 translation is provided and PTR support for IPv4 and
        IPv6 is provided.

   4.   The cisco NX-OS implementation supports an experimental
        mechanism for slow mobility.

   5.   There are 5 LISP implementations that exist and the first 4
        below have gone through interoperability testing at IETF
        Hiroshima, based on the draft-ietf-lisp-05.txt spec:

        1.  cisco NX-OS

        2.  OpenLISP

        3.  LISP-Click

        4.  ZLisp

        5.  cisco IOS

   6.   Vince Fuller, Darrel Lewis, Dave Meyer, Gregg Schudel, Andrew
        Partan and the rest of the lisp-beta team continue to test all
        the features described above on a dual-stack infrastructure.

   7.   Darrel Lewis and Dave Meyer have deployed both LISP translation
        and LISP PTR support in the pilot network.  Point your browser
        to http://www.lisp4.net to see translation happening in action
        so your non-LISP site can access a web server in a LISP site.

   8.   http://www.lisp6.net is available where your IPv6 LISP site can
        talk to a IPv6 web server in a LISP site by using mixed address-
        family based locators.

   9.   An public domain implementation of LISP is available.  See
        [OPENLISP] for details.

   10.  Map-Resolvers and Map-Servers have been deployed on the LISP
        pilot network to gather experience with [LISP-MS].  The first
        layer of the architecture are the xTRs.  The second layer are
        the Map-Resolvers and Map-Servers which connect to the ALT BGP
        peering infrastructure.  And the third layer are ALT-routers
        which aggregate EID-prefixes and forward Map-Requests.

   11.  A cisco IOS implementation is available which currently supports
        IPv4 and IPv6 encapsulation and decapsulation features.

   12.  A LISP router based LIG implementation is supported, deployed,
        and used daily to debug and test the LISP pilot network.  See
        [LIG] for details.

   13.  A Linux implementation of LIG has been made available and
        supported by Dave Meyer.  It can be run on any Linux system
        which resides in either a LISP site or non-LISP site.  See [LIG]
        for details.  Public domain code can be downloaded from
        http://github.com/davidmeyer/lig/tree/master.

   14.  Three locator reachability algorithms have been written.  The
        first two, Echo-Noncing and RLOC-Probing are documented in this
        specification.  The third, TCP-counts, will be documented in
        future drafts.

   15.  The LISP pilot network has been converted from using MD5 HMAC
        authentication for Map-Register messages to SHA-1 HMAC
        authentication.

   16.  The LISP pilot network is in its 3rd generation.  Current
        experiments are evaluating EID-prefix aggregation and various
        deployment models for Mapping Service Providers (MSPs).

15.  References

15.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,
              August 1980.

   [RFC1191]  Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191,
              November 1990.

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC1955]  Hinden, R., "New Scheme for Internet Routing and
              Addressing (ENCAPS) for IPNG", RFC 1955, June 1996.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use of HMAC-SHA-1-96 within
              ESP and AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D.,</FONT></STRIKE> <STRONG><FONT color="green">AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D.,</FONT></STRONG> and P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              March 2000.

   [RFC3056]  Carpenter, B. and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3168]  Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
              of Explicit Congestion Notification (ECN) to IP",
              RFC 3168, September 2001.

   <STRONG><FONT color="green">[RFC3261]  Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
              A., Peterson, J., Sparks, R., Handley, M., and E.
              Schooler, "SIP: Session Initiation Protocol", RFC 3261,
              June 2002.</FONT></STRONG>

   [RFC3775]  Johnson, D., Perkins, C., and J. Arkko, "Mobility Support
              in IPv6", RFC 3775, June 2004.

   [RFC4086]  Eastlake, D., Schiller, J., and S. Crocker, "Randomness
              Requirements for Security", BCP 106, RFC 4086, June 2005.

   <STRONG><FONT color="green">[RFC4632]  Fuller, V. and T. Li, "Classless Inter-domain Routing
              (CIDR): The Internet Address Assignment and Aggregation
              Plan", BCP 122, RFC 4632, August 2006.</FONT></STRONG>

   [RFC4634]  Eastlake, D. and T. Hansen, "US Secure Hash Algorithms
              (SHA and HMAC-SHA)", RFC 4634, July 2006.

   [RFC4866]  Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route
              Optimization for Mobile IPv6", RFC 4866, May 2007.

   [RFC4984]  Meyer, D., Zhang, L., and K. Fall, "Report from the IAB
              Workshop on Routing and Addressing", RFC 4984,
              September 2007.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC5496]  Wijnands, IJ., Boers, A., and E. Rosen, "The Reverse Path
              Forwarding (RPF) Vector TLV", RFC 5496, March 2009.

   [UDP-TUNNELS]
              Eubanks, M. and P. Chimento, "UDP Checksums for Tunneled
              Packets"", draft-eubanks-chimento-6man-00.txt (work in
              progress), February 2009.

<STRIKE><FONT color="red">15.2.</FONT></STRIKE>

<STRONG><FONT color="green">14.2.</FONT></STRONG>  Informative References

   [AFI]      IANA, "Address Family Indicators (AFIs)", ADDRESS FAMILY
              NUMBERS http://www.iana.org/numbers.html, Febuary 2007.

   [ALT]      Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "LISP
              Alternative Topology (LISP-ALT)",
              draft-ietf-lisp-alt-04.txt (work in progress), April 2010.

   [CHIAPPA]  Chiappa, J., "Endpoints and Endpoint names: A Proposed
              Enhancement to the Internet Architecture", Internet-
              Draft http://www.chiappa.net/~jnc/tech/endpoints.txt,
              1999.

   [CONS]     Farinacci, D., Fuller, V., and D. Meyer, "LISP-CONS: A
              Content distribution Overlay Network  Service for LISP",
              draft-meyer-lisp-cons-03.txt (work in progress),
              November 2007.

   [EMACS]    Brim, S., Farinacci, D., Meyer, D., and J. Curran, "EID
              Mappings Multicast Across Cooperating Systems for LISP",
              draft-curran-lisp-emacs-00.txt (work in progress),
              November 2007.

   [INTERWORK]
              Lewis, D., Meyer, D., Farinacci, D., and V. Fuller,
              "Interworking LISP with IPv4 and IPv6",
              draft-ietf-lisp-interworking-01.txt (work in progress),
              March 2010.

   [LCAF]     Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical
              Address Format", draft-farinacci-lisp-lcaf-00.txt (work in
              progress), April 2010.

   <STRIKE><FONT color="red">[LIG]      Farinacci, D. and D. Meyer, "LISP Internet Groper (LIG)",
              draft-ietf-lisp-lig-00.txt (work in progress), April 2010.</FONT></STRIKE>

   [LISA96]   Lear, E., Katinsky, J., Coffin, J., and D. Tharp,
              "Renumbering: Threat or Menace?", Usenix , September 1996.

   [LISP-MAIN]
              Farinacci, D., Fuller, V., Meyer, D., and D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-farinacci-lisp-12.txt (work in progress),
              March 2009.

   [LISP-MN]  Farinacci, D., Fuller, V., Lewis, D., and D. Meyer, "LISP
              Mobility Architecture", <STRIKE><FONT color="red">draft-meyer-lisp-mn-00.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-meyer-lisp-mn-03.txt</FONT></STRONG> (work
              in progress), <STRIKE><FONT color="red">July 2009.</FONT></STRIKE> <STRONG><FONT color="green">August 2010.</FONT></STRONG>

   [LISP-MS]  Farinacci, D. and V. Fuller, "LISP Map Server",
              draft-ietf-lisp-ms-05.txt (work in progress), April 2010.

   [LOC-ID-ARCH]
              Meyer, D. and D. Lewis, "Architectural Implications of
              Locator/ID  Separation",
              draft-meyer-loc-id-implications-01.txt (work in progress),
              Januaryr 2009.

   [MLISP]    Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas,
              "LISP for Multicast Environments",
              draft-ietf-lisp-multicast-03.txt (work in progress),
              April 2010.

   [NERD]     Lear, E., "NERD: A Not-so-novel EID to RLOC Database",
              draft-lear-lisp-nerd-08.txt (work in progress),
              March 2010.

   [OPENLISP]
              Iannone, L. and O. Bonaventure, "OpenLISP Implementation
              Report", draft-iannone-openlisp-implementation-01.txt
              (work in progress), July 2008.

   [RADIR]    Narten, T., "Routing and Addressing Problem Statement",
              draft-narten-radir-problem-statement-00.txt (work in
              progress), July 2007.

   [RFC3344bis]
              Perkins, C., "IP Mobility Support for IPv4, revised",
              draft-ietf-mip4-rfc3344bis-05 (work in progress),
              July 2007.

   [RFC4192]  Baker, F., Lear, E., and R. Droms, "Procedures for
              Renumbering an IPv6 Network without a Flag Day", RFC 4192,
              September 2005.

   [RPMD]     Handley, M., Huici, F., and A. Greenhalgh, "RPMD: Protocol
              for Routing Protocol Meta-data  Dissemination",
              draft-handley-p2ppush-unpublished-2007726.txt (work in
              progress), July 2007.

   [VERSIONING]
              Iannone, L., Saucez, D., and O. Bonaventure, "LISP Mapping
              Versioning", draft-iannone-lisp-mapping-versioning-01.txt
              (work in progress), March 2010.

Appendix A.  Acknowledgments

   An initial thank you goes to Dave Oran for planting the seeds for the
   initial ideas for LISP.  His consultation continues to provide value
   to the LISP authors.

   A special and appreciative thank you goes to Noel Chiappa for
   providing architectural impetus over the past decades on separation
   of location and identity, as well as detailed review of the LISP
   architecture and documents, coupled with enthusiasm for making LISP a
   practical and incremental transition for the Internet.

   The authors would like to gratefully acknowledge many people who have
   contributed discussion and ideas to the making of this proposal.
   They include Scott Brim, Andrew Partan, John Zwiebel, Jason Schiller,
   Lixia Zhang, Dorian Kim, Peter Schoenmaker, Vijay Gill, Geoff Huston,
   David Conrad, Mark Handley, Ron Bonica, Ted Seely, Mark Townsley,
   Chris Morrow, Brian Weis, Dave McGrew, Peter Lothberg, Dave Thaler,
   Eliot Lear, Shane Amante, Ved Kafle, Olivier Bonaventure, Luigi
   Iannone, Robin Whittle, Brian Carpenter, Joel Halpern, Roger
   Jorgensen, Ran Atkinson, Stig Venaas, Iljitsch van Beijnum, Roland
   Bless, Dana Blair, Bill Lynch, Marc Woolward, Damien Saucez, Damian
   Lezama, Attilla De Groot, Parantap Lahiri, David Black, Roque
   Gagliano, Isidor Kouvelas, Jesper Skriver, Fred Templin, Margaret
   Wasserman, Sam Hartman, Michael Hofling, Pedro Marques, Jari Arkko,
   Gregg Schudel, Srinivas Subramanian, Amit Jain, Xu Xiaohu, Dhirendra
   Trivedi, Yakov Rekhter, John Scudder, John Drake, Dimitri
   Papadimitriou, Ross Callon, Selina Heimlich, Job Snijders, and Vina
   Ermagan.

   This work originated in the Routing Research Group (RRG) of the IRTF.
   The individual submission [LISP-MAIN] was converted into this IETF
   LISP working group draft.

Appendix B.  Document Change Log

B.1.  Changes to draft-ietf-lisp-08.txt

   o  Posted August 2010.

   o  In section 6.1.6, remove statement about setting TTL to 0 in Map-
      Register messages.

   o  Clarify language in section 6.1.5 about Map-Replying to Data-
      Probes or Map-Requests.

   o  Indicate that outer TTL should only be copied to inner TTL when it
      is less than inner TTL.

   o  Indicate a source-EID for RLOC-probes are encoded with an AFI
      value of 0.

   o  Indicate that SMRs can have a global or per SMR destination rate-
      limiter.

   o  Add clarifications to the SMR procedures.

   o  Add definitions for "client-side" and 'server-side" terms used in
      this specification.

   o  Clear up language in section 6.4, last paragraph.

   o  Change ACT of value 0 to "no-action".  This is so we can RLOC-
      probe a PETR and have it return a Map-Reply with a locator-set of
      size 0.  The way it is spec'ed the map-cache entry has action
      "dropped".  Drop-action is set to 3.

   o  Add statement about normalizing locator weights.

   o  Clarify R-bit definition in the Map-Reply locator record.

   o  Add section on EID Reachability within a LISP site.

   o  Clarify another disadvantage of using anycast locators.

   o  Reworded Abstract.

   o  Change section 2.0 Introduction to remove obsolete information
      such as the LISP variant definitions.

   o  Change section 5 title from "Tunneling Details" to "LISP
      Encapsulation Details".

   o  Changes to section 5 to include results of network deployment
      experience with MTU.  Recommend that implementations use either
      the stateful or stateless handling.

   o  <STRIKE><FONT color="red">Updated current events in the "Prototype Plans and Status"
      section.

   o</FONT></STRIKE>  Make clarification wordsmithing to Section 7 and 8.

   o  Identify that if there is one locator in the locator-set of a map-
      cache entry, that an SMR from that locator should be responded to
      by sending the the SMR-invoked Map-Request to the database mapping
      system rather than to the RLOC itself (which may be unreachable).

   o  When describing Unicast and Multicast Weights indicate the the
      values are relative weights rather than percentages.  So it
      doesn't imply the sum of all locator weights in the locator-set
      need to be 100.

   o  Do some wordsmithing on copying TTL and TOS fields.

   <STRONG><FONT color="green">o  Numerous wordsmithing changes from Dave Meyer.  He fine toothed
      combed the spec.

   o  Removed Section 14 "Prototype Plans and Status".  We felt this
      type of section is no longer appropriate for a protocol
      specification.

   o  Add clarification text for the IRC description per Damien's
      commentary.

   o  Remove text on copying nonce from SMR to SMR-invoked Map- Request
      per Vina's comment about a possible DoS vector.

   o  Clarify (S/2 + H) in the stateless MTU section.</FONT></STRONG>

B.2.  Changes to draft-ietf-lisp-07.txt

   o  Posted April 2010.

   o  Added I-bit to data header so LSB field can also be used as an
      Instance ID field.  When this occurs, the LSB field is reduced to
      8-bits (from 32-bits).

   o  Added V-bit to the data header so the 24-bit nonce field can also
      be used for source and destination version numbers.

   o  Added Map-Version 12-bit value to the EID-record to be used in all
      of Map-Request, Map-Reply, and Map-Register messages.

   o  Added multiple ITR-RLOC fields to the Map-Request packet so an ETR
      can decide what address to select for the destination of a Map-
      Reply.

   o  Added L-bit (Local RLOC bit) and p-bit (Probe-Reply RLOC bit) to
      the Locator-Set record of an EID-record for a Map-Reply message.
      The L-bit indicates which RLOCs in the locator-set are local to
      the sender of the message.  The P-bit indicates which RLOC is the
      source of a RLOC-probe Reply (Map-Reply) message.

   o  Add reference to the LISP Canonical Address Format [LCAF] draft.

   o  Made editorial and clarification changes based on comments from
      Dhirendra Trivedi.

   o  Added wordsmithing comments from Joel Halpern on DF=1 setting.

   o  Add John Zwiebel clarification to Echo Nonce Algorithm section
      6.3.1.

   o  Add John Zwiebel comment about expanding on proxy-map-reply bit
      for Map-Register messages.

   o  Add NAT section per Ron Bonica comments.

   o  Fix IDnits issues per Ron Bonica.

   o  Added section on Virtualization and Segmentation to explain the
      use if the Instance ID field in the data header.

   o  There are too many P-bits, keep their scope to the packet format
      description and refer to them by name every where else in the
      spec.

   o  Scanned all occurrences of "should", "should not", "must" and
      "must not" and uppercased them.

   o  John Zwiebel offered text for section 4.1 to modernize the
      example.  Thanks Z!

   o  Make it more clear in the definition of "EID-to-RLOC Database"
      that all ETRs need to have the same database mapping.  This
      reflects a comment from John Scudder.

   o  Add a definition "Route-returnability" to the Definition of Terms
      section.

   o  In section 9.2, add text to describe what the signature of
      traceroute packets can look like.

   o  Removed references to Data Probe for introductory example.  Data-
      probes are still part of the LISP design but not encouraged.

   o  Added the definition for "LISP site" to the Definition of Terms"
      section.

B.3.  Changes to draft-ietf-lisp-06.txt

   Editorial based changes:

   o  Posted December 2009.

   o  Fix typo for flags in LISP data header.  Changed from "4" to "5".

   o  Add text to indicate that Map-Register messages must contain a
      computed UDP checksum.

   o  Add definitions for PITR and PETR.

   o  Indicate an AFI value of 0 is an unspecified address.

   o  Indicate that the TTL field of a Map-Register is not used and set
      to 0 by the sender.  This change makes this spec consistent with
      [LISP-MS].

   o  Change "... yield a packet size of L bytes" to "... yield a packet
      size greater than L bytes".

   o  Clarify section 6.1.5 on what addresses and ports are used in Map-
      Reply messages.

   o  Clarify that LSBs that go beyond the number of locators do not to
      be SMRed when the locator addresses are greater lexicographically
      than the locator in the existing locator-set.

   o  Add Gregg, Srini, and Amit to acknowledgment section.

   o  Clarify in the definition of a LISP header what is following the
      UDP header.

   o  Clarify "verifying Map-Request" text in section 6.1.3.

   o  Add Xu Xiaohu to the acknowledgment section for introducing the
      problem of overlapping EID-prefixes among multiple sites in an RRG
      email message.

   Design based changes:

   o  Use stronger language to have the outer IPv4 header set DF=1 so we
      can avoid fragment reassembly in an ETR or PETR.  This will also
      make IPv4 and IPv6 encapsulation have consistent behavior.

   o  Map-Requests should not be sent in ECM with the Probe bit is set.
      These type of Map-Requests are used as RLOC-probes and are sent
      directly to locator addresses in the underlying network.

   o  Add text in section 6.1.5 about returning all EID-prefixes in a
      Map-Reply sent by an ETR when there are overlapping EID-prefixes
      configure.

   o  Add text in a new subsection of section 6.1.5 about dealing with
      Map-Replies with coarse EID-prefixes.

B.4.  Changes to draft-ietf-lisp-05.txt

   o  Posted September 2009.

   o  Added this Document Change Log appendix.

   o  Added section indicating that encapsulated Map-Requests must use
      destination UDP port 4342.

   o  Don't use AH in Map-Registers.  Put key-id, auth-length, and auth-
      data in Map-Register payload.

   o  Added Jari to acknowledgment section.

   o  State the source-EID is set to 0 when using Map-Requests to
      refresh or RLOC-probe.

   o  Make more clear what source-RLOC should be for a Map-Request.

   o  The LISP-CONS authors thought that the Type definitions for CONS
      should be removed from this specification.

   o  Removed nonce from Map-Register message, it wasn't used so no need
      for it.

   o  Clarify what to do for unspecified Action bits for negative Map-
      Replies.  Since No Action is a drop, make value 0 Drop.

B.5.  Changes to draft-ietf-lisp-04.txt

   o  Posted September 2009.

   o  How do deal with record count greater than 1 for a Map-Request.
      Damien and Joel comment.  Joel suggests: 1) Specify that senders
      compliant with the current document will always set the count to
      1, and note that the count is included for future extensibility.
      2) Specify what a receiver compliant with the draft should do if
      it receives a request with a count greater than 1.  Presumably, it
      should send some error back?

   o  Add Fred Templin in acknowledgment section.

   o  Add Margaret and Sam to the acknowledgment section for their great
      comments.

   o  Say more about LAGs in the UDP section per Sam Hartman's comment.

   o  Sam wants to use MAY instead of SHOULD for ignoring checksums on
      ETR.  From the mailing list: "You'd need to word it as an ITR MAY
      send a zero checksum, an ETR MUST accept a 0 checksum and MAY
      ignore the checksum completely.  And of course we'd need to
      confirm that can actually be implemented.  In particular, hardware
      that verifies UDP checksums on receive needs to be checked to make
      sure it permits 0 checksums."

   o  Margaret wants a reference to
      http://www.ietf.org/id/draft-eubanks-chimento-6man-00.txt.

   o  Fix description in Map-Request section.  Where we describe Map-
      Reply Record, change "R-bit" to "M-bit".

   o  Add the mobility bit to Map-Replies.  So PTRs don't probe so often
      for MNs but often enough to get mapping updates.

   o  Indicate SHA1 can be used as well for Map-Registers.

   o  More Fred comments on MTU handling.

   o  Isidor comment about spec'ing better periodic Map-Registers.  Will
      be fixed in draft-ietf-lisp-ms-02.txt.

   o  Margaret's comment on gleaning: "The current specification does
      not make it clear how long gleaned map entries should be retained
      in the cache, nor does it make it clear how/ when they will be
      validated.  The LISP spec should, at the very least, include a
      (short) default lifetime for gleaned entries, require that they be
      validated within a short period of time, and state that a new
      gleaned entry should never overwrite an entry that was obtained
      from the mapping system.  The security implications of storing
      "gleaned" entries should also be explored in detail."

   o  Add section on RLOC-probing per working group feedback.

   o  Change "loc-reach-bits" to "loc-status-bits" per comment from
      Noel.

   o  Remove SMR-bit from data-plane.  Dino prefers to have it in the
      control plane only.

   o  Change LISP header to allow a "Research Bit" so the Nonce and LSB
      fields can be turned off and used for another future purpose.  For
      Luigi et al versioning convergence.

   o  Add a N-bit to the data header suggested by Noel.  Then the nonce
      field could be used when N is not 1.

   o  Clarify that when E-bit is 0, the nonce field can be an echoed
      nonce or a random nonce.  Comment from Jesper.

   o  Indicate when doing data-gleaning that a verifying Map-Request is
      sent to the source-EID of the gleaned data packet so we can avoid
      map-cache corruption by a 3rd party.  Comment from Pedro.

   o  Indicate that a verifying Map-Request, for accepting mapping data,
      should be sent over the ALT (or to the EID).

   o  Reference IPsec RFC 4302.  Comment from Sam and Brian Weis.

   o  Put E-bit in Map-Reply to tell ITRs that the ETR supports echo-
      noncing.  Comment by Pedro and Dino.

   o  Jesper made a comment to loosen the language about requiring the
      copy of inner TTL to outer TTL since the text to get mixed-AF
      traceroute to work would violate the "MUST" clause.  Changed from
      MUST to SHOULD in section 5.3.

B.6.  Changes to draft-ietf-lisp-03.txt

   o  Posted July 2009.

   o  Removed loc-reach-bits longword from control packets per Damien
      comment.

   o  Clarifications in MTU text from Roque.

   o  Added text to indicate that the locator-set be sorted by locator
      address from Isidor.

   o  Clarification text from John Zwiebel in Echo-Nonce section.

B.7.  Changes to draft-ietf-lisp-02.txt

   o  Posted July 2009.

   o  Encapsulation packet format change to add E-bit and make loc-
      reach-bits 32-bits in length.

   o  Added Echo-Nonce Algorithm section.

   o  Clarification how ECN bits are copied.

   o  Moved S-bit in Map-Request.

   o  Added P-bit in Map-Request and Map-Reply messages to anticipate
      RLOC-Probe Algorithm.

   o  Added to Mobility section to reference <STRIKE><FONT color="red">draft-meyer-lisp-mn-00.txt.</FONT></STRIKE> <STRONG><FONT color="green">[LISP-MN].</FONT></STRONG>

B.8.  Changes to draft-ietf-lisp-01.txt

   o  Posted 2 days after draft-ietf-lisp-00.txt in May 2009.

   o  Defined LEID to be a "LISP EID".

   o  Indicate encapsulation use IPv4 DF=0.

   o  Added negative Map-Reply messages with drop, native-forward, and
      send-map-request actions.

   o  Added Proxy-Map-Reply bit to Map-Register.

B.9.  Changes to draft-ietf-lisp-00.txt

   o  Posted May 2009.

   o  Rename of draft-farinacci-lisp-12.txt.

   o  Acknowledgment to RRG.

Authors' Addresses

   Dino Farinacci
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: dino@cisco.com

   Vince Fuller
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: vaf@cisco.com

   Dave Meyer
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: dmm@cisco.com

   Darrel Lewis
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: darlewis@cisco.com
</PRE>

</BODY></HTML>
--Apple-Mail-54-444922375
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed
Content-Transfer-Encoding: 7bit





--Apple-Mail-54-444922375
Content-Disposition: attachment;
	filename=rfcdiff-ietf-lisp-07-to-08.html
Content-Type: text/html;
	x-unix-mode=0600;
	name="rfcdiff-ietf-lisp-07-to-08.html"
Content-Transfer-Encoding: 7bit


<!-- saved from url=(0029)http://tools.ietf.org/rfcdiff -->
<HTML><HEAD><META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><TITLE>wdiff draft-ietf-lisp-07.txt draft-ietf-lisp-08.txt</TITLE></HEAD><BODY>
<PRE>
Network Working Group                                       D. Farinacci
Internet-Draft                                                 V. Fuller
Intended status: Experimental                                   D. Meyer
Expires: <STRIKE><FONT color="red">October 27, 2010</FONT></STRIKE> <STRONG><FONT color="green">February 12, 2011</FONT></STRONG>                                      D. Lewis
                                                           cisco Systems
                                                          <STRIKE><FONT color="red">April 25,</FONT></STRIKE>
                                                         <STRONG><FONT color="green">August 11,</FONT></STRONG> 2010

                 Locator/ID Separation Protocol (LISP)
                           <STRIKE><FONT color="red">draft-ietf-lisp-07</FONT></STRIKE>
                           <STRONG><FONT color="green">draft-ietf-lisp-08</FONT></STRONG>

Abstract

   This draft describes a <STRIKE><FONT color="red">simple, incremental,</FONT></STRIKE> network-based protocol <STRIKE><FONT color="red">to
   implement</FONT></STRIKE> <STRONG><FONT color="green">that enables</FONT></STRONG> separation
   of <STRIKE><FONT color="red">Internet</FONT></STRIKE> <STRONG><FONT color="green">IP</FONT></STRONG> addresses into <STRONG><FONT color="green">two new numbering spaces:</FONT></STRONG> Endpoint Identifiers
   (EIDs) and Routing Locators (RLOCs).  <STRIKE><FONT color="red">This mechanism requires no</FONT></STRIKE>  <STRONG><FONT color="green">No</FONT></STRONG> changes <STRONG><FONT color="green">are required</FONT></STRONG> to
   <STRONG><FONT color="green">either</FONT></STRONG> host <STRONG><FONT color="green">protocol</FONT></STRONG> stacks <STRIKE><FONT color="red">and no major changes</FONT></STRIKE> <STRONG><FONT color="green">or</FONT></STRONG> to <STRIKE><FONT color="red">existing database
   infrastructures.  The proposed protocol</FONT></STRIKE> <STRONG><FONT color="green">the "core" of the Internet
   infrastructure.  LISP</FONT></STRONG> can be <STRIKE><FONT color="red">implemented in</FONT></STRIKE> <STRONG><FONT color="green">incrementally deployed, without</FONT></STRONG> a <STRONG><FONT color="green">"flag
   day", and offers traffic engineering, multi-homing, and mobility
   benefits even to early adopters, when there are</FONT></STRONG> relatively <STRIKE><FONT color="red">small number</FONT></STRIKE> <STRONG><FONT color="green">few LISP-
   capable sites.

   Design and development</FONT></STRONG> of <STRIKE><FONT color="red">routers.

   This proposal</FONT></STRIKE> <STRONG><FONT color="green">LISP</FONT></STRONG> was <STRIKE><FONT color="red">stimulated</FONT></STRIKE> <STRONG><FONT color="green">largely motivated</FONT></STRONG> by the problem
   statement <STRIKE><FONT color="red">effort at</FONT></STRIKE> <STRONG><FONT color="green">produced by</FONT></STRONG> the
   <STRIKE><FONT color="red">Amsterdam</FONT></STRIKE> <STRONG><FONT color="green">October, 2006</FONT></STRONG> IAB Routing and Addressing <STRIKE><FONT color="red">Workshop (RAWS), which took
   place in October 2006.</FONT></STRIKE>
   <STRONG><FONT color="green">Workshop.</FONT></STRONG>

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on <STRIKE><FONT color="red">October 27, 2010.</FONT></STRIKE> <STRONG><FONT color="green">February 12, 2011.</FONT></STRONG>

Copyright Notice

   Copyright (c) 2010 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
   the Trust Legal Provisions and are provided without warranty as
   described in the BSD License.

Table of Contents

   1.  Requirements Notation  . . . . . . . . . . . . . . . . . . . .  4
   2.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
   3.  Definition of Terms  . . . . . . . . . . . . . . . . . . . . .  <STRIKE><FONT color="red">8</FONT></STRIKE>  <STRONG><FONT color="green">7</FONT></STRONG>
   4.  Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 12
     4.1.  Packet Flow Sequence . . . . . . . . . . . . . . . . . . . 14
   5.  <STRIKE><FONT color="red">Tunneling</FONT></STRIKE>  <STRONG><FONT color="green">LISP Encapsulation</FONT></STRONG> Details . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">. . . .</FONT></STRIKE> 16
     5.1.  LISP IPv4-in-IPv4 Header Format  . . . . . . . . . . . . . 17
     5.2.  LISP IPv6-in-IPv6 Header Format  . . . . . . . . . . . . . <STRIKE><FONT color="red">18</FONT></STRIKE> <STRONG><FONT color="green">17</FONT></STRONG>
     5.3.  Tunnel Header Field Descriptions . . . . . . . . . . . . . 19
     5.4.  Dealing with Large Encapsulated Packets  . . . . . . . . . 22
       5.4.1.  A Stateless Solution to MTU Handling . . . . . . . . . <STRIKE><FONT color="red">22</FONT></STRIKE> <STRONG><FONT color="green">23</FONT></STRONG>
       5.4.2.  A Stateful Solution to MTU Handling  . . . . . . . . . <STRIKE><FONT color="red">23</FONT></STRIKE> <STRONG><FONT color="green">24</FONT></STRONG>
     5.5.  Using Virtualization and Segmentation with LISP  . . . . . 24
   6.  EID-to-RLOC Mapping  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">25</FONT></STRIKE> <STRONG><FONT color="green">26</FONT></STRONG>
     6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats  . . . . . <STRIKE><FONT color="red">25</FONT></STRIKE> <STRONG><FONT color="green">26</FONT></STRONG>
       6.1.1.  LISP Packet Type Allocations . . . . . . . . . . . . . <STRIKE><FONT color="red">27</FONT></STRIKE> <STRONG><FONT color="green">28</FONT></STRONG>
       6.1.2.  Map-Request Message Format . . . . . . . . . . . . . . <STRIKE><FONT color="red">27</FONT></STRIKE> <STRONG><FONT color="green">28</FONT></STRONG>
       6.1.3.  EID-to-RLOC UDP Map-Request Message  . . . . . . . . . <STRIKE><FONT color="red">29</FONT></STRIKE> <STRONG><FONT color="green">30</FONT></STRONG>
       6.1.4.  Map-Reply Message Format . . . . . . . . . . . . . . . <STRIKE><FONT color="red">31</FONT></STRIKE> <STRONG><FONT color="green">32</FONT></STRONG>
       6.1.5.  EID-to-RLOC UDP Map-Reply Message  . . . . . . . . . . <STRIKE><FONT color="red">34</FONT></STRIKE> <STRONG><FONT color="green">35</FONT></STRONG>
       6.1.6.  Map-Register Message Format  . . . . . . . . . . . . . <STRIKE><FONT color="red">37</FONT></STRIKE> <STRONG><FONT color="green">38</FONT></STRONG>
       6.1.7.  Encapsulated Control Message Format  . . . . . . . . . <STRIKE><FONT color="red">38</FONT></STRIKE> <STRONG><FONT color="green">39</FONT></STRONG>
     6.2.  Routing Locator Selection  . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">40</FONT></STRIKE> <STRONG><FONT color="green">41</FONT></STRONG>
     6.3.  Routing Locator Reachability . . . . . . . . . . . . . . . <STRIKE><FONT color="red">41</FONT></STRIKE> <STRONG><FONT color="green">42</FONT></STRONG>
       6.3.1.  Echo Nonce Algorithm . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">44</FONT></STRIKE> <STRONG><FONT color="green">45</FONT></STRONG>
       6.3.2.  RLOC Probing Algorithm . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">45</FONT></STRIKE> <STRONG><FONT color="green">46</FONT></STRONG>
     6.4.  <STRONG><FONT color="green">EID Reachability within a LISP Site  . . . . . . . . . . . 47
     6.5.</FONT></STRONG>  Routing Locator Hashing  . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">46
     6.5.</FONT></STRIKE> <STRONG><FONT color="green">47
     6.6.</FONT></STRONG>  Changing the Contents of EID-to-RLOC Mappings  . . . . . . <STRIKE><FONT color="red">47
       6.5.1.</FONT></STRIKE> <STRONG><FONT color="green">48
       6.6.1.</FONT></STRONG>  Clock Sweep  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">47
       6.5.2.</FONT></STRIKE> <STRONG><FONT color="green">49
       6.6.2.</FONT></STRONG>  Solicit-Map-Request (SMR)  . . . . . . . . . . . . . . <STRIKE><FONT color="red">48
       6.5.3.</FONT></STRIKE> <STRONG><FONT color="green">49
       6.6.3.</FONT></STRONG>  Database Map Versioning  . . . . . . . . . . . . . . . <STRIKE><FONT color="red">49</FONT></STRIKE> <STRONG><FONT color="green">51</FONT></STRONG>
   7.  Router Performance Considerations  . . . . . . . . . . . . . . <STRIKE><FONT color="red">51</FONT></STRIKE> <STRONG><FONT color="green">52</FONT></STRONG>
   8.  Deployment Scenarios . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">52</FONT></STRIKE> <STRONG><FONT color="green">53</FONT></STRONG>
     8.1.  First-hop/Last-hop Tunnel Routers  . . . . . . . . . . . . <STRIKE><FONT color="red">53</FONT></STRIKE> <STRONG><FONT color="green">54</FONT></STRONG>
     8.2.  Border/Edge Tunnel Routers . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">53</FONT></STRIKE> <STRONG><FONT color="green">54</FONT></STRONG>
     8.3.  ISP Provider-Edge (PE) Tunnel Routers  . . . . . . . . . . <STRIKE><FONT color="red">54</FONT></STRIKE> <STRONG><FONT color="green">55</FONT></STRONG>
     8.4.  LISP Functionality with Conventional NATs  . . . . . . . . <STRIKE><FONT color="red">54</FONT></STRIKE> <STRONG><FONT color="green">55</FONT></STRONG>
   9.  Traceroute Considerations  . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">55</FONT></STRIKE> <STRONG><FONT color="green">56</FONT></STRONG>
     9.1.  IPv6 Traceroute  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
     9.2.  IPv4 Traceroute  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
     9.3.  Traceroute using Mixed Locators  . . . . . . . . . . . . . <STRIKE><FONT color="red">56</FONT></STRIKE> <STRONG><FONT color="green">57</FONT></STRONG>
   10. Mobility Considerations  . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.1. Site Mobility  . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.2. Slow Endpoint Mobility . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.3. Fast Endpoint Mobility . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">58</FONT></STRIKE> <STRONG><FONT color="green">59</FONT></STRONG>
     10.4. Fast Network Mobility  . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">60</FONT></STRIKE> <STRONG><FONT color="green">61</FONT></STRONG>
     10.5. LISP Mobile Node Mobility  . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">60</FONT></STRIKE> <STRONG><FONT color="green">61</FONT></STRONG>
   11. Multicast Considerations . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">62</FONT></STRIKE> <STRONG><FONT color="green">63</FONT></STRONG>
   12. Security Considerations  . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">63</FONT></STRIKE> <STRONG><FONT color="green">64</FONT></STRONG>
   13. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">64
   14. Prototype Plans and Status . . . . . . . . . . . . . . . . . .</FONT></STRIKE> 65
   <STRIKE><FONT color="red">15.</FONT></STRIKE>
   <STRONG><FONT color="green">14.</FONT></STRONG> References . . . . . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">68
     15.1.</FONT></STRIKE> <STRONG><FONT color="green">66
     14.1.</FONT></STRONG> Normative References . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">68
     15.2.</FONT></STRIKE> <STRONG><FONT color="green">66
     14.2.</FONT></STRONG> Informative References . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">69</FONT></STRIKE> <STRONG><FONT color="green">67</FONT></STRONG>
   Appendix A.  Acknowledgments . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">73</FONT></STRIKE> <STRONG><FONT color="green">70</FONT></STRONG>
   Appendix B.  Document Change Log . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">74</FONT></STRIKE> <STRONG><FONT color="green">71</FONT></STRONG>
     B.1.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-07.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-08.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">74</FONT></STRIKE> <STRONG><FONT color="green">71</FONT></STRONG>
     B.2.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-06.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-07.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">75</FONT></STRIKE> <STRONG><FONT color="green">72</FONT></STRONG>
     B.3.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-05.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-06.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">76</FONT></STRIKE> <STRONG><FONT color="green">74</FONT></STRONG>
     B.4.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-04.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-05.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">77</FONT></STRIKE> <STRONG><FONT color="green">75</FONT></STRONG>
     B.5.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-03.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-04.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">76</FONT></STRONG>
     B.6.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-02.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-03.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">77</FONT></STRONG>
     B.7.  Changes to <STRIKE><FONT color="red">draft-ietf-lisp-01.txt</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-02.txt</FONT></STRONG>  . . . . . . . . . . . . <STRIKE><FONT color="red">79</FONT></STRIKE> <STRONG><FONT color="green">78</FONT></STRONG>
     B.8.  Changes to <STRONG><FONT color="green">draft-ietf-lisp-01.txt  . . . . . . . . . . . . 78
     B.9.  Changes to</FONT></STRONG> draft-ietf-lisp-00.txt  . . . . . . . . . . . . <STRIKE><FONT color="red">80</FONT></STRIKE> <STRONG><FONT color="green">78</FONT></STRONG>
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . <STRIKE><FONT color="red">81</FONT></STRIKE> <STRONG><FONT color="green">79</FONT></STRONG>

1.  Requirements Notation

   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 [RFC2119].

2.  Introduction

   <STRIKE><FONT color="red">Many years of discussion about</FONT></STRIKE>

   <STRONG><FONT color="green">This document describes</FONT></STRONG> the <STRIKE><FONT color="red">current IP routing and addressing
   architecture have noted that its use of</FONT></STRIKE> <STRONG><FONT color="green">Locator/Identifier Separation Protocol
   (LISP), which provides</FONT></STRONG> a <STRIKE><FONT color="red">single numbering space (the
   "IP address") for both host transport session identification and
   network routing creates scaling issues (see [CHIAPPA] and [RFC1498]).
   A number of scaling benefits would be realized by separating the
   current IP address into separate spaces</FONT></STRIKE> <STRONG><FONT color="green">set of functions</FONT></STRONG> for <STRONG><FONT color="green">routers to exchange
   information used to map from non-routeable</FONT></STRONG> Endpoint Identifiers
   (EIDs) <STRIKE><FONT color="red">and</FONT></STRIKE> <STRONG><FONT color="green">to routeable</FONT></STRONG> Routing Locators <STRIKE><FONT color="red">(RLOCs); among them are:

   1.  Reduction of routing table size in the "default-free zone" (DFZ).
       Use of</FONT></STRIKE> <STRONG><FONT color="green">(RLOCs).  It also defines</FONT></STRONG> a <STRIKE><FONT color="red">separate numbering space</FONT></STRIKE>
   <STRONG><FONT color="green">mechanism</FONT></STRONG> for <STRIKE><FONT color="red">RLOCs will allow them</FONT></STRIKE> <STRONG><FONT color="green">these LISP routers</FONT></STRONG> to <STRIKE><FONT color="red">be
       assigned topologically (in today's Internet, RLOCs would be
       assigned by providers at client network attachment points),
       greatly improving aggregation and reducing the number of
       globally-visible, routable prefixes.

   2.  More cost-effective multihoming</FONT></STRIKE> <STRONG><FONT color="green">encapsulate IP packets addressed
   with EIDs</FONT></STRONG> for <STRIKE><FONT color="red">sites</FONT></STRIKE> <STRONG><FONT color="green">transmission across an Internet</FONT></STRONG> that <STRIKE><FONT color="red">connect to
       different service providers where they can control their own
       policies</FONT></STRIKE> <STRONG><FONT color="green">uses RLOCs</FONT></STRONG> for <STRIKE><FONT color="red">packet flow into the site without using extra</FONT></STRIKE>
   routing <STRIKE><FONT color="red">table resources of core routers.

   3.  Easing</FONT></STRIKE> <STRONG><FONT color="green">and forwarding.

   Creation</FONT></STRONG> of <STRIKE><FONT color="red">renumbering burden when clients change providers.
       Because host EIDs are numbered from a separate, non-provider-
       assigned</FONT></STRIKE> <STRONG><FONT color="green">LISP was initially motivated by discussions during the
   IAB-sponsored Routing</FONT></STRONG> and <STRIKE><FONT color="red">non-topologically-bound space, they do not need to
       be renumbered when a client site changes its attachment points to</FONT></STRIKE> <STRONG><FONT color="green">Addressing Workshop held in Amsterdam in
   October, 2006 (see [RFC4984]).  A key conclusion of</FONT></STRONG> the <STRIKE><FONT color="red">network.

   4.  Traffic engineering capabilities</FONT></STRIKE> <STRONG><FONT color="green">workshop was</FONT></STRONG>
   that <STRIKE><FONT color="red">can be performed by network
       elements</FONT></STRIKE> <STRONG><FONT color="green">the Internet routing</FONT></STRONG> and <STRIKE><FONT color="red">do</FONT></STRIKE> <STRONG><FONT color="green">addressing system was</FONT></STRONG> not <STRIKE><FONT color="red">depend on injecting additional state into</FONT></STRIKE> <STRONG><FONT color="green">scaling well
   in</FONT></STRONG> the
       <STRIKE><FONT color="red">routing system.  This will fall out</FONT></STRIKE> <STRONG><FONT color="green">face</FONT></STRONG> of the <STRIKE><FONT color="red">mechanism that</FONT></STRIKE> <STRONG><FONT color="green">explosive growth of new sites; one reason for this
   poor scaling</FONT></STRONG> is <STRIKE><FONT color="red">used
       to implement</FONT></STRIKE> the <STRIKE><FONT color="red">EID/RLOC split (see Section 4).

   5.  Mobility without address changing.  Existing mobility mechanisms
       will be able to work in a locator/ID separation scenario.  It
       will</FONT></STRIKE> <STRONG><FONT color="green">increasing number of multi-homed and other sites
   that cannot</FONT></STRONG> be <STRIKE><FONT color="red">possible for a host (or a collection</FONT></STRIKE> <STRONG><FONT color="green">addressed as part</FONT></STRONG> of <STRIKE><FONT color="red">hosts) to move to
       a different point in the network topology either retaining its
       home-based address</FONT></STRIKE> <STRONG><FONT color="green">topologically-</FONT></STRONG> or <STRIKE><FONT color="red">acquiring a new address based on the new
       network location.  A new network location could be a physically
       different point in the network topology or the same physical
       point of the topology with a different provider.

   This draft describes protocol mechanisms to achieve the desired
   functional separation.  For flexibility, the mechanism used for
   forwarding packets is decoupled from that used to determine EID to
   RLOC mappings.  This document covers the former.  For the latter, see
   [CONS], [ALT], [EMACS], [RPMD], and [NERD].  This</FONT></STRIKE> <STRONG><FONT color="green">provider-based
   aggregated prefixes.  Additional</FONT></STRONG> work <STRIKE><FONT color="red">is in response
   to and intended to address the problem statement</FONT></STRIKE> that <STRIKE><FONT color="red">came out of</FONT></STRIKE> <STRONG><FONT color="green">more completely described</FONT></STRONG>
   the
   <STRIKE><FONT color="red">RAWS effort [RFC4984].

   The Routing and Addressing</FONT></STRIKE> problem statement <STRIKE><FONT color="red">can</FONT></STRIKE> <STRONG><FONT color="green">may</FONT></STRONG> be found in [RADIR].

   <STRIKE><FONT color="red">This draft focuses on a router-based solution.  Building the solution
   into the network will facilitate incremental deployment of the
   technology on the Internet.  Note</FONT></STRIKE>

   <STRONG><FONT color="green">A basic observation, made many years ago in early networking research
   such as</FONT></STRONG> that <STRIKE><FONT color="red">while the detailed protocol
   specification and examples</FONT></STRIKE> <STRONG><FONT color="green">documented</FONT></STRONG> in <STRIKE><FONT color="red">this document assume IP version 4
   (IPv4), there</FONT></STRIKE> <STRONG><FONT color="green">[CHIAPPA] and [RFC4984],</FONT></STRONG> is <STRIKE><FONT color="red">nothing in the design</FONT></STRIKE> that <STRIKE><FONT color="red">precludes use of the same
   techniques</FONT></STRIKE> <STRONG><FONT color="green">using a
   single address field for both identifying a device</FONT></STRONG> and <STRIKE><FONT color="red">mechanisms</FONT></STRIKE> for <STRIKE><FONT color="red">IPv6.  It should be possible</FONT></STRIKE>
   <STRONG><FONT color="green">determining where it is topologically located in the network requires
   optimization along two conflicting axes:</FONT></STRONG> for <STRIKE><FONT color="red">IPv4
   packets</FONT></STRIKE> <STRONG><FONT color="green">routing</FONT></STRONG> to <STRIKE><FONT color="red">use IPv6 RLOCs and</FONT></STRIKE> <STRONG><FONT color="green">be efficient,
   the address must be assigned topologically;</FONT></STRONG> for <STRIKE><FONT color="red">IPv6 EIDs</FONT></STRIKE> <STRONG><FONT color="green">collections of
   devices</FONT></STRONG> to be <STRIKE><FONT color="red">mapped to IPv4
   RLOCs.

   Related work on host-based solutions is described in Shim6 [RFC5533]</FONT></STRIKE> <STRONG><FONT color="green">easily</FONT></STRONG> and <STRIKE><FONT color="red">HIP [RFC4423].  Related work on a router-based solution is
   described</FONT></STRIKE> <STRONG><FONT color="green">effectively managed, without the need for
   renumbering</FONT></STRONG> in <STRIKE><FONT color="red">[GSE].  This draft attempts</FONT></STRIKE> <STRONG><FONT color="green">response</FONT></STRONG> to <STRIKE><FONT color="red">not compete</FONT></STRIKE> <STRONG><FONT color="green">topological change (such as that caused by
   adding</FONT></STRONG> or <STRIKE><FONT color="red">overlap
   with such solutions and the proposed protocol changes are expected</FONT></STRIKE> <STRONG><FONT color="green">removing attachment points</FONT></STRONG> to
   <STRIKE><FONT color="red">complement a host-based mechanism when Traffic Engineering
   functionality is desired.

   Some of</FONT></STRIKE> the <STRIKE><FONT color="red">design goals of this proposal include:

   1.  Require no hardware</FONT></STRIKE> <STRONG><FONT color="green">network</FONT></STRONG> or <STRIKE><FONT color="red">software changes</FONT></STRIKE> <STRONG><FONT color="green">by mobility
   events), the address must explicitly not be tied</FONT></STRONG> to <STRIKE><FONT color="red">end-systems (hosts).

   2.  Minimize required changes</FONT></STRIKE> <STRONG><FONT color="green">the topology.

   The approach that LISP takes</FONT></STRONG> to <STRIKE><FONT color="red">Internet infrastructure.

   3.  Be incrementally deployable.

   4.  Require no router hardware changes.

   5.  Minimize</FONT></STRIKE> <STRONG><FONT color="green">solving</FONT></STRONG> the <STRIKE><FONT color="red">number of routers which have</FONT></STRIKE> <STRONG><FONT color="green">routing scalability
   problem is</FONT></STRONG> to <STRIKE><FONT color="red">be modified.  In
       particular, most customer site routers and no core routers
       require changes.

   6.  Minimize router software changes in those routers</FONT></STRIKE> <STRONG><FONT color="green">replace IP addresses with two new types of numbers:
   Routing Locators (RLOCs),</FONT></STRONG> which are
       <STRIKE><FONT color="red">affected.

   7.  Avoid or minimize packet loss when EID-to-RLOC mappings need</FONT></STRIKE> <STRONG><FONT color="green">topologically assigned</FONT></STRONG> to
       <STRIKE><FONT color="red">be performed.

   There</FONT></STRIKE> <STRONG><FONT color="green">network
   attachment points (and</FONT></STRONG> are <STRIKE><FONT color="red">4 variants of LISP, which differ along a spectrum of strong</FONT></STRIKE> <STRONG><FONT color="green">therefore amenable</FONT></STRONG> to <STRIKE><FONT color="red">weak dependence on the topological nature</FONT></STRIKE> <STRONG><FONT color="green">aggregation)</FONT></STRONG> and <STRIKE><FONT color="red">possible need</FONT></STRIKE>
   <STRONG><FONT color="green">used</FONT></STRONG> for
   <STRIKE><FONT color="red">routability</FONT></STRIKE> <STRONG><FONT color="green">routing and forwarding</FONT></STRONG> of <STRIKE><FONT color="red">EIDs.  The variants are:

   LISP 1:  uses EIDs that are routable</FONT></STRIKE> <STRONG><FONT color="green">packets</FONT></STRONG> through the <STRIKE><FONT color="red">RLOC topology for
      bootstrapping EID-to-RLOC mappings.  [LISP1] This was intended as
      a prototyping mechanism</FONT></STRIKE> <STRONG><FONT color="green">network; and
   Endpoint Identifiers (EIDs), which are assigned independently from
   the network topology, are used</FONT></STRONG> for <STRIKE><FONT color="red">early protocol implementation.  It is
      now deprecated</FONT></STRIKE> <STRONG><FONT color="green">numbering devices,</FONT></STRONG> and <STRIKE><FONT color="red">SHOULD NOT be deployed.</FONT></STRIKE> <STRONG><FONT color="green">are
   aggregated along administrative boundaries.</FONT></STRONG>  LISP <STRIKE><FONT color="red">1.5:  uses</FONT></STRIKE> <STRONG><FONT color="green">then defines
   functions for mapping between the two numbering spaces and for
   encapsulating traffic originated by devices using non-routeable</FONT></STRONG> EIDs <STRIKE><FONT color="red">that are routable</FONT></STRIKE>
   for <STRIKE><FONT color="red">bootstrapping EID-to-RLOC
      mappings; such routing is via</FONT></STRIKE> <STRONG><FONT color="green">transport across</FONT></STRONG> a <STRIKE><FONT color="red">separate topology.

   LISP 2:  uses EIDS</FONT></STRIKE> <STRONG><FONT color="green">network infrastructure</FONT></STRONG> that <STRIKE><FONT color="red">are not routable</FONT></STRIKE> <STRONG><FONT color="green">routes</FONT></STRONG> and <STRIKE><FONT color="red">EID-to-RLOC mappings</FONT></STRIKE>
   <STRONG><FONT color="green">forwards using RLOCs.  Both RLOCs and EIDs</FONT></STRONG> are
      <STRIKE><FONT color="red">implemented within</FONT></STRIKE> <STRONG><FONT color="green">syntactically-
   identical to IP addresses; it is</FONT></STRONG> the <STRIKE><FONT color="red">DNS.  [LISP2]

   LISP 3:  uses non-routable EIDs that</FONT></STRIKE> <STRONG><FONT color="green">semantics of how they</FONT></STRONG> are used <STRIKE><FONT color="red">as lookup keys for</FONT></STRIKE>
   <STRONG><FONT color="green">that differs.

   This document describes the protocol that implements these functions.
   The database which stores the mappings between EIDs and RLOCs is
   explicitly</FONT></STRONG> a
      <STRIKE><FONT color="red">new EID-to-RLOC mapping database.  Use of Distributed Hash Tables
      [DHTs] [LISPDHT]</FONT></STRIKE> <STRONG><FONT color="green">separate "module"</FONT></STRONG> to <STRIKE><FONT color="red">implement such</FONT></STRIKE> <STRONG><FONT color="green">facilitate experimentation with</FONT></STRONG> a <STRIKE><FONT color="red">database would be an area to
      explore.  Other examples</FONT></STRIKE>
   <STRONG><FONT color="green">variety</FONT></STRONG> of <STRIKE><FONT color="red">new mapping</FONT></STRIKE> <STRONG><FONT color="green">approaches.  One</FONT></STRONG> database <STRIKE><FONT color="red">services are
      [CONS], [ALT], [RPMD], [NERD], and [APT].

   This document on LISP 1.5, and LISP 3 variants, both of which rely on
   a router-based distributed cache</FONT></STRIKE> <STRONG><FONT color="green">design that is being developed</FONT></STRONG>
   and <STRIKE><FONT color="red">database for EID-to-RLOC
   mappings.  The LISP 1.0 mechanism works but does not allow reduction
   of routing information in the default-free-zone</FONT></STRIKE> <STRONG><FONT color="green">prototyped as part</FONT></STRONG> of the <STRIKE><FONT color="red">Internet.  The</FONT></STRIKE> LISP <STRIKE><FONT color="red">2 mechanisms are put on hold and may never come to fruition
   since it</FONT></STRIKE> <STRONG><FONT color="green">working group work</FONT></STRONG> is <STRONG><FONT color="green">[ALT].
   Others that have been described but</FONT></STRONG> not <STRIKE><FONT color="red">architecturally pure</FONT></STRIKE> <STRONG><FONT color="green">implemented include [CONS],
   [EMACS], [RPMD], [NERD].  Finally, [LISP-MS], documents a general-
   purpose service interface for accessing a mapping database; this
   interface is intended</FONT></STRONG> to <STRIKE><FONT color="red">have routing depend on
   directory and directory depend on routing.  The LISP 3 mechanisms
   will</FONT></STRIKE> <STRONG><FONT color="green">make the mapping database modular so that
   different approaches can</FONT></STRONG> be <STRIKE><FONT color="red">documented elsewhere but may use</FONT></STRIKE> <STRONG><FONT color="green">tried without</FONT></STRONG> the <STRIKE><FONT color="red">control-plane options
   specified in this specification.</FONT></STRIKE> <STRONG><FONT color="green">need to modify
   installed xTRs.</FONT></STRONG>

3.  Definition of Terms

   Provider Independent (PI) Addresses:   <STRONG><FONT color="green">PI addresses are</FONT></STRONG> an address
      block assigned from a pool where blocks are not associated with
      any particular location in the network (e.g. from a particular
      service provider), and is therefore not topologically aggregatable
      in the routing system.

   Provider Assigned (PA) Addresses:   <STRIKE><FONT color="red">a block of IP</FONT></STRIKE>   <STRONG><FONT color="green">PA</FONT></STRONG> addresses <STRIKE><FONT color="red">that</FONT></STRIKE> are <STRONG><FONT color="green">an a address
      block</FONT></STRONG> assigned to a site by each service provider to which a site
      connects.  Typically, each block is sub-block of a service
      provider <STRIKE><FONT color="red">CIDR</FONT></STRIKE> <STRONG><FONT color="green">Classless Inter-Domain Routing (CIDR) [RFC4632]</FONT></STRONG> block and
      is aggregated into the larger block before being advertised into
      the global Internet.  Traditionally, IP multihoming has been
      implemented by each multi-homed site acquiring its own, <STRIKE><FONT color="red">globally-visible</FONT></STRIKE> <STRONG><FONT color="green">globally-
      visible</FONT></STRONG> prefix.  LISP uses only topologically-assigned and
      aggregatable address blocks for RLOCs, eliminating this
      demonstrably non-scalable practice.

   Routing Locator (RLOC):   <STRIKE><FONT color="red">the</FONT></STRIKE>   <STRONG><FONT color="green">A RLOC is an</FONT></STRONG> IPv4 or IPv6 address of an
      egress tunnel router (ETR).  <STRIKE><FONT color="red">It</FONT></STRIKE>  <STRONG><FONT color="green">A RLOC</FONT></STRONG> is the output of a EID-to-RLOC
      mapping lookup.  An EID maps to one or more RLOCs.  Typically,
      RLOCs are numbered from topologically-aggregatable blocks that are
      assigned to a site at each point to which it attaches to the
      global Internet; where the topology is defined by the connectivity
      of provider networks, RLOCs can be thought of as PA addresses.
      Multiple RLOCs can be assigned to the same ETR device or to
      multiple ETR devices at a site.

   Endpoint ID (EID):   <STRONG><FONT color="green">An EID is</FONT></STRONG> a 32-bit (for IPv4) or 128-bit (for
      IPv6) value used in the source and destination address fields of
      the first (most inner) LISP header of a packet.  The host obtains
      a destination EID the same way it obtains an destination address
      today, for example through a <STRIKE><FONT color="red">DNS</FONT></STRIKE> <STRONG><FONT color="green">Domain Name System (DNS) [RFC1034]</FONT></STRONG>
      lookup or <STRIKE><FONT color="red">SIP</FONT></STRIKE> <STRONG><FONT color="green">Session Invitation Protocol (SIP) [RFC3261]</FONT></STRONG> exchange.
      The source EID is obtained via existing mechanisms used to set a
      host's "local" IP address.  An EID is allocated to a host from an
      EID-prefix block associated with the site where the host is
      located.  An EID can be used by a host to refer to other hosts.
      EIDs MUST NOT be used as LISP RLOCs.  Note that EID blocks may be
      assigned in a hierarchical manner, independent of the network
      topology, to facilitate scaling of the mapping database.  In
      addition, an EID block assigned to a site may have site-local
      structure (subnetting) for routing within the site; this structure
      is not visible to the global routing system.  When used in
      discussions with other Locator/ID separation proposals, a LISP EID
      will be called a "LEID".  Throughout this document, any references
      to "EID" refers to an LEID.

   EID-prefix:   <STRIKE><FONT color="red">A power-of-2</FONT></STRIKE>   <STRONG><FONT color="green">An EID-prefix is a power-of-two</FONT></STRONG> block of EIDs which are
      allocated to a site by an address allocation authority.  <STRIKE><FONT color="red">EID-prefixes</FONT></STRIKE>  <STRONG><FONT color="green">EID-
      prefixes</FONT></STRONG> are associated with a set of RLOC addresses which make up
      a "database mapping".  EID-prefix allocations can be broken up
      into smaller blocks when an RLOC set is to be associated with the
      smaller <STRIKE><FONT color="red">EID-
      prefix.</FONT></STRIKE> <STRONG><FONT color="green">EID-prefix.</FONT></STRONG>  A globally routed address block (whether PI
      or PA) is not an EID-prefix.  However, a globally routed address
      block may be removed from global routing and reused as an <STRIKE><FONT color="red">EID-prefix.</FONT></STRIKE> <STRONG><FONT color="green">EID-
      prefix.</FONT></STRONG>  A site that receives an explicitly allocated EID-prefix
      may not use that EID-prefix as a globally routed prefix assigned
      to RLOCs.

   End-system:   <STRONG><FONT color="green">An end-system</FONT></STRONG> is an IPv4 or IPv6 device that originates
      packets with a single IPv4 or IPv6 header.  The end-system
      supplies an EID value for the destination address field of the IP
      header when communicating globally (i.e. outside of its routing
      domain).  An end-system can be a host computer, a switch or router
      device, or any network appliance.

   Ingress Tunnel Router (ITR):   <STRONG><FONT color="green">An ITR is</FONT></STRONG> a router which accepts an IP
      packet with a single IP header (more precisely, an IP packet that
      does not contain a LISP header).  The router treats this "inner"
      IP destination address as an EID and performs an EID-to-RLOC
      mapping lookup.  The router then prepends an "outer" IP header
      with one of its globally-routable RLOCs in the source address
      field and the result of the mapping lookup in the destination
      address field.  Note that this destination RLOC may be an
      intermediate, proxy device that has better knowledge of the <STRIKE><FONT color="red">EID-to-RLOC</FONT></STRIKE> <STRONG><FONT color="green">EID-
      to-RLOC</FONT></STRONG> mapping closer to the destination EID.  In general, an ITR
      receives IP packets from site end-systems on one side and sends
      LISP-encapsulated IP packets toward the Internet on the other
      side.

      Specifically, when a service provider prepends a LISP header for
      Traffic Engineering purposes, the router that does this is also
      regarded as an ITR.  The outer RLOC the ISP ITR uses can be based
      on the outer destination address (the originating ITR's supplied
      RLOC) or the inner destination address (the originating hosts
      supplied EID).

   TE-ITR:   <STRONG><FONT color="green">A TE-ITR</FONT></STRONG> is an ITR that is deployed in a service provider
      network that prepends an additional LISP header for Traffic
      Engineering purposes.

   Egress Tunnel Router (ETR):   <STRONG><FONT color="green">An ETR is</FONT></STRONG> a router that accepts an IP
      packet where the destination address in the "outer" IP header is
      one of its own RLOCs.  The router strips the "outer" header and
      forwards the packet based on the next IP header found.  In
      general, an ETR receives LISP-encapsulated IP packets from the
      Internet on one side and sends decapsulated IP packets to site
      end-systems on the other side.  ETR functionality does not have to
      be limited to a router device.  A server host can be the endpoint
      of a LISP tunnel as well.

   TE-ETR:   <STRONG><FONT color="green">A TE-ETR</FONT></STRONG> is an ETR that is deployed in a service provider
      network that strips an outer LISP header for Traffic Engineering
      purposes.

   xTR:   <STRONG><FONT color="green">A xTR</FONT></STRONG> is a reference to an ITR or ETR when direction of data
      flow is not part of the context description. xTR refers to the
      router that is the tunnel endpoint.  Used synonymously with the
      term "Tunnel Router".  For example, "An xTR can be located at the
      Customer Edge (CE) router", meaning both ITR and ETR functionality
      is at the CE router.

   EID-to-RLOC Cache:   <STRONG><FONT color="green">The EID-to-RLOC cache is</FONT></STRONG> a short-lived, <STRIKE><FONT color="red">on-demand</FONT></STRIKE> <STRONG><FONT color="green">on-
      demand</FONT></STRONG> table in an ITR that stores, tracks, and is responsible for
      timing-out and otherwise validating EID-to-RLOC mappings.  This
      cache is distinct from the full "database" of EID-to-RLOC
      mappings, it is dynamic, local to the ITR(s), and relatively small
      while the database is distributed, relatively static, and much
      more global in scope.

   EID-to-RLOC Database:   <STRONG><FONT color="green">The EID-to-RLOC database is</FONT></STRONG> a global
      distributed database that contains all known EID-prefix to RLOC
      mappings.  Each potential ETR typically contains a small piece of
      the database: the EID-to-RLOC mappings for the EID prefixes
      "behind" the router.  These map to one of the router's own,
      globally-visible, IP addresses.  The same database mapping entries
      MUST be configured on all ETRs for a given site.  That is, the
      EID-prefixes for the site and <STRIKE><FONT color="red">locator-
      set</FONT></STRIKE> <STRONG><FONT color="green">locator-set</FONT></STRONG> for each EID-prefix MUST
      be the same on all ETRs so they consistently send Map-Reply
      messages with the same database mapping contents.

   Recursive Tunneling:   <STRONG><FONT color="green">Recursive tunneling occurs</FONT></STRONG> when a packet has
      more than one LISP IP header.  Additional layers of tunneling may
      be employed to implement traffic engineering or other re-routing
      as needed.  When this is done, an additional "outer" LISP header
      is added and the original RLOCs are preserved in the "inner"
      header.  Any references to tunnels in this specification refers to
      dynamic encapsulating tunnels and never are they statically
      configured.

   Reencapsulating Tunnels:   <STRONG><FONT color="green">Reencapsulating tunneling occurs</FONT></STRONG> when a
      packet has no more than one LISP IP header (two IP headers total)
      and when it needs to be diverted to new RLOC, an ETR can
      decapsulate the packet (remove the LISP header) and prepends a new
      tunnel header, with new RLOC, on to the packet.  Doing this allows
      a packet to be re-routed by the <STRIKE><FONT color="red">re-
      encapsulating</FONT></STRIKE> <STRONG><FONT color="green">re-encapsulating</FONT></STRONG> router without
      adding the overhead of additional tunnel headers.  Any references
      to tunnels in this specification refers to dynamic encapsulating
      tunnels and never are they statically configured.

   LISP Header:   a term used in this document to refer to the outer
      IPv4 or IPv6 header, a UDP header, and a LISP-specific 8-byte
      header that follows the UDP header, an ITR prepends or an ETR
      strips.

   Address Family Identifier (AFI):   a term used to describe an address
      encoding in a packet.  An address family currently pertains to an
      IPv4 or IPv6 address.  See [AFI] and [RFC1700] for details.  An
      AFI value of 0 used in this specification indicates an unspecified
      encoded address where the <STRIKE><FONT color="red">the</FONT></STRIKE> length of the address is 0 bytes
      following the 16-bit AFI value of 0.

   Negative Mapping Entry:   <STRONG><FONT color="green">A negative mapping entry,</FONT></STRONG> also known as a
      negative cache entry, is an EID-to-RLOC entry where an EID-prefix
      is advertised or stored with no RLOCs.  That is, the locator-set
      for the EID-to-RLOC entry is empty or has an encoded locator count
      of 0.  This type of entry could be used to describe a prefix from
      a non-LISP site, which is explicitly not in the mapping database.
      There are a set of well defined actions that are encoded in a
      Negative Map-Reply.

   Data Probe:   <STRONG><FONT color="green">A data-probe is</FONT></STRONG> a LISP-encapsulated data packet where
      the inner header destination address equals the outer header
      destination address used to trigger a Map-Reply by a decapsulating
      ETR.  In addition, the original packet is decapsulated and
      delivered to the destination host.  A Data Probe is used in some
      of the mapping database designs to "probe" or request a Map-Reply
      from an ETR; in other cases, Map-Requests are used.  See each
      mapping database design for details.

   Proxy ITR (PITR):   <STRONG><FONT color="green">A PITR is</FONT></STRONG> also known as a PTR is defined and
      described in [INTERWORK], a PITR acts like an ITR but does so on
      behalf of <STRIKE><FONT color="red">non-
      LISP</FONT></STRIKE> <STRONG><FONT color="green">non-LISP</FONT></STRONG> sites which send packets to destinations at
      LISP sites.

   Proxy ETR (PETR):   <STRONG><FONT color="green">A PETR</FONT></STRONG> is defined and described in [INTERWORK], a
      PETR acts like an ETR but does so on behalf of LISP sites which
      send packets to destinations at non-LISP sites.

   Route-returnability:  is an assumption that the underlying routing
      system will deliver packets to the destination.  When combined
      with a nonce that is provided by a sender and returned by a
      receiver limits off-path data insertion.

   LISP site:  is a set of routers in an edge network that are under a
      single technical administration.  LISP routers which reside in the
      edge network are the demarcation points to separate the edge
      network from the core network.

<STRIKE><FONT color="red">4.  Basic Overview

   One key concept of</FONT></STRIKE>

   <STRONG><FONT color="green">Client-side:  a term used in this document to indicate a connection
      initiation attempt by an EID.  The ITR(s) at the</FONT></STRONG> LISP <STRIKE><FONT color="red">is that end-systems (hosts) operate</FONT></STRIKE> <STRONG><FONT color="green">site are</FONT></STRONG> the <STRIKE><FONT color="red">same
   way they do today.  The IP addresses that hosts use for tracking
   sockets, connections, and for</FONT></STRIKE>
      <STRONG><FONT color="green">first to get involved in obtaining database map cache entries by
      sending Map-Request messages.

   Server-side:  a term used in this document to indicate a connection
      initiation attempt is being accepted for a destination EID.  The
      ETR(s) at the destination LISP site are the first to send Map-
      Replies to the source site initiating the connection.  The ETR(s)
      at this destination site can obtain mappings by gleaning
      information from Map-Requests, Data-Probes, or encapsulated
      packets.

4.  Basic Overview

   One key concept of LISP is that end-systems (hosts) operate the same
   way they do today.  The IP addresses that hosts use for tracking
   sockets, connections, and for</FONT></STRONG> sending and receiving packets do not
   change.  In LISP terminology, these IP addresses are called Endpoint
   Identifiers (EIDs).

   Routers continue to forward packets based on IP destination
   addresses.  When a packet is LISP encapsulated, these addresses are
   referred to as Routing Locators (RLOCs).  Most routers along a path
   between two hosts will not change; they continue to perform routing/
   forwarding lookups on the destination addresses.  For routers between
   the source host and the ITR as well as routers from the ETR to the
   destination host, the destination address is an EID.  For the routers
   between the ITR and the ETR, the destination address is an RLOC.

   <STRIKE><FONT color="red">This design introduces</FONT></STRIKE>

   <STRONG><FONT color="green">Another key LISP concept is the</FONT></STRONG> "Tunnel <STRIKE><FONT color="red">Routers", which</FONT></STRIKE> <STRONG><FONT color="green">Router".  A tunnel router</FONT></STRONG>
   prepends LISP headers on host-originated packets and strip them prior
   to final delivery to their destination.  The IP addresses in this
   "outer header" are RLOCs.  During end-to-end packet exchange between
   two Internet hosts, an ITR prepends a new LISP header to each packet
   and an egress tunnel router strips the new header.  The ITR performs
   EID-to-RLOC lookups to determine the routing path to the <STRIKE><FONT color="red">the</FONT></STRIKE> ETR, which
   has the RLOC as one of its IP addresses.

   Some basic rules governing LISP are:

   o  End-systems (hosts) only send to addresses which are EIDs.  They
      don't know addresses are EIDs versus RLOCs but assume packets get
      to LISP routers, which in turn, deliver packets to the destination
      the end-system has specified.

   o  EIDs are always IP addresses assigned to hosts.

   o  LISP routers mostly deal with Routing Locator addresses.  See
      details later in Section 4.1 to clarify what is meant by "mostly".

   o  RLOCs are always IP addresses assigned to routers; preferably,
      topologically-oriented addresses from provider CIDR blocks.

   o  When a router originates packets it may use as a source address
      either an EID or RLOC.  When acting as a host (e.g. when
      terminating a transport session such as SSH, TELNET, or SNMP), it
      may use an EID that is explicitly assigned for that purpose.  An
      EID that identifies the router as a host MUST NOT be used as an
      RLOC; an EID is only routable within the scope of a site.  A
      typical BGP configuration might demonstrate this "hybrid" EID/RLOC
      usage where a router could use its "host-like" EID to terminate
      iBGP sessions to other routers in a site while at the same time
      using RLOCs to terminate eBGP sessions to routers outside the
      site.

   o  EIDs are not expected to be usable for global end-to-end
      communication in the absence of an EID-to-RLOC mapping operation.
      They are expected to be used locally for intra-site communication.

   o  EID prefixes are likely to be hierarchically assigned in a manner
      which is optimized for administrative convenience and to
      facilitate scaling of the EID-to-RLOC mapping database.  The
      hierarchy is based on a address allocation hierarchy which is <STRIKE><FONT color="red">not
      dependent on</FONT></STRIKE>
      <STRONG><FONT color="green">independent of</FONT></STRONG> the network topology.

   o  EIDs may also be structured (subnetted) in a manner suitable for
      local routing within an autonomous system.

   An additional LISP header may be prepended to packets by a <STRIKE><FONT color="red">transit
   router (i.e.  TE-ITR)</FONT></STRIKE> <STRONG><FONT color="green">TE-ITR</FONT></STRONG>
   when re-routing of the path for a packet is desired.  An obvious
   instance of this would be an ISP router that needs to perform traffic
   engineering for packets flowing through its network.  In such a
   situation, termed Recursive Tunneling, an ISP transit acts as an
   additional ingress tunnel router and the RLOC it uses for the new
   prepended header would be either a TE-ETR within the ISP (along
   intra-ISP traffic engineered path) or a TE-ETR within another ISP (an
   inter-ISP traffic engineered path, where an agreement to build such a
   path exists).

   <STRIKE><FONT color="red">This specification mandates that no more than two LISP headers get
   prepended</FONT></STRIKE>

   <STRONG><FONT color="green">In order</FONT></STRONG> to <STRIKE><FONT color="red">a packet.  This avoids</FONT></STRIKE> <STRONG><FONT color="green">avoid</FONT></STRONG> excessive packet overhead as well as possible
   encapsulation <STRIKE><FONT color="red">loops.</FONT></STRIKE> <STRONG><FONT color="green">loops, this document mandates that a maximum of two
   LISP headers can be prepended to a packet.</FONT></STRONG>  It is believed two
   headers is sufficient, where the first prepended header is used at a
   site for Location/Identity separation and second prepended header is
   used inside a service provider for Traffic Engineering purposes.

   Tunnel Routers can be placed fairly flexibly in a multi-AS topology.
   For example, the ITR for a particular end-to-end packet exchange
   might be the first-hop or default router within a site for the source
   host.  Similarly, the egress tunnel router might be the last-hop
   router directly-connected to the destination host.  Another example,
   perhaps for a VPN service out-sourced to an ISP by a site, the ITR
   could be the site's border router at the service provider attachment
   point.  Mixing and matching of site-operated, ISP-operated, and other
   tunnel routers is allowed for maximum flexibility.  See Section 8 for
   more details.

4.1.  Packet Flow Sequence

   This section provides an example of the unicast packet flow with the
   following conditions:

   o  Source host "host1.abc.com" is sending a packet to
      "host2.xyz.com", exactly what host1 would do if the site was not
      using LISP.

   o  Each site is multi-homed, so each tunnel router has an address
      (RLOC) assigned from the service provider address block for each
      provider to which that particular tunnel router is attached.

   o  The ITR(s) and ETR(s) are directly connected to the source and
      destination, respectively, but the source and destination can be
      located anywhere in LISP site.

   o  Map-Requests can be sent on the underlying routing system topology
      <STRIKE><FONT color="red">(LISP 1.0)</FONT></STRIKE>
      or over an alternative topology [ALT].

   o  Map-Replies are sent on the underlying routing system topology.

   Client host1.abc.com wants to communicate with server host2.xyz.com:

   1.  host1.abc.com wants to open a TCP connection to host2.xyz.com.
       It does a DNS lookup on host2.xyz.com.  An A/AAAA record is
       returned.  This address is the destination EID.  The locally-
       assigned address of host1.abc.com is used as the source EID.  An
       IPv4 or IPv6 packet is built and forwarded through the LISP site
       as a normal IP packet until it reaches a LISP ITR.

   2.  The LISP ITR must be able to map the EID destination to an RLOC
       of one of the ETRs at the destination site.  The specific method
       used to do this is not described in this example.  See [ALT] or
       [CONS] for possible solutions.

   3.  The ITR will send a LISP Map-Request.  Map-Requests SHOULD be
       rate-limited.

   4.  <STRIKE><FONT color="red">In LISP 1.0,</FONT></STRIKE>  <STRONG><FONT color="green">When an alternate mapping system is not in use,</FONT></STRONG> the Map-Request
       packet is routed through the underlying routing system.  <STRIKE><FONT color="red">In LISP 1.5,</FONT></STRIKE>
       <STRONG><FONT color="green">Otherwise,</FONT></STRONG> the Map-Request packet is routed on an alternate
       logical topology.  In either case, when the Map-Request arrives
       at one of the ETRs at the destination site, it will process the
       packet as a control message.

   5.  The ETR looks at the destination EID of the Map-Request and
       matches it against the prefixes in the ETR's configured EID-to-
       RLOC mapping database.  This is the list of EID-prefixes the ETR
       is supporting for the site it resides in.  If there is no match,
       the Map-Request is dropped.  Otherwise, a LISP Map-Reply is
       returned to the ITR.

   6.  The ITR receives the Map-Reply message, parses the message (to
       check for format validity) and stores the mapping information
       from the packet.  This information is <STRIKE><FONT color="red">put</FONT></STRIKE> <STRONG><FONT color="green">stored</FONT></STRONG> in the ITR's EID-to-
       RLOC mapping <STRONG><FONT color="green">cache.  Note that the map</FONT></STRONG> cache <STRIKE><FONT color="red">(this</FONT></STRIKE> is <STRIKE><FONT color="red">the</FONT></STRIKE> <STRONG><FONT color="green">an</FONT></STRONG> on-demand <STRIKE><FONT color="red">cache, the</FONT></STRIKE>
       <STRONG><FONT color="green">cache.  An ITR will manage its map</FONT></STRONG> cache <STRIKE><FONT color="red">where
       entries time out due to inactivity).</FONT></STRIKE> <STRONG><FONT color="green">in such a way that
       optimizes for its resource constraints.</FONT></STRONG>

   7.  Subsequent packets from host1.abc.com to host2.xyz.com will have
       a LISP header prepended by the ITR using the appropriate RLOC as
       the LISP header destination address learned from the ETR.  <STRIKE><FONT color="red">Note,</FONT></STRIKE>  <STRONG><FONT color="green">Note</FONT></STRONG>
       the packet may be sent to a different ETR than the one which
       returned the Map-Reply due to the source site's hashing policy or
       the destination site's locator-set policy.

   8.  The ETR receives these packets directly (since the destination
       address is one of its assigned IP addresses), strips the LISP
       header and forwards the packets to the attached destination host.

   In order to eliminate the need for a mapping lookup in the reverse
   direction, an ETR MAY create a cache entry that maps the source EID
   (inner header source IP address) to the source RLOC (outer header
   source IP address) in a received LISP packet.  Such a cache entry is
   termed a "gleaned" mapping and only contains a single RLOC for the
   EID in question.  More complete information about additional RLOCs
   SHOULD be verified by sending a LISP Map-Request for that EID.  Both
   ITR and the ETR may also influence the decision the other makes in
   selecting an RLOC.  See Section 6 for more details.

5.  <STRIKE><FONT color="red">Tunneling Details

   This section describes the</FONT></STRIKE>  LISP <STRIKE><FONT color="red">Data Message which defines the
   tunneling header used to encapsulate IPv4 and IPv6 packets which
   contain EID addresses.  Even though the following formats illustrate
   IPv4-in-IPv4 and IPv6-in-IPv6 encapsulations, the other 2
   combinations are supported as well.</FONT></STRIKE> <STRONG><FONT color="green">Encapsulation Details</FONT></STRONG>

   Since additional tunnel headers are prepended, the packet becomes
   larger and <STRIKE><FONT color="red">in theory</FONT></STRIKE> can exceed the MTU of any link traversed from the ITR to
   the ETR.  It is <STRIKE><FONT color="red">recommended,</FONT></STRIKE> <STRONG><FONT color="green">recommended</FONT></STRONG> in IPv4 that packets do not get
   fragmented as they are encapsulated by the ITR.  Instead, the packet
   is dropped and an ICMP Too Big message is returned to the source.

   <STRIKE><FONT color="red">Based on informal surveys of large ISP traffic patterns, it appears</FONT></STRIKE>

   <STRONG><FONT color="green">This specification recommends</FONT></STRONG> that <STRIKE><FONT color="red">most transit paths can accommodate a path MTU of at least 4470
   bytes.  The exceptions, in terms of data rate, number of hosts
   affected, or any other metric are expected to be vanishingly small.

   To address MTU concerns, mainly raised on the RRG mailing list, the
   LISP deployment process will include collecting data during its pilot
   phase to either verify or refute the assumption about minimum
   available MTU.  If the assumption proves true and transit networks
   with links limited to 1500 byte MTUs are corner cases, it would seem
   more cost-effective to either upgrade or modify the equipment in
   those transit networks to support larger MTUs or to use existing
   mechanisms for accommodating packets that are too large.

   For this reason, there is currently no plan for LISP to add any new
   additional, complex mechanism for implementing fragmentation and
   reassembly in the face of limited-MTU transit links.  If analysis
   during LISP pilot deployment reveals that the assumption of
   essentially ubiquitous, 4470+ byte transit path MTUs, is incorrect,
   then LISP can be modified prior to protocol standardization to add</FONT></STRIKE> <STRONG><FONT color="green">implementations</FONT></STRONG> support for one of
   the proposed fragmentation and reassembly schemes.
   <STRIKE><FONT color="red">Note that</FONT></STRIKE>  <STRONG><FONT color="green">These</FONT></STRONG> two simple
   existing schemes are detailed in Section 5.4.

5.1.  LISP IPv4-in-IPv4 Header Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   OH  |  Time to Live | Protocol = 17 |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                    Source Routing Locator                     |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4341        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version|  IHL  |Type of Service|          Total Length         |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |         Identification        |Flags|      Fragment Offset    |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   IH  |  Time to Live |    Protocol   |         Header Checksum       |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                           Source EID                          |
    \  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                         Destination EID                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.2.  LISP IPv6-in-IPv6 Header Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |   |         Payload Length        | Next Header=17|   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   O   +                                                               +
   u   |                                                               |
   t   +                     Source Routing Locator                    +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                  Destination Routing Locator                  +
   |   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4341        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   L   |N|L|E|V|I|flags|            Nonce/Map-Version                  |
   I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   S / |                 Instance ID/Locator Status Bits               |
   P   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |Version| Traffic Class |           Flow Label                  |
    /  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   /   |         Payload Length        |  Next Header  |   Hop Limit   |
   v   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
   I   +                                                               +
   n   |                                                               |
   n   +                          Source EID                           +
   e   |                                                               |
   r   +                                                               +
       |                                                               |
   H   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   d   |                                                               |
   r   +                                                               +
       |                                                               |
   ^   +                        Destination EID                        +
   \   |                                                               |
    \  +                                                               +
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.3.  Tunnel Header Field Descriptions

   Inner Header:  <STRONG><FONT color="green">The inner header</FONT></STRONG> is the <STRIKE><FONT color="red">inner header, preserved from</FONT></STRIKE> <STRONG><FONT color="green">header on</FONT></STRONG> the datagram
      received from the originating host.  The source and destination IP
      addresses are EIDs.

   Outer Header:  <STRIKE><FONT color="red">is the</FONT></STRIKE>  <STRONG><FONT color="green">The</FONT></STRONG> outer header <STRONG><FONT color="green">is a new header</FONT></STRONG> prepended by an ITR.
      The address fields contain RLOCs obtained from the ingress
      router's <STRIKE><FONT color="red">EID-to-
      RLOC</FONT></STRIKE> <STRONG><FONT color="green">EID-to-RLOC</FONT></STRONG> cache.  The IP protocol number is "UDP (17)"
      from [RFC0768].  The DF bit of the Flags field is set to 0 when
      the method in Section 5.4.1 is used and set to 1 when the method
      in Section 5.4.2 is used.

   UDP Header:  <STRONG><FONT color="green">The UDP header</FONT></STRONG> contains a ITR selected source port when
      encapsulating a packet.  See Section <STRIKE><FONT color="red">6.4</FONT></STRIKE> <STRONG><FONT color="green">6.5</FONT></STRONG> for details on the hash
      algorithm used to select a source port based on the 5-tuple of the
      inner header.  The destination port MUST be set to the well-known
      IANA assigned port value 4341.

   UDP Checksum:  <STRIKE><FONT color="red">this</FONT></STRIKE>  <STRONG><FONT color="green">The UDP checksum</FONT></STRONG> field SHOULD be transmitted as zero
      by an ITR for either IPv4 [RFC0768] or IPv6 encapsulation
      [UDP-TUNNELS].  When a packet with a zero UDP checksum is received
      by an ETR, the ETR MUST accept the packet for decapsulation.  When
      an ITR transmits a non-zero value for the UDP checksum, it MUST
      send a correctly computed value in this field.  When an ETR
      receives a packet with a non-zero UDP checksum, it MAY choose to
      verify the checksum value.  If it chooses to perform such
      verification, and the verification fails, the packet MUST be
      silently dropped.  If the ETR chooses not to perform the
      verification, or performs the verification successfully, the
      packet MUST be accepted for decapsulation.  The handling of UDP
      checksums for all tunneling protocols, including LISP, is under
      active discussion within the IETF.  When that discussion
      concludes, any necessary changes will be made to align LISP with
      the outcome of the broader discussion.

   UDP Length:  <STRONG><FONT color="green">The UDP length field is</FONT></STRONG> for an IPv4 encapsulated packet,
      the inner header Total Length plus the UDP and LISP header lengths
      are used.  For an IPv6 encapsulated packet, the inner header
      Payload Length plus the size of the IPv6 header (40 bytes) plus
      the size of the UDP and LISP headers are used.  The UDP header
      length is 8 bytes.

   N: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The N bit</FONT></STRONG> is the nonce-present bit.  When this bit is set to 1,
      the low-order 24-bits of the first 32-bits of the LISP header
      contains a Nonce.  See Section 6.3.1 for details.  Both N and V
      bits MUST NOT be set in the same packet.  If they are, a
      decapsulating ETR MUST treat the "Nonce/Map-Version" field as
      having a Nonce value present.

   L: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The L bit</FONT></STRONG> is the Locator-Status-Bits field enabled bit.  When this
      bit is set to 1, the Locator-Status-Bits in the second 32-bits of
      the LISP header are in use.

     x 1 x x 0 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                      Locator Status Bits                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   E: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The E bit</FONT></STRONG> is the echo-nonce-request bit.  When this bit is set to
      1, the N bit MUST be 1.  This bit SHOULD be ignored and has no
      meaning when the N bit is set to 0.  See Section 6.3.1 for
      details.

   V: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The B bit</FONT></STRONG> is the Map-Version present bit.  When this bit is set to
      1, the N bit MUST be 0.  Refer to Section <STRIKE><FONT color="red">6.5.3</FONT></STRIKE> <STRONG><FONT color="green">6.6.3</FONT></STRONG> for more details.
      This bit indicates that the first 4 bytes of the LISP header is
      encoded as:

     0 x 0 1 x x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|  Source Map-Version   |   Dest Map-Version    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID/Locator Status Bits               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   I: <STRIKE><FONT color="red">this</FONT></STRIKE> <STRONG><FONT color="green">The I bit</FONT></STRONG> is the Instance ID bit.  See Section 5.5 for more
      details.  When this bit is set to 1, the Locator Status Bits field
      is reduced to 8-bits and the high-order 24-bits are used as an
      Instance ID.  If the L-bit is set to 0, then the low-order 8 bits
      are transmitted as zero and ignored on receipt.  The format of the
      last 4 bytes of the LISP header would look like:

     x x x x 1 x x x
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |N|L|E|V|I|flags|            Nonce/Map-Version                  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 Instance ID                   |     LSBs      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   flags:  <STRIKE><FONT color="red">this</FONT></STRIKE>  <STRONG><FONT color="green">The flags field is a</FONT></STRONG> 3-bit field is reserved for future flag
      use.  It is set to 0 on transmit and ignored on receipt.

   LISP Nonce:  <STRONG><FONT color="green">The LISP nonce field</FONT></STRONG> is a 24-bit value that is randomly
      generated by an ITR when the N-bit is set to 1.  The nonce is also
      used when the E-bit is set to request the nonce value to be echoed
      by the other side when packets are returned.  When the E-bit is
      clear but the N-bit is set, a remote ITR is either echoing a
      previously requested echo-nonce or providing a random nonce.  See
      Section 6.3.1 for more details.

   LISP Locator Status Bits:  <STRONG><FONT color="green">The locator status bits field</FONT></STRONG> in the LISP
      header <STRIKE><FONT color="red">are</FONT></STRIKE> <STRONG><FONT color="green">is</FONT></STRONG> set by an ITR to indicate to an ETR the up/down status
      of the Locators in the source site.  Each RLOC in a Map-Reply is
      assigned an ordinal value from 0 to n-1 (when there are n RLOCs in
      a mapping entry).  The Locator Status Bits are numbered from 0 to
      n-1 from the least significant bit of field.  The field is 32-bits
      when the I-bit is set to 0 and is 8 bits when the I-bit is set to
      1.  When a Locator Status Bit is set to 1, the ITR is indicating
      to the ETR the RLOC associated with the bit ordinal has up status.
      See Section 6.3 for details on how an ITR can determine the status
      of other ITRs at the same site.  When a site has multiple <STRIKE><FONT color="red">EID-prefixes</FONT></STRIKE> <STRONG><FONT color="green">EID-
      prefixes</FONT></STRONG> which result in multiple mappings (where each could have
      a different locator-set), the Locator Status Bits setting in an
      encapsulated packet MUST reflect the mapping for the EID-prefix
      that the <STRIKE><FONT color="red">inner-
      header</FONT></STRIKE> <STRONG><FONT color="green">inner-header</FONT></STRONG> source EID address matches.

   When doing <STRIKE><FONT color="red">Recursive Tunneling or ITR/PTR</FONT></STRIKE> <STRONG><FONT color="green">ITR/PITR</FONT></STRONG> encapsulation:

   o  The outer header Time to Live field (or Hop Limit field, in case
      of IPv6) SHOULD be copied from the inner header Time to Live
      field.

   o  The outer header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the inner header
      Type of Service field (with one caveat, see below).

   When doing <STRIKE><FONT color="red">Re-encapsulated Tunneling:</FONT></STRIKE> <STRONG><FONT color="green">ETR/PETR decapsulation:</FONT></STRONG>

   o  The <STRIKE><FONT color="red">new outer</FONT></STRIKE> <STRONG><FONT color="green">inner</FONT></STRONG> header Time to Live field <STRONG><FONT color="green">(or Hop Limit field, in case
      of IPv6)</FONT></STRONG> SHOULD be copied from the
      <STRIKE><FONT color="red">stripped</FONT></STRIKE> outer header Time to Live <STRIKE><FONT color="red">field.

   o  The new</FONT></STRIKE>
      <STRONG><FONT color="green">field, when the Time to Live field of the</FONT></STRONG> outer header <STRIKE><FONT color="red">Type</FONT></STRIKE> <STRONG><FONT color="green">is less
      than the Time to Live</FONT></STRONG> of <STRIKE><FONT color="red">Service field SHOULD be copied from</FONT></STRIKE> the <STRIKE><FONT color="red">stripped OH header</FONT></STRIKE> <STRONG><FONT color="green">inner header.  Failing to perform
      this check can cause the Time to Live of the inner header to
      increment across encapsulation/decapsulation cycle.  This check is
      also performed when doing initial encapsulation when a packet
      comes to an ITR or PITR destined for a LISP site.

   o  The inner header Type of Service field (or the Traffic Class
      field, in the case of IPv6) SHOULD be copied from the outer header</FONT></STRONG>
      Type of Service field (with one caveat, see below).

   <STRONG><FONT color="green">Note if an ETR/PETR is also an ITR/PITR and choose to reencapsulate
   after decapsulating, the net effect of this is that the new outer
   header will carry the same Time to Live as the old outer header.</FONT></STRONG>

   Copying the TTL serves two purposes: first, it preserves the distance
   the host intended the packet to travel; second, and more importantly,
   it provides for suppression of looping packets in the event there is
   a loop of concatenated tunnels due to misconfiguration.  <STRONG><FONT color="green">See
   Section 9.3 for TTL exception handling for traceroute packets.</FONT></STRONG>

   The ECN field occupies bits 6 and 7 of both the IPv4 Type of Service
   field and the IPv6 Traffic Class field [RFC3168].  The ECN field
   requires special treatment in order to avoid discarding indications
   of congestion [RFC3168].  ITR encapsulation MUST copy the 2-bit ECN
   field from the inner header to the outer header.  Re-encapsulation
   MUST copy the 2-bit ECN field from the stripped outer header to the
   new outer header.  If the ECN field contains a congestion indication
   codepoint (the value is '11', the Congestion Experienced (CE)
   codepoint), then ETR decapsulation MUST copy the 2-bit ECN field from
   the stripped outer header to the surviving inner header that is used
   to forward the packet beyond the ETR.  These requirements preserve
   Congestion Experienced (CE) indications when a packet that uses ECN
   traverses a LISP tunnel and becomes marked with a CE indication due
   to congestion between the tunnel endpoints.

5.4.  Dealing with Large Encapsulated Packets

   <STRIKE><FONT color="red">In the event that the MTU issues mentioned above prove to be more
   serious than expected, this</FONT></STRIKE>

   <STRONG><FONT color="green">This</FONT></STRONG> section proposes <STRIKE><FONT color="red">2</FONT></STRIKE> <STRONG><FONT color="green">two</FONT></STRONG> simple mechanisms to deal with <STRIKE><FONT color="red">large packets.  One is stateless using IP fragmentation and</FONT></STRIKE> <STRONG><FONT color="green">packets that
   exceed</FONT></STRONG> the <STRIKE><FONT color="red">other is stateful using Path</FONT></STRIKE> <STRONG><FONT color="green">path</FONT></STRONG> MTU <STRIKE><FONT color="red">Discovery [RFC1191].</FONT></STRIKE> <STRONG><FONT color="green">between the ITR and ETR.</FONT></STRONG>

   It is left to the implementor to decide if the stateless or stateful
   mechanism <STRIKE><FONT color="red">SHOULD</FONT></STRIKE> <STRONG><FONT color="green">should</FONT></STRONG> be implemented.  Both or neither can be <STRIKE><FONT color="red">decided as
   well</FONT></STRIKE> <STRONG><FONT color="green">used</FONT></STRONG> since
   it is a local decision in the ITR regarding how to deal with MTU <STRIKE><FONT color="red">issues.  Sites</FONT></STRIKE>
   <STRONG><FONT color="green">issues, and sites</FONT></STRONG> can interoperate with differing mechanisms.

   Both stateless and stateful mechanisms also apply to Reencapsulating
   and Recursive Tunneling.  So any actions below referring to an ITR
   also apply to an TE-ITR.

5.4.1.  A Stateless Solution to MTU Handling

   An ITR stateless solution to handle MTU issues is described as
   follows:

   1.  Define an architectural constant S for the maximum size of a
       packet, in bytes, an ITR would <STRONG><FONT color="green">like to</FONT></STRONG> receive from a source
       inside of its site.

   2.  Define L to be the maximum size, in bytes, a packet of size S
       would be after the ITR prepends the LISP header, UDP header, and
       outer network layer header of size H.

   3.  Calculate: S + H = L.

   When an ITR receives a packet from a site-facing interface and adds H
   bytes worth of encapsulation to yield a packet size greater than L
   bytes, it resolves the MTU issue by first splitting the original
   packet into 2 equal-sized fragments.  A LISP header is then prepended
   to each fragment.  <STRIKE><FONT color="red">This will ensure that</FONT></STRIKE>  <STRONG><FONT color="green">The size of</FONT></STRONG> the <STRIKE><FONT color="red">new,</FONT></STRIKE> encapsulated
   <STRIKE><FONT color="red">packets are of size</FONT></STRIKE> <STRONG><FONT color="green">fragments is then</FONT></STRONG>
   (S/2 + H), which is <STRIKE><FONT color="red">always below</FONT></STRIKE> <STRONG><FONT color="green">less than</FONT></STRONG> the <STRIKE><FONT color="red">effective
   tunnel MTU.</FONT></STRIKE> <STRONG><FONT color="green">ITR's estimate of the path MTU
   between the ITR and its correspondent ETR.</FONT></STRONG>

   When an ETR receives encapsulated fragments, it treats them as two
   individually encapsulated packets.  It strips the LISP headers then
   forwards each fragment to the destination host of the destination
   site.  The two fragments are reassembled at the destination host into
   the single IP datagram that was originated by the source host.

   This behavior is performed by the ITR when the source host originates
   a packet with the DF field of the IP header is set to 0.  When the DF
   field of the IP header is set to 1, or the packet is an IPv6 packet
   originated by the source host, the ITR will drop the packet when the
   size is greater than L, and sends an ICMP Too Big message to the
   source with a value of S, where S is (L - H).

   When the outer header encapsulation uses an IPv4 header, an
   implementation SHOULD set the DF bit to 1 so ETR fragment reassembly
   can be avoided.  An implementation MAY set the DF bit in such headers
   to 0 if it has good reason to believe there are unresolvable path MTU
   issues between the sending ITR and the receiving ETR.

   This specification recommends that L be defined as 1500.

5.4.2.  A Stateful Solution to MTU Handling

   An ITR stateful solution to handle MTU issues is described as follows
   and was first introduced in [OPENLISP]:

   1.  The ITR will keep state of the effective MTU for each locator per
       mapping cache entry.  The effective MTU is what the core network
       can deliver along the path between ITR and ETR.

   2.  When an IPv6 encapsulated packet or an IPv4 encapsulated packet
       with DF bit set to 1, exceeds what the core network can deliver,
       one of the intermediate routers on the path will send an ICMP Too
       Big message to the ITR.  The ITR will parse the ICMP message to
       determine which locator is affected by the effective MTU change
       and then record the new effective MTU value in the mapping cache
       entry.

   3.  When a packet is received by the ITR from a source inside of the
       site and the size of the packet is greater than the effective MTU
       stored with the mapping cache entry associated with the
       destination EID the packet is for, the ITR will send an ICMP Too
       Big message back to the source.  The packet size advertised by
       the ITR in the ICMP Too Big message is the effective MTU minus
       the LISP encapsulation length.

   Even though this mechanism is stateful, it has advantages over the
   stateless IP fragmentation mechanism, by not involving the
   destination host with reassembly of ITR fragmented packets.

5.5.  Using Virtualization and Segmentation with LISP

   When multiple organizations inside of a LISP site are using private
   addresses [RFC1918] as EID-prefixes, their address spaces MUST remain
   segregated due to possible address duplication.  An Instance ID in
   the address encoding can aid in making the entire AFI based address
   unique.  See [LCAF] for details for a possible address encoding.  The
   LCAF encoding is an area for further study.

   An Instance ID can be carried in a LISP encapsulated packet.  An ITR
   that prepends a LISP header, will copy a 24-bit value, used by the
   LISP router to uniquely identify the address space.  The value is
   copied to the Instance ID field of the LISP header and the I-bit is
   set to 1.

   When an ETR <STRIKE><FONT color="red">decapsulate</FONT></STRIKE> <STRONG><FONT color="green">decapsulates</FONT></STRONG> a packet, the Instance ID from the LISP
   header is used as a table identifier to locate the forwarding table
   to use for the inner destination EID lookup.

   <STRIKE><FONT color="red">Some examples of the 24-bit value to copy or map into the Instance ID
   field could be</FONT></STRIKE>

   <STRONG><FONT color="green">For example,</FONT></STRONG> a 802.1Q VLAN tag or <STRONG><FONT color="green">VPN identifier could be used as</FONT></STRONG> a <STRIKE><FONT color="red">configured VRF-ID value.</FONT></STRIKE>
   <STRONG><FONT color="green">24-bit Instance ID.</FONT></STRONG>

6.  EID-to-RLOC Mapping

6.1.  LISP IPv4 and IPv6 Control Plane Packet Formats

   The following new UDP packet types are used to retrieve EID-to-RLOC
   mappings:

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version|  IHL  |Type of Service|          Total Length         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Identification        |Flags|      Fragment Offset    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Time to Live | Protocol = 17 |         Header Checksum       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Source Routing Locator                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                 Destination Routing Locator                   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version| Traffic Class |           Flow Label                  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Payload Length        | Next Header=17|   Hop Limit   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                     Source Routing Locator                    +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       +                                                               +
       |                                                               |
       +                  Destination Routing Locator                  +
       |                                                               |
       +                                                               +
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |           Source Port         |         Dest Port             |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                                                               |
       |                         LISP Message                          |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The LISP UDP-based messages are the Map-Request and Map-Reply
   messages.  When a UDP Map-Request is sent, the UDP source port is
   chosen by the sender and the destination UDP port number is set to
   4342.  When a UDP Map-Reply is sent, the source UDP port number is
   set to 4342 and the destination UDP port number is copied from the
   source port of either the Map-Request or the invoking data packet.

   The UDP Length field will reflect the length of the UDP header and
   the LISP Message payload.

   The UDP Checksum is computed and set to non-zero for Map-Request,
   Map-Reply, Map-Register and ECM control messages.  It MUST be checked
   on receipt and if the checksum fails, the packet MUST be dropped.

   LISP-CONS [CONS] <STRIKE><FONT color="red">use</FONT></STRIKE> <STRONG><FONT color="green">uses</FONT></STRONG> TCP to send LISP control messages.  The format
   of control messages includes the UDP header so the checksum and
   length fields can be used to protect and delimit message boundaries.

   This main LISP specification is the authoritative source for message
   format definitions for the Map-Request and Map-Reply messages.

6.1.1.  LISP Packet Type Allocations

   This section will be the authoritative source for allocating LISP
   Type values.  Current allocations are:

       Reserved:                          0    b'0000'
       LISP Map-Request:                  1    b'0001'
       LISP Map-Reply:                    2    b'0010'
       LISP Map-Register:                 3    b'0011'
       LISP Encapsulated Control Message: 8    b'1000'

6.1.2.  Map-Request Message Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=1 |A|M|P|S|       Reserved      |   IRC   | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Source-EID-AFI        |   Source EID Address  ...     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI 1        |    ITR-RLOC Address 1  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                              ...                              |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         ITR-RLOC-AFI n        |    ITR-RLOC Address n  ...    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |   Reserved    | EID mask-len  |        EID-prefix-AFI         |
   Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |                       EID-prefix  ...                         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Map-Reply Record  ...                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   1 (Map-Request)

   A: This is an authoritative bit, which is set to 0 for UDP-based Map-
      Requests sent by an ITR.

   M: When set, it indicates a Map-Reply Record segment is included in
      the Map-Request.

   P: This is the probe-bit which indicates that a Map-Request SHOULD be
      treated as a locator reachability probe.  The receiver SHOULD
      respond with a Map-Reply with the probe-bit set, indicating the
      Map-Reply is a locator reachability probe reply, with the nonce
      copied from the Map-Request.  See Section 6.3.2 for more details.

   S: This is the SMR bit.  See Section <STRIKE><FONT color="red">6.5.2</FONT></STRIKE> <STRONG><FONT color="green">6.6.2</FONT></STRONG> for details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   IRC:  This 5-bit field is the ITR-RLOC Count which encodes the
      <STRONG><FONT color="green">additional</FONT></STRONG> number of (ITR-RLOC-AFI, ITR-RLOC Address) fields
      present in this message.  <STRONG><FONT color="green">At least one (ITR-RLOC-AFI, ITR-RLOC-
      Address) pair must always be encoded.</FONT></STRONG>  Multiple ITR-RLOC Address
      fields are used so a <STRIKE><FONT color="red">Map-
      Replier</FONT></STRIKE> <STRONG><FONT color="green">Map-Replier</FONT></STRONG> can select which destination
      address to use for a <STRIKE><FONT color="red">Map-
      Reply.</FONT></STRIKE> <STRONG><FONT color="green">Map-Reply.</FONT></STRONG>  The IRC value ranges from 0 to
      31, <STRIKE><FONT color="red">where IRC</FONT></STRIKE> <STRONG><FONT color="green">and for a</FONT></STRONG> value <STRIKE><FONT color="red">0 means
      an ITR-RLOC address count</FONT></STRIKE> of 1, <STRIKE><FONT color="red">an IRC value of 1 means an ITR-
      RLOC address count of 2,</FONT></STRIKE> <STRONG><FONT color="green">there are 2 ITR-RLOC addresses encoded</FONT></STRONG>
      and so on up to <STRIKE><FONT color="red">an IRC value of 31,</FONT></STRIKE> <STRONG><FONT color="green">31</FONT></STRONG> which
      <STRIKE><FONT color="red">means an ITR-RLOC address count</FONT></STRIKE> <STRONG><FONT color="green">encodes a total</FONT></STRONG> of <STRIKE><FONT color="red">32.</FONT></STRIKE> <STRONG><FONT color="green">32 ITR-RLOC addresses.</FONT></STRONG>

   Record Count:  The number of records in this Map-Request message.  A
      record is comprised of the portion of the packet that is labeled
      'Rec' above and occurs the number of times equal to Record Count.
      For this version of the protocol, a receiver MUST accept and
      process Map-Requests that contain one or more records, but a
      sender MUST only send Map-Requests containing one record.  Support
      for requesting multiple EIDs in a single Map-Request message will
      be specified in a future version of the protocol.

   Nonce:  An 8-byte random value created by the sender of the Map-
      Request.  This nonce will be returned in the Map-Reply.  The
      security of the LISP mapping protocol depends critically on the
      strength of the nonce in the Map-Request message.  The nonce
      SHOULD be generated by a properly seeded pseudo-random (or strong
      random) source.  See [RFC4086] for advice on generating security-
      sensitive random data.

   Source-EID-AFI:  Address family of the "Source EID Address" field.

   Source EID Address:  This is the EID of the source host which
      originated the packet which is invoking this Map-Request.  When
      Map-Requests are used for refreshing a map-cache entry or for
      RLOC-probing, <STRIKE><FONT color="red">the</FONT></STRIKE> <STRONG><FONT color="green">an AFI</FONT></STRONG> value 0 is <STRIKE><FONT color="red">used.</FONT></STRIKE> <STRONG><FONT color="green">used and this field is of zero
      length.</FONT></STRONG>

   ITR-RLOC-AFI:  Address family of the "ITR-RLOC Address" field that
      follows this field.

   ITR-RLOC Address:  Used to give the ETR the option of selecting the
      destination address from any address family for the Map-Reply
      message.  This address MUST be a routable RLOC address.

   EID mask-len:  Mask length for EID prefix.

   EID-prefix-AFI:  Address family of EID-prefix according to [RFC5226]

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.  When a Map-Request is sent by an ITR because a
      data packet is received for a destination where there is no
      mapping entry, the EID-prefix is set to the destination IP address
      of the data packet.  And the 'EID mask-len' is set to 32 or 128
      for IPv4 or IPv6, respectively.  When an xTR wants to query a site
      about the status of a mapping it already has cached, the EID-
      prefix used in the Map-Request has the same mask-length as the
      EID-prefix returned from the site when it sent a Map-Reply
      message.

   Map-Reply Record:  When the M bit is set, this field is the size of
      <STRIKE><FONT color="red">the</FONT></STRIKE> <STRONG><FONT color="green">a
      single</FONT></STRONG> "Record" <STRIKE><FONT color="red">field</FONT></STRIKE> in the Map-Reply format.  This Map-Reply record
      contains the EID-to-RLOC mapping entry associated with the Source
      EID.  This allows the ETR which will receive this Map-Request to
      cache the data if it chooses to do so.

   Mapping Protocol Data:  See [CONS] <STRIKE><FONT color="red">or [ALT]</FONT></STRIKE> for details.  This field is
      optional and present when the UDP length indicates there is enough
      space in the packet to include it.

6.1.3.  EID-to-RLOC UDP Map-Request Message

   A Map-Request is sent from an ITR when it needs a mapping for an EID,
   wants to test an RLOC for reachability, or wants to refresh a mapping
   before TTL expiration.  For the initial case, the destination IP
   address used for the Map-Request is the destination-EID from the
   packet which had a mapping cache lookup failure.  For the latter 2
   cases, the destination IP address used for the Map-Request is one of
   the RLOC addresses from the locator-set of the map cache entry.  The
   source address is either an IPv4 or IPv6 RLOC address depending if
   the Map-Request is using an IPv4 versus IPv6 header, respectively.
   In all cases, the UDP source port number for the Map-Request message
   is <STRIKE><FONT color="red">a randomly allocated</FONT></STRIKE> <STRONG><FONT color="green">an ITR/PITR selected</FONT></STRONG> 16-bit value and the UDP destination port
   number is set to the well-known destination port number 4342.  A
   successful Map-Reply updates the cached set of RLOCs associated with
   the EID prefix range.

   One or more Map-Request (ITR-RLOC-AFI, ITR-RLOC-Address) fields MUST
   be filled in by the ITR.  The number of fields (minus 1) encoded MUST
   be placed in the IRC field.  The ITR MAY include all locally
   configured locators in this list or just provide one locator address
   from each address family it supports.  If the ITR erroneously
   provides no ITR-RLOC addresses, the Map-Replier MUST drop the Map-
   Request.

   Map-Requests can also be LISP encapsulated using UDP destination port
   4342 with a LISP type value set to "Encapsulated Control Message",
   when sent from an ITR to a Map-Resolver.  Likewise, Map-Requests are
   LISP encapsulated the same way from a Map-Server to an ETR.  Details
   on encapsulated Map-Requests and Map-Resolvers can be found in
   [LISP-MS].

   Map-Requests MUST be rate-limited.  It is recommended that a Map-
   Request for the same EID-prefix be sent no more than once per second.

   An ITR that is configured with mapping database information (i.e. it
   is also an ETR) may optionally include those mappings in a Map-
   Request.  When an ETR configured to accept and verify such
   "piggybacked" mapping data receives such a Map-Request and it does
   not have this mapping in the map-cache, it may originate a "verifying
   Map-Request", addressed to the map-requesting ITR.  If the ETR has a
   map-cache entry that matches the "piggybacked" EID and the RLOC is in
   the locator-set for the entry, then it may send the "verifying Map-
   Request" directly to the originating Map-Request source.  If the RLOC
   is not in the locator-set, then the ETR MUST send the "verifying Map-
   Request" to the "piggybacked" EID.  Doing this forces the "verifying
   Map-Request" to go through the mapping database system to reach the
   authoritative source of information about that EID, guarding against
   RLOC-spoofing in in the "piggybacked" mapping data.

6.1.4.  Map-Reply Message Format

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=2 |P|E|            Reserved               | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                     Mapping Protocol Data                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   2 (Map-Reply)

   P: This is the probe-bit which indicates that the Map-Reply is in
      response to a locator reachability probe Map-Request.  The nonce
      field MUST contain a copy of the nonce value from the original
      Map-Request.  See Section 6.3.2 for more details.

   E: Indicates that the ETR which sends this Map-Reply message is
      advertising that the site is enabled for the Echo-Nonce locator
      reachability algorithm.  See Section 6.3.1 for more details.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this reply message.  A record
      is comprised of that portion of the packet labeled 'Record' above
      and occurs the number of times equal to Record count.

   Nonce:  A 24-bit value set in a Data-Probe packet or a 64-bit value
      from the Map-Request is echoed in this Nonce field of the Map-
      Reply.

   Record TTL:  The time in minutes the recipient of the Map-Reply will
      store the mapping.  If the TTL is 0, the entry SHOULD be removed
      from the cache immediately.  If the value is 0xffffffff, the
      recipient can decide locally how long to store the mapping.

   Locator Count:  The number of Locator entries.  A locator entry
      comprises what is labeled above as 'Loc'.  The locator count can
      be 0 indicating there are no locators for the EID-prefix.

   EID mask-len:  Mask length for EID prefix.

   ACT:  This 3-bit field describes negative Map-Reply actions.  These
      bits are used only when the 'Locator Count' field is set to 0.
      The action bits are encoded only in Map-Reply messages.  The
      actions defined are used by an ITR or PTR when a destination EID
      matches a negative mapping cache entry.  Unassigned values should
      cause a map-cache entry to be created and, when packets match this
      negative cache entry, they will be dropped.  The current assigned
      values are:

      (0) <STRIKE><FONT color="red">Drop:</FONT></STRIKE> <STRONG><FONT color="green">No-Action:</FONT></STRONG>  The <STRIKE><FONT color="red">packet</FONT></STRIKE> <STRONG><FONT color="green">map-cache</FONT></STRONG> is <STRIKE><FONT color="red">dropped silently.</FONT></STRIKE> <STRONG><FONT color="green">kept alive and packet
         encapsulation occurs.</FONT></STRONG>

      (1) Natively-Forward:  The packet is not encapsulated or dropped
         but natively forwarded.

      (2) Send-Map-Request:  The packet invokes sending a Map-Request.

      <STRONG><FONT color="green">(3) Drop:  A packet that matches this map-cache entry is dropped.</FONT></STRONG>

   A: The Authoritative bit, when sent by a UDP-based message is always
      set to 1 by an ETR.  See [CONS] for TCP-based Map-Replies.  When a
      Map-Server is proxy Map-Replying [LISP-MS] for a LISP site, the
      Authoritative bit is set to 0.  This indicates to requesting ITRs
      that the Map-Reply was not originated by a LISP node managed at
      the site that owns the EID-prefix.

   Map-Version Number:  When this 12-bit value is non-zero the Map-Reply
      sender is informing the ITR what the version number is for the
      EID-record contained in the Map-Reply.  The ETR can allocate this
      number internally but MUST coordinate this value with other ETRs
      for the site.  When this value is 0, there is no versioning
      information conveyed.  The Map-Version Number can be included in
      Map-Request and Map-Register messages.  See Section <STRIKE><FONT color="red">6.5.3</FONT></STRIKE> <STRONG><FONT color="green">6.6.3</FONT></STRONG> for more
      details.

   EID-AFI:  Address family of EID-prefix according to [RFC5226].

   EID-prefix:  4 bytes if an IPv4 address-family, 16 bytes if an IPv6
      address-family.

   Priority:  each RLOC is assigned a unicast priority.  Lower values
      are more preferable.  When multiple RLOCs have the same priority,
      they may be used in a load-split fashion.  A value of 255 means
      the RLOC MUST NOT be used for unicast forwarding.

   Weight:  when priorities are the same for multiple RLOCs, the weight
      indicates how to balance unicast traffic between them.  Weight is
      encoded as a <STRIKE><FONT color="red">percentage</FONT></STRIKE> <STRONG><FONT color="green">relative weight</FONT></STRONG> of total unicast packets that match
      the mapping entry.  If a non-zero weight value is used for any
      RLOC, then all RLOCs MUST use a non-zero weight value and then the
      sum of all weight values MUST equal 100.  If a zero value is used
      for any RLOC weight, then all weights MUST be zero and the
      receiver of the Map-Reply will decide how to load-split traffic.
      See Section <STRIKE><FONT color="red">6.4</FONT></STRIKE> <STRONG><FONT color="green">6.5</FONT></STRONG> for a suggested hash algorithm to distribute load
      across locators with same priority and equal weight values.  <STRIKE><FONT color="red">When
      a single RLOC exists in a mapping entry, the weight value MUST be
      set to 100 and ignored on receipt.</FONT></STRIKE>

   M Priority:  each RLOC is assigned a multicast priority used by an
      ETR in a receiver multicast site to select an ITR in a source
      multicast site for building multicast distribution trees.  A value
      of 255 means the RLOC MUST NOT be used for joining a multicast
      distribution tree.

   M Weight:  when priorities are the same for multiple RLOCs, the
      weight indicates how to balance building multicast distribution
      trees across multiple ITRs.  The weight is encoded as a <STRIKE><FONT color="red">percentage</FONT></STRIKE> <STRONG><FONT color="green">relative
      weight</FONT></STRONG> of total number of trees <STRIKE><FONT color="red">build</FONT></STRIKE> <STRONG><FONT color="green">built</FONT></STRONG> to the source site
      identified by the EID-prefix.  If a non-zero weight value is used
      for any RLOC, then all RLOCs MUST use a non-zero weight value and
      then the sum of all weight values MUST equal 100.  If a zero value
      is used for any RLOC weight, then all weights MUST be zero and the
      receiver of the Map-Reply will decide how to distribute multicast
      state across ITRs.

   Unused Flags:  set to 0 when sending and ignored on receipt.

   L: when this bit is set, the locator is flagged as a local locator to
      the ETR that is sending the Map-Reply.  When a Map-Server is doing
      proxy Map-Replying [LISP-MS] for a LISP site, the L bit is set to
      0 for all locators in this locator-set.

   p: when this bit is set, an ETR informs the RLOC-probing ITR that the
      locator address, for which this bit is set, is the one being RLOC-
      probed and may be different from the source address of the Map-
      Reply.  An ITR that RLOC-probes a particular locator, MUST use
      this locator for retrieving the data structure used to store the
      fact that the locator is reachable.  The "p" bit is set for a
      single locator in the same locator set.  If an implementation sets
      more than one "p" bit erroneously, the receiver of the Map-Reply
      MUST select the first locator.  The "p" bit MUST NOT be set for
      locator-set records sent in Map-Request and Map-Register messages.

   R: <STRONG><FONT color="green">set</FONT></STRONG> when <STRONG><FONT color="green">the sender of a Map-Reply has a route to the locator in
      the locator data record.  This receiver may find</FONT></STRONG> this <STRIKE><FONT color="red">bit is set,</FONT></STRIKE> <STRONG><FONT color="green">useful to
      know when determining if</FONT></STRONG> the locator is <STRIKE><FONT color="red">known to be</FONT></STRIKE> reachable from the <STRIKE><FONT color="red">Map-Reply sender's perspective.</FONT></STRIKE>
      <STRONG><FONT color="green">receiver.  See also Section 6.4 for another way the R-bit may be
      used.</FONT></STRONG>

   Locator:  an IPv4 or IPv6 address (as encoded by the 'Loc-AFI' field)
      assigned to an <STRIKE><FONT color="red">ETR or router acting as a proxy replier for the
      EID-prefix.</FONT></STRIKE> <STRONG><FONT color="green">ETR.</FONT></STRONG>  Note that the destination RLOC address MAY be
      an anycast address.  A source RLOC can be an anycast address as
      well.  The source or destination RLOC MUST NOT be the broadcast
      address (255.255.255.255 or any subnet broadcast address known to
      the router), and MUST NOT be a link-local multicast address.  The
      source RLOC MUST NOT be a multicast address.  The destination RLOC
      SHOULD be a multicast address if it is being mapped from a
      multicast destination EID.

   Mapping Protocol Data:  See [CONS] or [ALT] for details.  This field
      is optional and present when the UDP length indicates there is
      enough space in the packet to include it.

6.1.5.  EID-to-RLOC UDP Map-Reply Message

   <STRIKE><FONT color="red">When</FONT></STRIKE>

   <STRONG><FONT color="green">A Map-Reply returns an EID-prefix with</FONT></STRONG> a <STRIKE><FONT color="red">Data Probe packet</FONT></STRIKE> <STRONG><FONT color="green">prefix length that is less
   than</FONT></STRONG> or <STRIKE><FONT color="red">a Map-Request triggers a Map-Reply</FONT></STRIKE> <STRONG><FONT color="green">equal</FONT></STRONG> to <STRIKE><FONT color="red">be
   sent, the RLOCs associated with the EID-prefix matched by</FONT></STRIKE> the EID <STRIKE><FONT color="red">in</FONT></STRIKE> <STRONG><FONT color="green">being requested.  The EID being requested is
   either from</FONT></STRONG> the <STRIKE><FONT color="red">original packet</FONT></STRIKE> destination <STRIKE><FONT color="red">IP address</FONT></STRIKE> field <STRIKE><FONT color="red">will be returned.</FONT></STRIKE> <STRONG><FONT color="green">of an IP header of a Data-Probe or
   the EID record of a Map-Request.</FONT></STRONG>  The RLOCs in the Map-Reply are <STRIKE><FONT color="red">the</FONT></STRIKE>
   globally-routable IP addresses of <STRONG><FONT color="green">all ETRs for</FONT></STRONG> the <STRIKE><FONT color="red">ETR</FONT></STRIKE> <STRONG><FONT color="green">LISP site.  Each
   RLOC conveys status reachability</FONT></STRONG> but <STRIKE><FONT color="red">are</FONT></STRIKE> <STRONG><FONT color="green">does</FONT></STRONG> not <STRIKE><FONT color="red">necessarily reachable; separate</FONT></STRIKE> <STRONG><FONT color="green">convey path
   reachability from a requesters perspective.  Separate</FONT></STRONG> testing of <STRONG><FONT color="green">path</FONT></STRONG>
   reachability is <STRIKE><FONT color="red">required.</FONT></STRIKE> <STRONG><FONT color="green">required, See Section 6.3 for details.</FONT></STRONG>

   Note that a Map-Reply may contain different EID-prefix granularity
   (prefix + length) than the Map-Request which triggers it.  This might
   occur if a Map-Request were for a prefix that had been returned by an
   earlier Map-Reply.  In such a case, the requester updates its cache
   with the new prefix information and granularity.  For example, a
   requester with two cached EID-prefixes that are covered by a Map-
   Reply containing one, less-specific prefix, replaces the entry with
   the less-specific EID-prefix.  Note that the reverse, replacement of
   one less-specific prefix with multiple more-specific prefixes, can
   also occur but not by removing the less-specific prefix rather by
   adding the more-specific prefixes which during a lookup will override
   the less-specific prefix.

   When an ETR is configured with overlapping EID-prefixes, a Map-
   Request with an EID that longest matches any EID-prefix MUST be
   returned in a single Map-Reply message.  For instance, if an ETR had
   database mapping entries for EID-prefixes:

     10.0.0.0/8
     10.1.0.0/16
     10.1.1.0/24
     10.1.2.0/24

   A Map-Request for EID 10.1.1.1 would cause a Map-Reply with a record
   count of 1 to be returned with a mapping record EID-prefix of
   10.1.1.0/24.

   A Map-Request for EID 10.1.5.5, would cause a Map-Reply with a record
   count of 3 to be returned with mapping records for EID-prefixes
   10.1.0.0/16, 10.1.1.0/24, and 10.1.2.0/24.

   Note that not all overlapping EID-prefixes need to be returned, only
   the more specifics (note in the second example above 10.0.0.0/8 was
   not returned for requesting EID 10.1.5.5) entries for the matching
   EID-prefix of the requesting EID.  When more than one EID-prefix is
   returned, all SHOULD use the same Time-to-Live value so they can all
   time out at the same time.  When a more specific EID-prefix is
   received later, its Time-to-Live value in the Map-Reply record can be
   stored even when other less specifics exist.  When a <STRIKE><FONT color="red">a</FONT></STRIKE> less specific
   EID-prefix is received later, its map-cache expiration time SHOULD be
   set to the minimum expiration time of any more specific EID-prefix in
   the map-cache.

   Map-Replies SHOULD be sent for an EID-prefix no more often than once
   per second to the same requesting router.  For scalability, it is
   expected that aggregation of EID addresses into EID-prefixes will
   allow one Map-Reply to satisfy a mapping for the EID addresses in the
   prefix range thereby reducing the number of Map-Request messages.

   Map-Reply records can have an empty locator-set.  <STRIKE><FONT color="red">This type of a</FONT></STRIKE>  <STRONG><FONT color="green">A negative</FONT></STRONG> Map-
   Reply is <STRIKE><FONT color="red">called</FONT></STRIKE> a <STRIKE><FONT color="red">Negative Map-Reply.</FONT></STRIKE> <STRONG><FONT color="green">Map-Reply with an empty locator-set.</FONT></STRONG>  Negative Map-Replies
   convey special actions by the sender to the ITR or PTR which have
   solicited the Map-Reply.  There are two primary applications for
   Negative <STRIKE><FONT color="red">Map-
   Replies.</FONT></STRIKE> <STRONG><FONT color="green">Map-Replies.</FONT></STRONG>  The first is for a Map-Resolver to instruct an
   ITR or PTR when a destination is for a LISP site versus a non-LISP
   site.  And the other is to source quench Map-Requests which are sent
   for <STRIKE><FONT color="red">non-
   allocated</FONT></STRIKE> <STRONG><FONT color="green">non-allocated</FONT></STRONG> EIDs.

   For each Map-Reply record, the list of locators in a locator-set MUST
   appear in the same order for each ETR that originates a Map-Reply
   message.  The locator-set MUST be sorted in order of ascending IP
   address where an IPv4 locator address is considered numerically 'less
   than' an IPv6 locator address.

   When sending a Map-Reply message, the destination address is copied
   from the one of the ITR-RLOC fields from the Map-Request.  The ETR
   can choose a locator address from one of the address families it
   supports.  For Data-Probes, the destination address of the Map-Reply
   is copied from the source address of the Data-Probe message which is
   invoking the reply.  The source address of the Map-Reply is one of
   the local locator addresses listed in the locator-set of any mapping
   record in the message and SHOULD be chosen to allow uRPF checks to
   succeed in the upstream service provider.  The destination port of a
   Map-Reply message is copied from the source port of the Map-Request
   or Data-Probe and the source port of the Map-Reply message is set to
   the well-known UDP port 4342.

6.1.5.1.  Traffic Redirection with Coarse EID-Prefixes

   When an ETR is misconfigured or compromised, it could return coarse
   EID-prefixes in Map-Reply messages it sends.  The EID-prefix could
   cover EID-prefixes which are allocated to other sites redirecting
   their traffic to the locators of the compromised site.

   To solve this problem, there are two basic solutions that could be
   used.  The first is to have Map-Servers proxy-map-reply on behalf of
   ETRs so their registered EID-prefixes are the ones returned in Map-
   Replies.  Since the interaction between an ETR and Map-Server is
   secured with shared-keys, it is more difficult for an ETR to
   misbehave.  The second solution is to have ITRs and PTRs cache EID-
   prefixes with mask-lengths that are greater than or equal to a
   configured prefix length.  This limits the damage to a specific width
   of any EID-prefix advertised, but needs to be coordinated with the
   allocation of site prefixes.  These solutions can be used
   independently or at the same time.

   At the time of this writing, other approaches are being considered
   and researched.

6.1.6.  Map-Register Message Format

   The usage details of the Map-Register message can be found in
   specification [LISP-MS].  This section solely defines the message
   format.

   The message is sent in UDP with a destination UDP port of 4342 and a
   randomly selected UDP source port number.

   The Map-Register message format is:

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Type=3 |P|            Reserved                 | Record Count  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         Nonce . . .                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                         . . . Nonce                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |            Key ID             |  Authentication Data Length   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       ~                     Authentication Data                       ~
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   |                          Record  TTL                          |
   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   R   | Locator Count | EID mask-len  | ACT |A|      Reserved         |
   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   c   | Rsvd  |  Map-Version Number   |            EID-AFI            |
   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   r   |                          EID-prefix                           |
   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  /|    Priority   |    Weight     |  M Priority   |   M Weight    |
   | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | o |        Unused Flags     |L|p|R|           Loc-AFI             |
   | c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  \|                             Locator                           |
   +-&gt; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet field descriptions:

   Type:   3 (Map-Register)

   P: This is the proxy-map-reply bit, when set to 1 an ETR sends a Map-
      Register message requesting for the Map-Server to proxy Map-Reply.
      The Map-Server will send non-authoritative Map-Replies on behalf
      of the ETR.  Details on this usage will be provided in a future
      version of this draft.

   Reserved:  Set to 0 on transmission and ignored on receipt.

   Record Count:  The number of records in this Map-Register message.  A
      record is comprised of that portion of the packet labeled 'Record'
      above and occurs the number of times equal to Record count.

   Nonce:  This 8-byte Nonce field is set to 0 in Map-Register messages.

   Key ID:  A configured ID to find the configured Message
      Authentication Code (MAC) algorithm and key value used for the
      authentication function.

   Authentication Data Length:  The length in bytes of the
      Authentication Data field that follows this field.  The length of
      the <STRIKE><FONT color="red">the</FONT></STRIKE> Authentication Data field is dependent on the Message
      Authentication Code (MAC) algorithm used.  The length field allows
      a device that doesn't know the MAC algorithm to correctly parse
      the packet.

   Authentication Data:  The message digest used from the output of the
      Message Authentication Code (MAC) algorithm.  The entire Map-
      Register payload is authenticated with this field preset to 0.
      After the MAC is computed, it is placed in this field.
      Implementations of this specification MUST include support for
      HMAC-SHA-1-96 [RFC2404] and support for HMAC-SHA-128-256 [RFC4634]
      is recommended.

   The definition of the rest of the Map-Register can be found in the
   Map-Reply section.  <STRIKE><FONT color="red">However, the record TTL field is not used and set
   to 0.</FONT></STRIKE>

6.1.7.  Encapsulated Control Message Format

   An Encapsulated Control Message is used to encapsulate control
   packets sent between xTRs and the mapping database system described
   in [LISP-MS].

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   OH  |                      (uses RLOC addresses)                    |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = 4342        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LH  |Type=8 |                   Reserved                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |                       IPv4 or IPv6 Header                     |
   IH  |                  (uses RLOC or EID addresses)                 |
     \ |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     / |       Source Port = xxxx      |       Dest Port = yyyy        |
   UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     \ |           UDP Length          |        UDP Checksum           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   LCM |                      LISP Control Message                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Packet header descriptions:

   OH:   The outer IPv4 or IPv6 header which uses RLOC addresses in the
      source and destination header address fields.

   UDP:   The outer UDP header with destination port 4342.  The source
      port is randomly allocated.  The checksum field MUST be non-zero.

   LH:   Type 8 is defined to be a "LISP Encapsulated Control Message"
      and what follows is either an IPv4 or IPv6 header as encoded by
      the first 4 bits after the reserved field.

   IH:   The inner IPv4 or IPv6 header which can use either RLOC or EID
      addresses in the header address fields.  When a Map-Request is
      encapsulated in this packet format the destination address in this
      header is an EID.

   UDP:   The inner UDP header where the port assignments depends on the
      control packet being encapsulated.  When the control packet is a
      Map-Request or Map-Register, the source port is <STRIKE><FONT color="red">randomly assigned</FONT></STRIKE> <STRONG><FONT color="green">ITR/PITR selected</FONT></STRONG>
      and the destination port is 4342.  When the control packet is a
      Map-Reply, the source port is 4342 and the destination port is
      assigned from the source port of the invoking Map-Request.  Port
      number 4341 MUST NOT be assigned to either port.  The checksum
      field MUST be non-zero.

   LCM:   The format is one of the control message formats described in
      this section.  At this time, only Map-Request messages and PIM
      Join-Prune messages [MLISP] are allowed to be encapsulated.
      Encapsulating other types of LISP control messages are for further
      study.  When Map-Requests are sent for RLOC-probing purposes (i.e
      the probe-bit is set), they MUST NOT be sent inside Encapsulated
      Control Messages.

6.2.  Routing Locator Selection

   Both client-side and server-side may need control over the selection
   of RLOCs for conversations between them.  This control is achieved by
   manipulating the Priority and Weight fields in EID-to-RLOC Map-Reply
   messages.  Alternatively, RLOC information may be gleaned from
   received tunneled packets or EID-to-RLOC Map-Request messages.

   The following enumerates different scenarios for choosing RLOCs and
   the controls that are available:

   o  Server-side returns one RLOC.  Client-side can only use one RLOC.
      Server-side has complete control of the selection.

   o  Server-side returns a list of RLOC where a subset of the list has
      the same best priority.  Client can only use the subset list
      according to the weighting assigned by the server-side.  In this
      case, the server-side controls both the subset list and load-
      splitting across its members.  The client-side can use RLOCs
      outside of the subset list if it determines that the subset list
      is unreachable (unless RLOCs are set to a Priority of 255).  Some
      sharing of control exists: the server-side determines the
      destination RLOC list and load distribution while the client-side
      has the option of using alternatives to this list if RLOCs in the
      list are unreachable.

   o  Server-side sets weight of 0 for the RLOC subset list.  In this
      case, the client-side can choose how the traffic load is spread
      across the subset list.  Control is shared by the server-side
      determining the list and the client determining load distribution.
      Again, the client can use alternative RLOCs if the server-provided
      list of RLOCs are unreachable.

   o  Either side (more likely on the server-side ETR) decides not to
      send a Map-Request.  For example, if the server-side ETR does not
      send Map-Requests, it gleans RLOCs from the client-side ITR,
      giving the client-side ITR responsibility for bidirectional RLOC
      reachability and preferability.  Server-side ETR gleaning of the
      client-side ITR RLOC is done by caching the inner header source
      EID and the outer header source RLOC of received packets.  The
      client-side ITR controls how traffic is returned and can alternate
      using an outer header source RLOC, which then can be added to the
      list the server-side ETR uses to return traffic.  Since no
      Priority or Weights are provided using this method, the server-
      side ETR MUST assume each client-side ITR RLOC uses the same best
      Priority with a Weight of zero.  In addition, since EID-prefix
      encoding cannot be conveyed in data packets, the EID-to-RLOC cache
      on tunnel routers can grow to be very large.

   o  A "gleaned" map-cache entry, one learned from the source RLOC of a
      received encapsulated packet, is only stored and used for a few
      seconds, pending verification.  Verification is performed by
      sending a Map-Request to the source EID (the inner header IP
      source address) of the received encapsulated packet.  A reply to
      this "verifying Map-Request" is used to fully populate the map-
      cache entry for the "gleaned" EID and is stored and used for the
      time indicated from the TTL field of a received Map-Reply.  When a
      verified map-cache entry is stored, data gleaning no longer occurs
      for subsequent packets which have a source EID that matches the
      EID-prefix of the verified entry.

   RLOCs that appear in EID-to-RLOC Map-Reply messages are assumed to be
   reachable when the R-bit for the locator record is set to 1.  Neither
   the information contained in a Map-Reply or that stored in the
   mapping database system <STRIKE><FONT color="red">provide</FONT></STRIKE> <STRONG><FONT color="green">provides</FONT></STRONG> reachability information for RLOCs.
   <STRIKE><FONT color="red">Such</FONT></STRIKE>
   <STRONG><FONT color="green">Note that</FONT></STRONG> reachability <STRIKE><FONT color="red">needs to be</FONT></STRIKE> <STRONG><FONT color="green">is not part of the mapping system and is</FONT></STRONG>
   determined <STRIKE><FONT color="red">separately,</FONT></STRIKE> using one or more of the Routing Locator Reachability
   Algorithms described in the next section.

6.3.  Routing Locator Reachability

   Several mechanisms for determining RLOC reachability are currently
   defined:

   1.  An ETR may examine the Loc-Status-Bits in the LISP header of an
       encapsulated data packet received from an ITR.  If the ETR is
       also acting as an ITR and has traffic to return to the original
       ITR site, it can use this status information to help select an
       RLOC.

   2.  An ITR may receive an ICMP Network or ICMP Host Unreachable
       message for an RLOC it is using.  This indicates that the RLOC is
       likely down.

   3.  An ITR which participates in the global routing system can
       determine that an RLOC is down if no BGP RIB route exists that
       matches the RLOC IP address.

   4.  An ITR may receive an ICMP Port Unreachable message from a
       destination host.  This occurs if an ITR attempts to use
       interworking [INTERWORK] and LISP-encapsulated data is sent to a
       non-LISP-capable site.

   5.  An ITR may receive a Map-Reply from a ETR in response to a
       previously sent Map-Request.  The RLOC source of the Map-Reply is
       likely up since the ETR was able to send the Map-Reply to the
       ITR.

   6.  When an ETR receives an encapsulated packet from an ITR, the
       source RLOC from the outer header of the packet is likely up.

   7.  An ITR/ETR pair can use the Locator Reachability Algorithms
       described in this section, namely Echo-Noncing or RLOC-Probing.

   When determining Locator up/down reachability by examining the Loc-
   Status-Bits from the LISP encapsulated data packet, an ETR will
   receive up to date status from an encapsulating ITR about
   reachability for all ETRs at the site.  CE-based ITRs at the source
   site can determine reachability relative to each other using the site
   IGP as follows:

   o  Under normal circumstances, each ITR will advertise a default
      route into the site IGP.

   o  If an ITR fails or if the upstream link to its PE fails, its
      default route will either time-out or be withdrawn.

   Each ITR can thus observe the presence or lack of a default route
   originated by the others to determine the Locator Status Bits it sets
   for them.

   RLOCs listed in a Map-Reply are numbered with ordinals 0 to n-1.  The
   Loc-Status-Bits in a LISP encapsulated packet are numbered from 0 to
   n-1 starting with the least significant bit.  For example, if an RLOC
   listed in the 3rd position of the Map-Reply goes down (ordinal value
   2), then all ITRs at the site will clear the 3rd least significant
   bit (xxxx x0xx) of the Loc-Status-Bits field for the packets they
   encapsulate.

   When an ETR decapsulates a packet, it will check for any change in
   the Loc-Status-Bits field.  When a bit goes from 1 to 0, the ETR will
   refrain from encapsulating packets to an RLOC that is indicated as
   down.  It will only resume using that RLOC if the corresponding Loc-
   Status-Bit returns to a value of 1.  Loc-Status-Bits are associated
   with a locator-set per EID-prefix.  Therefore, when a locator becomes
   unreachable, the Loc-Status-Bit that corresponds to that locator's
   position in the list returned by the last Map-Reply will be set to
   zero for that particular EID-prefix.

   When ITRs at the site are not deployed in CE routers, the IGP can
   still be used to determine the reachability of Locators provided they
   are injected into the IGP.  This is typically done when a /32 address
   is configured on a loopback interface.

   When ITRs receive ICMP Network or Host Unreachable messages as a
   method to determine unreachability, they will refrain from using
   Locators which are described in Locator lists of Map-Replies.
   However, using this approach is unreliable because many network
   operators turn off generation of ICMP Unreachable messages.

   If an ITR does receive an ICMP Network or Host Unreachable message,
   it MAY originate its own ICMP Unreachable message destined for the
   host that originated the data packet the ITR encapsulated.

   Also, BGP-enabled ITRs can unilaterally examine the BGP RIB to see if
   a locator address from a locator-set in a mapping entry matches a
   prefix.  If it does not find one and BGP is running in the Default
   Free Zone (DFZ), it can decide to not use the locator even though the
   Loc-Status-Bits indicate the locator is up.  In this case, the path
   from the ITR to the ETR that is assigned the locator is not
   available.  More details are in [LOC-ID-ARCH].

   Optionally, an ITR can send a Map-Request to a Locator and if a Map-
   Reply is returned, reachability of the Locator has been determined.
   Obviously, sending such probes increases the number of control
   messages originated by tunnel routers for active flows, so Locators
   are assumed to be reachable when they are advertised.

   This assumption does create a dependency: Locator unreachability is
   detected by the receipt of ICMP Host Unreachable messages.  When an
   Locator has been determined to be unreachable, it is not used for
   active traffic; this is the same as if it were listed in a Map-Reply
   with priority 255.

   The ITR can test the reachability of the unreachable Locator by
   sending periodic Requests.  Both Requests and Replies MUST be rate-
   limited.  Locator reachability testing is never done with data
   packets since that increases the risk of packet loss for end-to-end
   sessions.

   When an ETR decapsulates a packet, it knows that it is reachable from
   the encapsulating ITR because that is how the packet arrived.  In
   most cases, the ETR can also reach the ITR but cannot assume this to
   be true due to the possibility of path asymmetry.  In the presence of
   unidirectional traffic flow from an ITR to an ETR, the ITR SHOULD NOT
   use the lack of return traffic as an indication that the ETR is
   unreachable.  Instead, it MUST use an alternate mechanisms to
   determine reachability.

6.3.1.  Echo Nonce Algorithm

   When data flows bidirectionally between locators from different
   sites, a simple mechanism called "nonce echoing" can be used to
   determine reachability between an ITR and ETR.  When an ITR wants to
   solicit a nonce echo, it sets the N and E bits and places a 24-bit
   nonce in the LISP header of the next encapsulated data packet.

   When this packet is received by the ETR, the encapsulated packet is
   forwarded as normal.  When the ETR next sends a data packet to the
   ITR, it includes the nonce received earlier with the N bit set and E
   bit cleared.  The ITR sees this "echoed nonce" and knows the path to
   and from the ETR is up.

   The ITR will set the E-bit and N-bit for every packet it sends while
   in echo-nonce-request state.  The time the ITR waits to process the
   echoed nonce before it determines the path is unreachable is variable
   and a choice left for the implementation.

   If the ITR is receiving packets from the ETR but does not see the
   nonce echoed while being in echo-nonce-request state, then the path
   to the ETR is unreachable.  This decision may be overridden by other
   locator reachability algorithms.  Once the ITR determines the path to
   the ETR is down it can switch to another locator for that EID-prefix.

   Note that "ITR" and "ETR" are relative terms here.  Both devices MUST
   be implementing both ITR and ETR functionality for the echo nonce
   mechanism to operate.

   The ITR and ETR may both go into echo-nonce-request state at the same
   time.  The number of packets sent or the time during which echo nonce
   requests are sent is an implementation specific setting.  However,
   when an ITR is in echo-nonce-request state, it can echo the ETR's
   nonce in the next set of packets that it encapsulates and then
   subsequently, continue sending echo-nonce-request packets.

   This mechanism does not completely solve the forward path
   reachability problem as traffic may be unidirectional.  That is, the
   ETR receiving traffic at a site may not be the same device as an ITR
   which transmits traffic from that site or the site to site traffic is
   unidirectional so there is no ITR returning traffic.

   The echo-nonce algorithm is bilateral.  That is, if one side sets the
   E-bit and the other side is not enabled for echo-noncing, then the
   echoing of the nonce does not occur and the requesting side may
   regard the locator unreachable erroneously.  An ITR SHOULD only set
   the E-bit in a encapsulated data packet when it knows the ETR is
   enabled for echo-noncing.  This is conveyed by the E-bit in the Map-
   Reply message.

   Note that other locator reachability mechanisms are being researched
   and can be used to compliment or even override the Echo Nonce
   Algorithm.  See next section for an example of control-plane probing.

6.3.2.  RLOC Probing Algorithm

   RLOC Probing is a method that an ITR or PTR can use to determine the
   reachability status of one or more locators that it has cached in a
   map-cache entry.  The probe-bit of the Map-Request and Map-Reply
   messages are used for RLOC Probing.

   RLOC probing is done in the control-plane on a timer basis where an
   ITR or PTR will originate a Map-Request destined to a locator address
   from one of its own locator addresses.  A Map-Request used as an
   RLOC-probe is NOT encapsulated and NOT sent to a Map-Server or on the
   ALT like one would when soliciting mapping data.  The EID record
   encoded in the Map-Request is the EID-prefix of the map-cache entry
   cached by the ITR or PTR.  The ITR <STRIKE><FONT color="red">or PTR</FONT></STRIKE> may include a mapping data record
   for its own database mapping <STRIKE><FONT color="red">information.</FONT></STRIKE> <STRONG><FONT color="green">information which contains the local
   EID-prefixes and RLOCs for its site.</FONT></STRONG>

   When an ETR receives a Map-Request message with the probe-bit set, it
   returns a Map-Reply with the probe-bit set.  The source address of
   the Map-Reply is set from the destination address of the Map-Request
   and the destination address of the Map-Reply is set from the source
   address of the Map-Request.  The Map-Reply SHOULD contain mapping
   data for the EID-prefix contained in the Map-Request.  This provides
   the opportunity for the ITR or PTR, which sent the RLOC-probe to get
   mapping updates if there were changes to the ETR's database mapping
   entries.

   There are advantages and disadvantages of RLOC Probing.  The greatest
   benefit of RLOC Probing is that it can handle many failure scenarios
   allowing the ITR to determine when the path to a specific locator is
   reachable or has become unreachable, thus providing a robust
   mechanism for switching to using another locator from the cached
   locator.  RLOC Probing can also provide rough RTT estimates between a
   pair of locators which can be useful for network management purposes
   as well as for selecting low delay paths.  The major disadvantage of
   RLOC Probing is in the number of control messages required and the
   amount of bandwidth used to obtain those benefits, especially if the
   requirement for failure detection times are very small.

   Continued research and testing will attempt to characterize the
   tradeoffs of failure detection times versus message overhead.

6.4.  <STRONG><FONT color="green">EID Reachability within a LISP Site

   A site may be multihomed using two or more ETRs.  The hosts and
   infrastructure within a site will be addressed using one or more EID
   prefixes that are mapped to the RLOCs of the relevant ETRs in the
   mapping system.  One possible failure mode is for an ETR to lose
   reachability to one or more of the EID prefixes within its own site.
   When this occurs when the ETR sends Map-Replies, it can clear the
   R-bit associated with its own locator.  And when the ETR is also an
   ITR, it can clear its locator-status-bit in the encapsulation data
   header.

6.5.</FONT></STRONG>  Routing Locator Hashing

   When an ETR provides an EID-to-RLOC mapping in a Map-Reply message to
   a requesting ITR, the locator-set for the EID-prefix may contain
   different priority values for each locator address.  When more than
   one best priority locator exists, the ITR can decide how to load
   share traffic against the corresponding locators.

   The following hash algorithm may be used by an ITR to select a
   locator for a packet destined to an EID for the EID-to-RLOC mapping:

   1.  Either a source and destination address hash can be used or the
       traditional 5-tuple hash which includes the source and
       destination addresses, source and destination TCP, UDP, or SCTP
       port numbers and the IP protocol number field or IPv6 next-
       protocol fields of a packet a host originates from within a LISP
       site.  When a packet is not a TCP, UDP, or SCTP packet, the
       source and destination addresses only from the header are used to
       compute the hash.

   2.  Take the hash value and divide it by the number of locators
       stored in the locator-set for the EID-to-RLOC mapping.

   3.  The remainder will be yield a value of 0 to "number of locators
       minus 1".  Use the remainder to select the locator in the
       locator-set.

   Note that when a packet is LISP encapsulated, the source port number
   in the outer UDP header needs to be set.  Selecting a <STRIKE><FONT color="red">random</FONT></STRIKE> <STRONG><FONT color="green">hashed</FONT></STRONG> value
   allows core routers which are attached to Link Aggregation Groups
   (LAGs) to load-split the encapsulated packets across member links of
   such LAGs.  Otherwise, core routers would see a single flow, since
   packets have a source address of the ITR, for packets which are
   originated by different EIDs at the source site.  A suggested setting
   for the source port number computed by an ITR is a 5-tuple hash
   function on the inner header, as described above.

   Many core router implementations use a 5-tuple hash to decide how to
   balance packet load across members of a LAG.  The 5-tuple hash
   includes the source and destination addresses of the packet and the
   source and destination ports when the protocol number in the packet
   is TCP or UDP.  For this reason, UDP encoding is used for LISP
   encapsulation.

<STRIKE><FONT color="red">6.5.</FONT></STRIKE>

<STRONG><FONT color="green">6.6.</FONT></STRONG>  Changing the Contents of EID-to-RLOC Mappings

   Since the LISP architecture uses a caching scheme to retrieve and
   store EID-to-RLOC mappings, the only way an ITR can get a more up-to-
   date mapping is to re-request the mapping.  However, the ITRs do not
   know when the mappings change and the ETRs do not keep track of <STRIKE><FONT color="red">who</FONT></STRIKE> <STRONG><FONT color="green">which
   ITRs</FONT></STRONG> requested its mappings.  For scalability reasons, we want to
   maintain this approach but need to provide a way for ETRs change
   their mappings and inform the sites that are currently communicating
   with the ETR site using such mappings.

   When a locator record is added to the end of a locator-set, it is
   easy to update mappings.  We assume new mappings will maintain the
   same locator ordering as the old mapping but just have new locators
   appended to the end of the list.  So some ITRs can have a new mapping
   while other ITRs have only an old mapping that is used until they
   time out.  When an ITR has only an old mapping but detects bits set
   in the loc-status-bits that correspond to locators beyond the list it
   has cached, it simply ignores them.  However, this can only happen
   for locator addresses that are lexicographically greater than the
   locator addresses in the existing locator-set.

   When a locator record is removed from a locator-set, ITRs that have
   the mapping cached will not use the removed locator because the xTRs
   will set the loc-status-bit to 0.  So even if the locator is in the
   list, it will not be used.  For new mapping requests, the xTRs can
   set the locator AFI to 0 (indicating an unspecified address), as well
   as setting the corresponding loc-status-bit to 0.  This forces ITRs
   with old or new mappings to avoid using the removed locator.

   If many changes occur to a mapping over a long period of time, one
   will find empty record slots in the middle of the locator-set and new
   records appended to the locator-set.  At some point, it would be
   useful to compact the locator-set so the loc-status-bit settings can
   be efficiently packed.

   We propose here three approaches for locator-set compaction, one
   operational and two protocol mechanisms.  The operational approach
   uses a clock sweep method.  The protocol approaches use the concept
   of Solicit-Map-Requests and Map-Versioning.

<STRIKE><FONT color="red">6.5.1.</FONT></STRIKE>

<STRONG><FONT color="green">6.6.1.</FONT></STRONG>  Clock Sweep

   The clock sweep approach uses planning in advance and the use of
   count-down TTLs to time out mappings that have already been cached.
   The default setting for an EID-to-RLOC mapping TTL is 24 hours.  So
   there is a 24 hour window to time out old mappings.  The following
   clock sweep procedure is used:

   1.  24 hours before a mapping change is to take effect, a network
       administrator configures the ETRs at a site to start the clock
       sweep window.

   2.  During the clock sweep window, ETRs continue to send Map-Reply
       messages with the current (unchanged) mapping records.  The TTL
       for these mappings is set to 1 hour.

   3.  24 hours later, all previous cache entries will have timed out,
       and any active cache entries will time out within 1 hour.  During
       this 1 hour window the ETRs continue to send Map-Reply messages
       with the current (unchanged) mapping records with the TTL set to
       1 minute.

   4.  At the end of the 1 hour window, the ETRs will send Map-Reply
       messages with the new (changed) mapping records.  So any active
       caches can get the new mapping contents right away if not cached,
       or in 1 minute if they had the mapping cached.

<STRIKE><FONT color="red">6.5.2.</FONT></STRIKE>  <STRONG><FONT color="green">The new mappings
       are cached with a time to live equal to the TTL in the Map-Reply.

6.6.2.</FONT></STRONG>  Solicit-Map-Request (SMR)

   Soliciting a Map-Request is a selective way for <STRIKE><FONT color="red">xTRs,</FONT></STRIKE> <STRONG><FONT color="green">ETRs,</FONT></STRONG> at the site
   where mappings change, to control the rate they receive requests for
   Map-Reply messages.  SMRs are also used to tell remote ITRs to update
   the mappings they have cached.

   Since the <STRIKE><FONT color="red">xTRs</FONT></STRIKE> <STRONG><FONT color="green">ETRs</FONT></STRONG> don't keep track of remote ITRs that have cached their
   mappings, they <STRIKE><FONT color="red">can</FONT></STRIKE> <STRONG><FONT color="green">do</FONT></STRONG> not <STRIKE><FONT color="red">tell exactly who needs the new mapping
   entries.  So</FONT></STRIKE> <STRONG><FONT color="green">know which ITRs need to have their mappings
   updated.  As a result,</FONT></STRONG> an <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ETR</FONT></STRONG> will solicit Map-Requests <STRONG><FONT color="green">(called an
   SMR message)</FONT></STRONG> from <STRONG><FONT color="green">those</FONT></STRONG> sites <STRONG><FONT color="green">to which</FONT></STRONG> it <STRIKE><FONT color="red">is
   currently</FONT></STRIKE> <STRONG><FONT color="green">has been</FONT></STRONG> sending
   encapsulated data <STRIKE><FONT color="red">to, and only from those sites.
   The xTRs can locally decide the algorithm</FONT></STRIKE> <STRONG><FONT color="green">to</FONT></STRONG> for <STRIKE><FONT color="red">how often and</FONT></STRIKE> <STRONG><FONT color="green">the last minute.  In particular, an ETR will
   send an SMR an ITR</FONT></STRONG> to <STRIKE><FONT color="red">how
   many sites</FONT></STRIKE> <STRONG><FONT color="green">which</FONT></STRONG> it <STRIKE><FONT color="red">sends SMR messages.</FONT></STRIKE> <STRONG><FONT color="green">has recently sent encapsulated data.</FONT></STRONG>

   An SMR message is simply a bit set in a Map-Request message.  An ITR
   or PTR will send a Map-Request when they receive an SMR message.
   Both the SMR sender and the Map-Request responder MUST rate-limited
   these messages.

   <STRIKE><FONT color="red">The following procedure shows how</FONT></STRIKE>  <STRONG><FONT color="green">Rate-limiting can be implemented as</FONT></STRONG> a <STRIKE><FONT color="red">SMR exchange</FONT></STRIKE> <STRONG><FONT color="green">global rate-
   limiter or one rate-limiter per SMR destination.

   The following procedure shows how a SMR exchange</FONT></STRONG> occurs when a site
   is doing locator-set compaction for an EID-to-RLOC mapping:

   1.  When the database mappings in an ETR change, the ETRs at the site
       begin to send Map-Requests with the SMR bit set for each locator
       in each map-cache entry the ETR caches.

   2.  A remote <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> which receives the SMR message will schedule sending
       a Map-Request message to the source locator address of the SMR
       message.  A newly allocated random nonce is selected and the EID-
       prefix used is the one copied from the SMR message.  <STRONG><FONT color="green">If the
       source locator is the only locator in the cached locator-set, the
       remote ITR SHOULD send a Map-Request to the database mapping
       system just in case the single locator has changed and may no
       longer be reachable to accept the Map-Request.</FONT></STRONG>

   3.  The remote <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> MUST rate-limit the Map-Request until it gets a
       Map-Reply while continuing to use the cached mapping.  <STRONG><FONT color="green">When Map
       Versioning is used, described in Section 6.6.3, an SMR sender can
       detect if an ITR is using the most up to date database mapping.</FONT></STRONG>

   4.  The ETRs at the site with the changed mapping will reply to the
       Map-Request with a Map-Reply message <STRIKE><FONT color="red">provided the Map-Request
       nonce matches the</FONT></STRIKE> <STRONG><FONT color="green">that has a</FONT></STRONG> nonce from the <STRIKE><FONT color="red">SMR.</FONT></STRIKE>
       <STRONG><FONT color="green">SMR-invoked Map-Request.</FONT></STRONG>  The Map-Reply messages SHOULD be rate
       limited.  This is important to avoid Map-Reply implosion.

   5.  The ETRs, at the site with the changed mapping, record the fact
       that the site that sent the Map-Request has received the new
       mapping data in the mapping cache entry for the remote site so
       the loc-status-bits are reflective of the new mapping for packets
       going to the remote site.  The ETR then stops sending SMR
       messages.

   For security reasons an ITR MUST NOT process unsolicited Map-Replies.
   <STRIKE><FONT color="red">The nonce MUST be carried from SMR packet, into the resultant Map-
   Request, and then into Map-Reply to reduce spoofing attacks.</FONT></STRIKE>
   To avoid map-cache entry corruption by a third-party, a sender of an
   SMR-based Map-Request MUST be verified.  If an ITR receives an SMR-
   based Map-Request and the source is not in the locator-set for the
   stored map-cache entry, then the responding Map-Request MUST be sent
   with an EID destination to the mapping database system.  Since the
   mapping database system is more secure to reach an authoritative ETR,
   it will deliver the Map-Request to the authoritative source of the
   mapping data.

<STRIKE><FONT color="red">6.5.3.</FONT></STRIKE>

<STRONG><FONT color="green">6.6.3.</FONT></STRONG>  Database Map Versioning

   When there is unidirectional packet flow between an ITR and ETR, and
   the EID-to-RLOC mappings change on the ETR, it needs to inform the
   ITR so encapsulation can stop to a removed locator and start to a new
   locator in the locator-set.

   An ETR, when it sends Map-Reply messages, conveys its own Map-Version
   number.  This is known as the Destination Map-Version Number.  ITRs
   include the Destination Map-Version Number in packets they
   encapsulate to the site.  When an ETR decapsulates a packet and
   detects the Destination Map-Version Number is less than the current
   version for its mapping, the SMR procedure described in Section <STRIKE><FONT color="red">6.5.2</FONT></STRIKE> <STRONG><FONT color="green">6.6.2</FONT></STRONG>
   occurs.

   An ITR, when it encapsulates packets to ETRs, can convey its own Map-
   Version number.  This is known as the Source Map-Version Number.
   When an ETR decapsulates a packet and detects the Source Map-Version
   Number is greater than the last Map-Version Number sent in a Map-
   Reply from the ITR's site, the ETR will send a Map-Request to one of
   the ETRs for the source site.

   A Map-Version Number is used as a sequence number per EID-prefix.  So
   values that are greater, are considered to be more recent.  A value
   of 0 for the Source Map-Version Number or the Destination Map-Version
   Number conveys no versioning information and an <STRIKE><FONT color="red">xTR</FONT></STRIKE> <STRONG><FONT color="green">ITR</FONT></STRONG> does no
   comparison with previously received Map-Version Numbers.

   A Map-Version Number can be included in Map-Register messages as
   well.  This is a good way for the Map-Server can assure that all ETRs
   for a site registering to it will be Map-Version number synchronized.

   See [VERSIONING] for a more detailed analysis and description of
   Database Map Versioning.

7.  Router Performance Considerations

   LISP is designed to be very hardware-based forwarding friendly.  <STRIKE><FONT color="red">By
   doing tunnel header prepending [RFC1955] and stripping instead of re-
   writing addresses, existing hardware can support the forwarding model
   with little or no modification.  Where modifications are required,
   they should be limited to re-programming existing hardware rather
   than requiring expensive design changes to hard-coded algorithms in
   silicon.</FONT></STRIKE>  A
   few implementation techniques can be used to incrementally implement
   LISP:

   o  When a tunnel encapsulated packet is received by an ETR, the outer
      destination address may not be the address of the router.  This
      makes it challenging for the control plane to get packets from the
      hardware.  This may be mitigated by creating special FIB entries
      for the EID-prefixes of EIDs served by the ETR (those for which
      the router provides an RLOC translation).  These FIB entries are
      marked with a flag indicating that control plane processing should
      be performed.  The forwarding logic of testing for particular IP
      protocol number value is not necessary.  No changes to existing,
      deployed hardware should be needed to support this.

   o  On an ITR, prepending a new IP header <STRIKE><FONT color="red">is as simple as</FONT></STRIKE> <STRONG><FONT color="green">consists of</FONT></STRONG> adding more
      bytes to a MAC rewrite string and prepending the string as part of
      the outgoing encapsulation procedure.  <STRIKE><FONT color="red">Many routers</FONT></STRIKE>  <STRONG><FONT color="green">Routers</FONT></STRONG> that support GRE
      tunneling [RFC2784] or 6to4 tunneling [RFC3056] <STRIKE><FONT color="red">can</FONT></STRIKE> <STRONG><FONT color="green">may</FONT></STRONG> already
      support this action.

   o  <STRIKE><FONT color="red">When a received</FONT></STRIKE>  <STRONG><FONT color="green">A</FONT></STRONG> packet's <STRIKE><FONT color="red">outer destination address contains an EID
      which is not intended to be forwarded on the routable topology
      (i.e.  LISP 1.5), the</FONT></STRIKE> source address <STRIKE><FONT color="red">of a data packet</FONT></STRIKE> or <STRIKE><FONT color="red">the
      router</FONT></STRIKE> interface <STRIKE><FONT color="red">with which</FONT></STRIKE> the <STRIKE><FONT color="red">source is associated (the
      interface from which it</FONT></STRIKE> <STRONG><FONT color="green">packet</FONT></STRONG> was <STRIKE><FONT color="red">received)</FONT></STRIKE> <STRONG><FONT color="green">received on</FONT></STRONG>
      can be <STRIKE><FONT color="red">associated with</FONT></STRIKE> <STRONG><FONT color="green">used to select</FONT></STRONG> a VRF (Virtual <STRIKE><FONT color="red">Routing/Forwarding), in which a different (i.e. non-
      congruent) topology</FONT></STRIKE> <STRONG><FONT color="green">Routing/Forwarding).  The
      VRF's routing table</FONT></STRONG> can be used to find EID-to-RLOC mappings.

8.  Deployment Scenarios

   This section will explore how and where ITRs and ETRs can be deployed
   and will discuss the pros and cons of each deployment scenario.
   There are two basic deployment trade-offs to consider: centralized
   versus distributed caches and flat, recursive, or re-encapsulating
   tunneling.

   When deciding on centralized versus distributed caching, the
   following issues should be considered:

   o  Are the tunnel routers spread out so that the caches are spread
      across all the memories of each router?

   o  Should management "touch points" be minimized by choosing few
      tunnel routers, just enough for redundancy?

   o  In general, using more ITRs doesn't increase management load,
      since caches are built and stored dynamically.  On the other hand,
      more ETRs does require more management since EID-prefix-to-RLOC
      mappings need to be explicitly configured.

   When deciding on flat, recursive, or re-encapsulation tunneling, the
   following issues should be considered:

   o  Flat tunneling implements a single tunnel between source site and
      destination site.  This generally offers better paths between
      sources and destinations with a single tunnel path.

   o  Recursive tunneling is when tunneled traffic is again further
      encapsulated in another tunnel, either to implement VPNs or to
      perform Traffic Engineering.  When doing VPN-based tunneling, the
      site has some control since the site is prepending a new tunnel
      header.  In the case of TE-based tunneling, the site may have
      control if it is prepending a new tunnel header, but if the site's
      ISP is doing the TE, then the site has no control.  Recursive
      tunneling generally will result in suboptimal paths but at the
      benefit of steering traffic to resource available parts of the
      network.

   o  The technique of re-encapsulation ensures that packets only
      require one tunnel header.  So if a packet needs to be rerouted,
      it is first decapsulated by the ETR and then re-encapsulated with
      a new tunnel header using a new RLOC.

   The next sub-sections will <STRIKE><FONT color="red">describe</FONT></STRIKE> <STRONG><FONT color="green">survey</FONT></STRONG> where tunnel routers can reside in
   the network.

8.1.  First-hop/Last-hop Tunnel Routers

   By locating tunnel routers close to hosts, the EID-prefix set is at
   the granularity of an IP subnet.  So at the expense of more EID-
   prefix-to-RLOC sets for the site, the caches in each tunnel router
   can remain relatively small.  But caches always depend on the number
   of non-aggregated EID destination flows active through these tunnel
   routers.

   With more tunnel routers doing encapsulation, the increase in control
   traffic grows as well: since the EID-granularity is greater, more
   Map-Requests and Map-Replies are traveling between more routers.

   The advantage of placing the caches and databases at these stub
   routers is that the products deployed in this part of the network
   have better price-memory ratios then their core router counterparts.
   Memory is typically less expensive in these devices and fewer routes
   are stored (only IGP routes).  These devices tend to have excess
   capacity, both for forwarding and routing state.

   LISP functionality can also be deployed in edge switches.  These
   devices generally have layer-2 ports facing hosts and layer-3 ports
   facing the Internet.  Spare capacity is also often available in these
   devices as well.

8.2.  Border/Edge Tunnel Routers

   Using customer-edge (CE) routers for tunnel endpoints allows the EID
   space associated with a site to be reachable via a small set of RLOCs
   assigned to the CE routers for that site.  This <STRONG><FONT color="green">is the default
   behavior envisioned in the rest of this specification.

   This</FONT></STRONG> offers the opposite benefit of the first-hop/last-hop tunnel
   router scenario: the number of mapping entries and network management
   touch points are reduced, allowing better scaling.

   One disadvantage is that less of the network's resources are used to
   reach host endpoints thereby centralizing the point-of-failure domain
   and creating network choke points at the CE router.

   Note that more than one CE router at a site can be configured with
   the same IP address.  In this case an RLOC is an anycast address.
   This allows resilience between the CE routers.  That is, if a CE
   router fails, traffic is automatically routed to the other routers
   using the same anycast address.  However, this comes with the
   disadvantage where the site cannot control the entrance point when
   the anycast route is advertised out from all border routers.  <STRONG><FONT color="green">Another
   disadvantage of using anycast locators is the limited advertisement
   scope of /32 (or /128 for IPv6) routes.</FONT></STRONG>

8.3.  ISP Provider-Edge (PE) Tunnel Routers

   Use of ISP PE routers as tunnel endpoint routers <STRIKE><FONT color="red">gives an ISP control
   over the location of</FONT></STRIKE> <STRONG><FONT color="green">is not the typical
   deployment scenario envisioned in the specification.  This section
   attempts to capture some of reasoning behind this preference of
   implementing LISP on CE routers.

   Use of ISP PE routers as tunnel endpoint routers gives an ISP, rather
   than a site, control over the location of</FONT></STRONG> the egress tunnel
   endpoints.  That is, the ISP can decide if the tunnel endpoints are
   in the destination site (in either CE routers or last-hop routers
   within a site) or at other PE edges.  The advantage of this case is
   that two <STRIKE><FONT color="red">or more</FONT></STRIKE> tunnel headers can be avoided.  By having the PE be the
   first router on the path to encapsulate, it can choose a TE path
   first, and the ETR can decapsulate and re-encapsulate for a tunnel to
   the destination end site.

   An obvious disadvantage is that the end site has no control over
   where its packets flow or the RLOCs used.  <STRONG><FONT color="green">Other disadvantages
   include the difficulty in synchronizing path liveness updates between
   CE and PE routers.</FONT></STRONG>

   As mentioned in earlier sections a combination of these scenarios is
   possible at the expense of extra packet header overhead, if both site
   and provider want control, then recursive or re-encapsulating tunnels
   are used.

8.4.  LISP Functionality with Conventional NATs

   LISP routers can be deployed behind Network Address Translator (NAT)
   devices to provide the same set of packet services hosts have today
   when they are addressed out of private address space.

   It is important to note that a locator address in any LISP control
   message MUST be a globally routable address and therefore SHOULD NOT
   contain [RFC1918] addresses.  If a LISP router is configured with
   private addresses, they MUST be used only in the outer IP header so
   the NAT device can translate properly.  Otherwise, EID addresses MUST
   be translated before encapsulation is performed.  Both NAT
   translation and LISP encapsulation functions could be co-located in
   the same device.

   More details on LISP address translation can be found in [INTERWORK].

9.  Traceroute Considerations

   When a source host in a LISP site initiates a traceroute to a
   destination host in another LISP site, it is highly desirable for it
   to see the entire path.  Since packets are encapsulated from ITR to
   ETR, the hop across the tunnel could be viewed as a single hop.
   However, LISP traceroute will provide the entire path so the user can
   see 3 distinct segments of the path from a source LISP host to a
   destination LISP host:

      Segment 1 (in source LISP site based on EIDs):

          source-host ---&gt; first-hop ... next-hop ---&gt; ITR

      Segment 2 (in the core network based on RLOCs):

          ITR ---&gt; next-hop ... next-hop ---&gt; ETR

      Segment 3 (in the destination LISP site based on EIDs):

          ETR ---&gt; next-hop ... last-hop ---&gt; destination-host

   For segment 1 of the path, ICMP Time Exceeded messages are returned
   in the normal matter as they are today.  The ITR performs a TTL
   decrement and test for 0 before encapsulating.  So the ITR hop is
   seen by the traceroute source has an EID address (the address of
   site-facing interface).

   For segment 2 of the path, ICMP Time Exceeded messages are returned
   to the ITR because the TTL decrement to 0 is done on the outer
   header, so the destination of the ICMP messages are to the ITR RLOC
   address, the source RLOC address of the encapsulated traceroute
   packet.  The ITR looks inside of the ICMP payload to inspect the
   traceroute source so it can return the ICMP message to the address of
   the traceroute client as well as retaining the core router IP address
   in the ICMP message.  This is so the traceroute client can display
   the core router address (the RLOC address) in the traceroute output.
   The ETR returns its RLOC address and responds to the TTL decrement to
   0 like the previous core routers did.

   For segment 3, the next-hop router downstream from the ETR will be
   decrementing the TTL for the packet that was encapsulated, sent into
   the core, decapsulated by the ETR, and forwarded because it isn't the
   final destination.  If the TTL is decremented to 0, any router on the
   path to the destination of the traceroute, including the next-hop
   router or destination, will send an ICMP Time Exceeded message to the
   source EID of the traceroute client.  The ICMP message will be
   encapsulated by the local ITR and sent back to the ETR in the
   originated traceroute source site, where the packet will be delivered
   to the host.

9.1.  IPv6 Traceroute

   IPv6 traceroute follows the procedure described above since the
   entire traceroute data packet is included in ICMP Time Exceeded
   message payload.  Therefore, only the ITR needs to pay special
   attention for forwarding ICMP messages back to the traceroute source.

9.2.  IPv4 Traceroute

   For IPv4 traceroute, we cannot follow the above procedure since IPv4
   ICMP Time Exceeded messages only include the invoking IP header and 8
   bytes that follow the IP header.  Therefore, when a core router sends
   an IPv4 Time Exceeded message to an ITR, all the ITR has in the ICMP
   payload is the encapsulated header it prepended followed by a UDP
   header.  The original invoking IP header, and therefore the identity
   of the traceroute source is lost.

   The solution we propose to solve this problem is to cache traceroute
   IPv4 headers in the ITR and to match them up with corresponding IPv4
   Time Exceeded messages received from core routers and the ETR.  The
   ITR will use a circular buffer for caching the IPv4 and UDP headers
   of traceroute packets.  It will select a 16-bit number as a key to
   find them later when the IPv4 Time Exceeded messages are received.
   When an ITR encapsulates an IPv4 traceroute packet, it will use the
   16-bit number as the UDP source port in the encapsulating header.
   When the ICMP Time Exceeded message is returned to the ITR, the UDP
   header of the encapsulating header is present in the ICMP payload
   thereby allowing the ITR to find the cached headers for the
   traceroute source.  The ITR puts the cached headers in the payload
   and sends the ICMP Time Exceeded message to the traceroute source
   retaining the source address of the original ICMP Time Exceeded
   message (a core router or the ETR of the site of the traceroute
   destination).

   The signature of a traceroute packet comes in two forms.  The first
   form is encoded as a UDP message where the destination port is
   inspected for a range of values.  The second form is encoded as an
   ICMP message where the IP identification field is inspected for a
   well-known value.

9.3.  Traceroute using Mixed Locators

   When either an IPv4 traceroute or IPv6 traceroute is originated and
   the ITR encapsulates it in the other address family header, you
   cannot get all 3 segments of the traceroute.  Segment 2 of the
   traceroute can not be conveyed to the traceroute source since it is
   expecting addresses from intermediate hops in the same address format
   for the type of traceroute it originated.  Therefore, in this case,
   segment 2 will make the tunnel look like one hop.  All the ITR has to
   do to make this work is to not copy the inner TTL to the outer,
   encapsulating header's TTL when a traceroute packet is encapsulated
   using an RLOC from a different address family.  This will cause no
   TTL decrement to 0 to occur in core routers between the ITR and ETR.

10.  Mobility Considerations

   There are several kinds of mobility of which only some might be of
   concern to LISP.  Essentially they are as follows.

10.1.  Site Mobility

   A site wishes to change its attachment points to the Internet, and
   its LISP Tunnel Routers will have new RLOCs when it changes upstream
   providers.  Changes in EID-RLOC mappings for sites are expected to be
   handled by configuration, outside of the LISP protocol.

10.2.  Slow Endpoint Mobility

   An individual endpoint wishes to move, but is not concerned about
   maintaining session continuity.  Renumbering is involved.  LISP can
   help with the issues surrounding renumbering [RFC4192] [LISA96] by
   decoupling the address space used by a site from the address spaces
   used by its ISPs.  [RFC4984]

10.3.  Fast Endpoint Mobility

   Fast endpoint mobility occurs when an endpoint moves relatively
   rapidly, changing its IP layer network attachment point.  Maintenance
   of session continuity is a goal.  This is where the Mobile IPv4
   [RFC3344bis] and Mobile IPv6 [RFC3775] [RFC4866] mechanisms are used,
   and primarily where interactions with LISP need to be explored.

   The problem is that as an endpoint moves, it may require changes to
   the mapping between its EID and a set of RLOCs for its new network
   location.  When this is added to the overhead of mobile IP binding
   updates, some packets might be delayed or dropped.

   In IPv4 mobility, when an endpoint is away from home, packets to it
   are encapsulated and forwarded via a home agent which resides in the
   home area the endpoint's address belongs to.  The home agent will
   encapsulate and forward packets either directly to the endpoint or to
   a foreign agent which resides where the endpoint has moved to.
   Packets from the endpoint may be sent directly to the correspondent
   node, may be sent via the foreign agent, or may be reverse-tunneled
   back to the home agent for delivery to the mobile node.  As the
   mobile node's EID or available RLOC changes, LISP EID-to-RLOC
   mappings are required for communication between the mobile node and
   the home agent, whether via foreign agent or not.  As a mobile
   endpoint changes networks, up to three LISP mapping changes may be
   required:

   o  The mobile node moves from an old location to a new visited
      network location and notifies its home agent that it has done so.
      The Mobile IPv4 control packets the mobile node sends pass through
      one of the new visited network's ITRs, which needs a EID-RLOC
      mapping for the home agent.

   o  The home agent might not have the EID-RLOC mappings for the mobile
      node's "care-of" address or its foreign agent in the new visited
      network, in which case it will need to acquire them.

   o  When packets are sent directly to the correspondent node, it may
      be that no traffic has been sent from the new visited network to
      the correspondent node's network, and the new visited network's
      ITR will need to obtain an EID-RLOC mapping for the correspondent
      node's site.

   In addition, if the IPv4 endpoint is sending packets from the new
   visited network using its original EID, then LISP will need to
   perform a route-returnability check on the new EID-RLOC mapping for
   that EID.

   In IPv6 mobility, packets can flow directly between the mobile node
   and the correspondent node in either direction.  The mobile node uses
   its "care-of" address (EID).  In this case, the route-returnability
   check would not be needed but one more LISP mapping lookup may be
   required instead:

   o  As above, three mapping changes may be needed for the mobile node
      to communicate with its home agent and to send packets to the
      correspondent node.

   o  In addition, another mapping will be needed in the correspondent
      node's ITR, in order for the correspondent node to send packets to
      the mobile node's "care-of" address (EID) at the new network
      location.

   When both endpoints are mobile the number of potential mapping
   lookups increases accordingly.

   As a mobile node moves there are not only mobility state changes in
   the mobile node, correspondent node, and home agent, but also state
   changes in the ITRs and ETRs for at least some EID-prefixes.

   The goal is to support rapid adaptation, with little delay or packet
   loss for the entire system.  Also IP mobility can be modified to
   require fewer mapping changes.  In order to increase overall system
   performance, there may be a need to reduce the optimization of one
   area in order to place fewer demands on another.

   In LISP, one possibility is to "glean" information.  When a packet
   arrives, the ETR could examine the EID-RLOC mapping and use that
   mapping for all outgoing traffic to that EID.  It can do this after
   performing a route-returnability check, to ensure that the new
   network location does have a internal route to that endpoint.
   However, this does not cover the case where an ITR (the node assigned
   the RLOC) at the mobile-node location has been compromised.

   Mobile IP packet exchange is designed for an environment in which all
   routing information is disseminated before packets can be forwarded.
   In order to allow the Internet to grow to support expected future
   use, we are moving to an environment where some information may have
   to be obtained after packets are in flight.  Modifications to IP
   mobility should be considered in order to optimize the behavior of
   the overall system.  Anything which decreases the number of new EID-
   RLOC mappings needed when a node moves, or maintains the validity of
   an EID-RLOC mapping for a longer time, is useful.

10.4.  Fast Network Mobility

   In addition to endpoints, a network can be mobile, possibly changing
   xTRs.  A "network" can be as small as a single router and as large as
   a whole site.  This is different from site mobility in that it is
   fast and possibly short-lived, but different from endpoint mobility
   in that a whole prefix is changing RLOCs.  However, the mechanisms
   are the same and there is no new overhead in LISP.  A map request for
   any endpoint will return a binding for the entire mobile prefix.

   If mobile networks become a more common occurrence, it may be useful
   to revisit the design of the mapping service and allow for dynamic
   updates of the database.

   The issue of interactions between mobility and LISP needs to be
   explored further.  Specific improvements to the entire system will
   depend on the details of mapping mechanisms.  Mapping mechanisms
   should be evaluated on how well they support session continuity for
   mobile nodes.

10.5.  LISP Mobile Node Mobility

   A mobile device can use the LISP infrastructure to achieve mobility
   by implementing the LISP encapsulation and decapsulation functions
   and acting as a simple ITR/ETR.  By doing this, such a "LISP mobile
   node" can use topologically-independent EID IP addresses that are not
   advertised into and do not impose a cost on the global routing
   system.  These EIDs are maintained at the edges of the mapping system
   (in LISP Map-Servers and Map-Resolvers) and are provided on demand to
   only the correspondents of the LISP mobile node.

   Refer to the LISP Mobility Architecture specification [LISP-MN] for
   more details.

11.  Multicast Considerations

   A multicast group address, as defined in the original Internet
   architecture is an identifier of a grouping of topologically
   independent receiver host locations.  The address encoding itself
   does not determine the location of the receiver(s).  The multicast
   routing protocol, and the network-based state the protocol creates,
   determines where the receivers are located.

   In the context of LISP, a multicast group address is both an EID and
   a Routing Locator.  Therefore, no specific semantic or action needs
   to be taken for a destination address, as it would appear in an IP
   header.  Therefore, a group address that appears in an inner IP
   header built by a source host will be used as the destination EID.
   The outer IP header (the destination Routing Locator address),
   prepended by a LISP router, will use the same group address as the
   destination Routing Locator.

   Having said that, only the source EID and source Routing Locator
   needs to be dealt with.  Therefore, an ITR merely needs to put its
   own IP address in the source Routing Locator field when prepending
   the outer IP header.  This source Routing Locator address, like any
   other Routing Locator address MUST be globally routable.

   Therefore, an EID-to-RLOC mapping does not need to be performed by an
   ITR when a received data packet is a multicast data packet or when
   processing a source-specific Join (either by IGMPv3 or PIM).  But the
   source Routing Locator is decided by the multicast routing protocol
   in a receiver site.  That is, an EID to Routing Locator translation
   is done at control-time.

   Another approach is to have the ITR not encapsulate a multicast
   packet and allow the <STRIKE><FONT color="red">the</FONT></STRIKE> host built packet to flow into the core even if
   the source address is allocated out of the EID namespace.  If the
   RPF-Vector TLV [RFC5496] is used by PIM in the core, then core
   routers can RPF to the ITR (the Locator address which is injected
   into core routing) rather than the host source address (the EID
   address which is not injected into core routing).

   To avoid any EID-based multicast state in the network core, the first
   approach is chosen for LISP-Multicast.  Details for LISP-Multicast
   and Interworking with non-LISP sites is described in specification
   [MLISP].

12.  Security Considerations

   It is believed that most of the security mechanisms will be part of
   the mapping database service when using control plane procedures for
   obtaining EID-to-RLOC mappings.  For data plane triggered mappings,
   as described in this specification, protection is provided against
   ETR spoofing by using Return- Routability mechanisms evidenced by the
   use of a 24-bit Nonce field in the LISP encapsulation header and a
   64-bit Nonce field in the LISP control message.  The nonce, coupled
   with the ITR accepting only solicited Map-Replies goes a long way
   toward providing decent authentication.

   LISP does not rely on a PKI infrastructure or a more heavy weight
   authentication system.  These systems challenge the scalability of
   LISP which was a primary design goal.

   DoS attack prevention will depend on implementations rate-limiting
   Map-Requests and Map-Replies to the control plane as well as rate-
   limiting the number of data-triggered Map-Replies.

   To deal with map-cache exhaustion attempts in an ITR/PTR, the
   implementation should consider putting a maximum cap on the number of
   entries stored with a reserve list for special or frequently accessed
   sites.  This should be a configuration policy control set by the
   network administrator who manages ITRs and PTRs.

13.  IANA Considerations

   This specification has already allocated UDP port numbers 4341 and
   4342 assigned from the IANA registry.

14.  <STRIKE><FONT color="red">Prototype Plans</FONT></STRIKE>  <STRONG><FONT color="green">References

14.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,
              August 1980.

   [RFC1034]  Mockapetris, P., "Domain names - concepts</FONT></STRONG> and <STRIKE><FONT color="red">Status

   The operator community has requested that the IETF take a practical
   approach to solving the scaling problems associated with global
   routing state growth.  This document offers a simple solution which
   is intended</FONT></STRIKE> <STRONG><FONT color="green">facilities",
              STD 13, RFC 1034, November 1987.

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC2119]  Bradner, S., "Key words</FONT></STRONG> for use in <STRIKE><FONT color="red">a pilot program</FONT></STRIKE> <STRONG><FONT color="green">RFCs</FONT></STRONG> to <STRIKE><FONT color="red">gain experience in working
   on this problem.

   The authors hope that publishing this specification will allow the
   rapid implementation</FONT></STRIKE> <STRONG><FONT color="green">Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use</FONT></STRONG> of <STRIKE><FONT color="red">multiple vendor prototypes</FONT></STRIKE> <STRONG><FONT color="green">HMAC-SHA-1-96 within
              ESP</FONT></STRONG> and <STRIKE><FONT color="red">deployment on
   a small scale.  Doing this will help the community:

   o  Decide whether a new EID-to-RLOC mapping database infrastructure
      is needed or if a simple, UDP-based, data-triggered approach is
      flexible</FONT></STRIKE> <STRONG><FONT color="green">AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D.,</FONT></STRONG> and <STRIKE><FONT color="red">robust enough.

   o  Experiment with provider-independent assignment of EIDs while at
      the same time decreasing the size of DFZ routing tables through
      the use</FONT></STRIKE> <STRONG><FONT color="green">P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              March 2000.

   [RFC3056]  Carpenter, B. and K. Moore, "Connection</FONT></STRONG> of <STRIKE><FONT color="red">topologically-aligned, provider-based RLOCs.

   o  Determine whether multiple levels of tunneling can be used by ISPs
      to achieve their Traffic Engineering goals while simultaneously
      removing the more specific routes currently injected into the
      global routing system for this purpose.

   o  Experiment with mobility to determine if both acceptable
      convergence</FONT></STRIKE> <STRONG><FONT color="green">IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3168]  Ramakrishnan, K., Floyd, S.,</FONT></STRONG> and <STRIKE><FONT color="red">session continuity properties can be scalably
      implemented</FONT></STRIKE> <STRONG><FONT color="green">D. Black, "The Addition
              of Explicit Congestion Notification (ECN)</FONT></STRONG> to <STRIKE><FONT color="red">support both individual device roaming</FONT></STRIKE> <STRONG><FONT color="green">IP",
              RFC 3168, September 2001.

   [RFC3261]  Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
              A., Peterson, J., Sparks, R., Handley, M.,</FONT></STRONG> and <STRIKE><FONT color="red">site
      service provider changes.

   Here is a rough set of milestones:

   1.  Interoperable implementations have been available since the
       beginning of 2009.

   2.  Continue pilot deployment using LISP-ALT as the database mapping
       mechanism.

   3.  Continue prototyping</FONT></STRIKE> <STRONG><FONT color="green">E.
              Schooler, "SIP: Session Initiation Protocol", RFC 3261,
              June 2002.

   [RFC3775]  Johnson, D., Perkins, C.,</FONT></STRONG> and <STRIKE><FONT color="red">studying other database lookup schemes,
       be it DNS, DHTs, CONS, ALT, NERD, or other mechanisms.

   4.  Implement the LISP Multicast draft [MLISP].

   5.  Implement the LISP Mobile Node draft [LISP-MN].

   6.  Research more on how policy affects what gets returned</FONT></STRIKE> <STRONG><FONT color="green">J. Arkko, "Mobility Support</FONT></STRONG>
              in <STRIKE><FONT color="red">a Map-
       Reply from an ETR.

   7.  Continue to experiment with mixed locator-sets to understand how
       LISP can help the IPv4 to IPv6 transition.

   8.  Add more robustness to locator reachability between LISP sites.

   9.  Continue the deployment of Proxy-ETRs (PETRs) for uses like uRPF
       avoidance, IPv6 connectivity, and LISP-MN.

   As of this writing the following accomplishments have been achieved:

   1.   A unit-</FONT></STRIKE> <STRONG><FONT color="green">IPv6", RFC 3775, June 2004.

   [RFC4086]  Eastlake, D., Schiller, J.,</FONT></STRONG> and <STRIKE><FONT color="red">system-tested software switching implementation has
        been completed on cisco NX-OS for this draft</FONT></STRIKE> <STRONG><FONT color="green">S. Crocker, "Randomness
              Requirements</FONT></STRONG> for <STRIKE><FONT color="red">both IPv4</FONT></STRIKE> <STRONG><FONT color="green">Security", BCP 106, RFC 4086, June 2005.

   [RFC4632]  Fuller, V.</FONT></STRONG> and
        <STRIKE><FONT color="red">IPv6 EIDs using a mixed locator-set of IPv4</FONT></STRIKE> <STRONG><FONT color="green">T. Li, "Classless Inter-domain Routing
              (CIDR): The Internet Address Assignment</FONT></STRONG> and <STRIKE><FONT color="red">IPv6 locators.

   2.   A unit-</FONT></STRIKE> <STRONG><FONT color="green">Aggregation
              Plan", BCP 122, RFC 4632, August 2006.

   [RFC4634]  Eastlake, D.</FONT></STRONG> and <STRIKE><FONT color="red">system-tested software switching implementation on
        cisco NX-OS has been completed</FONT></STRIKE> <STRONG><FONT color="green">T. Hansen, "US Secure Hash Algorithms
              (SHA and HMAC-SHA)", RFC 4634, July 2006.

   [RFC4866]  Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route
              Optimization</FONT></STRONG> for <STRIKE><FONT color="red">draft [ALT].

   3.   A unit-</FONT></STRIKE> <STRONG><FONT color="green">Mobile IPv6", RFC 4866, May 2007.

   [RFC4984]  Meyer, D., Zhang, L.,</FONT></STRONG> and <STRIKE><FONT color="red">system-tested software switching implementation</FONT></STRIKE> <STRONG><FONT color="green">K. Fall, "Report from the IAB
              Workshop</FONT></STRONG> on
        <STRIKE><FONT color="red">cisco NX-OS has been completed for draft [INTERWORK].  Support
        for IPv4 translation is provided</FONT></STRIKE> <STRONG><FONT color="green">Routing</FONT></STRONG> and <STRIKE><FONT color="red">PTR support for IPv4</FONT></STRIKE> <STRONG><FONT color="green">Addressing", RFC 4984,
              September 2007.

   [RFC5226]  Narten, T.</FONT></STRONG> and
        <STRIKE><FONT color="red">IPv6 is provided.

   4.   The cisco NX-OS implementation supports an experimental
        mechanism</FONT></STRIKE> <STRONG><FONT color="green">H. Alvestrand, "Guidelines</FONT></STRONG> for <STRIKE><FONT color="red">slow mobility.

   5.   There are 5 LISP implementations that exist</FONT></STRIKE> <STRONG><FONT color="green">Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC5496]  Wijnands, IJ., Boers, A.,</FONT></STRONG> and <STRIKE><FONT color="red">the first 4
        below have gone through interoperability testing at IETF
        Hiroshima, based on the draft-ietf-lisp-05.txt spec:

        1.  cisco NX-OS

        2.  OpenLISP

        3.  LISP-Click

        4.  ZLisp

        5.  cisco IOS

   6.   Dave Meyer, Vince</FONT></STRIKE> <STRONG><FONT color="green">E. Rosen, "The Reverse Path
              Forwarding (RPF) Vector TLV", RFC 5496, March 2009.

   [UDP-TUNNELS]
              Eubanks, M. and P. Chimento, "UDP Checksums for Tunneled
              Packets"", draft-eubanks-chimento-6man-00.txt (work in
              progress), February 2009.

14.2.  Informative References

   [AFI]      IANA, "Address Family Indicators (AFIs)", ADDRESS FAMILY
              NUMBERS http://www.iana.org/numbers.html, Febuary 2007.

   [ALT]      Farinacci, D.,</FONT></STRONG> Fuller, <STRIKE><FONT color="red">Darrel</FONT></STRIKE> <STRONG><FONT color="green">V., Meyer, D., and D.</FONT></STRONG> Lewis, <STRIKE><FONT color="red">Gregg Schudel, Andrew
        Partan</FONT></STRIKE> <STRONG><FONT color="green">"LISP
              Alternative Topology (LISP-ALT)",
              draft-ietf-lisp-alt-04.txt (work in progress), April 2010.

   [CHIAPPA]  Chiappa, J., "Endpoints</FONT></STRONG> and <STRIKE><FONT color="red">the rest of the lisp-beta team continue</FONT></STRIKE> <STRONG><FONT color="green">Endpoint names: A Proposed
              Enhancement</FONT></STRONG> to <STRIKE><FONT color="red">test all</FONT></STRIKE> the <STRIKE><FONT color="red">features described above on a dual-stack infrastructure.

   7.   Darrel Lewis and Dave Meyer have deployed both LISP translation</FONT></STRIKE> <STRONG><FONT color="green">Internet Architecture", Internet-
              Draft http://www.chiappa.net/~jnc/tech/endpoints.txt,
              1999.

   [CONS]     Farinacci, D., Fuller, V.,</FONT></STRONG> and <STRIKE><FONT color="red">LISP PTR support in the pilot network.  Point your browser
        to http://www.lisp4.net to see translation happening in action
        so your non-LISP site can access a web server in a LISP site.

   8.   Soon http://www.lisp6.net will work where your IPv6 LISP site
        can talk to a IPv6 web server</FONT></STRIKE> <STRONG><FONT color="green">D. Meyer, "LISP-CONS: A
              Content distribution Overlay Network  Service for LISP",
              draft-meyer-lisp-cons-03.txt (work</FONT></STRONG> in <STRIKE><FONT color="red">a LISP site by using mixed
        address-family based locators.

   9.   An public domain implementation of LISP is available.  See
        [OPENLISP]</FONT></STRIKE> <STRONG><FONT color="green">progress),
              November 2007.

   [EMACS]    Brim, S., Farinacci, D., Meyer, D., and J. Curran, "EID
              Mappings Multicast Across Cooperating Systems</FONT></STRONG> for <STRIKE><FONT color="red">details.

   10.  We have deployed Map-Resolvers</FONT></STRIKE> <STRONG><FONT color="green">LISP",
              draft-curran-lisp-emacs-00.txt (work in progress),
              November 2007.

   [INTERWORK]
              Lewis, D., Meyer, D., Farinacci, D.,</FONT></STRONG> and <STRIKE><FONT color="red">Map-Servers on the</FONT></STRIKE> <STRONG><FONT color="green">V. Fuller,
              "Interworking</FONT></STRONG> LISP <STRIKE><FONT color="red">pilot
        network to gather experience</FONT></STRIKE> with <STRIKE><FONT color="red">[LISP-MS].  The first layer of
        the architecture are the xTRs which use Map-Servers for EID-
        prefix registration and Map-Resolvers for EID-to-RLOC mapping
        resolution.  The second layer are the Map-Resolvers and Map-
        Servers which connect to the ALT BGP peering infrastructure.
        And the third layer are ALT-routers which aggregate EID-prefixes
        and forward Map-Requests.

   11.  A cisco IOS implementation is available which currently supports</FONT></STRIKE> IPv4 and <STRIKE><FONT color="red">IPv6 encapsulation and decapsulation features.

   12.  A LISP router based LIG implementation is supported, deployed,</FONT></STRIKE> <STRONG><FONT color="green">IPv6",
              draft-ietf-lisp-interworking-01.txt (work in progress),
              March 2010.

   [LCAF]     Farinacci, D., Meyer, D.,</FONT></STRONG> and <STRIKE><FONT color="red">used daily to debug</FONT></STRIKE> <STRONG><FONT color="green">J. Snijders, "LISP Canonical
              Address Format", draft-farinacci-lisp-lcaf-00.txt (work in
              progress), April 2010.

   [LISA96]   Lear, E., Katinsky, J., Coffin, J.,</FONT></STRONG> and <STRIKE><FONT color="red">test the LISP pilot network.  See
        [LIG] for details.

   13.  A Linux implementation of LIG has been made available</FONT></STRIKE> <STRONG><FONT color="green">D. Tharp,
              "Renumbering: Threat or Menace?", Usenix , September 1996.

   [LISP-MAIN]
              Farinacci, D., Fuller, V., Meyer, D.,</FONT></STRONG> and
        <STRIKE><FONT color="red">supported by Dave Meyer.  It can be run on any Linux system
        which resides</FONT></STRIKE> <STRONG><FONT color="green">D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-farinacci-lisp-12.txt (work</FONT></STRONG> in <STRIKE><FONT color="red">either a LISP site or non-LISP site.  See [LIG]
        for details.  Public domain code can be downloaded from
        http://github.com/davidmeyer/lig/tree/master.

   14.  An experimental implementation has been written for three
        locator reachability algorithms.  Two are the Echo-Noncing</FONT></STRIKE> <STRONG><FONT color="green">progress),
              March 2009.

   [LISP-MN]  Farinacci, D., Fuller, V., Lewis, D.,</FONT></STRONG> and
        <STRIKE><FONT color="red">RLOC-Probing algorithms which are documented in this
        specification.  The third is called TCP-counts which will be
        documented in future drafts.

   15.  The LISP pilot network has been converted from using MD5 HMAC
        authentication for Map-Register messages to SHA-1 HMAC
        authentication.  ETRs send with SHA-1 but Map-Servers can
        received from either for compatibility purposes.

   16.  The LISP pilot network is in its 3rd generation.  Current
        experiments are being performed to test EID-prefix aggregation
        at multiple service boundaries as well as deploying models for
        the existence of multiple Mapping Service Providers (MSPs).

   If interested</FONT></STRIKE> <STRONG><FONT color="green">D. Meyer, "LISP
              Mobility Architecture", draft-meyer-lisp-mn-03.txt (work</FONT></STRONG>
              in <STRIKE><FONT color="red">writing a LISP implementation, testing any of the
   LISP implementations, or want to be part of the LISP pilot program,
   please contact lisp@ietf.org.

15.  References

15.1.  Normative References

   [RFC0768]  Postel, J., "User Datagram Protocol", STD 6, RFC 768,</FONT></STRIKE> <STRONG><FONT color="green">progress),</FONT></STRONG> August <STRIKE><FONT color="red">1980.

   [RFC1191]  Mogul, J.</FONT></STRIKE> <STRONG><FONT color="green">2010.

   [LISP-MS]  Farinacci, D.</FONT></STRONG> and <STRIKE><FONT color="red">S. Deering, "Path MTU discovery", RFC 1191,
              November 1990.

   [RFC1498]  Saltzer, J., "On the Naming</FONT></STRIKE> <STRONG><FONT color="green">V. Fuller, "LISP Map Server",
              draft-ietf-lisp-ms-05.txt (work in progress), April 2010.

   [LOC-ID-ARCH]
              Meyer, D.</FONT></STRONG> and <STRIKE><FONT color="red">Binding</FONT></STRIKE> <STRONG><FONT color="green">D. Lewis, "Architectural Implications</FONT></STRONG> of <STRIKE><FONT color="red">Network
              Destinations", RFC 1498, August 1993.

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              October 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg,</FONT></STRIKE>
              <STRONG><FONT color="green">Locator/ID  Separation",
              draft-meyer-loc-id-implications-01.txt (work in progress),
              Januaryr 2009.

   [MLISP]    Farinacci,</FONT></STRONG> D., <STRIKE><FONT color="red">Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC1955]  Hinden, R., "New Scheme for Internet Routing</FONT></STRIKE> <STRONG><FONT color="green">Meyer, D., Zwiebel, J.,</FONT></STRONG> and
              <STRIKE><FONT color="red">Addressing (ENCAPS) for IPNG", RFC 1955, June 1996.

   [RFC2119]  Bradner, S., "Key words</FONT></STRIKE> <STRONG><FONT color="green">S. Venaas,
              "LISP</FONT></STRONG> for <STRIKE><FONT color="red">use</FONT></STRIKE> <STRONG><FONT color="green">Multicast Environments",
              draft-ietf-lisp-multicast-03.txt (work</FONT></STRONG> in <STRIKE><FONT color="red">RFCs</FONT></STRIKE> <STRONG><FONT color="green">progress),
              April 2010.

   [NERD]     Lear, E., "NERD: A Not-so-novel EID</FONT></STRONG> to <STRIKE><FONT color="red">Indicate
              Requirement Levels", BCP 14, RFC 2119,</FONT></STRIKE> <STRONG><FONT color="green">RLOC Database",
              draft-lear-lisp-nerd-08.txt (work in progress),</FONT></STRONG>
              March <STRIKE><FONT color="red">1997.

   [RFC2404]  Madson, C. and R. Glenn, "The Use of HMAC-SHA-1-96 within
              ESP</FONT></STRIKE> <STRONG><FONT color="green">2010.

   [OPENLISP]
              Iannone, L.</FONT></STRONG> and <STRIKE><FONT color="red">AH", RFC 2404, November 1998.

   [RFC2784]  Farinacci, D., Li,</FONT></STRIKE> <STRONG><FONT color="green">O. Bonaventure, "OpenLISP Implementation
              Report", draft-iannone-openlisp-implementation-01.txt
              (work in progress), July 2008.

   [RADIR]    Narten,</FONT></STRONG> T., <STRIKE><FONT color="red">Hanks, S., Meyer, D., and P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              March 2000.

   [RFC3056]  Carpenter, B. and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3168]  Ramakrishnan, K., Floyd, S.,</FONT></STRIKE> <STRONG><FONT color="green">"Routing</FONT></STRONG> and <STRIKE><FONT color="red">D. Black, "The Addition
              of Explicit Congestion Notification (ECN) to IP",
              RFC 3168, September 2001.

   [RFC3775]  Johnson, D.,</FONT></STRIKE> <STRONG><FONT color="green">Addressing Problem Statement",
              draft-narten-radir-problem-statement-00.txt (work in
              progress), July 2007.

   [RFC3344bis]</FONT></STRONG>
              Perkins, C., <STRIKE><FONT color="red">and J. Arkko, "Mobility</FONT></STRIKE> <STRONG><FONT color="green">"IP Mobility</FONT></STRONG> Support <STRONG><FONT color="green">for IPv4, revised",
              draft-ietf-mip4-rfc3344bis-05 (work</FONT></STRONG> in <STRIKE><FONT color="red">IPv6", RFC 3775, June 2004.

   [RFC4086]  Eastlake, D., Schiller, J.,</FONT></STRIKE> <STRONG><FONT color="green">progress),
              July 2007.

   [RFC4192]  Baker, F., Lear, E.,</FONT></STRONG> and <STRIKE><FONT color="red">S. Crocker, "Randomness
              Requirements</FONT></STRIKE> <STRONG><FONT color="green">R. Droms, "Procedures</FONT></STRONG> for <STRIKE><FONT color="red">Security", BCP 106,</FONT></STRIKE>
              <STRONG><FONT color="green">Renumbering an IPv6 Network without a Flag Day",</FONT></STRONG> RFC <STRIKE><FONT color="red">4086, June</FONT></STRIKE> <STRONG><FONT color="green">4192,
              September</FONT></STRONG> 2005.

   <STRIKE><FONT color="red">[RFC4423]  Moskowitz, R.</FONT></STRIKE>

   <STRONG><FONT color="green">[RPMD]     Handley, M., Huici, F.,</FONT></STRONG> and <STRIKE><FONT color="red">P. Nikander, "Host Identity</FONT></STRIKE> <STRONG><FONT color="green">A. Greenhalgh, "RPMD:</FONT></STRONG> Protocol
              <STRIKE><FONT color="red">(HIP) Architecture", RFC 4423, May 2006.

   [RFC4634]  Eastlake, D. and T. Hansen, "US Secure Hash Algorithms
              (SHA and HMAC-SHA)", RFC 4634, July 2006.

   [RFC4866]  Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route
              Optimization</FONT></STRIKE>
              for <STRIKE><FONT color="red">Mobile IPv6", RFC 4866, May</FONT></STRIKE> <STRONG><FONT color="green">Routing Protocol Meta-data  Dissemination",
              draft-handley-p2ppush-unpublished-2007726.txt (work in
              progress), July</FONT></STRONG> 2007.

   <STRIKE><FONT color="red">[RFC4984]  Meyer, D., Zhang,</FONT></STRIKE>

   <STRONG><FONT color="green">[VERSIONING]
              Iannone,</FONT></STRONG> L., <STRONG><FONT color="green">Saucez, D.,</FONT></STRONG> and <STRIKE><FONT color="red">K. Fall, "Report from</FONT></STRIKE> <STRONG><FONT color="green">O. Bonaventure, "LISP Mapping
              Versioning", draft-iannone-lisp-mapping-versioning-01.txt
              (work in progress), March 2010.

Appendix A.  Acknowledgments

   An initial thank you goes to Dave Oran for planting</FONT></STRONG> the <STRIKE><FONT color="red">IAB
              Workshop on Routing and Addressing", RFC 4984,
              September 2007.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC5496]  Wijnands, IJ., Boers, A., and E. Rosen, "The Reverse Path
              Forwarding (RPF) Vector TLV", RFC 5496, March 2009.

   [RFC5533]  Nordmark, E. and M. Bagnulo, "Shim6: Level 3 Multihoming
              Shim Protocol</FONT></STRIKE> <STRONG><FONT color="green">seeds</FONT></STRONG> for <STRIKE><FONT color="red">IPv6", RFC 5533, June 2009.

   [UDP-TUNNELS]
              Eubanks, M. and P. Chimento, "UDP Checksums</FONT></STRIKE> <STRONG><FONT color="green">the
   initial ideas</FONT></STRONG> for <STRIKE><FONT color="red">Tunneled
              Packets"", draft-eubanks-chimento-6man-00.txt (work in
              progress), February 2009.

15.2.  Informative References

   [AFI]      IANA, "Address Family Indicators (AFIs)", ADDRESS FAMILY
              NUMBERS http://www.iana.org/numbers.html, Febuary 2007.

   [ALT]      Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "LISP
              Alternative Topology (LISP-ALT)",
              draft-ietf-lisp-alt-04.txt (work in progress), April 2010.

   [APT]      Jen, D., Meisel, M., Massey, D., Wang, L., Zhang, B., and
              L. Zhang, "APT:</FONT></STRIKE> <STRONG><FONT color="green">LISP.  His consultation continues to provide value
   to the LISP authors.</FONT></STRONG>

   A <STRIKE><FONT color="red">Practical Transit Mapping Service",
              draft-jen-apt-01.txt (work in progress), November 2007.

   [CHIAPPA]  Chiappa, J., "Endpoints</FONT></STRIKE> <STRONG><FONT color="green">special</FONT></STRONG> and <STRIKE><FONT color="red">Endpoint names: A Proposed
              Enhancement</FONT></STRIKE> <STRONG><FONT color="green">appreciative thank you goes</FONT></STRONG> to <STRONG><FONT color="green">Noel Chiappa for
   providing architectural impetus over</FONT></STRONG> the <STRIKE><FONT color="red">Internet Architecture", Internet-
              Draft http://www.chiappa.net/~jnc/tech/endpoints.txt,
              1999.

   [CONS]     Farinacci, D., Fuller, V.,</FONT></STRIKE> <STRONG><FONT color="green">past decades on separation
   of location</FONT></STRONG> and <STRIKE><FONT color="red">D. Meyer, "LISP-CONS: A
              Content distribution Overlay Network  Service for LISP",
              draft-meyer-lisp-cons-03.txt (work in progress),
              November 2007.

   [DHTs]     Ratnasamy, S., Shenker, S.,</FONT></STRIKE> <STRONG><FONT color="green">identity, as well as detailed review of the LISP
   architecture</FONT></STRONG> and <STRIKE><FONT color="red">I. Stoica, "Routing
              Algorithms</FONT></STRIKE> <STRONG><FONT color="green">documents, coupled with enthusiasm</FONT></STRONG> for <STRIKE><FONT color="red">DHTs: Some Open Questions", PDF
              file http://www.cs.rice.edu/Conferences/IPTPS02/174.pdf.

   [EMACS]    Brim, S., Farinacci, D., Meyer, D.,</FONT></STRIKE> <STRONG><FONT color="green">making LISP a
   practical</FONT></STRONG> and <STRIKE><FONT color="red">J. Curran, "EID
              Mappings Multicast Across Cooperating Systems for LISP",
              draft-curran-lisp-emacs-00.txt (work in progress),
              November 2007.

   [GSE]      "GSE - An Alternate Addressing Architecture</FONT></STRIKE> <STRONG><FONT color="green">incremental transition</FONT></STRONG> for  <STRIKE><FONT color="red">IPv6",
              draft-ietf-ipngwg-gseaddr-00.txt (work in progress), 1997.

   [INTERWORK]
              Lewis, D., Meyer, D., Farinacci, D., and V. Fuller,
              "Interworking LISP with IPv4 and IPv6",
              draft-ietf-lisp-interworking-01.txt (work in progress),
              March 2010.

   [LCAF]     Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical
              Address Format", draft-farinacci-lisp-lcaf-01.txt (work in
              progress), April 2010.

   [LIG]      Farinacci, D. and D. Meyer, "LISP Internet Groper (LIG)",
              draft-ietf-lisp-lig-00.txt (work in progress), April 2010.

   [LISA96]   Lear, E., Katinsky, J., Coffin, J., and D. Tharp,
              "Renumbering: Threat or Menace?", Usenix , September 1996.

   [LISP-MAIN]
              Farinacci, D., Fuller, V., Meyer, D., and D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-farinacci-lisp-12.txt (work in progress),
              March 2009.

   [LISP-MN]  Farinacci, D., Fuller, V., Lewis, D., and D. Meyer, "LISP
              Mobility Architecture", draft-meyer-lisp-mn-00.txt (work
              in progress), July 2009.

   [LISP-MS]  Farinacci, D. and V. Fuller, "LISP Map Server",
              draft-ietf-lisp-ms-05.txt (work in progress), April 2010.

   [LISP1]    Farinacci, D., Oran, D., Fuller, V., and J. Schiller,
              "Locator/ID Separation Protocol (LISP1) [Routable  ID
              Version]",
              Slide-set http://www.dinof.net/~dino/ietf/lisp1.ppt,
              October 2006.

   [LISP2]    Farinacci, D., Oran, D., Fuller, V., and J. Schiller,
              "Locator/ID Separation Protocol (LISP2) [DNS-based
              Version]",
              Slide-set http://www.dinof.net/~dino/ietf/lisp2.ppt,
              November 2006.

   [LISPDHT]  Mathy, L., Iannone, L., and O. Bonaventure, "LISP-DHT:
              Towards a DHT</FONT></STRIKE> <STRONG><FONT color="green">the Internet.

   The authors would like</FONT></STRONG> to <STRIKE><FONT color="red">map identifiers onto locators",
              draft-mathy-lisp-dht-00.txt (work in progress),
              February 2008.

   [LOC-ID-ARCH]
              Meyer, D.</FONT></STRIKE> <STRONG><FONT color="green">gratefully acknowledge many people who have
   contributed discussion</FONT></STRONG> and <STRIKE><FONT color="red">D. Lewis, "Architectural Implications</FONT></STRIKE> <STRONG><FONT color="green">ideas to the making</FONT></STRONG> of
              <STRIKE><FONT color="red">Locator/ID  Separation",
              draft-meyer-loc-id-implications-01.txt (work in progress),
              Januaryr 2009.

   [MLISP]    Farinacci, D., Meyer, D.,</FONT></STRIKE> <STRONG><FONT color="green">this proposal.
   They include Scott Brim, Andrew Partan, John</FONT></STRONG> Zwiebel, <STRIKE><FONT color="red">J.,</FONT></STRIKE> <STRONG><FONT color="green">Jason Schiller,
   Lixia Zhang, Dorian Kim, Peter Schoenmaker, Vijay Gill, Geoff Huston,
   David Conrad, Mark Handley, Ron Bonica, Ted Seely, Mark Townsley,
   Chris Morrow, Brian Weis, Dave McGrew, Peter Lothberg, Dave Thaler,
   Eliot Lear, Shane Amante, Ved Kafle, Olivier Bonaventure, Luigi
   Iannone, Robin Whittle, Brian Carpenter, Joel Halpern, Roger
   Jorgensen, Ran Atkinson, Stig Venaas, Iljitsch van Beijnum, Roland
   Bless, Dana Blair, Bill Lynch, Marc Woolward, Damien Saucez, Damian
   Lezama, Attilla De Groot, Parantap Lahiri, David Black, Roque
   Gagliano, Isidor Kouvelas, Jesper Skriver, Fred Templin, Margaret
   Wasserman, Sam Hartman, Michael Hofling, Pedro Marques, Jari Arkko,
   Gregg Schudel, Srinivas Subramanian, Amit Jain, Xu Xiaohu, Dhirendra
   Trivedi, Yakov Rekhter, John Scudder, John Drake, Dimitri
   Papadimitriou, Ross Callon, Selina Heimlich, Job Snijders,</FONT></STRONG> and <STRIKE><FONT color="red">S. Venaas,
              "LISP for Multicast Environments",
              draft-ietf-lisp-multicast-03.txt (work</FONT></STRIKE> <STRONG><FONT color="green">Vina
   Ermagan.

   This work originated</FONT></STRONG> in <STRIKE><FONT color="red">progress),
              April 2010.

   [NERD]     Lear, E., "NERD: A Not-so-novel EID</FONT></STRIKE> <STRONG><FONT color="green">the Routing Research Group (RRG) of the IRTF.
   The individual submission [LISP-MAIN] was converted into this IETF
   LISP working group draft.

Appendix B.  Document Change Log

B.1.  Changes</FONT></STRONG> to <STRIKE><FONT color="red">RLOC Database",
              draft-lear-lisp-nerd-08.txt (work in progress),
              March</FONT></STRIKE> <STRONG><FONT color="green">draft-ietf-lisp-08.txt

   o  Posted August</FONT></STRONG> 2010.

   <STRIKE><FONT color="red">[OPENLISP]
              Iannone, L. and O. Bonaventure, "OpenLISP Implementation
              Report", draft-iannone-openlisp-implementation-01.txt
              (work in progress), July 2008.

   [RADIR]    Narten, T., "Routing and Addressing Problem Statement",
              draft-narten-radir-problem-statement-00.txt (work</FONT></STRIKE>

   <STRONG><FONT color="green">o  In section 6.1.6, remove statement about setting TTL to 0</FONT></STRONG> in
              <STRIKE><FONT color="red">progress), July 2007.

   [RFC3344bis]
              Perkins, C., "IP Mobility Support for IPv4, revised",
              draft-ietf-mip4-rfc3344bis-05 (work</FONT></STRIKE> <STRONG><FONT color="green">Map-
      Register messages.

   o  Clarify language</FONT></STRONG> in <STRIKE><FONT color="red">progress),
              July 2007.

   [RFC4192]  Baker, F., Lear, E., and R. Droms, "Procedures for
              Renumbering an IPv6 Network without</FONT></STRIKE> <STRONG><FONT color="green">section 6.1.5 about Map-Replying to Data-
      Probes or Map-Requests.

   o  Indicate that outer TTL should only be copied to inner TTL when it
      is less than inner TTL.

   o  Indicate</FONT></STRONG> a <STRIKE><FONT color="red">Flag Day", RFC 4192,
              September 2005.

   [RPMD]     Handley, M., Huici, F., and A. Greenhalgh, "RPMD: Protocol</FONT></STRIKE> <STRONG><FONT color="green">source-EID</FONT></STRONG> for <STRIKE><FONT color="red">Routing Protocol Meta-data  Dissemination",
              draft-handley-p2ppush-unpublished-2007726.txt (work in
              progress), July 2007.

   [VERSIONING]
              Iannone, L., Saucez, D., and O. Bonaventure, "LISP Mapping
              Versioning", draft-iannone-lisp-mapping-versioning-01.txt
              (work in progress), March 2010.

Appendix A.  Acknowledgments

   An initial thank you goes</FONT></STRIKE> <STRONG><FONT color="green">RLOC-probes are encoded with an AFI
      value of 0.

   o  Indicate that SMRs can have a global or per SMR destination rate-
      limiter.

   o  Add clarifications</FONT></STRONG> to <STRIKE><FONT color="red">Dave Oran for planting the seeds for</FONT></STRIKE> the
   <STRIKE><FONT color="red">initial ideas</FONT></STRIKE> <STRONG><FONT color="green">SMR procedures.

   o  Add definitions</FONT></STRONG> for <STRIKE><FONT color="red">LISP.  His consultation continues to provide</FONT></STRIKE> <STRONG><FONT color="green">"client-side" and 'server-side" terms used in
      this specification.

   o  Clear up language in section 6.4, last paragraph.

   o  Change ACT of</FONT></STRONG> value <STRONG><FONT color="green">0</FONT></STRONG> to <STRIKE><FONT color="red">the LISP authors.

   A special</FONT></STRIKE> <STRONG><FONT color="green">"no-action".  This is so we can RLOC-
      probe a PETR</FONT></STRONG> and <STRIKE><FONT color="red">appreciative thank you goes</FONT></STRIKE> <STRONG><FONT color="green">have it return a Map-Reply with a locator-set of
      size 0.  The way it is spec'ed the map-cache entry has action
      "dropped".  Drop-action is set</FONT></STRONG> to <STRIKE><FONT color="red">Noel Chiappa for
   providing architectural impetus over</FONT></STRIKE> <STRONG><FONT color="green">3.

   o  Add statement about normalizing locator weights.

   o  Clarify R-bit definition in</FONT></STRONG> the <STRIKE><FONT color="red">past decades</FONT></STRIKE> <STRONG><FONT color="green">Map-Reply locator record.

   o  Add section</FONT></STRONG> on <STRIKE><FONT color="red">separation</FONT></STRIKE> <STRONG><FONT color="green">EID Reachability within a LISP site.

   o  Clarify another disadvantage</FONT></STRONG> of <STRIKE><FONT color="red">location and identity, as well</FONT></STRIKE> <STRONG><FONT color="green">using anycast locators.

   o  Reworded Abstract.

   o  Change section 2.0 Introduction to remove obsolete information
      such</FONT></STRONG> as <STRIKE><FONT color="red">detailed review of</FONT></STRIKE> the LISP
   <STRIKE><FONT color="red">architecture and documents, coupled</FONT></STRIKE> <STRONG><FONT color="green">variant definitions.

   o  Change section 5 title from "Tunneling Details" to "LISP
      Encapsulation Details".

   o  Changes to section 5 to include results of network deployment
      experience</FONT></STRONG> with <STRIKE><FONT color="red">enthusiasm for making LISP</FONT></STRIKE> <STRONG><FONT color="green">MTU.  Recommend that implementations use either
      the stateful or stateless handling.

   o  Make clarification wordsmithing to Section 7 and 8.

   o  Identify that if there is one locator in the locator-set of</FONT></STRONG> a
   <STRIKE><FONT color="red">practical</FONT></STRIKE> <STRONG><FONT color="green">map-
      cache entry, that an SMR from that locator should be responded to
      by sending the the SMR-invoked Map-Request to the database mapping
      system rather than to the RLOC itself (which may be unreachable).

   o  When describing Unicast</FONT></STRONG> and <STRIKE><FONT color="red">incremental transition for</FONT></STRIKE> <STRONG><FONT color="green">Multicast Weights indicate the the
      values are relative weights rather than percentages.  So it
      doesn't imply the sum of all locator weights in</FONT></STRONG> the <STRIKE><FONT color="red">Internet.

   The authors would like</FONT></STRIKE> <STRONG><FONT color="green">locator-set
      need</FONT></STRONG> to <STRIKE><FONT color="red">gratefully acknowledge many people who have
   contributed discussion</FONT></STRIKE> <STRONG><FONT color="green">be 100.

   o  Do some wordsmithing on copying TTL</FONT></STRONG> and <STRIKE><FONT color="red">ideas to the making of this proposal.
   They include Scott Brim, Andrew Partan, John Zwiebel, Jason Schiller,
   Lixia Zhang, Dorian Kim, Peter Schoenmaker, Vijay Gill, Geoff Huston,
   David Conrad, Mark Handley, Ron Bonica, Ted Seely, Mark Townsley,
   Chris Morrow, Brian Weis, Dave McGrew, Peter Lothberg,</FONT></STRIKE> <STRONG><FONT color="green">TOS fields.

   o  Numerous wordsmithing changes from</FONT></STRONG> Dave <STRIKE><FONT color="red">Thaler,
   Eliot Lear, Shane Amante, Ved Kafle, Olivier Bonaventure, Luigi
   Iannone, Robin Whittle, Brian Carpenter, Joel Halpern, Roger
   Jorgensen, Ran Atkinson, Stig Venaas, Iljitsch van Beijnum, Roland
   Bless, Dana Blair, Bill Lynch, Marc Woolward, Damien Saucez, Damian
   Lezama, Attilla De Groot, Parantap Lahiri, David Black, Roque
   Gagliano, Isidor Kouvelas, Jesper Skriver, Fred Templin, Margaret
   Wasserman, Sam Hartman, Michael Hofling, Pedro Marques, Jari Arkko,
   Gregg Schudel, Srinivas Subramanian, Amit Jain, Xu Xiaohu, Dhirendra
   Trivedi, Yakov Rekhter, John Scudder, John Drake,</FONT></STRIKE> <STRONG><FONT color="green">Meyer.  He fine toothed
      combed the spec.

   o  Removed Section 14 "Prototype Plans</FONT></STRONG> and <STRIKE><FONT color="red">Dimitri
   Papadimitriou.

   In particular, we would like to thank Dave Meyer</FONT></STRIKE> <STRONG><FONT color="green">Status".  We felt this
      type of section is no longer appropriate</FONT></STRONG> for <STRIKE><FONT color="red">his clever
   suggestion</FONT></STRIKE> <STRONG><FONT color="green">a protocol
      specification.

   o  Add clarification text</FONT></STRONG> for the <STRIKE><FONT color="red">name "LISP". ;-)

   This work originated</FONT></STRIKE> <STRONG><FONT color="green">IRC description per Damien's
      commentary.

   o  Remove text on copying nonce from SMR to SMR-invoked Map- Request
      per Vina's comment about a possible DoS vector.

   o  Clarify (S/2 + H)</FONT></STRONG> in the <STRIKE><FONT color="red">Routing Research Group (RRG) of the IRTF.
   The individual submission [LISP-MAIN] was converted into this IETF
   LISP working group draft.

Appendix B.  Document Change Log

B.1.</FONT></STRIKE> <STRONG><FONT color="green">stateless MTU section.

B.2.</FONT></STRONG>  Changes to draft-ietf-lisp-07.txt

   o  Posted April 2010.

   o  Added I-bit to data header so LSB field can also be used as an
      Instance ID field.  When this occurs, the LSB field is reduced to
      8-bits (from 32-bits).

   o  Added V-bit to the data header so the 24-bit nonce field can also
      be used for source and destination version numbers.

   o  Added Map-Version 12-bit value to the EID-record to be used in all
      of Map-Request, Map-Reply, and Map-Register messages.

   o  Added multiple ITR-RLOC fields to the Map-Request packet so an ETR
      can decide what address to select for the destination of a Map-
      Reply.

   o  Added L-bit (Local RLOC bit) and p-bit (Probe-Reply RLOC bit) to
      the Locator-Set record of an EID-record for a Map-Reply message.
      The L-bit indicates which RLOCs in the locator-set are local to
      the sender of the message.  The P-bit indicates which RLOC is the
      source of a RLOC-probe Reply (Map-Reply) message.

   o  Add reference to the LISP Canonical Address Format [LCAF] draft.

   o  Made editorial and clarification changes based on comments from
      Dhirendra Trivedi.

   o  Added wordsmithing comments from Joel Halpern on DF=1 setting.

   o  Add John Zwiebel clarification to Echo Nonce Algorithm section
      6.3.1.

   o  Add John Zwiebel comment about expanding on proxy-map-reply bit
      for Map-Register messages.

   o  Add NAT section per Ron Bonica comments.

   o  Fix IDnits issues per Ron Bonica.

   o  Added section on Virtualization and Segmentation to explain the
      use if the Instance ID field in the data header.

   o  There are too many P-bits, keep their scope to the packet format
      description and refer to them by name every where else in the
      spec.

   o  Scanned all occurrences of "should", "should not", "must" and
      "must not" and uppercased them.

   o  John Zwiebel offered text for section 4.1 to modernize the
      example.  Thanks Z!

   o  Make it more clear in the definition of "EID-to-RLOC Database"
      that all ETRs need to have the same database mapping.  This
      reflects a comment from John Scudder.

   o  Add a definition "Route-returnability" to the Definition of Terms
      section.

   o  In section 9.2, add text to describe what the signature of
      traceroute packets can look like.

   o  Removed references to Data Probe for introductory example.  Data-
      probes are still part of the LISP design but not encouraged.

   o  Added the definition for "LISP site" to the Definition of Terms"
      section.

<STRIKE><FONT color="red">B.2.</FONT></STRIKE>

<STRONG><FONT color="green">B.3.</FONT></STRONG>  Changes to draft-ietf-lisp-06.txt

   Editorial based changes:

   o  Posted December 2009.

   o  Fix typo for flags in LISP data header.  Changed from "4" to "5".

   o  Add text to indicate that Map-Register messages must contain a
      computed UDP checksum.

   o  Add definitions for PITR and PETR.

   o  Indicate an AFI value of 0 is an unspecified address.

   o  Indicate that the TTL field of a Map-Register is not used and set
      to 0 by the sender.  This change makes this spec consistent with
      [LISP-MS].

   o  Change "... yield a packet size of L bytes" to "... yield a packet
      size greater than L bytes".

   o  Clarify section 6.1.5 on what addresses and ports are used in Map-
      Reply messages.

   o  Clarify that LSBs that go beyond the number of locators do not to
      be SMRed when the locator addresses are greater lexicographically
      than the locator in the existing locator-set.

   o  Add Gregg, Srini, and Amit to acknowledgment section.

   o  Clarify in the definition of a LISP header what is following the
      UDP header.

   o  Clarify "verifying Map-Request" text in section 6.1.3.

   o  Add Xu Xiaohu to the acknowledgment section for introducing the
      problem of overlapping EID-prefixes among multiple sites in an RRG
      email message.

   Design based changes:

   o  Use stronger language to have the outer IPv4 header set DF=1 so we
      can avoid fragment reassembly in an ETR or PETR.  This will also
      make IPv4 and IPv6 encapsulation have consistent behavior.

   o  Map-Requests should not be sent in ECM with the Probe bit is set.
      These type of Map-Requests are used as RLOC-probes and are sent
      directly to locator addresses in the underlying network.

   o  Add text in section 6.1.5 about returning all EID-prefixes in a
      Map-Reply sent by an ETR when there are overlapping EID-prefixes
      configure.

   o  Add text in a new subsection of section 6.1.5 about dealing with
      Map-Replies with coarse EID-prefixes.

<STRIKE><FONT color="red">B.3.</FONT></STRIKE>

<STRONG><FONT color="green">B.4.</FONT></STRONG>  Changes to draft-ietf-lisp-05.txt

   o  Posted September 2009.

   o  Added this Document Change Log appendix.

   o  Added section indicating that encapsulated Map-Requests must use
      destination UDP port 4342.

   o  Don't use AH in Map-Registers.  Put key-id, auth-length, and auth-
      data in Map-Register payload.

   o  Added Jari to acknowledgment section.

   o  State the source-EID is set to 0 when using Map-Requests to
      refresh or RLOC-probe.

   o  Make more clear what source-RLOC should be for a Map-Request.

   o  The LISP-CONS authors thought that the Type definitions for CONS
      should be removed from this specification.

   o  Removed nonce from Map-Register message, it wasn't used so no need
      for it.

   o  Clarify what to do for unspecified Action bits for negative Map-
      Replies.  Since No Action is a drop, make value 0 Drop.

<STRIKE><FONT color="red">B.4.</FONT></STRIKE>

<STRONG><FONT color="green">B.5.</FONT></STRONG>  Changes to draft-ietf-lisp-04.txt

   o  Posted September 2009.

   o  How do deal with record count greater than 1 for a Map-Request.
      Damien and Joel comment.  Joel suggests: 1) Specify that senders
      compliant with the current document will always set the count to
      1, and note that the count is included for future extensibility.
      2) Specify what a receiver compliant with the draft should do if
      it receives a request with a count greater than 1.  Presumably, it
      should send some error back?

   o  Add Fred Templin in acknowledgment section.

   o  Add Margaret and Sam to the acknowledgment section for their great
      comments.

   o  Say more about LAGs in the UDP section per Sam Hartman's comment.

   o  Sam wants to use MAY instead of SHOULD for ignoring checksums on
      ETR.  From the mailing list: "You'd need to word it as an ITR MAY
      send a zero checksum, an ETR MUST accept a 0 checksum and MAY
      ignore the checksum completely.  And of course we'd need to
      confirm that can actually be implemented.  In particular, hardware
      that verifies UDP checksums on receive needs to be checked to make
      sure it permits 0 checksums."

   o  Margaret wants a reference to
      http://www.ietf.org/id/draft-eubanks-chimento-6man-00.txt.

   o  Fix description in Map-Request section.  Where we describe Map-
      Reply Record, change "R-bit" to "M-bit".

   o  Add the mobility bit to Map-Replies.  So PTRs don't probe so often
      for MNs but often enough to get mapping updates.

   o  Indicate SHA1 can be used as well for Map-Registers.

   o  More Fred comments on MTU handling.

   o  Isidor comment about spec'ing better periodic Map-Registers.  Will
      be fixed in draft-ietf-lisp-ms-02.txt.

   o  Margaret's comment on gleaning: "The current specification does
      not make it clear how long gleaned map entries should be retained
      in the cache, nor does it make it clear how/ when they will be
      validated.  The LISP spec should, at the very least, include a
      (short) default lifetime for gleaned entries, require that they be
      validated within a short period of time, and state that a new
      gleaned entry should never overwrite an entry that was obtained
      from the mapping system.  The security implications of storing
      "gleaned" entries should also be explored in detail."

   o  Add section on RLOC-probing per working group feedback.

   o  Change "loc-reach-bits" to "loc-status-bits" per comment from
      Noel.

   o  Remove SMR-bit from data-plane.  Dino prefers to have it in the
      control plane only.

   o  Change LISP header to allow a "Research Bit" so the Nonce and LSB
      fields can be turned off and used for another future purpose.  For
      Luigi et al versioning convergence.

   o  Add a N-bit to the data header suggested by Noel.  Then the nonce
      field could be used when N is not 1.

   o  Clarify that when E-bit is 0, the nonce field can be an echoed
      nonce or a random nonce.  Comment from Jesper.

   o  Indicate when doing data-gleaning that a verifying Map-Request is
      sent to the source-EID of the gleaned data packet so we can avoid
      map-cache corruption by a 3rd party.  Comment from Pedro.

   o  Indicate that a verifying Map-Request, for accepting mapping data,
      should be sent over the <STRIKE><FONT color="red">the</FONT></STRIKE> ALT (or to the EID).

   o  Reference IPsec RFC 4302.  Comment from Sam and Brian Weis.

   o  Put E-bit in Map-Reply to tell ITRs that the ETR supports echo-
      noncing.  Comment by Pedro and Dino.

   o  Jesper made a comment to loosen the language about requiring the
      copy of inner TTL to outer TTL since the text to get mixed-AF
      traceroute to work would violate the "MUST" clause.  Changed from
      MUST to SHOULD in section 5.3.

<STRIKE><FONT color="red">B.5.</FONT></STRIKE>

<STRONG><FONT color="green">B.6.</FONT></STRONG>  Changes to draft-ietf-lisp-03.txt

   o  Posted July 2009.

   o  Removed loc-reach-bits longword from control packets per Damien
      comment.

   o  Clarifications in MTU text from Roque.

   o  Added text to indicate that the locator-set be sorted by locator
      address from Isidor.

   o  Clarification text from John Zwiebel in Echo-Nonce section.

<STRIKE><FONT color="red">B.6.</FONT></STRIKE>

<STRONG><FONT color="green">B.7.</FONT></STRONG>  Changes to draft-ietf-lisp-02.txt

   o  Posted July 2009.

   o  Encapsulation packet format change to add E-bit and make loc-
      reach-bits 32-bits in length.

   o  Added Echo-Nonce Algorithm section.

   o  Clarification how ECN bits are copied.

   o  Moved S-bit in Map-Request.

   o  Added P-bit in Map-Request and Map-Reply messages to anticipate
      RLOC-Probe Algorithm.

   o  Added to Mobility section to reference <STRIKE><FONT color="red">draft-meyer-lisp-mn-00.txt.

B.7.</FONT></STRIKE> <STRONG><FONT color="green">[LISP-MN].

B.8.</FONT></STRONG>  Changes to draft-ietf-lisp-01.txt

   o  Posted 2 days after draft-ietf-lisp-00.txt in May 2009.

   o  Defined LEID to be a "LISP EID".

   o  Indicate encapsulation use IPv4 DF=0.

   o  Added negative Map-Reply messages with drop, native-forward, and
      send-map-request actions.

   o  Added Proxy-Map-Reply bit to Map-Register.

<STRIKE><FONT color="red">B.8.</FONT></STRIKE>

<STRONG><FONT color="green">B.9.</FONT></STRONG>  Changes to draft-ietf-lisp-00.txt

   o  Posted May 2009.

   o  Rename of draft-farinacci-lisp-12.txt.

   o  Acknowledgment to RRG.

Authors' Addresses

   Dino Farinacci
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: dino@cisco.com

   Vince Fuller
   cisco Systems
   Tasman Drive
   San Jose, CA  95134
   USA

   Email: vaf@cisco.com

   Dave Meyer
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: dmm@cisco.com

   Darrel Lewis
   cisco Systems
   170 Tasman Drive
   San Jose, CA
   USA

   Email: darlewis@cisco.com
</PRE>

</BODY></HTML>
--Apple-Mail-54-444922375
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed
Content-Transfer-Encoding: 7bit





--Apple-Mail-54-444922375--

From damien.saucez@uclouvain.be  Wed Aug 11 23:52:51 2010
Return-Path: <damien.saucez@uclouvain.be>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id CFBF93A6967 for <lisp@core3.amsl.com>; Wed, 11 Aug 2010 23:52:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.231
X-Spam-Level: 
X-Spam-Status: No, score=-4.231 tagged_above=-999 required=5 tests=[AWL=-1.301, BAYES_50=0.001, DATE_IN_PAST_06_12=1.069, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UAcnOJgsItIV for <lisp@core3.amsl.com>; Wed, 11 Aug 2010 23:52:51 -0700 (PDT)
Received: from smtp4.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by core3.amsl.com (Postfix) with ESMTP id A5D0C3A69B6 for <lisp@ietf.org>; Wed, 11 Aug 2010 23:52:50 -0700 (PDT)
Received: from [130.104.228.23] (sleipnier.dhcp.info.ucl.ac.be [130.104.228.23]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: dsaucez@smtp4.sgsi.ucl.ac.be) by smtp4.sgsi.ucl.ac.be (Postfix) with ESMTPSA id 0004FF287B; Thu, 12 Aug 2010 08:53:14 +0200 (CEST)
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <72FCC8DD-3560-49A9-96E5-ABE81844FFF7@cisco.com>
Date: Wed, 11 Aug 2010 23:31:14 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <B0AC306A-C932-411F-8062-50282BD8B755@uclouvain.be>
References: <72FCC8DD-3560-49A9-96E5-ABE81844FFF7@cisco.com>
To: Dino Farinacci <dino@cisco.com>
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96-exp at smtp-4.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
Received-SPF: Pass (sender authenticated); receiver=; client-ip=130.104.228.23; helo=
Received-SPF: Pass (sender authenticated); receiver=; client-ip=130.104.228.23; envelope-from=<damien.saucez@uclouvain.be>
X-Sgsi-Spamcheck: SASL authenticated, 
X-SGSI-MailScanner-ID: 0004FF287B.00000
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: damien.saucez@uclouvain.be
X-SGSI-Spam-Status: No
Cc: lisp@ietf.org
Subject: Re: [lisp] Updates for draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Thu, 12 Aug 2010 06:52:51 -0000

Hello,

By reading sec 6.1.2 and B.2, it is no clear if ITR-RLOC MUST be RLOCs
from the RLOC set of the Map-Requester ITR or if they can be from other =
ITRs.
If RLOC from several ITRs are allowed, then maybe the text should be =
clearer
to say how to select the source port and how an ITR that has not sent =
the
request can process the reply (nonce and port).  But is it reasonable to =
consider
that a reply has to arrive another ITR? Do you have any use case for =
this? mobility?

6.1.2
 ITR-RLOC Address:  Used to give the ETR the option of selecting the
      destination address from any address family for the Map-Reply
      message.  This address MUST be a routable RLOC address.

B.2

   o  Added multiple ITR-RLOC fields to the Map-Request packet so an ETR
      can decide what address to select for the destination of a Map-
      Reply.

Thanks,

Damien Saucez

On 11 Aug 2010, at 19:21, Dino Farinacci wrote:

> With roughly 48 hours left in the draft-ietf-lisp-08.txt review =
period, we have received numerous comments on the spec. Thanks to the =
commenters for your responses.
>=20
> Here are the new changes added as a result of the comments during this =
comment period:
>=20
>   o  Numerous wordsmithing changes from Dave Meyer.  He fine toothed
>      combed the spec.
>=20
>   o  Removed Section 14 "Prototype Plans and Status".  We felt this
>      type of section is no longer appropriate for a protocol
>      specification.
>=20
>   o  Add clarification text for the IRC description per Damien's
>      commentary.
>=20
>   o  Remove text on copying nonce from SMR to SMR-invoked Map- Request
>      per Vina's comment about a possible DoS vector.
>=20
>   o  Clarify (S/2 + H) in the stateless MTU section.
>=20
> You can find a diff file (rfcdiff-ietf-lisp-08-to-08.html) comparing =
the ID text submitted at the beginning of the review period with the one =
attached in this email.
>=20
> You can also find a diff file (rfcdiff-ietf-lisp-07-to-08.html) =
comparing -07 with the the -08 proposed changes attached in this email.
>=20
> Thanks,
> Dino/Dave/Darrel/Vince
>=20
> <draft-ietf-lisp-08.txt>
>=20
>=20
> <rfcdiff-ietf-lisp-08-to-08.html>
>=20
>=20
> <rfcdiff-ietf-lisp-07-to-08.html>
>=20
>=20
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp


From dino@cisco.com  Thu Aug 12 10:01:42 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 925A628C114 for <lisp@core3.amsl.com>; Thu, 12 Aug 2010 10:01:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.549
X-Spam-Level: 
X-Spam-Status: No, score=-10.549 tagged_above=-999 required=5 tests=[AWL=0.050, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9zklf6NdUUqm for <lisp@core3.amsl.com>; Thu, 12 Aug 2010 10:01:41 -0700 (PDT)
Received: from sj-iport-1.cisco.com (sj-iport-1.cisco.com [171.71.176.70]) by core3.amsl.com (Postfix) with ESMTP id 9F2253A694D for <lisp@ietf.org>; Thu, 12 Aug 2010 10:01:41 -0700 (PDT)
Authentication-Results: sj-iport-1.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEADPFY0yrR7Ht/2dsb2JhbACgNXGiXJtShToEhC6FMA
X-IronPort-AV: E=Sophos;i="4.55,359,1278288000"; d="scan'208";a="351592866"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-1.cisco.com with ESMTP; 12 Aug 2010 17:02:18 +0000
Received: from [10.34.153.93] ([10.34.153.93]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o7CH2IC2002061; Thu, 12 Aug 2010 17:02:18 GMT
Message-Id: <DBA504D5-CAC5-43A9-BE7F-8F34120006CC@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <B0AC306A-C932-411F-8062-50282BD8B755@uclouvain.be>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Thu, 12 Aug 2010 10:02:18 -0700
References: <72FCC8DD-3560-49A9-96E5-ABE81844FFF7@cisco.com> <B0AC306A-C932-411F-8062-50282BD8B755@uclouvain.be>
X-Mailer: Apple Mail (2.936)
Cc: lisp@ietf.org
Subject: Re: [lisp] Updates for draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Thu, 12 Aug 2010 17:01:42 -0000

Well obviously it is from the local requester since it creates the  
nonce it needs to match in the returning Map-Reply. But I will make  
that more clear. Thanks for the comment.

Dino

On Aug 11, 2010, at 2:31 PM, Damien Saucez wrote:

> Hello,
>
> By reading sec 6.1.2 and B.2, it is no clear if ITR-RLOC MUST be RLOCs
> from the RLOC set of the Map-Requester ITR or if they can be from  
> other ITRs.
> If RLOC from several ITRs are allowed, then maybe the text should be  
> clearer
> to say how to select the source port and how an ITR that has not  
> sent the
> request can process the reply (nonce and port).  But is it  
> reasonable to consider
> that a reply has to arrive another ITR? Do you have any use case for  
> this? mobility?
>
> 6.1.2
> ITR-RLOC Address:  Used to give the ETR the option of selecting the
>      destination address from any address family for the Map-Reply
>      message.  This address MUST be a routable RLOC address.
>
> B.2
>
>   o  Added multiple ITR-RLOC fields to the Map-Request packet so an  
> ETR
>      can decide what address to select for the destination of a Map-
>      Reply.
>
> Thanks,
>
> Damien Saucez
>
> On 11 Aug 2010, at 19:21, Dino Farinacci wrote:
>
>> With roughly 48 hours left in the draft-ietf-lisp-08.txt review  
>> period, we have received numerous comments on the spec. Thanks to  
>> the commenters for your responses.
>>
>> Here are the new changes added as a result of the comments during  
>> this comment period:
>>
>>  o  Numerous wordsmithing changes from Dave Meyer.  He fine toothed
>>     combed the spec.
>>
>>  o  Removed Section 14 "Prototype Plans and Status".  We felt this
>>     type of section is no longer appropriate for a protocol
>>     specification.
>>
>>  o  Add clarification text for the IRC description per Damien's
>>     commentary.
>>
>>  o  Remove text on copying nonce from SMR to SMR-invoked Map- Request
>>     per Vina's comment about a possible DoS vector.
>>
>>  o  Clarify (S/2 + H) in the stateless MTU section.
>>
>> You can find a diff file (rfcdiff-ietf-lisp-08-to-08.html)  
>> comparing the ID text submitted at the beginning of the review  
>> period with the one attached in this email.
>>
>> You can also find a diff file (rfcdiff-ietf-lisp-07-to-08.html)  
>> comparing -07 with the the -08 proposed changes attached in this  
>> email.
>>
>> Thanks,
>> Dino/Dave/Darrel/Vince
>>
>> <draft-ietf-lisp-08.txt>
>>
>>
>> <rfcdiff-ietf-lisp-08-to-08.html>
>>
>>
>> <rfcdiff-ietf-lisp-07-to-08.html>
>>
>>
>> _______________________________________________
>> lisp mailing list
>> lisp@ietf.org
>> https://www.ietf.org/mailman/listinfo/lisp
>


From terry.manderson@icann.org  Thu Aug 12 16:50:30 2010
Return-Path: <terry.manderson@icann.org>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id DF2FA3A67A1 for <lisp@core3.amsl.com>; Thu, 12 Aug 2010 16:50:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -104.641
X-Spam-Level: 
X-Spam-Status: No, score=-104.641 tagged_above=-999 required=5 tests=[AWL=-0.642, BAYES_50=0.001, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 39Vu+Y5LXY6t for <lisp@core3.amsl.com>; Thu, 12 Aug 2010 16:50:29 -0700 (PDT)
Received: from EXPFE100-2.exc.icann.org (expfe100-2.exc.icann.org [64.78.22.237]) by core3.amsl.com (Postfix) with ESMTP id 2909F3A6907 for <lisp@ietf.org>; Thu, 12 Aug 2010 16:50:24 -0700 (PDT)
Received: from EXVPMBX100-1.exc.icann.org ([64.78.22.232]) by EXPFE100-2.exc.icann.org ([64.78.22.237]) with mapi; Thu, 12 Aug 2010 16:50:34 -0700
From: Terry Manderson <terry.manderson@icann.org>
To: "lisp@ietf.org" <lisp@ietf.org>
Date: Thu, 12 Aug 2010 16:50:33 -0700
Thread-Topic: Draft minutes from IETF78 Maastricht
Thread-Index: Acs6eScAfDOq+tS3v0CqcyX8UQLEEQ==
Message-ID: <C88AC5E9.67FC%terry.manderson@icann.org>
Accept-Language: en-US
Content-Language: en
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: [lisp] Draft minutes from IETF78 Maastricht
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Thu, 12 Aug 2010 23:50:31 -0000

Folks,

Attached are the draft minutes for the LISP WG from IETF78.

Please review them and email any corrections to me ASAP.

Thanks to the LISP secretaries Luigi and Wassim for these minutes.

Cheers
Terry


From terry.manderson@icann.org  Thu Aug 12 16:52:37 2010
Return-Path: <terry.manderson@icann.org>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id BB5353A680B for <lisp@core3.amsl.com>; Thu, 12 Aug 2010 16:52:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.849
X-Spam-Level: 
X-Spam-Status: No, score=-105.849 tagged_above=-999 required=5 tests=[AWL=0.750, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nVy5lyInXbqp for <lisp@core3.amsl.com>; Thu, 12 Aug 2010 16:52:37 -0700 (PDT)
Received: from EXPFE100-1.exc.icann.org (expfe100-1.exc.icann.org [64.78.22.236]) by core3.amsl.com (Postfix) with ESMTP id 0506D3A67A1 for <lisp@ietf.org>; Thu, 12 Aug 2010 16:52:37 -0700 (PDT)
Received: from EXVPMBX100-1.exc.icann.org ([64.78.22.232]) by EXPFE100-1.exc.icann.org ([64.78.22.236]) with mapi; Thu, 12 Aug 2010 16:53:14 -0700
From: Terry Manderson <terry.manderson@icann.org>
To: "lisp@ietf.org" <lisp@ietf.org>
Date: Thu, 12 Aug 2010 16:53:09 -0700
Thread-Topic: Draft minutes from IETF78 Maastricht
Thread-Index: Acs6eScAfDOq+tS3v0CqcyX8UQLEEQAAFz+H
Message-ID: <C88AC687.67FF%terry.manderson@icann.org>
In-Reply-To: <C88AC5E9.67FC%terry.manderson@icann.org>
Accept-Language: en-US
Content-Language: en
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
acceptlanguage: en-US
Content-Type: multipart/mixed; boundary="_002_C88AC68767FFterrymandersonicannorg_"
MIME-Version: 1.0
Subject: Re: [lisp] Draft minutes from IETF78 Maastricht
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Thu, 12 Aug 2010 23:52:37 -0000

--_002_C88AC68767FFterrymandersonicannorg_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Of course it always helps when you attach the file!

take two.

T..
(Go straight to coffee, do not pass 'go' do not collect $200 ;)


On 13/08/10 9:50 AM, "Terry" <terry.manderson@icann.org> wrote:

> Folks,
>=20
> Attached are the draft minutes for the LISP WG from IETF78.
>=20
> Please review them and email any corrections to me ASAP.
>=20
> Thanks to the LISP secretaries Luigi and Wassim for these minutes.
>=20
> Cheers
> Terry


--_002_C88AC68767FFterrymandersonicannorg_
Content-Type: application/octet-stream; name="78th-IETF-LISP-WG-Minutes.txt"
Content-Description: 78th-IETF-LISP-WG-Minutes.txt
Content-Disposition: attachment; filename="78th-IETF-LISP-WG-Minutes.txt";
	size=23455; creation-date="Thu, 12 Aug 2010 16:53:14 GMT";
	modification-date="Thu, 12 Aug 2010 16:53:14 GMT"
Content-Transfer-Encoding: base64

TW9uZGF5IDI2dGggSnVseQ0KDQpBZG1pbmlzdHJhdGlvbiAgDQogICAgIC0gSmFiYmVyIFNjcmli
ZShzKTogTm9ib2R5IHZvbHVudGVlcmVkDQogICAgIC0gQmx1ZSBTaGVldHMNCg0KQWdlbmRhIEJh
c2hpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANClByZXNlbnRh
dGlvbiBhbmQgTm90ZSB3ZWxsDQoNCjEwIHByZXNlbnRhdGlvbnMgc2NoZWR1bGVkOg0KDQpTdGF0
dXMgdXBkYXRlcyBhbmQgaXNzdWVzIGZvciBXRyBkcmFmdHMNCiAgICAgICAgICAgZHJhZnQtaWV0
Zi1saXNwDQogICAgICAgICAgIGRyYWZ0LWlldGYtbGlzcC1tcw0KICAgICAgICAgICBkcmFmdC1p
ZXRmLWxpc3AtYWx0DQogICAgICAgICAgIGRyYWZ0LWlldGYtbGlzcC1tdWx0aWNhc3QNCiAgICAg
ICAgICAgZHJhZnQtaWV0Zi1saXNwLWxpZw0KICAgICAgICAgICANCkluZGl2aWR1YWwgc3VibWlz
c2lvbnMNCiAgICAgICAgICBMSVNQIE1hcC1WZXJzaW9uaW5nDQogICAgICAgICAgTElTUCBTZWN1
cml0eSBUaHJlYXRzDQogICAgICAgICAgTElTUCBDYW5vbmljYWwgQWRkcmVzcyBGb3JtYXQgKExD
QUYpDQogICAgICAgICAgTElTUC1NTi1OQVQtVHJhdmVyc2FsLg0KICAgICAgICAgIEVFTURQIHBy
b3Bvc2FsIGZvciBtYW5hZ2luZyBob2xlcyBpbiBtYXBzDQoNCg0KTm8gaXNzdWVzIHJvc2UgY29u
Y2VybmluZyB0aGUgYWdlbmRhLg0KDQoNCkFjdGlvbiBpdGVtcyANCi0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQotLT4gVGVycnkgTWFuZGVyc29uOiBTaW5jZSBJRVRG
IDc3dGggdGhlIGRyYWZ0LWlldGYtbGlzcC1pbnRlcndvcmtpbmctMDEgaGFzIG5vdCBiZWVuIHVw
bG9hZGVkLg0KDQotLT4gRGFycmVsIExld2lzOiBUaGVyZSBoYXZlIGJlZW4gYSBzZXQgb2YgY29t
bWVudHMgdGhhdCBjYW1lIGluIG9uIHRoZSBtYWlsaW5nIGxpc3QsIGFib3V0IG9uZSBtb250aCBh
Z28sIHRoYXQgSSB3YW50ZWQgdG8gYWRkcmVzcyBiZWZvcmUgc3VibWl0dGluZy4gT3IgeW91IHdh
bnQgbWUgdG8ganVzdCB1cGxvYWQgYW5kIGFkZHJlc3MgdGhlbSBsYXRlcj8NCg0KLS0+IFRlcnJ5
IE1hbmRlcnNvbjogQXJlIHRoZSBjb21tZW50cyBzdWJzdGFudGlhbD8NCg0KLS0+IERhcnJlbCBM
ZXdpczogSSBkb24ndCBrbm93IGJlY2F1c2UgSSBoYXZlbid0IHJlYWQgdGhlIGVtYWlsLiBJIHdh
cyBhIGJpdCBidXN5LCBvdGhlcndpc2UgSSB3b3VsZCBoYXZlIHJlc3BvbmRlZCBkaXJlY3RseSBv
biB0aGUgbWFpbGluZyBsaXN0Lg0KDQotLT4gVGVycnkgTWFuZGVyc29uOiBJIHdvdWxkIGJlIGhh
cHB5IGlmIHlvdSB1cGxvYWQgLTAxIGFuZCB0aGVuIGNoYW5nZSBpdCB0byAtMDIgaWYgd2UgbmVl
ZCB0by4NCg0KLS0+IERhcnJlbCBMZXdpczogT0ssIG5vIHByb2JsZW0uDQoNCi0tPiBUZXJyeSBN
YW5kZXJzb246IENvbmNlcm5pbmcgdGhlIGRlcGxveW1lbnQgZHJhZnQsIGl0IGlzIHVuZGVyd2F5
LiBXZSBleHBlY3QgdG8gaGF2ZSBhIC0wMCB0byBiZSBvdXQgc2hvcnRseS4NCg0KLS0+IFRlcnJ5
IE1hbmRlcnNvbjogVGhlcmUgd2FzIGEgY2FsbCB0byBhZG9wdCBkcmFmdCBsaXNwIGxpZyBiZWNv
bWUgYSB3b3JraW5nIGdyb3VwIGl0ZW0gYW5kIHdlIHJlYWNoZWQgY29uc2Vuc3VzIG9uIHRoZSBh
ZG9wdGlvbiBhbmQgZHJhZnQtaWV0Zi1saXNwLWxpZyBoYXMgYmVlbiBzdWJtaXR0ZWQuDQoNCi0t
PiBUZXJyeSBNYW5kZXJzb246IFRoZXJlIGhhdmUgYmVlbiBhIG51bWJlciBvZiBpc3N1ZXMgdGhh
dCBhcmUgaW4gdGhlIHRyYWNrZXIuIERhcnJlbCBhbmQgdGhlIG90aGVyIGF1dGhvcnMgc3RhcnRl
ZCB0byBhZGRyZXNzIHRoZW0uDQoNCg0KDQoNCkRhcnJlbCBMZXdpcyBwcmVzZW50aW5nOiBkcmFm
dC1pZXRmLWxpc3ANCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0K
LS0+IFZpbmNlIEZ1bGxlcjogU3VnZ2VzdGVkIHRleHQgaXMgYWx3YXlzIGFwcHJlY2lhdGVkLiBJ
ZiB5b3Ugd2FudCBhIGNoYW5nZSB0byBoYXBwZW4gYW5kIHlvdSBwcm92aWRlIHN1Z2dlc3RlZCB0
ZXh0IGl0J3MgYSBsb3QgbW9yZSBsaWtlbHkgdGhhdCB0aGV5IGdldCBpbiBzb29uZXIgdGhhbiBp
ZiB3ZSBoYXZlIHRvIGNvbWUgdXAgd2l0aCBzb21ldGhpbmcuIA0KDQoNCg0KRGFycmVsIExld2lz
IHByZXNlbnRpbmc6IGRyYWZ0LWlldGYtbGlzcC1tcw0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQotLT4gVmluY2UgRnVsbGVyOiBUaGUgY2hhbmdlcyBwcmVz
ZW50ZWQgYXJlIGluIHJlc3BvbnNlIG9mIGNvbW1lbnRzIHdlIHJlY2VpdmVkIGR1cmluZyB0aGUg
bGFzdCBJRVRGIGFuZCBoYXZlIGJlZW4gbWFkZSBhdCB0aGUgZW5kIG9mIEFwcmlsLCBmb2xsb3dp
bmcgdGhlIElFVEYgaW4gTWFyY2guIFdlIGFyZSB0cnlpbmcgdG8gbGlzdGVuIGFuZCBpbmNvcnBv
cmF0ZSBhbGwgdGhlIGNoYW5nZXMuDQoNCg0KDQpEYXJyZWwgTGV3aXMgcHJlc2VudGluZzogZHJh
ZnQtaWV0Zi1saXNwLWFsdA0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0NCg0KTm8gY29tbWVudHMgZnJvbSB0aGUgcm9vbS4NCg0KDQoNCkRpbm8gRmFyaW5hY2Np
IHByZXNlbnRpbmc6IGRyYWZ0LWlldGYtbGlzcC1tdWx0aWNhc3QNCi0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KLS0+IERpbm8gRmFyaW5hY2Np
OiBXaG8gaXMgaW1wbGVtZW50aW5nIG11bHRpY2FzdD8NCg0KTm8gQW5zd2VyIGZyb20gdGhlIHJv
b20uDQoNCi0tPiBEaW5vIEZhcmluYWNjaTogV2Ugd291bGQgbGlrZSB0byBzb2xpY2l0IHBlb3Bs
ZSB0byB0aGluayBhYm91dCBtdWx0aWNhc3QgaW1wbGVtZW50YXRpb25zLiBXZSB3YW50IHRvIGRv
IG9uZSBvciB0d28gaW1wbGVtZW50YXRpb25zIGFzIHdlbGwuIEkgaG9wZSB0byBpbmNyZWFzZSB0
aGUgbXVsdGljYXN0IGFjdGl2aXR5IGluIGZhbGwsIGluIGEgcHJvdG90eXBlIGZvcm0uIEFueWJv
ZHkgdGhhdCBpcyBpbnRlcmVzdGVkIGNhbiBjb250YWN0IHVzIG9yIHNlbmQgc29tZXRoaW5nIHRv
IHRoZSBsaXN0Lg0KDQpEaW5vIEZhcmluYWNjaSBwcmVzZW50aW5nOiBkcmFmdC1pZXRmLWxpc3At
bGlnDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
DQoNCk5vIHNsaWRlcyBhdmFpbGFibGUuDQoNCi0tPiBEaW5vIEZhcmluYWNjaTogTm8gY2hhbmdl
cyBzaW5jZSB0aGUgbGFzdCBJRVRGLiBXZSBoYXZlIHRocmVlIGltcGxlbWVudGF0aW9ucy4gSXQg
aXMgd29ya2luZyB2ZXJ5IHdlbGwgb24gdGhlIHByb3RvdHlwZSBuZXR3b3JrLg0KDQotLT4gVGVy
cnkgTWFuZGVyc29uOiBBbnkgcGxhbnMgdG8gbW92ZSBmcm9tIHRoZXJlPw0KDQotLT4gRGlubyBG
YXJpbmFjY2k6IEl0IGlzIHdvcmtpbmcgdmVyeSB3ZWxsIGFuZCBJIGRvIG5vdCBzZWUgYW55IGVu
aGFuY2VtZW50cyB1bmxlc3Mgd2Ugd2FudCB0aGF0IGl0IHdvcmtzIGFsc28gZm9yIHRoZSBuZXcg
RUlEIGZvcm1hdHMsIGRlcGVuZGluZyBvbiB3aGF0IHRoZSBvdXRjb21lIG9mIHRoZSBMQ0FGIHN0
dWZmIGlzLg0KDQoNCg0KTHVpZ2kgSWFubm9uZSBwcmVzZW50aW5nOiBkcmFmdC1pYW5ub25lLWxp
c3AtbWFwcGluZy12ZXJzaW9uaW5nDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KLS0+IFNyaXJhbSBLb3Rpa2FwYWx1ZGk6
IFlvdSBtZW50aW9uZWQgc3RhbGUgbWFwcGluZ3MuIENhbiB5b3UgYnJpZWZseSBkZXNjcmliZSBo
b3cgc3RhbGVuZXNzIGlzIGRldGVjdGVkPw0KDQotLT4gTHVpZ2kgSWFubm9uZTogVGhlcmUgaXMg
YSBub3Rpb24gb2Ygb3JkZXJpbmcgaW4gdGhlIG1hcCB2ZXJzaW9uLiBXaGVuIHlvdSBoYXZlIGEg
bmV3IG1hcHBpbmcgeW91IGluY3JlYXNlIHRoZSBtYXAgdmVyc2lvbiBudW1iZXIgYW5kIHRoaXMg
Z2l2ZXMgeW91IGFuIG9yZGVyaW5nIHRoYXQgeW91IHVzZSB0byBkZXRlY3QgaWYgYSBtYXBwaW5n
IGlzIHN0YWxlIG9yIG5vdC4NCg0KLS0+IFRlcnJ5IE1hbmRlcnNvbjogIFdlIHdpbGwgdGFrZSBp
dCBhcyBhbiBhY3Rpb24gaXRlbSBvbiB0aGUgbGlzdCB0byByZXF1ZXN0IHRoaXMgdG8gYmUgYSB3
b3JraW5nIGdyb3VwIGl0ZW0uDQoNCg0KDQpEYW1pZW4gU2F1Y2V6IHByZXNlbnRpbmc6IGRyYWZ0
LXNhdWNlei1saXNwLXNlY3VyaXR5DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tDQoNCi0tPiBKb2VsIEhhbHBlcm46IFRoYW5rcyBmb3IgdGhlIGVm
Zm9ydCBpbiB3cml0aW5nIHRoaXMgZG9jdW1lbnQuIFNpdHRpbmcgaW4gdGhlIGJhY2sgdGhlcmUg
aXMgU2FuZHkgTXVycGh5LCBmcm9tIHRoZSBzZWN1cml0eSBhcmVhLCB0aGF0IGFncmVlZCB0byBo
ZWxwIHRvIGhhdmUgYSBtb3JlIGNvbXByZWhlbnNpdmUgcmV2aWV3IGluIGNvbmp1bmN0aW9uIHdp
dGggd2hhdCB5b3Ugc3RhcnRlZC4gU2hlIHNoYWxsIHdvcmsgd2l0aCB5b3UsIGJlY2F1c2UgSSBh
bSBzdXJlIHRoZXJlIGFyZSBtb3JlIHF1ZXN0aW9ucyBhbmQgaXNzdWVzIHRoYXQgaGF2ZSBub3Qg
YmVlbiBhZGRyZXNzZWQuIFRoZW4sIHdlIHdpbGwgbmVlZCB0aGUgd29ya2luZyBncm91cCB0byB3
b3JrIG9uIHdoYXQgbmVlZHMgdG8gYmUgYWRkcmVzc2VkIG5vdyBhbmQgd2hhdCBjYW4gYmUgZG9u
ZSBsYXRlci4gVGhhbmsgeW91IHZlcnkgbXVjaCENCg0KLS0+IEphcmkgQXJra286IENhbiB5b3Ug
Z28gYmFjayB0byBzbGlkZSAxLCB3aGVyZSB5b3Ugd2VyZSBnb2luZyBvdmVyIHRoZSByZWFzb25z
IGZvciBhdHRhY2tpbmc/IEl0IHNlZW1zIHRvIG1lIHRoYXQgYW55IHJvdXRpbmcgc2NoZW1lIGhh
cyBpc3N1ZXMgd2l0aCAidHJhZmZpYyBoaWphY2tpbmciIGFzIHdlbGwgYXMgZWF2ZXNkcm9wcGlu
Zy4gSSBjbGFpbSB0aGF0IEkgaGF2ZSB5b3VyIGFkZHJlc3Mgc3BhY2UgYW5kIEkgY2FuIHBvcnRl
bmQgdG8gYmUgeW91Lg0KCi0tPiBKb2VsIEhhbHBlcm46IEZ1bGx5IGFncmVlCg0KLS0+IERhbWll
biBTYXVjZXo6IFRoZSByaXNrIGV4aXN0cyBidXQgdGhlcmUgYXJlIHdheXMgdG8gdHJ5IHRvIG1p
dGlnYXRlIHRoZSByaXNrcy4NCg0KLS0+IEpvZWwgSGFscGVybjogVGhlIHBvaW50IGlzIHRoYXQg
dGhpcyBpcyBhbiBhcmVhIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzZXQgb2Ygc2VjdXJpdHkgdGhy
ZWF0cyB3ZSBhcmUgbG9va2luZyBhdC4NCg0KLS0+IEphcmkgQXJra286IFRoaXMgaXMgYW5vdGhl
ciB0aGluZyBhbiBhdHRhY2tlciBtYXkgd2FudCB0byBkby4gV2hhdCB3ZSBkbyBhYm91dCBpdCBp
cyBhbm90aGVyIHF1ZXN0aW9uLiBCeSB0aGUgd2F5LCBKb2VsIHlvdSB3ZXJlIG1lbnRpb25pbmcg
d2UgY291bGQgbGVhdmUgc29tZXRoaW5nIGZvciB0aGUgZnV0dXJlLCB3ZSBjYW4gZG8gc29tZXRo
aW5nIG5vdy4gSSB0aGluayBpcyBPSyBub3QgdG8gaGFuZGxlIHNvbWUgc2VjdXJpdHkgaXNzdWVz
LCBhcyBsb25nIGFzIHRoYXQncyBkb2N1bWVudGVkIHNvbWV3aGVyZS4NCg0KLS0+IEpvZWwgSGFs
cGVybjogRXhhY3RseS4NCg0KLS0+IERhbWllbiBTYXVjZXo6IEl0IGlzIG5vdCBvbmx5IGEgc2Vj
dXJpdHkgaXNzdWUuIENhbiBiZSBhbHNvIGEgY29uZmlndXJhdGlvbiBlcnJvciBpbiB0aGlzIGNh
c2UuIEJlY2F1c2UgaWYgeW91IGhhdmUgYSBjb25maWd1cmF0aW9uIGVycm9yIHdoZXJlIHlvdSBw
dXQgLzAgaW5zdGVhZCBvZiAvMTYsIGl0IGlzIG5vdCBhbiBhdHRhY2sgYnkgaXRzZWxmLiBMaWtl
IHdlIGhhdmUgaW4gQkdQIHRvZGF5Lg0KDQotLT4gSm9lbCBIYWxwZXJuOiBNaXNjb25maWd1cmF0
aW9uIGNhbiBiZSB0aGUgZXF1aXZhbGVudCBvZiBhIHNlY3VyaXR5IGlzc3VlLiANCg0KLS0+IERh
bWllbiBTYXVjZXo6IFllcywgYnV0IHRoZSBpbnRlbnRpb24gaXMgbm90IHRoZXJlLg0KDQotLT4g
Sm9lbCBIYWxwZXJuOiBNb3N0IG9mIHRoZSBCR1Agc2VjdXJpdHkgaXMgYWJvdXQgbWlzY29uZmln
dXJhdGlvbiBpbiB0aGUgY3VycmVudCB3b3JsZC4NCg0KDQoNCkRpbm8gRmFyaW5hY2NpIHByZXNl
bnRpbmc6IGRyYWZ0LWZhcmluYWNjaS1saXNwLWxjYWYNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KLS0+IEpvZWwgSGFscGVybjogSSB3b3Vs
ZCBiZSBpbnRlcmVzdGVkIGluIGNvbW1lbnRzIGZyb20gdGhlIHJvb20uIE9idmlvdXNseSBhIGZp
bmFsIGRlY2lzaW9uIGhhcyB0byBiZSBtYWRlIG9uIHRoZSBsaXN0IGJ1dCBpZiBwZW9wbGUgaGF2
ZSBvcGluaW9uLCB3aGV0aGVyIHRoaXMgbWFrZXMgc2Vuc2UgZm9yIHRoZSB3b3JraW5nIGdyb3Vw
LCBwbGVhc2Ugc3BlYWsgdXAuDQoNCi0tPiBBbHUgQWdhcndhbCAoPyk6IEkgdGhpbmsgdGhlIGRv
Y3VtZW50IGhhcyB0byBzcGVsbCBvdXQgd2hpY2ggdXNlIGNhc2VzIGFyZSBpbiB0aGUgY2hhcnRl
ciBhbmQgd2hpY2ggYXJlIG5vdC4gVGhlIG9uZXMgdGhhdCBhcmUgbm90IGluIHRoZSBjaGFydGVy
IEkgdGhpbmssIGJlZm9yZSBhc2tpbmcgd2hldGhlciB0aGUgZG9jdW1lbnQgc2hvdWxkIGJlIGFk
b3B0ZWQgb3Igbm90LCBoYXZlIHRvIGJlIHRha2VuIG91dCwgb3IgdGhlIGNoYXJ0ZXIgaGFzIHRv
IGJlIHJlLWRvbmUuDQoNCi0tIEphcmkgQXJra286IEkgd291bGRuJ3Qgd29ycnkgYWJvdXQgdGhl
IGNoYXJ0ZXIgaXNzdWUuIFdoYXQgaXMgaW4gdGhlIGNoYXJ0ZXIgYW5kIHdoYXQgaXMgbm90LiBJ
IGd1ZXNzIHlvdSBhcmUgY3JlYXRpbmcgYSBnZW5lcmljIGNhcGFiaWxpdHkgdGhhdCBjYW4gYmUg
dXNlZCBpbiB2YXJpb3VzIHdheXMgYW5kIHlvdSBhcmUgY2hhdHRlcmVkIHRvIGRvIHRoZSBnZW5l
cmljIGNhcGFiaWxpdGllcy4gSGF2aW5nIHNhaWQgdGhhdCwgSSBoYXZlIGEgcXVlc3Rpb24gbWFy
ayBvbiB3aHkgd2Ugd291bGQgYmUgZG9pbmcgdGhpcy4gRXZlbiB3aXRob3V0IHRoaXMgeW91IGFy
ZSBhYmxlIHRvIHBhc3MgYXJvdW5kIElQdjQgYW5kIElQdjYgYWRkcmVzc2VzLCBlaXRoZXIgYXMg
SUQgb3IgbG9jYXRvcnMuIEkgZGlkbid0IHJlYWQgdGhlIGVudGlyZSBkb2N1bWVudCBidXQgdGhl
cmUgaXMgc29tZSB0ZXh0IHRoYXQgc3BlY2lmaWVzIHNvbWUgY2FzZXMgd2hlcmUgeW91IGNhbiBk
byBpdC4gU28gdGhlIHdvcmtpbmcgZ3JvdXAgc2hvdWxkIHRoaW5rIGFib3V0IHRoZSB0cmFkZS1v
ZmYgaGVyZS4gV2UgZG8gdGhpcz8gVGhpcyBpcyBhIGJpdCBtb3JlIGNvbXBsaWNhdGUgdGhhdCB3
aGF0IHdlIGhhdmUgY3VycmVudGx5LiBXZSBjYW4gZG8gbW9yZSwgcGVyaGFwcywgd2l0aCB0aGF0
LCBidXQgdGhpcyBpcyB0aGUgcXVlc3Rpb246IGRvIHdlIG5lZWQgdGhpcyBjb21wbGV4aXR5IHRv
IGRvIHRoZSB0aGluZ3MgdGhhdCB3ZSBuZWVkPyBPciBub3Q/DQoNCi0tPiBEaW5vIEZhcmluYWNj
aTogVGhlc2UgTENBRiBhZGRyZXNzZXMgYXJlIGp1c3QgRUlEcyBhbmQgUkxPQ3MuIFdoYXQgY291
bGQgYmUgcmVnYXJkZWQgYXMgY29tcGxleCBpcyB0aGF0IHRoZXJlIGlzIG1vcmUgcGFyc2luZyBj
b2RlIHRoYXQgaGFzIHRvIGJlIHdyaXR0ZW4gdG8gcGFyc2UgdGhlIGFkZHJlc3Nlcy4gQnV0IHlv
dSB3b3VsZCB1c2UgdGhpcyBuZXcgTENBRiBlbmNvZGVkIEVJRCBmb3IgZGF0YWJhc2UgbWFwcGlu
ZyBsb29rdXBzLCBmb3Igc2VuZGluZyBtYXAtcmVxdWVzdHMuIEl0J3MgdGhlIHVzZSBjYXNlIHRo
YXQgaGFzIHRoZSBjb21wbGljYXRpb24gbm90IHRoZSBlbmNvZGluZyBmb3JtYXQgcmVhbGx5Lg0K
DQotLT4gSmFyaSBBcmtrbzogQWdyZWVkLiBJcyBub3QgdGhlIGVuY2Fwc3VsYXRpb24gdGhlIGlz
c3VlcyBoZXJlLiBUaGUgaXNzdWUgaXMgbW9yZSB3aGF0IGtpbmRzIG9mIGlkZW50aWZpZXJzIHlv
dSBjYW4gcGFzcyBhcm91bmQ/IFdoYXQgZG8gdGhleSBtZWFuPyBBbmQgZG8gd2UgdXNlIHRoZW0/
IFRoYXQncyB0aGUgcGFydCBJIGFtIG1vc3RseSBjb25jZXJuZWQgYWJvdXQuDQoNCi0tPiBEaW5v
IEZhcmluYWNjaTogWW91IHdhbnQgdG8gcG9pbnQgdG8gdGhlIExDQUYgZG9jdW1lbnQgd2hlbiBh
IG5ldyB1c2UgY2FzZSBjb21lcyB1cCBhbmQgYSBzZXBhcmF0ZSBkb2N1bWVudCBzYXlzIHdlIHdh
bnQgdG8gdXNlIGxpc3AgZm9yIHNlcnZlciBsb2FkIGJhbGFuY2luZyBvciBzb21ldGhpbmcgbGlr
ZSB0aGF0LiBUaGlzIGlzIGhvdyB0aGUgRUlEcyB3b3VsZCBoYXZlIHRvIGxvb2sgYW5kIHRoaXMg
aXMgaG93IHRoZXkgaGF2ZSB0byBiZSBlbmNvZGVkIGFjY29yZGluZyB0byB0aGUgTENBRiBlbmNv
ZGluZy4NCg0KLS0+IEphcmkgQXJra286IEFsbCBvZiB0aGlzIG1ha2VzIHNlbnNlLiBXaGF0IEkg
YW0gc2F5aW5nIGlzIHRoYXQgYWZ0ZXIgcmVhZGluZyA2MCUgb2YgdGhlIGFyZ3VtZW50cyBpbiB0
aGUgZHJhZnQgSSBhbSBub3QgeWV0IGNvbnZpbmNlZCB0aGF0IHdlIG5lZWQgdGhpcy4gQnV0IHRo
aXMgaXMgYSBxdWVzdGlvbiBmb3IgdGhlIHdvcmtpbmcgZ3JvdXAgdG8gYW5zd2VyIHRvLg0KDQot
LT4gRGlubyBGYXJpbmFjY2k6IEkgYW0gYWN0dWFsbHkgaG9waW5nIHRoYXQgc29tZSBvZiB0aGUg
b3BlcmF0b3JzIHdpbGwgc2F5IHdoYXQgZm9ybWF0IHRoZXkgd2FudCB0byB1c2UgYW5kIHRoZSB1
c2UgY2FzZXMsIGJlY2F1c2UgdGhleSBzZWUgdGhlIGJlbmVmaXRzIG9mIGxvY2F0b3IgSUQgc2Vw
YXJhdGlvbiBhbmQgdGhleSB3aWxsIGNvbWUgdXAgd2l0aCBzYXlpbmcgIkkgbmVlZCBhbiBFSUQg
dGhhdCBsb29rcyBsaWtlIHRoaXMiLiBNYXliZSBJIGNhbiBnZXQgYSBub3Rpb24gb2YgSVB2NCBh
bmQgSVB2NiB2cy4gYW4gaW5zdGFuY2UgSUQgb3Igc29tZXRoaW5nIGxpa2UgdGhhdC4gSSBhbSBo
b3BwaW5nIHRoYXQgdGhpcyB0cmlnZ2VycyB0aG91Z2h0cyBhbmQgdGhhdCBnZXRzIGluIHRoZSBk
b2N1bWVudC4gVGhlbiwgd2UgZGVjaWRlIGlmIHRoaXMgc2hvdWxkIGJlIGEgd29ya2luZyBncm91
cCBkb2N1bWVudCBvciBub3QuDQoNCi0tPiBKYXJpIEFya2tvOiBJZiBwZW9wbGUgaGF2ZSBzcGVj
aWZpYyB1c2VzIGNhc2VzIHRoZXkgd2FudCB0byBkbyBvciBzcGVjaWZpYyBkZXBsb3ltZW50IHBy
b2JsZW1zIHRoZXkgd2FudCB0byBzb2x2ZSwgbWF5IGJlIHRoYXQncyB0aGUgcnVsZSB3ZSBzaG91
bGQgdXNpbmcgbm90IHRoZSB0aGVvcmV0aWNhbCBwb3NzaWJpbGl0aWVzLiANCg0KLS0+IERpbm8g
RmFyaW5hY2NpOiBBYnNvbHV0ZWx5Lg0KDQotLT4gVGVycnkgTWFuZGVyc29uOiBXZSB3aWxsIHRh
a2UgdGhpcyBhcyBhY3Rpb24gaXRlbSB0byB0aGUgbGlzdCBmb3IgbW9yZSByZXZpZXcgYW5kIHdv
cmtncm91cCBzdGF0dXMuDQoNCg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tDQoNCi0tPiBUZXJyeSBNYW5kZXJzb246IE1pY2hhZWwgTWVudGggaXMgc3R1Y2sgaW4gYW5v
dGhlciB3b3JraW5nIGdyb3VwLiBXZSB3aWxsIGNvbnRpbnVlIHdpdGggU3JpcmFtIEtvdGlrYXBh
bHVkaS4NCg0KDQogDQpTcmlyYW0gS290aWthcGFsdWRpIHByZXNlbnRpbmc6IEVFTURQDQotLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCi0tPiBKZXNwZXIgU2tyaXZlcjog
SW4gd2hpY2ggd2F5IGlzIHRoaXMgdXNlZnVsLCB0aGF0IEkga25vdyBhIGhvbGUgZXhpc3RzIGJ1
dCBJIGRvIG5vdCBrbm93IHdoZXJlIGlzLg0KDQotLT4gU3JpcmFtIEtvdGlrYXBhbHVkaTogTGV0
IG1lIGV4cGxhaW4uIEkgZGlkIG5vdCBjb21wbGV0ZSBteSBleHBsYW5hdGlvbiB5ZXQuDQoNCi0t
PiBKb2VsIEhhbHBlcm46IEkgdGhpbmsgdGhlIHF1ZXN0aW9uIGlzIG5vdCB3aGF0IGdvb2QgaXMg
dGhpcyAvMjQsIGJ1dCB3aGF0IGdvb2QgaXMgdGhlIC8yMCBzaW5jZSB5b3Uga25vdyB0aGVyZSBh
cmUgb3RoZXIgaG9sZXMuIEFueXRoaW5nIHdoaWNoIG1hdGNoZXMgdGhlIC8yMCBhbmQgZG9lcyBu
b3QgbWF0Y2ggdGhlIG90aGVyIGluZm9ybWF0aW9uLCB0aGVuIHlvdSBoYXZlIHRvIHJlLXF1ZXJ5
IGFueXdheS4NCg0KLS0+IFNyaXJhbSBLb3Rpa2FwYWx1ZGk6IEkgdGhpbmsgSSBoYXZlIGFuIGFu
c3dlciB0byB0aGF0LiBMZXQgbWUganVzdCBnbyB0byB0aGUgZm9ybWF0IHNsaWRlLg0KDQotLT4g
Sm9lbCBIYWxwZXJuOiBJZiBpdCBrZWVwcyBmYWxsaW5nIGluIHRoZSBzYW1lIGhvbGUgaXQgaGFz
IHRvIGtlZXAgYXNraW5nLg0KDQotLT4gU3JpcmFtIEtvdGlrYXBhbHVkaTogSXQga2VlcHMgZmFs
bGluZyBpbiB0aGUgc2FtZSBob2xlLCB3aGljaCBpdCBoYXMgbm90IGFza2VkIGJlZm9yZT8gSXMg
dGhhdCB3aGF0IHlvdSBtZWFuPw0KDQotLT4gSm9lbCBIYWxwZXJuOiBPciBpdCBrZWVwcyBmYWxs
aW5nIGludG8gdGhlIGNvbW1vbiBzcGFjZSBidXQgbm90IGZhbGxpbmcgaW50byB0aGUgaG9sZXMu
IEl0IGp1c3Qga2VlcHMgYXNraW5nLiBJdCBmZWVscyB0aGF0IGl0IGlzIGNvdW50ZXJwcm9kdWN0
aXZlLiBUaGUgb3RoZXIgdGhpbmcgSSB3b3VsZCBvYnNlcnZlIGlzIHRoYXQgdGhlIGN1cnJlbnQg
Zm9ybWF0IGhhcyBhIGNvdW50ZXIuICBDb3VudHMgdGhlIGNhc2VzIDAsIDEsIGFuZCBtb3JlIHRo
YW4gb25lLiBUaGUgZmFjdCB0aGF0IHlvdSB3YW50IGFuIGV4Y2VwdGlvbiBmb3Igd2hpY2ggaXMg
bm90IHJlc29sdmVkIGlzIGFuIGludGVyZXN0aW5nIGlkZWEsIGJ1dCB5b3UgZG9uJ3QgbmVlZCBh
IHR5cGUgaW5kaWNhdG9yIGZvciB0aGF0IGluIHRoZSBtYWluIG1lc3NhZ2UuIFlvdSBuZWVkIGl0
IGluIHRoZSByZXNwb25zZSBpdHNlbGYsIHRoZSBkZXRhaWxlZC4gVGhpcyB3b3VsZCBjb3ZlciBh
bGwgb2YgeW91ciBjYXNlcyB3aXRob3V0IGhhdmluZyBlbnVtZXJhdGVkIGNhc2VzLiBJIGFsd2F5
cyBnZXQgbmVydm91cyB3aGVuIHdlIGNsYWltIHdlIGhhdmUgZW51bWVyYXRlZCBhbGwgcG9zc2li
bGUgY2FzZXMgaW4gYSBwcm90b2NvbC4NCg0KLS0+IFNyaXJhbSBLb3Rpa2FwYWx1ZGk6IFdlIGNh
biBkbyBpdCBkaWZmZXJlbnRseS4gSXQgaXMganVzdCBhIHF1ZXN0aW9uIG9mIHNlbWFudGljcy4g
SSBhZ3JlZSB3aXRoIHlvdS4gVGhlcmUgYXJlIHRoZXNlIHRocmVlIHBvc3NpYmlsaXRpZXMgYW5k
IHlvdSB3YW50IHRvIGJlIGFibGUgdG8gY292ZXIgYWxsIG9mIHRoZW0gaW4gdGVybXMgb2YgaW5m
b3JtaW5nIHRoZSBJVFIuDQoNCi0tPiBKZXNwZXIgU2tyaXZlcjogVGhlIGZpcnN0IHRocmVlIGNh
c2VzIHlvdSBtZW50aW9uZWQsIHRoZXkgYWxsIG1ha2Ugc2Vuc2UuIFRoZSBmb3VydGggb25lLCBJ
IHN0aWxsIGRvbid0IHNlZSB0aGUgdXNlLCBhcyBKb2VsIGFsc28gcG9pbnRlZCBvdXQgb24gdGhl
IGxlc3Mgc3BlY2lmaWMgcHJlZml4LiBJIHRoaW5rIG9uZSB3YXkgb2YgZG9pbmcgdGhpcyBpcyBu
b3QgcmVhbGx5IGEgc3BlY2lhbCBjYXNlLiBZb3UgY2FuIHNheSB0aGF0IGlmIHRoZSBFVFIgcmVz
cG9uc2libGUgZm9yIHRoZSAvMjAgcmVjZWl2ZXMgYSBkYXRhIHBhY2tldCBmb3IgYSBob2xlIGhl
IGNhbiB1c2UgYSBkYXRhIHRyaWdnZXJlZCBldmVudCBzYXlpbmcgImZvciB0aGlzIHBhcnRpY3Vs
YXIgZGVzdGluYXRpb24gSSBrbm93IHRoZXJlIGlzIGEgbW9yZSBzcGVjaWZpYyBvdXQgdGhlcmUs
IGdvIGFzayBpdCIuIEJ1dCB0aGlzIGlzIGEgZGF0YSB0cmlnZ2VyZWQgdGhpbmcsIG5vdCBhIGNv
bnRyb2wgcGxhbmUgdGhpbmcuIEJlY2F1c2UgSSBkbyBub3QgdGhpbmsgaXQgaXMgdXNlZnVsIHdo
ZW4geW91IGdldCBhIHJlcGx5IHRvIHNheSAiaGVyZSBpcyB0aGUgLzIwLCB0aGVyZSBhcmUgc29t
ZSBob2xlcywgYnV0IEkgZG8gbm90IHRlbGwgeW91IHdoZXJlIHRoZSBob2xlcyBhcmUiLiBJZiBp
bnN0ZWFkIEkgc2VuZCBhIHBhY2tldCBhbmQgeW91IHJlcGx5ICJ0aGVyZSBpcyBhIG1vcmUgc3Bl
Y2lmaWMiIHRoaXMgaXMgc29tZXRoaW5nIEkgY2FuIHVzZS4gQnV0IHRoaXMgaXMgYSBkYXRhIHRy
aWdnZXJlZCB0aGluZyB0aGF0IGhhcyBwcm9zIGFuZCBjb25zLg0KDQotLT4gSm9lbCBIYWxwZXJu
OiBPciwgeW91IGNhbiBzcGxpdCB0aGUgYW5zd2VycyB1bnRpbCB5b3VyIHJlcGx5IGRvZXMgbm90
IGhhdmUgYW55IGhvbGUuDQoNCi0tPiBKZXNwZXIgU2tyaXZlcjogWWVzLCBidXQgdGhpcyBpcyBt
YXAgcHJvbGlmZXJhdGlvbi4gQnV0IEkgdGhpbmsgdGhhdCBjYXNlIDMgaXMgdGhlIG5vdmVsIG9u
ZSwgd2hlcmUgeW91IHNheSAiaGVyZSBpcyBhIHNob3J0IHByZWZpeCwgYnV0IHRoZXJlIGFyZSBs
b3Qgb2YgbW9yZSBzcGVjaWZpYywgYXNrIGlmIHlvdSBhcmUgZ29pbmcgdG8gdGFsayB0byB0aGVt
Ii4gVGhpcyB3ZSBjYW4gYWxyZWFkeSBlbmNvZGUgdG9kYXksIGJ1dCBpcyBhIG5ldyBpbXBsZW1l
bnRhdGlvbiB0ZWNobmlxdWUuDQoNCi0tPiBTcmlyYW0gS290aWthcGFsdWRpOiBJIGFncmVlIHRo
YXQgaWYgd2UgY292ZXIgdXAgdG8gY2FzZSAzIHdlIGFyZSBwcm9iYWJseSBpbiBwcmV0dHkgZ29v
ZCBzaGFwZSwgYW5kIGFzIEpvZWwgc2F5cywgaWYgeW91IGhhdmUgdG9vIG1hbnkgaG9sZXMsIHlv
dSBoYXZlIHRoZSBjaG9pY2UgdG8gYnJlYWsgdXAgdGhlIG1hcHMgaW4gbW9yZSBtYXBzLCBnZXR0
aW5nIGRvd24gdG8gYSBncmFudWxhcml0eSB3aGVyZSB5b3UgaGF2ZSB0byBpbmZvcm0gdGhlIElU
UiBvZiBmZXcgaG9sZXMsIG5vdCBtYW55IGhvbGVzLiBUaGUgb3BlcmF0b3IgaGFzIHRoaXMgZmxl
eGliaWxpdHkuDQoNCi0tPiBKZXN0ZXIgU2tyaXZlcjogTXkgcG9pbnQgaXMsIGFuZCBJIHRoaW5r
IEpvZWwgc2hhcmVzIHRoaXMsIGVpdGhlciB3ZSBhcmUgbWlzdW5kZXJzdGFuZGluZyB3aGF0IHlv
dSBhcmUgdHJ5aW5nIHRvIHRlbGwgd2hlbiB5b3Ugc2F5IHRoYXQgdGhlcmUgaXMgYSBtb3JlIHNw
ZWNpZmljIHByZXNlbnQgb3Igd2hhdCBjYW4gSVRSIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvci4g
SWYgeW91IGNhbm5vdCBzaG93IHdoYXQgdXNlIHRoZXJlIGlzIGZvciB0aGUgSVRSIHRvIGtub3cg
dGhlcmUgaXMgYSBtb3JlIHNwZWNpZmljIHRoYXQgZXhpc3RzLCB3aHkgZXZlbiB0YWxrIGFib3V0
IGl0Lg0KIA0KLS0+IFNyaXJhbSBLb3Rpa2FwYWx1ZGk6IElmIHRoZXJlIGFyZSA0IGV4Y2VwdGlv
bnMgbGlrZSBpbiB0aGlzIGNhc2UgYW5kIHN1cHBvc2UgdHdvIG9mIHRoZW0gdGFrZSA5NSUgb2Yg
dGhlIHRyYWZmaWMgYW5kIEkgZG9uJ3Qgd2FudCB0byBvdmVybG9hZCB0aGUgSVRSIHdpdGggYWxs
IGZvdXIgb2YgdGhlbSBvciB0ZW4gb2YgdGhlbSBpZiB0aGVyZSBhcmUgZXZlbiBtb3JlLCB0aGVu
IEkgaW5mb3JtIHRoZSBJVFIgb25seSBhYm91dCB0aGlzIHR3byBzcGVjaWZpYyBtYXBzLiBUaGUg
b3BlcmF0b3Igd2lsbCBrbm93IHRoYXQgOTUlIG9mIHRoZSBwYWNrZXRzIHdpbGwgYmUgYWJsZSB0
byBiZW5lZml0IGZyb20gdGhvc2Ugc3BlY2lmaWMgbWFwcy4gRm9yIHRoZSBvdGhlciBzcGVjaWZp
YyBtYXBzLCBpZiBhIGdpdmUgdG8gdGhlIElUUiBhIGNvdW50LCAiSSBnYXZlIHlvdSAyIG91dCBv
ZiA0IiwgdGhlIElUUiB3aWxsIHVzZSB0aGUgdHdvIGZvciA5NSUgb2YgdGhlIHRpbWUuIEZvciB0
aGUgcmVtYWluaW5nIDUlIGlmIGl0IHF1ZXJpZXMgYWdhaW4gZm9yIGEgY291cGxlIG9mIHRpbWVz
LCB0aGVuIGl0IGhhcyBhbGwgNCBpbiB0aGUgY2FjaGUgYW5kIHRoZW4gaXQgaXMgZG9uZS4NCg0K
LS0+IERpbm8gRmFyaW5hY2NpOiBUaGUgRVRSIG1heSBub3QgaGF2ZSBhbGwgdGhlIGluZm9ybWF0
aW9uLiBFdmVuIHRob3VnaCBhbiBFVFIgY2FuIGtub3cgYWJvdXQgYSAvMjQsIG1heSBiZSBhIC8y
OCBvdXQgb2YgdGhhdCBtb3ZlcyBzb21ld2hlcmUgZWxzZS4gSXQgZG9lcyBub3Qga25vdyB3aGVy
ZSBpdCBtb3ZlcywgYW5kIGl0IGNhbid0IGFuZCB3ZSBkbyBub3Qgd2FudCB0aGF0IHRoZSBuZXcg
cGxhY2UgdGVsbCB0aGUgb2xkIHBsYWNlIHdoZXJlIGl0IGlzIGJlY2F1c2UgaXQgbWlnaHQgbm90
IGJlIHJlbGlhYmxlLiBCdXQgd2UgaGF2ZSBTTVJzLCBhbmQgaWYgdGhlIHRoaW5nIHRoYXQgbW92
ZXMgdGFsa3MgdG8gYW4gSVRSIGl0IHdpbGwgYmUgYXV0b21hdGljYWxseSBTTVInZWQuIFdoZW4g
YSBNYXAtUmVxdWVzdCBpcyBzZW50IGJhY2sgdG8gdGhhdCBuZXcgbG9jYXRpb24gbm93LCB0aGUg
Z3JhbnVsYXJpdHkgaXMgZGlzY292ZXJlZCBvbi1kZW1hbmQsIHdoZW4gaXQgbmVlZHMgaXQuIFlv
dSBkbyBub3QgaGF2ZSB0byBmaWxsIGhvbGVzIHdoZW4geW91IGRvbid0IG5lZWQgaXQsIGl0IGlz
IGFsbCBvbi1kZW1hbmQgYW5kIGl0IGlzIGFsbCBzcGVjJ2VkIGluIHRoZSBtYWluIHNwZWNzIHJp
Z2h0IG5vdy4NCg0KLS0+IFNyaXJhbSBLb3Rpa2FwYWx1ZGk6IEFyZSB5b3UgaW4gYWdyZWVtZW50
IHRoYXQgdGhlIGZpcnN0IHRocmVlIG1ha2Ugc2Vuc2U/DQoNCi0tPiBEaW5vIEZhcmluYWNjaTog
Tm8gY29tbWVudC4gSSBhbSB3b3JyaWVkIGFib3V0IHRoZSBjb21wbGV4aXR5LiBJdCBpcyBraW5k
IG9mIG92ZXJ3aGVsbWluZy4NCg0KLS0+IFNyaXJhbSBLb3Rpa2FwYWx1ZGk6IFllcywgYnV0IGlu
IHRoZSBsYXN0IG1lZXRpbmcgRGFycmVsIGhhZCBhIHByZXNlbnRhdGlvbiB3aGVyZSB5b3UgZ3V5
cyBkbyBzb21lIGV4Y2VwdGlvbnMsIGluZm9ybSBhYm91dCBleGNlcHRpb24gaW4gdGhlIG1hcHMg
aW4gTElTUC4NCg0KLS0+IEpvZWwgSGFscGVybjogWWVzLCB0aGVyZSBpcyBhbHJlYWR5IHN0dWZm
IGluIHRoZSBzcGVjcyB0byBpbmZvcm0gYWJvdXQgZXhjZXB0aW9ucy4NCg0KLS0+IFNyaXJhbSBL
b3Rpa2FwYWx1ZGk6IEl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWdyZWVtZW50IG9uIHRoZSBmaXJz
dCB0aHJlZSBjYXNlcywgYnV0IG5vdCBvbiB0aGUgZm91cnRoIG9uZS4NCg0KLS0+IERpbm8gRmFy
aW5hY2NpOiBUaGUgcmVhc29uIEkgc2F5ICJubyBjb21tZW50IiBpcyBiZWNhdXNlIEkgYW0gd29y
cmllZCBhYm91dCB0aGUgc29sdXRpb24gdGhhdCBpcyBjb21wbGV4Lg0KDQotLT4gSm9lbCBIYWxw
ZXJuOiBJIHRoaW5rIFNyaXJhbSBpcyBhc2tpbmcgaWYgdGhlIGNvbmNlcHR1YWwgcHJvYmxlbSBp
cyBkZWFsdCB3aXRoLCBhbmQgdGhlIGFuc3dlciBpcyB5ZXMuIEl0IGlzIG5vdCBkZWFsdCB3aXRo
IGJ5IGVuY29kaW5nIGNhc2UgbnVtYmVycyBpbiB0aGUgTElTUCByZXBseSBhbmQgSSBkbyBub3Qg
dGhpbmsgaXQgbmVlZHMgdG8gYmUgZGVhbHQgd2l0aCBpbiB0aGF0IHdheS4gQnV0IHRoZSBjb25j
ZXB0dWFsIHByb2JsZW0gaXMgYWRkcmVzc2VkIGFscmVhZHkgaW4gdGhlIHByb3RvY29sLg0KDQot
LT4gRGlubyBGYXJpbmFjY2k6IEV4YWN0bHkuDQoNCi0tPiBTcmlyYW0gS290aWthcGFsdWRpOiBJ
IGFtIG5vdCB3b3JyaWVkIGFib3V0IHRoZSBpbXBsZW1lbnRhdGlvbiBhdCB0aGlzIHBvaW50Lg0K
DQotLT4gSm9lbCBIYWxwZXJuOiBJIHRoaW5rLCB0aGlzIHdhcyBwYXJ0aWFsbHkgbWlzbGVhZGlu
ZyBpbiB5b3VyIGRpYWdyYW1zLg0KDQotLT4gU3JpcmFtIEtvdGlrYXBhbHVkaTogSSBkaWQgdGhh
dCBmb3IgYSBwYXBlciBidXQgbm90IGZvciBMSVNQIGluIHBhcnRpY3VsYXIuIFRoZSBpbnRlbnRp
b24gd2FzIHRoYXQgaWYgdGhlIElUUiBrbm93cyBob3cgbWFueSBleGNlcHRpb25zIHRoZXJlIGFy
ZSwgaXQgZ290IGEgZmV3IG9mIHRoZW0sIGFuZCBhZnRlciBmZXcgcXVlcmllcyBpZiBpdCBnb3Qg
YWxsIG9mIHRoZW0sIHRoZW4gaXQgaXMgY292ZXJlZCBmdWxseS4gVGhpcyB3YXMgd2hhdCBteSBw
YXJ0IHdhcywgYnV0IEkgZG8gbm90IGluc2lzdCB0aGF0IGl0IG11c3QgYmUgbmVjZXNzYXJpbHkg
ZG9uZS4NCg0KLS0+IERhdmUgTWV5ZXI6IEkgZG8gbm90IHRoaW5rIHRoYXQgYW55Ym9keSBjYW4g
YWN0dWFsbHkga25vdyBob3cgbWFueSBleGNlcHRpb25zIHRoZXJlIGFyZS4gV2UgbmVlZCB0byBk
byB0aGlzIG1vcmUgb24gZGVtYW5kLCBiZWNhdXNlIHdlIGRvIG5vdCBoYXZlIGFueSBpZGVhIGhv
dyBFSUQgYXJlIGNob3BwZWQsIHdoYXQgdGhlIGRvd25zdHJlYW0gZG9lcyB3aXRoIGl0cyBibG9j
ay4NCg0KLS0+IEpvZWwgSGFscGVybjogVXN1YWxseSB3aGVuIHlvdSBhbGxvY2F0ZSBkb3duc3Ry
ZWFtIHlvdSB3aWxsIGJlIGFsc28gYW5zd2VyaW5nLiBUaGUgY2FzZSBTcmlyYW0gaXMgaHlwb3Ro
ZXNpemluZyBpcyB0aGUgY2FzZSB3aGVyZSB5b3UgYW5zd2VyIGZvciBoaWdoIGxldmVsIGFnZ3Jl
Z2F0ZXMsIG1pZGRsZSBsZXZlbCBhZ2dyZWdhdGVzLCBhbmQgbG93IGxldmVsIGFnZ3JlZ2F0ZXMs
IGJ1dCB0aGlzIGlzIGEgZGVwbG95bWVudCBxdWVzdGlvbiBub3QgYSBwcm90b2NvbCBxdWVzdGlv
bi4NCg0KLS0+IERhdmUgTWV5ZXI6IFllcy4NCg0KLS0+IEpvZWwgSGFscGVybjogQW5kIEkgaG9w
ZSBpdCBkb2VzIG5vdCBoYXBwZW4gbXVjaCwgYmVjYXVzZSBFSUQgZG8gbm90IG5lZWQgdG8gYmUg
dG9wb2xvZ2ljYWxseSBhbmQgd2Ugc2hvdWxkIHRha2UgYWR2YW50YWdlIG9mIHRoYXQuIA0KDQot
LT4gRGF2ZSBNZXllcjogVGhhdCdzIHRoZSBwb2ludC4gUmlnaHQuDQoNCg0KDQoNCk1pY2hhZWwg
TWVudGggcHJlc2VudGluZzogZHJhZnQta2xlaW4tbGlzcC1tbi1uYXQtdHJhdmVyc2FsDQotLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoN
Ci0tPiBEaW5vIEZhcmluYWNjaTogRG8geW91IGJlbGlldmUgdGhlIHByb2JsZW0gb2NjdXJzIGFs
c28gZm9yIG1vYmlsZSBub2RlcycgaW5pdGlhdGVkIGNvbm5lY3Rpb25zIG9yIG9ubHkgaW4gdGhl
IGRpcmVjdGlvbiB5b3UganVzdCBzYWlkPw0KDQotLT4gTWljaGFlbCBNZW50aDogVGhlIHByb2Js
ZW0gb2NjdXJzIHdoZW4gdGhlIGNvbm5lY3Rpb24gaXMgaW5pdGlhdGVkIGZyb20gdGhlIG91dHNp
ZGUgd29ybGQuDQoNCi0tPiBEaW5vIEZhcmluYWNjaTogV2hlbiB0aGUgbW9iaWxlIG5vZGUgaXMg
YSBzZXJ2ZXIuIFRoYXQncyB0aGUgcHJvYmxlbSBzdGF0ZW1lbnQgeW91J3JlIGdvaW5nIGFmdGVy
Lg0KDQotLT4gTWljaGFlbCBNZW50aDogV2hlbiB0aGUgbW9iaWxlIG5vZGUgaXMgYSBwaG9uZS4N
Cg0KLS0+IEpvZWwgSGFscGVybjogV2hlbiB0aGUgbW9iaWxlIG5vZGUgaXMgYSByZXNwb25kZXIu
IEl0IG1heSBiZSBvciBtYXkgYmUgbm90IGEgc2VydmVyLCBidXQgaXQgaXMgYSByZXNwb25kZXIu
DQoNCi0tPiBEaW5vIEZhcmluYWNjaTogIE9rLCBpdCBpcyBub3QgaW5pdGlhdGluZyBhIFRDUCBj
b25uZWN0aW9uLiANCg0KLS0+IEplc3BlciBTa3JpdmVyOiBEaW5vLCBJIGRvIG5vdCB0aGluayBp
dCBtYWtlcyBhbnkgZGlmZmVyZW5jZS4gQmVjYXVzZSBpbiB0aGUgZGF0YSBwbGFuZSwgYW55IGRh
dGEgcGFja2V0IGlzIHNlbnQgdG8gdGhlIHNhbWUgVURQIHBvcnQgbnVtYmVyLCB3ZSBhcmUgbm90
IHVzaW5nIGEgc29ja2V0LiBTbyB0aGUgTkFUIHJvdXRlciB3aWxsIG5vdCBoYXZlIGEgTkFUIHRy
YW5zbGF0aW9uIGZvciB0aGUgcmV0dXJuaW5nIGRhdGEgdHJhZmZpYywgcmVnYXJkbGVzcyBpZiB0
aGUgbm9kZSBpcyBpbml0aWF0aW5nIHRoZSB0cmFmZmljIG9yIG5vdC4NCg0KLS0+IEpvZWwgSGFs
cGVybjogRmFpciBwb2ludC4gVGhlIHR3byBmbG93cyBhcmUgZXNzZW50aWFsbHkgaW5kZXBlbmRl
bnQgd2l0aCByZWdhcmRzIHRvIExJU1AuDQoNCi0tPiBEYXZlIE1leWVyOiBIb3cgZG9lcyB0aGUg
bW9iaWxlIG5vZGUga25vdyBhYm91dCB0aGUgb3V0c2lkZSBhZGRyZXNzIG9mIHRoZSBOQVQ/DQoN
Ci0tPiBNaWNoYWVsIE1lbnRoOiBJdCBkb2VzIG5vdC4NCg0KLS0+IERhdmUgTWV5ZXI6IE9rLiBT
byB3aGF0IGlzIHRoZSBkZXN0aW5hdGlvbiBSTE9DPyANCg0KLS0+IE1pY2hhZWwgTWVudGg6IFRo
ZSBNYXAgU2VydmVyLg0KDQotLT4gRGF2ZSBNZXllcjogT0sNCg0KLS0+IFJvc3MgQ2FsbG9uOiBE
b2VzIHRoZSBOQVQgYm94IGl0c2VsZiBrbm93IGFib3V0IExJU1AgaW4gdGhpcyBjYXNlPw0KDQot
LT4gSm9lbCBIYWxwZXJuOiBOby4gVGhlIE5BVCBpcyBhIGNvbXBsZXRlIG5haXZlIE5BVCB0aGUg
d29ya3MgYXMgdXN1YWwuDQoNCi0tPiBNaWNoYWVsIE1lbnRoOiBZZXMuIEl0IGlzIGNvbXBsZXRl
bHkgdW5hd2FyZSBvZiBMSVNQLg0KDQotLT4gRGlubyBGYXJpbmFjY2k6IFR3byBuZWdhdGl2ZSBj
b21tZW50cyBhbmQgb25lIHBvc2l0aXZlIGNvbW1lbnQuIEkgd2FudCB0byBnaXZlIHlvdSB0aGUg
cG9zaXRpdmUgY29tbWVudCBmaXJzdC4gV2UgdGhvdWdodCBhYm91dCB0aGlzIGZvciBhIGxvbmcg
dGltZSBhbmQgd2Ugc3RydWdnbGVkIHRoYXQgdGhlIHNvdXJjZSBwb3J0IG9mIHRoZSBwYWNrZXQg
d291bGQgaGF2ZSB0byBiZSB3ZWxsIGtub3duLCBidXQgeW91IHNvbHZlZCB0aGUgcHJvYmxlbSBi
eSB1c2luZyA0MzQxLCBhbmQgd2hhdGV2ZXIgaXMgdGhlIGN1cnJlbnQgaGFzaGluZyBhbGdvcml0
aG0gaXMgdXNpbmcgdGhlIElUUiwgaXQgY2FuIGJlIHN0aWxsIG1haW50YWluZWQgYW5kIHRoZXJl
Zm9yZSB3ZSBkbyBub3QgYnJlYWsgbGFncyBpbiB0aGUgY29yZS4gVGhhdCdzIHdvbmRlcmZ1bCEg
RXhjZWxsZW50IGpvYiEgCldoYXQgSSBkbyBub3QgbGlrZSBpcyBjYXJyeWluZyBwcml2YXRlIGFk
ZHJlc3NlcyBpbiBhbnkga2luZCBvZiBwcm90b2NvbCBwYXlsb2FkLiBJIHRoaW5rIHRoYXQncyBr
aW5kIG9mIG5vdCBnb29kLiBJZiB3ZSBjYW4gcHV0IGdsb2JhbCBhZGRyZXNzZXMgaW4gdGhhdCBy
ZWdpc3RyYXRpb24sIGFuZCBmaW5kIGl0IG91dCB3aXRoIGFuIG91dC1vZi1iYW5kIG1lY2hhbmlz
bSwgSSB0aGluayB0aGF0IHdvdWxkIGJlIGdvb2QuIEFub3RoZXIgbmVnYXRpdmUgY29tbWVudCBp
cyB0aGF0IGl0IG5vdyByZXF1aXJlcyB0aGF0IGFsbCBkYXRhIHBhY2tldHMgZ28gbm93IHRocm91
Z2ggdGhlIG1hcCBzZXJ2ZXIgYm94IGFuZCBpZiB5b3UgaGF2ZSBhIG1hcHBpbmcgc2VydmljZSBw
cm92aWRlciB0aGF0IGlzIGRvaW5nIG9ubHkgY29udHJvbCBwbGFuZSBzZXJ2aWNlcywgbm93IGl0
IGhhcyB0byBvZmZlciBkYXRhIHBsYW5lIHNlcnZpY2VzIGFzIHdlbGwuIFRoYXQncyBraW5kIG9m
IG5hc3R5Lg0KDQotLT4gSm9lbCBIYWxwZXJuOiBJdCBjaGFuZ2VzIHRoZSBzY2FsaW5nIHByb3Bl
cnRpZXMgb2YgdGhlIGFyY2hpdGVjdHVyZSwgd2hpY2ggaXMgYW4gdW5mb3J0dW5hdGUgY29uc2Vx
dWVuY2UuDQoNCi0tPiBNaWNoYWVsIE1lbnRoOiBBbnN3ZXJpbmcgeW91ciBzZWNvbmQgY29tbWVu
dCwgdGhpcyBwcml2YXRlIGFkZHJlc3MsIHdoaWNoIGlzIGluIHRoZSBwYXlsb2FkIGl0J3Mgbm90
IHJlYWxseSB1c2VkLiBJdCBpcyBqdXN0IHVzZWQgZm9yIGNvbXBhcmlzb24gYnV0IGlzIG5vd2hl
cmUgc3RvcmVkLiBTbyB0aGlzIGlzIGRhdGEganVzdCBmb3IgY29tcGFyaXNvbiBidXQgbm90IGZv
ciB1c2UuDQoNCi0tPiBEaW5vIEZhcmluYWNjaTogUHJpdmF0ZSBhZGRyZXNzZXMgaGF2ZSB0aGUg
c2FtZSBwcm9ibGVtIGFzIGxpbmsgbG9jYWwgYWRkcmVzc2VzIGluIElQdjYuIFBlb3BsZSBsb29r
aW5nIGF0IHRoZXNlIGFkZHJlc3NlcyBjYW5ub3QgbWFrZSBhbnkgc2Vuc2Ugb3V0IG9mIHRoZW0s
IGJlY2F1c2Ugb2YgdGhpcyBsb2NhbCBhbGxvY2F0aW9uIHRoYXQgZG9lcyBub3QgaGF2ZSBhbnkg
dG9wb2xvZ2ljYWwgc2lnbmlmaWNhbmNlLiBJZiB5b3Ugd2FudCB0byBnbyBhbmQgZ2V0IHlvdXIg
Z2xvYmFsIGFkZHJlc3MgYnkgdXNpbmcgSUNFIG9yIFNUVU4gdGVjaG5pcXVlcyB5b3UgY2FuIGdl
dCBhcm91bmQgdGhhdC4gDQoNCi0tPiBKb2VsIEhhbHBlcm46IFdoYXQgaGUgaXMgc3Vic3RhbnRp
YWxseSBkb2luZyBpcyBhIHN1YnNldCBvZiBJQ0UsIG9uIHRoZSBtYXAgc2VydmVyLiBBbmQgaW4g
SUNFIGV4Y2hhbmdlcyBkbyBjYXJyeSB0aGUgcHJpdmF0ZSBhZGRyZXNzIGluIHRoZSBib2R5Lg0K
DQotLT4gRGlubyBGYXJpbmFjY2k6IE5vIHlvdSBkbyBub3QgaGF2ZSB0byBiZWNhdXNlIHRoZSBw
cml2YXRlIGFkZHJlc3MgaXMgdGhlIHNvdXJjZSBhZGRyZXNzIG9mIHRoZSBwYWNrZXQgeW91IGVt
aXQgYW5kIHRoZSBOQVQgaXMgZ29pbmcgdG8gdHJhbnNsYXRlIGl0IHRvIGEgZ2xvYmFsIGFkZHJl
c3MuIEFzIGxvbmcgYXMgdGhhdCBnbG9iYWwgYWRkcmVzcyBjYW4gZ28gYmFjaywgc3Vic2VxdWVu
dCBjb250cm9sIHBhY2tldHMgY2FuIGNvbnRhaW4gdGhlIGdsb2JhbCBhZGRyZXNzLCBub3QgdGhl
IHByaXZhdGUgYWRkcmVzcy4NCg0KLS0+IEpvZWwgSGFscGVybjogSSB0aGluayB5b3UgYXJlIGFz
a2luZyBhIGRpZmZlcmVudCBxdWVzdGlvbiB0aGF0IHNob3VsZCBiZSBleHBsb3JlZCBtb3JlLg0K
DQotLT4gRGlubyBGYXJpbmFjY2k6IERvZXMgdGhpcyB3b3JrIGluY2x1ZGUgdGhlIGNhc2Ugd2hl
biBhIExJU1AgbW9iaWxlIG5vZGUgbW92ZXMgdG8gYSBMSVNQIHNpdGUgYmVoaW5kIGEgTkFUPw0K
DQotLT4gTWljaGFlbCBNZW50aDogV2UgZGlkIG5vdCB0aGluayBhYm91dCB0aGlzIGNhc2UuDQoN
Ci0tPiBKb2VsIEhhbHBlcm46IE1vc3Qgb2YgdGhpcyBkaXNjdXNzaW9uIGhhcyB0byB0YWtlIHBs
YWNlIGFmdGVyIHdlIG1ha2UgcmVhbCBwcm9ncmVzcyBvbiB0aGUgY29yZSBkb2N1bWVudHMgYW5k
IGdvdCB0aG9zZSBkb25lIGFuZCB3b3JrIHdpdGggSmFyaSBvbiB0aGUgY2hhcnRlci4gSW4gZ2Vu
ZXJhbCwgdGhlIHF1ZXN0aW9uIHdoZXRoZXIgd2UgYXJlIGdvaW5nIHRvIHdvcmsgb24gbW9iaWxp
dHkgbmVlZHMgdG8gYmUgYWRkcmVzc2VkIGZhaXJseSBpbiBkaXNjdXNzaW9uIHdpdGggYWxsIHRo
ZSBvdGhlciBmb2xrcyB3aG8gZGVhbCB3aXRoIG1vYmlsaXR5LiBXZSB3YW50ZWQganVzdCB0byBn
aXZlIHlvdSB0aGUgb3Bwb3J0dW5pdHkgYW5kIEkgYXBwcmVjaWF0ZSB5b3VyIHdvcmssIHRvIGdl
dCBwZW9wbGUgdG8ga25vdyB0aGF0IHlvdSB3ZXJlIHdvcmtpbmcgb24gdGhpcy4gV2Ugd2lsbCBu
b3Qgc3BlbmQgbW9yZSB3b3JraW5nIGdyb3VwIHRpbWUgcmVmaW5pbmcgdGhpcyBhdCB0aGlzIHN0
YWdlIG9mIHRoZSBlZmZvcnQuDQoNCi0tPiBHYWV0YW4gRmVpZ2U6IEZvbGxvd2luZyBEaW5vJ3Mg
Y29tbWVudC4gVGhpcyBicmluZ3MgdG9nZXRoZXIgdGhlIGRhdGEgcGxhbmUgYW5kIHRoZSBjb250
cm9sIHBsYW5lLCBhdCBzb21lIHBvaW50LiBJdCB3b3VsZCBiZSBpbnRlcmVzdGluZyB0byBrZWVw
IHRoZW0gc2VwYXJhdGVkLiBNYXliZSBpdCBpcyBqdXN0IGFuIGltcGxlbWVudGF0aW9uIGlzc3Vl
LCBidXQgYXJjaGl0ZWN0dXJhbGx5IEkgd291bGQgbWFpbnRhaW4gdGhlIGNvbnRyb2wgcGxhbmUg
YW5kIHRoZSBkYXRhIHBsYW5lIHNlcGFyYXRpb24uDQoNCi0tPiBNaWNoYWVsIE1lbnRoOiBpdCBp
cyBub3QgcmVxdWlyZWQgdGhhdCB0aGUgTkFUIHRyYXZlcnNhbCByb3V0ZXIgd2hpY2ggcmVsYXlz
IHRoZSB0cmFmZmljIGlzIHRoZSBzYW1lIGJveCBhcyB0aGUgbWFwIHNlcnZlci4gTG9naWNhbGx5
IHRoZXNlIGFyZSBkaWZmZXJlbnQgZnVuY3Rpb25zIHRoYXQgY2FuIGJlIGltcGxlbWVudGVkIGlu
IGRpZmZlcmVudCBib3hlcyBzbyB0aGVyZSBpcyBubyBuZWVkIHRvIGhhdmUgdGhlbSBpbiBvbmUg
Ym94Lg0KDQotLT4gSmVzcGVyIFNrcml2ZXI6IEJ1dCBpbiB5b3VyIHByb3Bvc2FsIG9ubHkgdGhl
IE1hcCBTZXJ2ZXIgaGFzIHRoZSBzdWZmaWNpZW50IGluZm9ybWF0aW9uIHRvIGFjdHVhbGx5IHJl
c3BvbmQgdG8gYSBNYXAgUmVxdWVzdCBhbmQgeW91IGNhbm5vdCBzcGxpdCB0aGVtLiBCZWNhdXNl
IHRoZSBtYXAgc2VydmVyIHdvdWxkIG5vdCBrbm93IGFueW1vcmUgdGhlIHBvcnQgbnVtYmVyIGFu
ZCB0aGUgTkFUIHRyYXZlcnNhbCByb3V0ZXIgaXMgbm90IGluIHRoZSBwb3NpdGlvbiB0byByZXNw
b25kIHRvIGEgTWFwIFJlcXVlc3QuDQoNCi0tPiBNaWNoYWVsIE1lbnRoOiBXZSBzaG91bGQgdGhp
bmsgYWJvdXQgaXQuDQoNCi0tPiBMdWlnaSBJYW5ub25lOiBJIHdvbmRlciBpZiB0aGVyZSBpcyBh
bnkgcmlzayBpbiB0aGUgZmFjdCB0aGF0IHlvdSBhcmUgc2VuZGluZyBhIG1lc3NhZ2Ugc2F5aW5n
ICJteSBuZXcgUkxPQyBpcyAxMC4wLjAuMSIgYnV0IGFjdHVhbGx5IHRoZSBzb3VyY2UgYWRkcmVz
cyBpcyBkaWZmZXJlbnQsIGNhbiBvcGVuIHRoZSBwb3NzaWJpbGl0eSB0byBzcG9vZmluZy4gQXJl
IHlvdSBzdXJlIHRoZSBndXkgdGhhdCBpcyBzZW5kaW5nIHlvdSB0aGUgbWVzc2FnZSBpcyBhbGxv
d2VkIHRvIGRvIHNvPyBJcyB0aGUgRUlEIHJlYWxseSBiZWhpbmQgdGhhdCBhZGRyZXNzPyBNYXkg
YmUgaXMgc29tZXRoaW5nIHlvdSBzaG91bGQgbG9vayBhdC4NCg0KLS0+IE1pY2hhZWwgTWVudGg6
IFdlIGRpZCBub3QgbG9vayBhdCBpdC4gTGV0J3MgdGFsayBhYm91dCBpdCBsYXRlci4NCg0KLS0+
IEplc3BlciBTa3JpdmVyOiBMdWlnaSwgSSB0aGluayBpdCBpcyBhbHJlYWR5IHRoZSBjYXNlIHRv
ZGF5LCBiZWNhdXNlIHRoZSBzb3VyY2UgYWRkcmVzcyBvZiB0aGUgTWFwIFJlZ2lzdGVyIG1lc3Nh
Z2UgZG9lcyBub3QgaGF2ZSB0byBiZSBpbiB0aGUgbG9jYXRvciBzZXQgYW5kIGF1dGhlbnRpY2F0
aW9uIGZvciBNYXAgUmVnaXN0ZXIgbWVzc2FnZXMgZXhpc3RzOiB0aGUgU0hBMSBhdXRoZW50aWNh
dGlvbi4NCg0KLS0+IEx1aWdpIElhbm5vbmU6IFN1cmUuIEJ1dCB0aGlzIGlzIGEgbW9iaWxlIHNj
ZW5hcmlvLCB3ZSBuZWVkIHRvIGVuZm9yY2UgdGhlIGF1dGhlbnRpY2F0aW9uIG1lY2hhbmlzbSBp
biBvcmRlciB0byBiZSBzdXJlLCB3aGVuIHlvdSByZWNlaXZlIGEgbWVzc2FnZSwgdGhhdCBpdCBp
cyBub3QgYSBzcG9vZiBidXQgaXQgaXMgdGhlIHNhbWUgZ3V5IHRoYXQgbW92ZWQuIFJldXNpbmcg
dGhlIGV4aXN0aW5nIG1lY2hhbmlzbSBpcyBqdXN0IGZpbmUuDQoNCi0tPiBKZXNwZXIgU2tyaXZl
cjogV2Ugb2J2aW91c2x5IHNob3VsZCBub3QgYnlwYXNzIGV4aXN0aW5nIGF1dGhlbnRpY2F0aW9u
Lg0KDQotLT4gSm9lbCBIYWxwZXJuOiBUaGVyZSBpcyBhbHNvIHRoZSBpbnRlcmVzdGluZyBjYXNl
IHRoYXQgc29tZWJvZHkgZWxzZSBpcyBjaGFuZ2luZyB0aGUgcmVzcG9uc2VzLCBhcyB0aGlzIE1h
cCBTZXJ2ZXIgaXMsIGFuZCB5b3UgZ290IGV4dGVuc2l2ZWx5IGF1dGhlbnRpY2F0ZWQgaW5mb3Jt
YXRpb24uIEF0IHRoZSBtb21lbnQsIHRoZSBjb250ZW50IGlzIG5vdCBhdXRoZW50aWNhdGVkLCBi
dXQgaWYgd2UgZXZlciBzdGFydCBkb2luZyBzbyB3ZSBzdGFydCBoYXZpbmcgbWlzbWF0Y2hpbmcg
c2V0IG9mIHJlcXVpcmVtZW50cy4gVGhlbiB3ZSBzdGFydCB0byBoYXZlIHNvbWV0aGluZyBpbnRl
cmVzdGluZywgdGhhdCBpcyBvbmUgb2YgdGhlIHJlYXNvbnMgd2h5IG1vYmlsaXR5IGlzIGZvciBs
YXRlci4NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQ0KDQpUZXJyeSBNYW5kZXJzb246IFdlIGFyZSBkb25lLiBTZWUgeW91
IGluIEJlaWppbmchDQoNCg0KDQoNCg0KDQoNCg==

--_002_C88AC68767FFterrymandersonicannorg_--

From root@core3.amsl.com  Fri Aug 13 08:30:22 2010
Return-Path: <root@core3.amsl.com>
X-Original-To: lisp@ietf.org
Delivered-To: lisp@core3.amsl.com
Received: by core3.amsl.com (Postfix, from userid 0) id 5B9803A68E3; Fri, 13 Aug 2010 08:30:02 -0700 (PDT)
From: Internet-Drafts@ietf.org
To: i-d-announce@ietf.org
Content-Type: Multipart/Mixed; Boundary="NextPart"
Mime-Version: 1.0
Message-Id: <20100813153012.5B9803A68E3@core3.amsl.com>
Date: Fri, 13 Aug 2010 08:30:02 -0700 (PDT)
Cc: lisp@ietf.org
Subject: [lisp] I-D Action:draft-ietf-lisp-08.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Fri, 13 Aug 2010 15:30:22 -0000

--NextPart

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Locator/ID Separation Protocol Working Group of the IETF.


	Title           : Locator/ID Separation Protocol (LISP)
	Author(s)       : D. Farinacci, et al.
	Filename        : draft-ietf-lisp-08.txt
	Pages           : 79
	Date            : 2010-08-13

This draft describes a network-based protocol that enables separation
of IP addresses into two new numbering spaces: Endpoint Identifiers
(EIDs) and Routing Locators (RLOCs).  No changes are required to
either host protocol stacks or to the "core" of the Internet
infrastructure.  LISP can be incrementally deployed, without a "flag
day", and offers traffic engineering, multi-homing, and mobility
benefits even to early adopters, when there are relatively few LISP-
capable sites.

Design and development of LISP was largely motivated by the problem
statement produced by the October, 2006 IAB Routing and Addressing
Workshop.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-lisp-08.txt

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

Below is the data which will enable a MIME compliant mail reader
implementation to automatically retrieve the ASCII version of the
Internet-Draft.

--NextPart
Content-Type: Message/External-body;
	name="draft-ietf-lisp-08.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID: <2010-08-13082726.I-D@ietf.org>


--NextPart--

From terry.manderson@icann.org  Mon Aug 16 17:45:24 2010
Return-Path: <terry.manderson@icann.org>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id F20DD3A6800 for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 17:45:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.013
X-Spam-Level: 
X-Spam-Status: No, score=-105.013 tagged_above=-999 required=5 tests=[AWL=-0.273, BAYES_20=-0.74, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SKlYW7H5qMG4 for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 17:45:24 -0700 (PDT)
Received: from EXPFE100-1.exc.icann.org (expfe100-1.exc.icann.org [64.78.22.236]) by core3.amsl.com (Postfix) with ESMTP id 4154C3A65A5 for <lisp@ietf.org>; Mon, 16 Aug 2010 17:45:24 -0700 (PDT)
Received: from EXVPMBX100-1.exc.icann.org ([64.78.22.232]) by EXPFE100-1.exc.icann.org ([64.78.22.236]) with mapi; Mon, 16 Aug 2010 17:46:00 -0700
From: Terry Manderson <terry.manderson@icann.org>
To: "lisp@ietf.org" <lisp@ietf.org>
Date: Mon, 16 Aug 2010 17:45:59 -0700
Thread-Topic: draft-iannone-lisp-mapping-versioning as a work group item
Thread-Index: Acs9pY8a7jGb6VUOukqkQmhb8tt7Hg==
Message-ID: <C89018E7.693C%terry.manderson@icann.org>
Accept-Language: en-US
Content-Language: en
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: [lisp] draft-iannone-lisp-mapping-versioning as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 00:45:25 -0000

Workgroup,

The authors of draft-iannone-lisp-mapping-versioning-02 have requested for
it to be considered as a workgroup item.

I am opening a 14 day call for comments on the adoption of this document as
a WG item.

You will find the ID and past versions at:

    http://tools.ietf.org/html/draft-iannone-lisp-mapping-versioning-02

Please email the WG list stating that you either accept, or not accept, the
item before Tuesday the 31st of August 2010.

If you email to support the acceptance of this document as a WG item, pleas=
e
also indicate if you are able to either contribute to, or review, (or both)
the draft.

Sitting in silence does not indicate support, please respond appropriately.


Cheers
Terry (& Joel)


From terry.manderson@icann.org  Mon Aug 16 17:45:32 2010
Return-Path: <terry.manderson@icann.org>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 0315C3A68D5 for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 17:45:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.912
X-Spam-Level: 
X-Spam-Status: No, score=-105.912 tagged_above=-999 required=5 tests=[AWL=0.687, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id l+DGvBogg71q for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 17:45:31 -0700 (PDT)
Received: from EXPFE100-1.exc.icann.org (expfe100-1.exc.icann.org [64.78.22.236]) by core3.amsl.com (Postfix) with ESMTP id 1F6033A6896 for <lisp@ietf.org>; Mon, 16 Aug 2010 17:45:31 -0700 (PDT)
Received: from EXVPMBX100-1.exc.icann.org ([64.78.22.232]) by EXPFE100-1.exc.icann.org ([64.78.22.236]) with mapi; Mon, 16 Aug 2010 17:46:07 -0700
From: Terry Manderson <terry.manderson@icann.org>
To: "lisp@ietf.org" <lisp@ietf.org>
Date: Mon, 16 Aug 2010 17:46:05 -0700
Thread-Topic: draft-farinacci-lisp-lcaf-00 as a work group item
Thread-Index: Acs9pZKufKdhlvnnwU2y4LLf9UwH5w==
Message-ID: <C89018ED.693D%terry.manderson@icann.org>
Accept-Language: en-US
Content-Language: en
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 00:45:32 -0000

Workgroup,

The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
considered as a workgroup item.

I am opening a 14 day call for comments on the adoption of this document as
a WG item.

You will find the ID at:

    http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00

Please email the WG list stating that you either accept, or not accept, the
item before Tuesday the 31st of August 2010.

If you email to support the acceptance of this document as a WG item, pleas=
e
also indicate if you are able to either contribute to, or review, (or both)
the draft.

Sitting in silence does not indicate support, please respond appropriately.


Cheers
Terry (& Joel)


From dino@cisco.com  Mon Aug 16 22:33:41 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id C41473A6919 for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 22:33:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DCaS-NEcAIEZ for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 22:33:37 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id 09ABE3A68C6 for <lisp@ietf.org>; Mon, 16 Aug 2010 22:33:37 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAK67aUyrRN+J/2dsb2JhbACgS3GhQpwVhTsEhC2FNQ
X-IronPort-AV: E=Sophos;i="4.55,380,1278288000"; d="scan'208";a="574472002"
Received: from sj-core-3.cisco.com ([171.68.223.137]) by sj-iport-6.cisco.com with ESMTP; 17 Aug 2010 05:34:12 +0000
Received: from [192.168.1.5] (sjc-vpn7-1532.cisco.com [10.21.149.252]) by sj-core-3.cisco.com (8.13.8/8.14.3) with ESMTP id o7H5XGlr020829; Tue, 17 Aug 2010 05:34:12 GMT
Message-Id: <2362C9D2-DD9D-4D88-A709-967C8E58E61C@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: Terry Manderson <terry.manderson@icann.org>
In-Reply-To: <C89018E7.693C%terry.manderson@icann.org>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Mon, 16 Aug 2010 22:34:12 -0700
References: <C89018E7.693C%terry.manderson@icann.org>
X-Mailer: Apple Mail (2.936)
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-iannone-lisp-mapping-versioning as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 05:33:41 -0000

> If you email to support the acceptance of this document as a WG  
> item, please
> also indicate if you are able to either contribute to, or review,  
> (or both)
> the draft.

Support.
Contribute.
Review.

Dino


From dino@cisco.com  Mon Aug 16 22:34:02 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E8B393A68E1 for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 22:34:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gF9NGBMap+ta for <lisp@core3.amsl.com>; Mon, 16 Aug 2010 22:33:58 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id A3DF93A68D6 for <lisp@ietf.org>; Mon, 16 Aug 2010 22:33:58 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAK67aUyrRN+J/2dsb2JhbACgS3GhQpwVhTsEhC2FNQ
X-IronPort-AV: E=Sophos;i="4.55,380,1278288000"; d="scan'208";a="574472171"
Received: from sj-core-3.cisco.com ([171.68.223.137]) by sj-iport-6.cisco.com with ESMTP; 17 Aug 2010 05:34:34 +0000
Received: from [192.168.1.5] (sjc-vpn7-1532.cisco.com [10.21.149.252]) by sj-core-3.cisco.com (8.13.8/8.14.3) with ESMTP id o7H5XGls020829; Tue, 17 Aug 2010 05:34:34 GMT
Message-Id: <2E0E1BED-B238-4903-9F54-B1D01CCBAFE8@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: Terry Manderson <terry.manderson@icann.org>
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Mon, 16 Aug 2010 22:34:33 -0700
References: <C89018ED.693D%terry.manderson@icann.org>
X-Mailer: Apple Mail (2.936)
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 05:34:02 -0000

> If you email to support the acceptance of this document as a WG  
> item, please
> also indicate if you are able to either contribute to, or review,  
> (or both)
> the draft.

Support.
Contribute.
Review.

Dino



From job@instituut.net  Tue Aug 17 06:46:30 2010
Return-Path: <job@instituut.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id ECA4E3A6979 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:46:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.976
X-Spam-Level: 
X-Spam-Status: No, score=-1.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4OOxDTZzn77d for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:46:30 -0700 (PDT)
Received: from mail-ew0-f44.google.com (mail-ew0-f44.google.com [209.85.215.44]) by core3.amsl.com (Postfix) with ESMTP id 02BB43A6926 for <lisp@ietf.org>; Tue, 17 Aug 2010 06:46:29 -0700 (PDT)
Received: by ewy22 with SMTP id 22so3288016ewy.31 for <lisp@ietf.org>; Tue, 17 Aug 2010 06:47:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.216.203.71 with SMTP id e49mr5679094weo.60.1282052822961; Tue, 17 Aug 2010 06:47:02 -0700 (PDT)
Received: by 10.216.39.7 with HTTP; Tue, 17 Aug 2010 06:47:02 -0700 (PDT)
X-Originating-IP: [85.223.119.252]
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
References: <C89018ED.693D%terry.manderson@icann.org>
Date: Tue, 17 Aug 2010 15:47:02 +0200
Message-ID: <AANLkTikvNr=0Q_0judACiBr67FKtAvY+vOopz5HT_rrU@mail.gmail.com>
From: "Job W. J. Snijders" <job@instituut.net>
To: Terry Manderson <terry.manderson@icann.org>
Content-Type: multipart/alternative; boundary=0016e6d7df281896f3048e052f58
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 13:46:31 -0000

--0016e6d7df281896f3048e052f58
Content-Type: text/plain; charset=ISO-8859-1

Hi LISPers,

On 17 aug 2010, at 02:46, Terry Manderson wrote:

> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
> considered as a workgroup item.
>
> Please email the WG list stating that you either accept, or not accept,
the
> item before Tuesday the 31st of August 2010.

Accept.

Kind regards,

Job Snijders

--0016e6d7df281896f3048e052f58
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<meta charset=3D"utf-8"><span class=3D"Apple-style-span" style=3D"font-fami=
ly: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">Hi LIS=
Pers,<br><div class=3D"im" style=3D"color: rgb(80, 0, 80); "><br>On 17 aug =
2010, at 02:46, Terry Manderson wrote:<br>
<br>&gt; The authors of draft-farinacci-lisp-lcaf-00 have requested for it =
to be<br>&gt; considered as a workgroup item.<br>&gt;<br></div><div class=
=3D"im" style=3D"color: rgb(80, 0, 80); ">&gt; Please email the WG list sta=
ting that you either accept, or not accept, the<br>
&gt; item before Tuesday the 31st of August 2010.<br><br></div>Accept.<br><=
br>Kind regards,<br><font color=3D"#888888"><br>Job Snijders</font></span>

--0016e6d7df281896f3048e052f58--

From dmm@1-4-5.net  Tue Aug 17 06:50:14 2010
Return-Path: <dmm@1-4-5.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7EDB33A687E for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:50:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.976
X-Spam-Level: 
X-Spam-Status: No, score=-1.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id enfnY0E89UBL for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:50:13 -0700 (PDT)
Received: from mail-vw0-f44.google.com (mail-vw0-f44.google.com [209.85.212.44]) by core3.amsl.com (Postfix) with ESMTP id 9BC9D3A6855 for <lisp@ietf.org>; Tue, 17 Aug 2010 06:50:13 -0700 (PDT)
Received: by vws10 with SMTP id 10so5041599vws.31 for <lisp@ietf.org>; Tue, 17 Aug 2010 06:50:49 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.220.88.147 with SMTP id a19mr4077802vcm.119.1282053048053; Tue, 17 Aug 2010 06:50:48 -0700 (PDT)
Received: by 10.220.193.66 with HTTP; Tue, 17 Aug 2010 06:50:47 -0700 (PDT)
X-Originating-IP: [64.134.101.0]
Date: Tue, 17 Aug 2010 09:50:47 -0400
Message-ID: <AANLkTi=dZ-0=M-Fda2M5=-7cWetXzWVCJvFtLPGv-UZ6@mail.gmail.com>
From: David Meyer <dmm@1-4-5.net>
To: lisp@ietf.org
Content-Type: multipart/alternative; boundary=00163628380a833109048e053c7d
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 13:50:14 -0000

--00163628380a833109048e053c7d
Content-Type: text/plain; charset=ISO-8859-1

   -

   If you email to support the acceptance of this document as a WG item,
   please also indicate if you are able to either contribute to, or review, (or
   both)

   the draft.




   I support the document as a WG document, and I'm glad to

   contribute and review.


   Dave

--00163628380a833109048e053c7d
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<meta charset=3D"utf-8"><ul style=3D"font-family: Times; font-size: medium;=
 "><li><blockquote style=3D"border-left-color: rgb(85, 85, 238); border-lef=
t-style: solid; border-left-width: 0.2em; margin-top: 0em; margin-right: 0e=
m; margin-bottom: 0em; margin-left: 0em; padding-left: 0.85em; ">
<tt>If you email to support the acceptance of this document as a WG=A0</tt>=
<tt>item, please=A0</tt><tt>also indicate if you are able to either contrib=
ute to, or review,=A0</tt><tt>(or both)</tt><pre style=3D"margin-top: 0em; =
margin-right: 0em; margin-bottom: 0em; margin-left: 0em; ">
the draft.
</pre><pre style=3D"margin-top: 0em; margin-right: 0em; margin-bottom: 0em;=
 margin-left: 0em; "><br></pre></blockquote><pre style=3D"margin-top: 0em; =
margin-right: 0em; margin-bottom: 0em; margin-left: 0em; "><br></pre><pre s=
tyle=3D"margin-top: 0em; margin-right: 0em; margin-bottom: 0em; margin-left=
: 0em; ">
<br></pre><pre style=3D"margin-top: 0em; margin-right: 0em; margin-bottom: =
0em; margin-left: 0em; ">I support the document as a WG document, and I&#39=
;m glad to=A0</pre><pre style=3D"margin-top: 0em; margin-right: 0em; margin=
-bottom: 0em; margin-left: 0em; ">
contribute and review.</pre><pre style=3D"margin-top: 0em; margin-right: 0e=
m; margin-bottom: 0em; margin-left: 0em; "><br></pre><pre style=3D"margin-t=
op: 0em; margin-right: 0em; margin-bottom: 0em; margin-left: 0em; ">Dave</p=
re>
<pre style=3D"margin-top: 0em; margin-right: 0em; margin-bottom: 0em; margi=
n-left: 0em; "><br></pre></li></ul>

--00163628380a833109048e053c7d--

From damien.saucez@uclouvain.be  Tue Aug 17 06:56:03 2010
Return-Path: <damien.saucez@uclouvain.be>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3AB363A6957 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:56:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.74
X-Spam-Level: 
X-Spam-Status: No, score=-5.74 tagged_above=-999 required=5 tests=[AWL=0.859,  BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iHAvS6D8bTle for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:56:02 -0700 (PDT)
Received: from smtp4.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by core3.amsl.com (Postfix) with ESMTP id 37B693A6969 for <lisp@ietf.org>; Tue, 17 Aug 2010 06:56:02 -0700 (PDT)
Received: from sleipnier.dhcp.info.ucl.ac.be (sleipnier.dhcp.info.ucl.ac.be [130.104.228.23]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: dsaucez@smtp4.sgsi.ucl.ac.be) by smtp4.sgsi.ucl.ac.be (Postfix) with ESMTPSA id 0E350F2822; Tue, 17 Aug 2010 15:56:19 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.2 smtp4.sgsi.ucl.ac.be 0E350F2822
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1282053379; bh=Ygv7excJdeZTieSxMo0Q2BEfotk6vLp4LznrzX5fNns=; h=Subject:Mime-Version:Content-Type:From:In-Reply-To:Date:Cc: Content-Transfer-Encoding:Message-Id:References:To; b=GbhLgLjI8oNBPSUtG5c16rGtNSjKcONzHm6pBepyLyki/LILTcxJ+Gu17rYjky3Vn /lwhBbwlDrGDi8buOiCMzFDRraLya9aI1CZ45t3xltMHlL6sP6ILfkYhNnTxGaVUTC NaRt3wla7dUGzYm2YHymJTszRsI8mSqbN1Pl+p1k=
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <C89018E7.693C%terry.manderson@icann.org>
Date: Tue, 17 Aug 2010 15:56:18 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <65C6E5E6-EF46-49F5-AA92-20CA343898FF@uclouvain.be>
References: <C89018E7.693C%terry.manderson@icann.org>
To: Terry Manderson <terry.manderson@icann.org>
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96.2-exp at smtp-4.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-Sgsi-Spamcheck: SASL authenticated, 
X-SGSI-MailScanner-ID: 0E350F2822.00000
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: damien.saucez@uclouvain.be
X-SGSI-Spam-Status: No
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-iannone-lisp-mapping-versioning as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 13:56:03 -0000

On 17 Aug 2010, at 02:45, Terry Manderson wrote:

> If you email to support the acceptance of this document as a WG item, =
please
> also indicate if you are able to either contribute to, or review, (or =
both)
> the draft.


accept=20

Damien Saucez=

From damien.saucez@uclouvain.be  Tue Aug 17 06:57:08 2010
Return-Path: <damien.saucez@uclouvain.be>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 37F643A69E1 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:57:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.912
X-Spam-Level: 
X-Spam-Status: No, score=-5.912 tagged_above=-999 required=5 tests=[AWL=0.687,  BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mNmGErE70ZEM for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 06:57:07 -0700 (PDT)
Received: from smtp4.sgsi.ucl.ac.be (smtp.sgsi.ucl.ac.be [130.104.5.67]) by core3.amsl.com (Postfix) with ESMTP id 5E6A63A6969 for <lisp@ietf.org>; Tue, 17 Aug 2010 06:57:07 -0700 (PDT)
Received: from sleipnier.dhcp.info.ucl.ac.be (sleipnier.dhcp.info.ucl.ac.be [130.104.228.23]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: dsaucez@smtp4.sgsi.ucl.ac.be) by smtp4.sgsi.ucl.ac.be (Postfix) with ESMTPSA id AD38DF28DD; Tue, 17 Aug 2010 15:56:51 +0200 (CEST)
X-DKIM: Sendmail DKIM Filter v2.8.2 smtp4.sgsi.ucl.ac.be AD38DF28DD
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uclouvain.be; s=selucl; t=1282053411; bh=Sa/2P8zs+g0QTore12NfJtqHuh/J6X923nQpYbjeExQ=; h=Subject:Mime-Version:Content-Type:From:In-Reply-To:Date:Cc: Content-Transfer-Encoding:Message-Id:References:To; b=hmJ00kDjYJC1Qs/SdqQ4fL1I1DjKvSlY6PW3txmpnqIwJtDt0ot2SEAOI6NKZHf4P 9vA7D6KcCpThIGkoZ0Tyx7DCiVvEtFTs4g1Zc+jsl9Fwz4/mLonGHOSy2lBDH1kL39 0ugnTYBxZB+ehiapIQlgjzaui3xdEiLVQljbUYqk=
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=us-ascii
From: Damien Saucez <damien.saucez@uclouvain.be>
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
Date: Tue, 17 Aug 2010 15:56:51 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <6BA2014F-034C-49CD-A686-C2F350AFFFA4@uclouvain.be>
References: <C89018ED.693D%terry.manderson@icann.org>
To: Terry Manderson <terry.manderson@icann.org>
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96.2-exp at smtp-4.sipr-dc.ucl.ac.be
X-Virus-Status: Clean
X-Sgsi-Spamcheck: SASL authenticated, 
X-SGSI-MailScanner-ID: AD38DF28DD.00000
X-SGSI-MailScanner: Found to be clean
X-SGSI-From: damien.saucez@uclouvain.be
X-SGSI-Spam-Status: No
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 13:57:08 -0000

On 17 Aug 2010, at 02:46, Terry Manderson wrote:

> If you email to support the acceptance of this document as a WG item, =
please
> also indicate if you are able to either contribute to, or review, (or =
both)
> the draft.


accept
contribute
review

Damien Saucez=

From yakov@juniper.net  Tue Aug 17 08:34:23 2010
Return-Path: <yakov@juniper.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 45B203A68EA for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 08:34:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.599
X-Spam-Level: 
X-Spam-Status: No, score=-106.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id D9-zyEzOLcQQ for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 08:34:22 -0700 (PDT)
Received: from exprod7og122.obsmtp.com (exprod7og122.obsmtp.com [64.18.2.22]) by core3.amsl.com (Postfix) with ESMTP id 201423A6862 for <lisp@ietf.org>; Tue, 17 Aug 2010 08:34:22 -0700 (PDT)
Received: from source ([66.129.224.36]) (using TLSv1) by exprod7ob122.postini.com ([64.18.6.12]) with SMTP ID DSNKTGqr+IBRO2v+x/Z+oGxVN9+EgSBwq9M4@postini.com; Tue, 17 Aug 2010 08:34:58 PDT
Received: from magenta.juniper.net (172.17.27.123) by P-EMHUB01-HQ.jnpr.net (172.24.192.33) with Microsoft SMTP Server (TLS) id 8.2.254.0; Tue, 17 Aug 2010 08:08:35 -0700
Received: from juniper.net (sapphire.juniper.net [172.17.28.108])	by magenta.juniper.net (8.11.3/8.11.3) with ESMTP id o7HF8YU54406; Tue, 17 Aug 2010 08:08:34 -0700 (PDT)	(envelope-from yakov@juniper.net)
Message-ID: <201008171508.o7HF8YU54406@magenta.juniper.net>
To: Terry Manderson <terry.manderson@icann.org>
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org> 
References: <C89018ED.693D%terry.manderson@icann.org>
X-MH-In-Reply-To: Terry Manderson <terry.manderson@icann.org> message dated "Mon, 16 Aug 2010 17:46:05 -0700."
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2645.1282057714.1@juniper.net>
Date: Tue, 17 Aug 2010 08:08:34 -0700
From: Yakov Rekhter <yakov@juniper.net>
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 15:34:23 -0000

Terry and Joel,

> Workgroup,
> 
> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
> considered as a workgroup item.
> 
> I am opening a 14 day call for comments on the adoption of this document as
> a WG item.
> 
> You will find the ID at:
> 
>     http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
> 
> Please email the WG list stating that you either accept, or not accept, the
> item before Tuesday the 31st of August 2010.
> 
> If you email to support the acceptance of this document as a WG item, please
> also indicate if you are able to either contribute to, or review, (or both)
> the draft.
> 
> Sitting in silence does not indicate support, please respond appropriately.

Some of the material in draft-farinacci-lisp-lcaf-00 has nothing
to do with the current LISP WG charter. Specifically, the focus of
the charter is the use of LISP to provide scalable routing and
addressing architectures for the Internet, and separating IPv4 and
IPv6 address space into locators and identifiers. Yet such material
in the draft as Section 4.4 (Layer-2 VPN) has nothing to do with
providing scalable routing and addressing for the Internet, and has
nothing to do with separating IPv4 and IPv6 address space into
locators and identifiers.

Some material in draft-farinacci-lisp-lcaf-00 contains encoding
without describing any details of the use of this encoding in
providing scalable routing and addressing architecture for the
Internet and separating IPv4 and IPv6 address space into locators
and identifiers. E.g., Sections 4.2 (Carrying AS Numbers in the
Mapping Database), 4.5 (ASCII Names in the Mapping Database).

Therefore, the draft in its present form should not be accepted as
a LISP WG item.

To make this draft fall within the scope of the current LISP WG
charter, and to avoid defining encoding with no specific uses cases
the following sections should be removed from the draft: 4.1, 4.2,
4.4 and 4.5.

Yakov.

From dino@cisco.com  Tue Aug 17 10:07:13 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 1722A3A6844 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 10:07:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.556
X-Spam-Level: 
X-Spam-Status: No, score=-10.556 tagged_above=-999 required=5 tests=[AWL=0.043, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6IeRgjSIVlnE for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 10:07:12 -0700 (PDT)
Received: from sj-iport-5.cisco.com (sj-iport-5.cisco.com [171.68.10.87]) by core3.amsl.com (Postfix) with ESMTP id EF94D3A6AAA for <lisp@ietf.org>; Tue, 17 Aug 2010 10:07:11 -0700 (PDT)
Authentication-Results: sj-iport-5.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAOldakyrR7Ht/2dsb2JhbACgPnGlPpwNhTcEhDGFNg
X-IronPort-AV: E=Sophos;i="4.55,384,1278288000"; d="scan'208";a="241491243"
Received: from sj-core-1.cisco.com ([171.71.177.237]) by sj-iport-5.cisco.com with ESMTP; 17 Aug 2010 17:07:47 +0000
Received: from [192.168.5.151] (sjc-vpn5-781.cisco.com [10.21.91.13]) by sj-core-1.cisco.com (8.13.8/8.14.3) with ESMTP id o7HH7o4R023808; Tue, 17 Aug 2010 17:07:50 GMT
Message-Id: <9F8C972B-05E0-4A27-84DA-D64F450B8ABE@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: Yakov Rekhter <yakov@juniper.net>
In-Reply-To: <201008171508.o7HF8YU54406@magenta.juniper.net>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Tue, 17 Aug 2010 10:07:46 -0700
References: <C89018ED.693D%terry.manderson@icann.org> <201008171508.o7HF8YU54406@magenta.juniper.net>
X-Mailer: Apple Mail (2.936)
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 17:07:13 -0000

> Terry and Joel,
>
>> Workgroup,
>>
>> The authors of draft-farinacci-lisp-lcaf-00 have requested for it  
>> to be
>> considered as a workgroup item.
>>
>> I am opening a 14 day call for comments on the adoption of this  
>> document as
>> a WG item.
>>
>> You will find the ID at:
>>
>>    http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
>>
>> Please email the WG list stating that you either accept, or not  
>> accept, the
>> item before Tuesday the 31st of August 2010.
>>
>> If you email to support the acceptance of this document as a WG  
>> item, please
>> also indicate if you are able to either contribute to, or review,  
>> (or both)
>> the draft.
>>
>> Sitting in silence does not indicate support, please respond  
>> appropriately.
>
> Some of the material in draft-farinacci-lisp-lcaf-00 has nothing
> to do with the current LISP WG charter. Specifically, the focus of
> the charter is the use of LISP to provide scalable routing and
> addressing architectures for the Internet, and separating IPv4 and
> IPv6 address space into locators and identifiers. Yet such material
> in the draft as Section 4.4 (Layer-2 VPN) has nothing to do with
> providing scalable routing and addressing for the Internet, and has
> nothing to do with separating IPv4 and IPv6 address space into
> locators and identifiers.

Yakov, there are many types of applications that run over the  
Internet, and we need routing to scale for when they are all in use.

> Some material in draft-farinacci-lisp-lcaf-00 contains encoding
> without describing any details of the use of this encoding in
> providing scalable routing and addressing architecture for the
> Internet and separating IPv4 and IPv6 address space into locators
> and identifiers. E.g., Sections 4.2 (Carrying AS Numbers in the
> Mapping Database), 4.5 (ASCII Names in the Mapping Database).

Some of the features are for network management purposes, some are for  
policy purposes. We would love to add more detail and can.

Let me make a proposal, how about we add more detail to the -00 spec,  
make it -01 as a individual submission and then have the working group  
decide after having a look?

Terry/Joel, what do you think of that?

> Therefore, the draft in its present form should not be accepted as
> a LISP WG item.

You mean, *you* don't support it as a working group draft.

> To make this draft fall within the scope of the current LISP WG
> charter, and to avoid defining encoding with no specific uses cases
> the following sections should be removed from the draft: 4.1, 4.2,
> 4.4 and 4.5.

Since the working group is producing experimental drafts, and we want  
to run experiments, where do you suggest the definitions go? Do you  
suggest keeping them in an individual submission?

Thanks,
Dino

>
> Yakov.
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp


From vimoreno@cisco.com  Tue Aug 17 11:46:36 2010
Return-Path: <vimoreno@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id F3C4F3A6804 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 11:46:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O6VuafXtKiax for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 11:46:34 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id B4B383A67D4 for <lisp@ietf.org>; Tue, 17 Aug 2010 11:46:34 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAAN2akyrRN+K/2dsb2JhbACgP3GlKJwEhTcEhDGIHw
X-IronPort-AV: E=Sophos;i="4.56,223,1280707200"; d="scan'208";a="574848322"
Received: from sj-core-4.cisco.com ([171.68.223.138]) by sj-iport-6.cisco.com with ESMTP; 17 Aug 2010 18:47:10 +0000
Received: from xbh-sjc-231.amer.cisco.com (xbh-sjc-231.cisco.com [128.107.191.100]) by sj-core-4.cisco.com (8.13.8/8.14.3) with ESMTP id o7HIlAKj019713; Tue, 17 Aug 2010 18:47:10 GMT
Received: from xmb-sjc-213.amer.cisco.com ([171.70.151.153]) by xbh-sjc-231.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.4675);  Tue, 17 Aug 2010 11:47:10 -0700
X-Mimeole: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Tue, 17 Aug 2010 11:47:06 -0700
Message-ID: <8874F6219396A04CA291C90CCD7F9C070DE7A051@xmb-sjc-213.amer.cisco.com>
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
Thread-Index: Acs9pZKufKdhlvnnwU2y4LLf9UwH5wAlt7tw
References: <C89018ED.693D%terry.manderson@icann.org>
From: "Victor Moreno (vimoreno)" <vimoreno@cisco.com>
To: "Terry Manderson" <terry.manderson@icann.org>, <lisp@ietf.org>
X-OriginalArrivalTime: 17 Aug 2010 18:47:10.0394 (UTC) FILETIME=[997829A0:01CB3E3C]
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 18:46:36 -0000

> If you email to support the acceptance of this document as a WG item,
> please
> also indicate if you are able to either contribute to, or review, (or
both)
> the draft.

Accept
Contribute
Review

-v

> -----Original Message-----
> From: lisp-bounces@ietf.org [mailto:lisp-bounces@ietf.org] On Behalf
Of
> Terry Manderson
> Sent: Monday, August 16, 2010 5:46 PM
> To: lisp@ietf.org
> Subject: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
>=20
> Workgroup,
>=20
> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to
be
> considered as a workgroup item.
>=20
> I am opening a 14 day call for comments on the adoption of this
document as
> a WG item.
>=20
> You will find the ID at:
>=20
>     http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
>=20
> Please email the WG list stating that you either accept, or not
accept, the
> item before Tuesday the 31st of August 2010.
>=20
> If you email to support the acceptance of this document as a WG item,
> please
> also indicate if you are able to either contribute to, or review, (or
both)
> the draft.
>=20
> Sitting in silence does not indicate support, please respond
appropriately.
>=20
>=20
> Cheers
> Terry (& Joel)
>=20
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp

From robert@raszuk.net  Tue Aug 17 11:55:48 2010
Return-Path: <robert@raszuk.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3BA7F3A6859 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 11:55:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BbItxdrNDJ2r for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 11:55:47 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id 64E363A67AC for <lisp@ietf.org>; Tue, 17 Aug 2010 11:55:47 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgUFAGR4akyrR7Hu/2dsb2JhbACTKI0XcaUdnAKFNwSJZw
X-IronPort-AV: E=Sophos;i="4.56,223,1280707200"; d="scan'208";a="574854133"
Received: from sj-core-5.cisco.com ([171.71.177.238]) by sj-iport-6.cisco.com with ESMTP; 17 Aug 2010 18:56:23 +0000
Received: from [192.168.1.61] (sjc-raszuk-87113.cisco.com [10.20.147.254]) by sj-core-5.cisco.com (8.13.8/8.14.3) with ESMTP id o7HIuLtA002047 for <lisp@ietf.org>; Tue, 17 Aug 2010 18:56:22 GMT
Message-ID: <4C6ADB56.9070107@raszuk.net>
Date: Tue, 17 Aug 2010 20:56:22 +0200
From: Robert Raszuk <robert@raszuk.net>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.10) Gecko/20100512 Thunderbird/3.0.5
MIME-Version: 1.0
To: lisp@ietf.org
References: <C89018ED.693D%terry.manderson@icann.org>
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: robert@raszuk.net
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 18:55:48 -0000

Accept, contribute and review - especially since it has been pointed out 
to the list today that the draft creates an address format foundation 
which could allow for number of very interesting applications to be run 
on the internet wide scale.

Thx,
R.

> Workgroup,
>
> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
> considered as a workgroup item.
>
> I am opening a 14 day call for comments on the adoption of this document as
> a WG item.
>
> You will find the ID at:
>
>      http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
>
> Please email the WG list stating that you either accept, or not accept, the
> item before Tuesday the 31st of August 2010.
>
> If you email to support the acceptance of this document as a WG item, please
> also indicate if you are able to either contribute to, or review, (or both)
> the draft.
>
> Sitting in silence does not indicate support, please respond appropriately.
>
>
> Cheers
> Terry (&  Joel)
>
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp
>
>


From dino@cisco.com  Tue Aug 17 12:00:55 2010
Return-Path: <dino@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id ADDA13A6988 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 12:00:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9onRtVnVhOSO for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 12:00:55 -0700 (PDT)
Received: from sj-iport-2.cisco.com (sj-iport-2.cisco.com [171.71.176.71]) by core3.amsl.com (Postfix) with ESMTP id 79B233A69E5 for <lisp@ietf.org>; Tue, 17 Aug 2010 12:00:48 -0700 (PDT)
Authentication-Results: sj-iport-2.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgUFAId5akyrRN+K/2dsb2JhbACTKI0XcaUXnAKFNwSEMYU2
X-IronPort-AV: E=Sophos;i="4.56,223,1280707200"; d="scan'208";a="273027514"
Received: from sj-core-4.cisco.com ([171.68.223.138]) by sj-iport-2.cisco.com with ESMTP; 17 Aug 2010 19:01:24 +0000
Received: from dhcp-171-70-216-199.cisco.com (dhcp-171-70-216-199.cisco.com [171.70.216.199]) by sj-core-4.cisco.com (8.13.8/8.14.3) with ESMTP id o7HJ1OBG026864 for <lisp@ietf.org>; Tue, 17 Aug 2010 19:01:24 GMT
Message-Id: <579E081E-C422-4334-9733-5E84C47DC07D@cisco.com>
From: Dino Farinacci <dino@cisco.com>
To: lisp@ietf.org
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Tue, 17 Aug 2010 12:01:22 -0700
X-Mailer: Apple Mail (2.936)
Subject: [lisp] draft-schudel-lisp-mib-00.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 19:00:55 -0000

FYI. Please comment. Thanks.

Dino

----

A New Internet-Draft is available from the on-line Internet-Drafts  
directories.

	Title           : LISP MIB
	Author(s)       : G. Schudel, et al.
	Filename        : draft-schudel-lisp-mib-00.txt
	Pages           : 40
	Date            : 2010-08-17

This document defines managed objects for the Locator/ID Separation
Protocol (LISP).  These objects provide information useful for
monitoring LISP devices, including basic configuration information,
LISP status, and operational statistics.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-schudel-lisp-mib-00.txt

-----


From gschudel@cisco.com  Tue Aug 17 12:58:43 2010
Return-Path: <gschudel@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id CF51C3A6802 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 12:58:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VyJxhYcwwygE for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 12:58:43 -0700 (PDT)
Received: from sj-iport-5.cisco.com (sj-iport-5.cisco.com [171.68.10.87]) by core3.amsl.com (Postfix) with ESMTP id F24563A67F3 for <lisp@ietf.org>; Tue, 17 Aug 2010 12:58:42 -0700 (PDT)
Authentication-Results: sj-iport-5.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEALWGakyrRN+J/2dsb2JhbACgP3GkeZwDhTcEhDGFNg
X-IronPort-AV: E=Sophos;i="4.56,223,1280707200"; d="scan'208";a="241562009"
Received: from sj-core-3.cisco.com ([171.68.223.137]) by sj-iport-5.cisco.com with ESMTP; 17 Aug 2010 19:59:18 +0000
Received: from gschudel-mac-2.local ([10.21.166.22]) by sj-core-3.cisco.com (8.13.8/8.14.3) with ESMTP id o7HJxICn029492; Tue, 17 Aug 2010 19:59:18 GMT
Message-ID: <4C6AEA43.2040402@cisco.com>
Date: Tue, 17 Aug 2010 13:00:03 -0700
From: Gregg Schudel <gschudel@cisco.com>
Organization: cisco.com
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.8) Gecko/20100802 Lightning/1.0b2 Thunderbird/3.1.2
MIME-Version: 1.0
To: Terry Manderson <terry.manderson@icann.org>, lisp@ietf.org
References: <C89018ED.693D%terry.manderson@icann.org> <8874F6219396A04CA291C90CCD7F9C070DE7A051@xmb-sjc-213.amer.cisco.com>
In-Reply-To: <8874F6219396A04CA291C90CCD7F9C070DE7A051@xmb-sjc-213.amer.cisco.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 19:58:43 -0000

Accept
Contribute
Review

-- gregg schudel



>> -----Original Message-----
>> From: lisp-bounces@ietf.org [mailto:lisp-bounces@ietf.org] On Behalf
> Of
>> Terry Manderson
>> Sent: Monday, August 16, 2010 5:46 PM
>> To: lisp@ietf.org
>> Subject: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
>>
>> Workgroup,
>>
>> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to
> be
>> considered as a workgroup item.
>>
>> I am opening a 14 day call for comments on the adoption of this
> document as
>> a WG item.
>>
>> You will find the ID at:
>>
>>      http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
>>
>> Please email the WG list stating that you either accept, or not
> accept, the
>> item before Tuesday the 31st of August 2010.
>>
>> If you email to support the acceptance of this document as a WG item,
>> please
>> also indicate if you are able to either contribute to, or review, (or
> both)
>> the draft.
>>
>> Sitting in silence does not indicate support, please respond
> appropriately.
>>
>>
>> Cheers
>> Terry (&  Joel)
>>
>> _______________________________________________
>> 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

From amijain@cisco.com  Tue Aug 17 13:10:54 2010
Return-Path: <amijain@cisco.com>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 144A23A6875 for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 13:10:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level: 
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ms+GRT+NUHBQ for <lisp@core3.amsl.com>; Tue, 17 Aug 2010 13:10:51 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id 865263A6946 for <lisp@ietf.org>; Tue, 17 Aug 2010 13:10:51 -0700 (PDT)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEALOJakyrR7H+/2dsb2JhbACgP3GlF5wAhTcEhDGFNoJp
X-IronPort-AV: E=Sophos;i="4.56,223,1280707200"; d="scan'208";a="574900115"
Received: from sj-core-2.cisco.com ([171.71.177.254]) by sj-iport-6.cisco.com with ESMTP; 17 Aug 2010 20:11:21 +0000
Received: from xbh-sjc-231.amer.cisco.com (xbh-sjc-231.cisco.com [128.107.191.100]) by sj-core-2.cisco.com (8.13.8/8.14.3) with ESMTP id o7HKBLWD012399; Tue, 17 Aug 2010 20:11:21 GMT
Received: from xmb-sjc-21c.amer.cisco.com ([171.70.151.176]) by xbh-sjc-231.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.4675);  Tue, 17 Aug 2010 13:11:21 -0700
Received: from 10.21.90.78 ([10.21.90.78]) by xmb-sjc-21c.amer.cisco.com ([171.70.151.176]) with Microsoft Exchange Server HTTP-DAV ;  Tue, 17 Aug 2010 20:11:21 +0000
User-Agent: Microsoft-Entourage/12.20.0.090605
Date: Tue, 17 Aug 2010 13:11:22 -0700
From: Amit Jain <amijain@cisco.com>
To: Terry Manderson <terry.manderson@icann.org>, "lisp@ietf.org" <lisp@ietf.org>
Message-ID: <C8903AFA.1C251%amijain@cisco.com>
Thread-Topic: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
Thread-Index: Acs9pZKufKdhlvnnwU2y4LLf9UwH5wAosnKA
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
Mime-version: 1.0
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
X-OriginalArrivalTime: 17 Aug 2010 20:11:21.0762 (UTC) FILETIME=[5C51C020:01CB3E48]
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 17 Aug 2010 20:10:54 -0000

Accept, contribute, review

Amit


On 8/16/10 5:46 PM, "Terry Manderson" <terry.manderson@icann.org> wrote:

> Workgroup,
> 
> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
> considered as a workgroup item.
> 
> I am opening a 14 day call for comments on the adoption of this document as
> a WG item.
> 
> You will find the ID at:
> 
>     http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
> 
> Please email the WG list stating that you either accept, or not accept, the
> item before Tuesday the 31st of August 2010.
> 
> If you email to support the acceptance of this document as a WG item, please
> also indicate if you are able to either contribute to, or review, (or both)
> the draft.
> 
> Sitting in silence does not indicate support, please respond appropriately.
> 
> 
> Cheers
> Terry (& Joel)
> 
> _______________________________________________
> lisp mailing list
> lisp@ietf.org
> https://www.ietf.org/mailman/listinfo/lisp


From niels@fusix.nl  Sun Aug 22 04:13:37 2010
Return-Path: <niels@fusix.nl>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id A796D3A685B for <lisp@core3.amsl.com>; Sun, 22 Aug 2010 04:13:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.503
X-Spam-Level: 
X-Spam-Status: No, score=-0.503 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_NL=0.55, HOST_EQ_NL=1.545, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qqN+LO-Rn1bK for <lisp@core3.amsl.com>; Sun, 22 Aug 2010 04:13:36 -0700 (PDT)
Received: from transix.fusix.nl (transix.fusix.nl [87.253.152.210]) by core3.amsl.com (Postfix) with ESMTP id 3940B3A6853 for <lisp@ietf.org>; Sun, 22 Aug 2010 04:13:36 -0700 (PDT)
Received: from cust.94.189.adsl.cistron.nl ([195.64.94.189] helo=[192.168.2.33]) by transix.fusix.nl with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.72 (FreeBSD)) (envelope-from <niels@fusix.nl>) id 1On8V4-0000K2-HR for lisp@ietf.org; Sun, 22 Aug 2010 13:14:08 +0200
From: Niels Raijer <niels@fusix.nl>
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: multipart/alternative; boundary=Apple-Mail-152--774236729
Date: Sun, 22 Aug 2010 13:14:01 +0200
In-Reply-To: <AANLkTin1g1CPjNujHtSwHvvvYxCH=0NfoBsHHDT-_cVh@mail.gmail.com>
To: lisp@ietf.org
References: <AANLkTin1g1CPjNujHtSwHvvvYxCH=0NfoBsHHDT-_cVh@mail.gmail.com>
Message-Id: <B77C5EB7-165E-47C0-8120-375423D98BB3@fusix.nl>
X-Mailer: Apple Mail (2.1081)
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Sun, 22 Aug 2010 11:13:37 -0000

--Apple-Mail-152--774236729
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=us-ascii

> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
> considered as a workgroup item.
> 
> I am opening a 14 day call for comments on the adoption of this document as
> a WG item.
> 
> You will find the ID at:
> 
>   http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00


Accept, and available for review.
-- 
Niels Raijer
niels@fusix.nl
http://fusix.nl


--Apple-Mail-152--774236729
Content-Transfer-Encoding: 7bit
Content-Type: text/html;
	charset=us-ascii

<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div style="word-wrap:break-word">The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be<br>considered as a workgroup item.<br><br>I am opening a 14 day call for comments on the adoption of this document as<br>
a WG item.<br><br>You will find the ID at:<br><br> &nbsp;&nbsp;<a href="http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00" target="_blank">http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00</a><br></div></blockquote></div><div><br></div>Accept, and available for review.<br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div>--&nbsp;<br>Niels Raijer<br><a href="mailto:niels@fusix.nl">niels@fusix.nl</a><br><a href="http://fusix.nl/">http://fusix.nl</a></div></span>
</div>
<br></body></html>
--Apple-Mail-152--774236729--

From ljakab@ac.upc.edu  Mon Aug 23 02:31:09 2010
Return-Path: <ljakab@ac.upc.edu>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D297F3A682A for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 02:31:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.301
X-Spam-Level: 
X-Spam-Status: No, score=0.301 tagged_above=-999 required=5 tests=[BAYES_50=0.001, MIME_8BIT_HEADER=0.3]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6ESRd9kT0S4s for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 02:31:07 -0700 (PDT)
Received: from gw.ac.upc.edu (gw.ac.upc.edu [147.83.30.3]) by core3.amsl.com (Postfix) with ESMTP id EEA803A69C3 for <lisp@ietf.org>; Mon, 23 Aug 2010 02:30:55 -0700 (PDT)
Received: from [130.149.220.106] (unknown [130.149.220.106]) by gw.ac.upc.edu (Postfix) with ESMTP id 4FB066B0245; Mon, 23 Aug 2010 11:31:24 +0200 (CEST)
Message-ID: <4C723FEC.3070505@ac.upc.edu>
Date: Mon, 23 Aug 2010 11:31:24 +0200
From: =?ISO-8859-1?Q?Lor=E1nd_Jakab?= <ljakab@ac.upc.edu>
Organization: UPC/BarcelonaTech
MIME-Version: 1.0
To: LISP WG <lisp@ietf.org>
References: <C89018E7.693C%terry.manderson@icann.org>
In-Reply-To: <C89018E7.693C%terry.manderson@icann.org>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Subject: Re: [lisp] draft-iannone-lisp-mapping-versioning as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 23 Aug 2010 09:31:10 -0000

 On 08/17/2010 02:45 AM, Terry Manderson wrote:
> Workgroup,
>
> The authors of draft-iannone-lisp-mapping-versioning-02 have requested for
> it to be considered as a workgroup item.
>
> I am opening a 14 day call for comments on the adoption of this document as
> a WG item.
>
> You will find the ID and past versions at:
>
>     http://tools.ietf.org/html/draft-iannone-lisp-mapping-versioning-02
>
> Please email the WG list stating that you either accept, or not accept, the
> item before Tuesday the 31st of August 2010.
>
> If you email to support the acceptance of this document as a WG item, please
> also indicate if you are able to either contribute to, or review, (or both)
> the draft.

I support the acceptance of the document, and will be able to review it.

-Lori



From ljakab@ac.upc.edu  Mon Aug 23 02:39:54 2010
Return-Path: <ljakab@ac.upc.edu>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3EF3A3A69C5 for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 02:39:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.208
X-Spam-Level: 
X-Spam-Status: No, score=0.208 tagged_above=-999 required=5 tests=[AWL=0.093,  BAYES_40=-0.185, MIME_8BIT_HEADER=0.3]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BMvAGtz5nm2u for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 02:39:52 -0700 (PDT)
Received: from gw.ac.upc.edu (gw.ac.upc.es [147.83.30.3]) by core3.amsl.com (Postfix) with ESMTP id 5A6743A69D4 for <lisp@ietf.org>; Mon, 23 Aug 2010 02:38:59 -0700 (PDT)
Received: from [130.149.220.106] (unknown [130.149.220.106]) by gw.ac.upc.edu (Postfix) with ESMTP id 24A346B0245; Mon, 23 Aug 2010 11:39:27 +0200 (CEST)
Message-ID: <4C7241CE.7030506@ac.upc.edu>
Date: Mon, 23 Aug 2010 11:39:26 +0200
From: =?ISO-8859-1?Q?Lor=E1nd_Jakab?= <ljakab@ac.upc.edu>
Organization: UPC/BarcelonaTech
MIME-Version: 1.0
To: lisp@ietf.org
References: <C89018ED.693D%terry.manderson@icann.org>
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 23 Aug 2010 09:39:54 -0000
X-List-Received-Date: Mon, 23 Aug 2010 09:39:54 -0000

 On 08/17/2010 02:46 AM, Terry Manderson wrote:
> Workgroup,
>
> The authors of draft-farinacci-lisp-lcaf-00 have requested for it to be
> considered as a workgroup item.
>
> I am opening a 14 day call for comments on the adoption of this document as
> a WG item.
>
> You will find the ID at:
>
>     http://tools.ietf.org/html/draft-farinacci-lisp-lcaf-00
>
> Please email the WG list stating that you either accept, or not accept, the
> item before Tuesday the 31st of August 2010.
>
> If you email to support the acceptance of this document as a WG item, please
> also indicate if you are able to either contribute to, or review, (or both)
> the draft.

This document clarified some implementation-related issues for me, I
think it is a good companion for the main spec, so I support it. I'm
available for review.

-Lori

From bradd@ntt.net  Mon Aug 23 08:39:27 2010
Return-Path: <bradd@ntt.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 2A7243A68AF for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 08:39:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id i+zTJZWtkgQz for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 08:39:26 -0700 (PDT)
Received: from shaolin.ameri.ca (shaolin.ameri.ca [IPv6:2001:418:8004::162]) by core3.amsl.com (Postfix) with ESMTP id 2540B3A6A81 for <lisp@ietf.org>; Mon, 23 Aug 2010 08:39:26 -0700 (PDT)
Received: from sierra.ameri.ca (sierra.ameri.ca [IPv6:2001:418:8004::171]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: bradd) by shaolin.ameri.ca (Postfix) with ESMTPSA id 200972D484E for <lisp@ietf.org>; Mon, 23 Aug 2010 15:39:58 +0000 (UTC)
Date: Mon, 23 Aug 2010 11:39:56 -0400
From: brad dreisbach <bradd@ntt.net>
To: "lisp@ietf.org" <lisp@ietf.org>
Message-ID: <20100823153956.GA64420@sierra.ameri.ca>
References: <C89018ED.693D%terry.manderson@icann.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="OXfL5xGRrasGEqWY"
Content-Disposition: inline
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
X-PGPkey: https://compton.ameri.ca/~bradd/pgp/bradd@us.ntt.net.9EA8EAFE.dsa.gpg
User-Agent: Mutt/1.5.20 (2009-06-14)
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 23 Aug 2010 15:39:27 -0000

--OXfL5xGRrasGEqWY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Aug 16, 2010 at 05:46:05PM -0700, Terry Manderson wrote:
>=20
> Please email the WG list stating that you either accept, or not accept, t=
he
> item before Tuesday the 31st of August 2010.
>=20
> If you email to support the acceptance of this document as a WG item, ple=
ase
> also indicate if you are able to either contribute to, or review, (or bot=
h)
> the draft.
>=20

accept

--OXfL5xGRrasGEqWY
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (Darwin)

iEYEARECAAYFAkxylkwACgkQ+cffsJ6o6v5AZwCgnFQ0ErsH6oomHJclcJA481kE
Bu0An3O8PiFqpwrMHicQLSngdsZl39jt
=dzou
-----END PGP SIGNATURE-----

--OXfL5xGRrasGEqWY--

From bradd@ntt.net  Mon Aug 23 08:32:16 2010
Return-Path: <bradd@ntt.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 4384B3A68AD for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 08:32:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2khvX6hsnPtv for <lisp@core3.amsl.com>; Mon, 23 Aug 2010 08:32:09 -0700 (PDT)
Received: from shaolin.ameri.ca (shaolin.ameri.ca [IPv6:2001:418:8004::162]) by core3.amsl.com (Postfix) with ESMTP id 0BAA13A6A79 for <lisp@ietf.org>; Mon, 23 Aug 2010 08:32:08 -0700 (PDT)
Received: from sierra.ameri.ca (sierra.ameri.ca [IPv6:2001:418:8004::171]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: bradd) by shaolin.ameri.ca (Postfix) with ESMTPSA id E3EC42D4844; Mon, 23 Aug 2010 15:32:40 +0000 (UTC)
Date: Mon, 23 Aug 2010 11:32:39 -0400
From: brad dreisbach <bradd@ntt.net>
To: Terry Manderson <terry.manderson@icann.org>
Message-ID: <20100823153239.GA64187@sierra.ameri.ca>
References: <C89018ED.693D%terry.manderson@icann.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="tKW2IUtsqtDRztdT"
Content-Disposition: inline
In-Reply-To: <C89018ED.693D%terry.manderson@icann.org>
X-PGPkey: https://compton.ameri.ca/~bradd/pgp/bradd@us.ntt.net.9EA8EAFE.dsa.gpg
User-Agent: Mutt/1.5.20 (2009-06-14)
X-Mailman-Approved-At: Wed, 25 Aug 2010 17:18:44 -0700
Cc: "lisp@ietf.org" <lisp@ietf.org>
Subject: Re: [lisp] draft-farinacci-lisp-lcaf-00 as a work group item
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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, 23 Aug 2010 15:32:16 -0000

--tKW2IUtsqtDRztdT
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Aug 16, 2010 at 05:46:05PM -0700, Terry Manderson wrote:
>=20
> Please email the WG list stating that you either accept, or not accept, t=
he
> item before Tuesday the 31st of August 2010.
>=20
> If you email to support the acceptance of this document as a WG item, ple=
ase
> also indicate if you are able to either contribute to, or review, (or bot=
h)
> the draft.
>=20

accept

--tKW2IUtsqtDRztdT
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (Darwin)

iEYEARECAAYFAkxylJcACgkQ+cffsJ6o6v4MKwCcCSra8sWIqjobn32r4k2SRzVu
8PIAn0+wxajO4E8yteWpFHsVyT/jxaof
=heU0
-----END PGP SIGNATURE-----

--tKW2IUtsqtDRztdT--

From root@core3.amsl.com  Wed Aug 25 18:00:02 2010
Return-Path: <root@core3.amsl.com>
X-Original-To: lisp@ietf.org
Delivered-To: lisp@core3.amsl.com
Received: by core3.amsl.com (Postfix, from userid 0) id 5E74B3A68D0; Wed, 25 Aug 2010 18:00:02 -0700 (PDT)
From: Internet-Drafts@ietf.org
To: i-d-announce@ietf.org
Content-Type: Multipart/Mixed; Boundary="NextPart"
Mime-Version: 1.0
Message-Id: <20100826010002.5E74B3A68D0@core3.amsl.com>
Date: Wed, 25 Aug 2010 18:00:02 -0700 (PDT)
Cc: lisp@ietf.org
Subject: [lisp] I-D Action:draft-ietf-lisp-interworking-01.txt
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Thu, 26 Aug 2010 01:00:02 -0000

--NextPart

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Locator/ID Separation Protocol Working Group of the IETF.


	Title           : Interworking LISP with IPv4 and IPv6
	Author(s)       : D. Lewis, et al.
	Filename        : draft-ietf-lisp-interworking-01.txt
	Pages           : 26
	Date            : 2010-08-25

This document describes techniques for allowing sites running the
Locator/ID Separation Protocol (LISP) to interoperate with Internet
sites (which may be using either IPv4, IPv6, or both) but which are
not running LISP.  A fundamental property of LISP speaking sites is
that they use Endpoint Identifiers (EIDs), rather than traditional IP
addresses, in the source and destination fields of all traffic they
emit or receive.  While EIDs are syntactically identical to IPv4 or
IPv6 addresses, normally routes to them are not carried in the global
routing system so an interoperability mechanism is needed for non-
LISP-speaking sites to exchange traffic with LISP-speaking sites.
This document introduces three such mechanisms.  The first uses a new
network element, the LISP Proxy Ingress Tunnel Routers (PITR)
(Section 5) to act as a intermediate LISP Ingress Tunnel Router (ITR)
for non-LISP-speaking hosts.  Second the document adds Network
Address Translation (NAT) functionality to LISP Ingress and LISP
Egress Tunnel Routers (xTRs) to substitute routable IP addresses for
non-routable EIDs.  Finally, this document introduces a Proxy Egress
Tunnel Router (PETR) to handle cases where a LISP ITR cannot send
packets to non-LISP sites without encapsulation.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-lisp-interworking-01.txt

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

Below is the data which will enable a MIME compliant mail reader
implementation to automatically retrieve the ASCII version of the
Internet-Draft.

--NextPart
Content-Type: Message/External-body;
	name="draft-ietf-lisp-interworking-01.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID: <2010-08-25174729.I-D@ietf.org>


--NextPart--

From dmm@1-4-5.net  Tue Aug 31 16:11:09 2010
Return-Path: <dmm@1-4-5.net>
X-Original-To: lisp@core3.amsl.com
Delivered-To: lisp@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 279243A68D5 for <lisp@core3.amsl.com>; Tue, 31 Aug 2010 16:11:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.367
X-Spam-Level: 
X-Spam-Status: No, score=-0.367 tagged_above=-999 required=5 tests=[AWL=-0.250, BAYES_20=-0.74, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mGX35OfQpAcS for <lisp@core3.amsl.com>; Tue, 31 Aug 2010 16:10:54 -0700 (PDT)
Received: from mail-vw0-f44.google.com (mail-vw0-f44.google.com [209.85.212.44]) by core3.amsl.com (Postfix) with ESMTP id 8368D3A67DB for <lisp@ietf.org>; Tue, 31 Aug 2010 16:10:43 -0700 (PDT)
Received: by vws10 with SMTP id 10so6465564vws.31 for <lisp@ietf.org>; Tue, 31 Aug 2010 16:11:13 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.220.60.15 with SMTP id n15mr3636252vch.18.1283296273747; Tue, 31 Aug 2010 16:11:13 -0700 (PDT)
Received: by 10.220.111.129 with HTTP; Tue, 31 Aug 2010 16:11:13 -0700 (PDT)
X-Originating-IP: [171.68.46.188]
Date: Tue, 31 Aug 2010 16:11:13 -0700
Message-ID: <AANLkTinKUtAFZCvr7OtMU7hMF4dU+ajUmTJhEx_QRtqD@mail.gmail.com>
From: David Meyer <dmm@1-4-5.net>
To: lisp@ietf.org
Content-Type: multipart/alternative; boundary=e0cb4e887ca189d18b048f26b291
Subject: [lisp] lig updated....
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 31 Aug 2010 23:11:09 -0000

--e0cb4e887ca189d18b048f26b291
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Folks,

lig has been updated to be compliant with draft -08 and with IPv6
support. Thanks to Lor=E1nd Jakab (<ljakab@ac.upc.edu>) for
his patches.

See http://github.com/davidmeyer/lig

Dave

--e0cb4e887ca189d18b048f26b291
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<br><div>Folks,</div><div><br></div><div>lig has been updated to be complia=
nt with draft -08 and with IPv6</div><div>support. Thanks to=A0Lor=E1nd Jak=
ab (&lt;<a href=3D"mailto:ljakab@ac.upc.edu">ljakab@ac.upc.edu</a>&gt;) for=
=A0</div>
<div>his patches.</div><div><br></div><div>See=A0<a href=3D"http://github.c=
om/davidmeyer/lig">http://github.com/davidmeyer/lig</a></div><div><br></div=
><div>Dave</div><div><br></div>

--e0cb4e887ca189d18b048f26b291--
