Re: [Roll] draft-ietf-6man-rpl-routing-header-07

Jonathan Hui <jonhui@cisco.com> Thu, 22 December 2011 02:42 UTC

Return-Path: <jonhui@cisco.com>
X-Original-To: roll@ietfa.amsl.com
Delivered-To: roll@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 85F4211E807F; Wed, 21 Dec 2011 18:42:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LVUMQNEeuWlb; Wed, 21 Dec 2011 18:42:27 -0800 (PST)
Received: from mtv-iport-2.cisco.com (mtv-iport-2.cisco.com [173.36.130.13]) by ietfa.amsl.com (Postfix) with ESMTP id C0F7221F8B1D; Wed, 21 Dec 2011 18:42:27 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=jonhui@cisco.com; l=4126; q=dns/txt; s=iport; t=1324521747; x=1325731347; h=subject:mime-version:from:in-reply-to:date:cc: content-transfer-encoding:message-id:references:to; bh=E3JqyJuNt7dk3EnL7CMhothIaop81qxVi6iDs6mWQXY=; b=nAuTOzpYoLGKe5aBGymlXaKnJ1jBkff90x1F1kXXc70CzjUnhhbffhgU ZRNlPubeNGq7hkgxbfubd4iVD22rIgLbqmkE4yDoQgh/tpDrVhd+5ezXm j4TGam0OKl/YXkETX+xMiT2tXYaacmdJhFJuYw+7lnk1vqtnBigtJALgV k=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Av0EADmY8k6rRDoI/2dsb2JhbAA4Cg6sGYEFgXIBAQECAQESASc/BQsLRlcGHBmHWAiZBAGeMohWglZjBIg3jEiRfFg
X-IronPort-AV: E=Sophos;i="4.71,391,1320624000"; d="scan'208";a="21996853"
Received: from mtv-core-3.cisco.com ([171.68.58.8]) by mtv-iport-2.cisco.com with ESMTP; 22 Dec 2011 02:42:26 +0000
Received: from sjc-vpn2-370.cisco.com (sjc-vpn2-370.cisco.com [10.21.113.114]) by mtv-core-3.cisco.com (8.14.3/8.14.3) with ESMTP id pBM2gPqx002262; Thu, 22 Dec 2011 02:42:25 GMT
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Jonathan Hui <jonhui@cisco.com>
In-Reply-To: <181400612.729968.1324519828382.JavaMail.root@mail17.pantherlink.uwm.edu>
Date: Wed, 21 Dec 2011 18:42:25 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <04F68F74-2053-4902-AB99-BDE5FD65FCCF@cisco.com>
References: <181400612.729968.1324519828382.JavaMail.root@mail17.pantherlink.uwm.edu>
To: Mukul Goyal <mukul@uwm.edu>
X-Mailer: Apple Mail (2.1084)
Cc: roll <roll@ietf.org>, ipv6@ietf.org
Subject: Re: [Roll] draft-ietf-6man-rpl-routing-header-07
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Routing Over Low power and Lossy networks <roll.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/roll>, <mailto:roll-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/roll>
List-Post: <mailto:roll@ietf.org>
List-Help: <mailto:roll-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/roll>, <mailto:roll-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Dec 2011 02:42:28 -0000

On Dec 21, 2011, at 6:10 PM, Mukul Goyal wrote:

> Just the knowledge that the router is part of a particular RPL instance via a particular interface is no guarantee that all the neighbors reachable via that interface belong to the same RPL instance. On the other hand, a router would clearly know whether its particular interface belongs to the RPL domain or not. A packet wont be sent down an interface if that interface is not part of the RPL domain. Here, I am assuming that the RPL domain is defined in the manner you had suggested (analogous to the definition of a routing domain in Section 1.2 of RFC 1195).

And by the same logic, when forwarding a message, there is no guarantee that all neighboring nodes reachable via an interface belong to the same RPL routing domain.

>> Remember that the original purpose of the RPL Instance is to support MTR.  The RPL Instance identifies what routing topology to use.  This is important especially if the SRH does not specify the entire path to the destination.  How does the tunnel exit-point know what routing topology to use to reach the destination?
> 
> There is no mention of MTR in the RPL specs. As far as RPL spec goes, an RPL Instance is simply a group of DAGs using the same OF. You can not assume that a tunnel exit-point would get any information from RPL Instance ID regarding how to reach the ultimate destination of the packet. That information would probably come from the routing table (which may be getting information via several routing protocols).

The *entire* point of the RPL Instance concept is to support MTR.  The RPL Instance is used to distinguish between different DODAGs from the same root.  It gives you the ability to have multiple different routes to the same destination (e.g. one that minimizes latency vs. one that minimizes energy consumption).  If you don't have the RPL Instance information when forwarding a packet, how do you know whether to forward along the path that minimizes latency vs. the path that minimizes energy?

See slide 18 of http://www.iab.org/wp-content/IAB-uploads/2011/04/Vasseur.pdf if you want one such reference of MTR and RPL Instances.

>> The lack of and need for the RPL Instance identifier was raised during IESG review.  The options are (1) to require inclusion a RPL Option in addition to the RPL routing header or (2) add a RPL Instance field in the RPL routing header itself.  I doubt that you would prefer option 1.
> 
> I will try to go back and find the IESG review you have mentioned. If you could quickly direct me to right place, that will be helpful. But, at the moment, it is truly mind-boggling for me that RPL instance id is required to be specified in the source routing header. 

Not so mind boggling if you consider MTR.

>> If the RPL router has no idea of the RPL Instance when forwarding, it can choose to forward the packet along anyway.
> 
> Doing that would break the rules in SRH draft.

Of course.  I was making a proposal that we could relax the processing rules to end-points of the SRH.

>> At the very least, the tunnel exit-point should enforce the use of the RPL Instance.  Surely the end-points of a source route should at least know what RPL Instance they are in...
> 
> Yes, this RPL Instance is a local instance which has no significance associated. I think you are trying to assign a meaning to RPL Instance ID which it does not currently have under RPL core spec.


As I mentioned above, the RPL Instance allows you to have multiple distinct paths towards the same destination.  The RPL hop-by-hop option includes a RPL Instance ID so that a forwarding node knows which routing topology to use.  If RPL did not allow multiple routes to the same destination, then why bother having a RPL Instance?  You would only need the DODAGID to uniquely identify a DODAG (whereas the existing definition is the "tuple (RPLInstanceID, DODAGID) uniquely identifies a DODAG".

--
Jonathan Hui