Re: [Idr] Question about RFC4893
Enke Chen <enkechen@cisco.com> Fri, 09 October 2009 18:56 UTC
Return-Path: <enkechen@cisco.com>
X-Original-To: idr@core3.amsl.com
Delivered-To: idr@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 82F193A6841 for <idr@core3.amsl.com>; Fri, 9 Oct 2009 11:56:32 -0700 (PDT)
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 ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Eiam0DFkeTP6 for <idr@core3.amsl.com>; Fri, 9 Oct 2009 11:56:31 -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 5118B3A681B for <idr@ietf.org>; Fri, 9 Oct 2009 11:56:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=enkechen@cisco.com; l=4887; q=dns/txt; s=sjiport01001; t=1255114696; x=1256324296; h=from:sender:reply-to:subject:date:message-id:to:cc: mime-version:content-transfer-encoding:content-id: content-description:resent-date:resent-from:resent-sender: resent-to:resent-cc:resent-message-id:in-reply-to: references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:list-owner:list-archive; z=From:=20Enke=20Chen=20<enkechen@cisco.com>|Subject:=20Re :=20[Idr]=20Question=20about=20RFC4893|Date:=20Fri,=2009 =20Oct=202009=2011:58:15=20-0700|Message-ID:=20<4ACF87C7. 1090404@cisco.com>|To:=20Samita=20Chakrabarti=20<samitac@ ipinfusion.com>|CC:=20ben_april@trendmicro.com,=20idr@iet f.org,=20Enke=20Chen=20<enkechen@cisco.com>|MIME-Version: =201.0|Content-Transfer-Encoding:=207bit|In-Reply-To:=20< 00d801ca490b$65507500$2ff15f00$@com>|References:=20<4ACF6 B32.7030209@trendmicro.com>=20<00d801ca490b$65507500$2ff1 5f00$@com>; bh=7cEhFa/RyCnsxBWiMEO25nqkeRtGM38HNAYOXTslOKo=; b=hPvD8WeCp4U0F+Y6SWTJ5+NKngtS5aBhCjlK5so//hp0NDeu2SNicSII OY1hm3apHfBcokF4xWJPQkIQ5G7UUjdHSOFUJD0AggGZzCWe9kuDA92eB vDmbks8dIjlKWvHPSjcB/XhoQkyds7tSUzwjc1bKpjapfQDR9EsNkGBrk s=;
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: ApoEAA8lz0qrR7Hu/2dsb2JhbADCfphChCwE
X-IronPort-AV: E=Sophos;i="4.44,533,1249257600"; d="scan'208";a="253709489"
Received: from sj-core-5.cisco.com ([171.71.177.238]) by sj-iport-1.cisco.com with ESMTP; 09 Oct 2009 18:58:16 +0000
Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by sj-core-5.cisco.com (8.13.8/8.14.3) with ESMTP id n99IwG76021757; Fri, 9 Oct 2009 18:58:16 GMT
Received: from xfe-sjc-211.amer.cisco.com ([171.70.151.174]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 9 Oct 2009 11:58:16 -0700
Received: from [10.21.121.206] ([10.21.121.206]) by xfe-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 9 Oct 2009 11:58:15 -0700
Message-ID: <4ACF87C7.1090404@cisco.com>
Date: Fri, 09 Oct 2009 11:58:15 -0700
From: Enke Chen <enkechen@cisco.com>
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
MIME-Version: 1.0
To: Samita Chakrabarti <samitac@ipinfusion.com>
References: <4ACF6B32.7030209@trendmicro.com> <00d801ca490b$65507500$2ff15f00$@com>
In-Reply-To: <00d801ca490b$65507500$2ff15f00$@com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 09 Oct 2009 18:58:15.0734 (UTC) FILETIME=[7528FD60:01CA4912]
Cc: idr@ietf.org
Subject: Re: [Idr] Question about RFC4893
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/idr>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Oct 2009 18:56:32 -0000
Samita: We can argue about the presentation style and other portions in RFC4893. However, IMO the specific merge algorithm is complete, and precise, as I pointed out to Ben. Please see my comments inlined. Samita Chakrabarti wrote: > Hi Ben, > > Please see below: > > >> If the number of AS numbers in the AS_PATH attribute is larger than or >> > equal > >> to the number of AS numbers in the AS4_PATH attribute, then the AS path >> information SHALL be constructed by taking as many AS numbers and path >> segments as necessary from the leading part of the AS_PATH attribute, and >> then prepending them to the AS4_PATH attribute so that the AS path >> information has an identical number of AS numbers as the AS_PATH >> > attribute. > >> >> Forgive me, but this all sounds like an awful lot of hand-waving to me. >> > Has > >> anything been done since this RFC was published to better describe in a >> > more > >> formal way the procedure a BGP speaker should follow to re-construct an >> accurate AS_PATH from the AS4_PATH and AS_PATH attributes? Based on this >> description I can see more than one way to implement this. I would like to >> do so correctly, but I need to know what is correct first. >> >> Thanks >> Ben >> >> > [SC>] > > I agree with you completely this handwaving portion in rfc 4893 is very > problematic to the implementers who were not directly involved in the making > of RFC 4893. I was not one of them. In 2008, I wrote a draft pointing out > some of the problems we faced during implementation and to request an update > of the RFC for future interoperability. Also presented the draft at WG in > Spring 2008 IETF. Rfc4893-bis has considered some of the problems mentioned > in the draft + others discussed in the working group alias. > http://wattle.apnic.net/ietf/idref/draft-chakrabarti-idr-rfc4893-mod/ > > The following interpretation has been made in our implementation after > talking with some other implementers. > I believe rfc4893-bis now has the similar text: > 1. If the number of ASNs in AS_PATH is less than the number of ASNs in > AS4_PATH, then NBGP ignores AS4_PATH information. > Example: > AS_PATH: 2 23456 > AS4_PATH: 70000 70001 70002 > RFC 4893 has the following text in Sect. 4.2.3: If the number of AS numbers in the AS_PATH attribute is less than the number of AS numbers in the AS4_PATH attribute, then the AS4_PATH attribute SHALL be ignored, and the AS_PATH attribute SHALL be taken as the AS path information. -------------------------------------------- I am wondering why this portion needed "interpretation" in your implementation. > 2. If the number of ASNs in AS_PATH attribute is greater than number of > > ASNs in AS4_PATH attribute, then there must be a few AS_TRANS > numbers in AS_PATH. Reconstruct AS_PATH based on the AS4_PATH > items corresponding to AS_TRANS numbers > Examples: > AS_PATH: 2,3,6, 8, 23456, 10, 23, 23456 > AS4_PATH: 65356, 77777 > So what exactly is the problem with following RFC 4893 in this case? The (AS_PATH, AS4_PATH) is not really consistent here -- that is, 65356 is not represented in AS_PATH, and there is an extra 23456 in the middle. Most likely this is a crafted, lab scenario in which there is no single "correct" answer. > 3. If the number of ASNs in AS_PATH and AS4_PATH attributes is same > then it most likely means that all the AS numbers are AS4-byte unmappable > numbers. Check the count of AS_TRANS numbers in AS_PATH and count of AS > numbers in AS4_PATH. If they are the same then reconstruct AS information > from AS4_PATH only (note this case is for AS num == AS4 num). If number of > AS_TRANS in AS_PATH is less than the number in AS4_PATH values, then there > is something wrong done by previous speakers. However, take the non-AS_TRANS > AS values from AS_PATH and then prepend them with the AS4 values. Some > examples will clarify this case: > AS_PATH: 23456, 23456, 23456 > AS4_PATH: 777777, 66666, 88888 > So the merged as-path would consist of the valid AS numbers 777777, 66666, 88888 based on RFC 4893. This seems fine. Isn't it? > Or > AS_PATH: 2, 3, 4, 23456 > AS4_PATH: 88888, 99999, 70000, 80000 > This again is another inconsistent, artificially crafted scenario. Possibly there are more than one "correct" solutions, some more "correct" than others - depending on how the inconsistency was generated. As the as-path length must be maintained during the merge, no solution can possibly include all the valid AS numbers contained in AS_PATH / AS4_PATH. RFC 4893 would yield 88888, 99999, 70000, 80000 as the merged one. Why wouldn't it be good enough? Thanks. -- Enke
- [Idr] Question about RFC4893 Benjamin April
- Re: [Idr] Question about RFC4893 Enke Chen
- Re: [Idr] Question about RFC4893 Enke Chen
- Re: [Idr] Question about RFC4893 Samita Chakrabarti
- Re: [Idr] Question about RFC4893 Enke Chen
- Re: [Idr] Question about RFC4893 Samita Chakrabarti
- Re: [Idr] Question about RFC4893 Enke Chen
- Re: [Idr] Question about RFC4893 Samita Chakrabarti
- Re: [Idr] Question about RFC4893 Enke Chen
- Re: [Idr] Question about RFC4893 John Leslie
- Re: [Idr] Question about RFC4893 Benjamin April
- Re: [Idr] Question about RFC4893 Enke Chen