Re: [Idr] Question about RFC4893
"Samita Chakrabarti" <samitac@ipinfusion.com> Fri, 09 October 2009 19:27 UTC
Return-Path: <samitac@ipinfusion.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 1324B3A68A8 for <idr@core3.amsl.com>; Fri, 9 Oct 2009 12:27:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.265
X-Spam-Level:
X-Spam-Status: No, score=-2.265 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, IP_NOT_FRIENDLY=0.334]
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 ZpXi5GT2qCBE for <idr@core3.amsl.com>; Fri, 9 Oct 2009 12:27:24 -0700 (PDT)
Received: from smtp103.sbc.mail.gq1.yahoo.com (smtp103.sbc.mail.gq1.yahoo.com [67.195.15.62]) by core3.amsl.com (Postfix) with SMTP id AE7AE3A6872 for <idr@ietf.org>; Fri, 9 Oct 2009 12:27:24 -0700 (PDT)
Received: (qmail 34535 invoked from network); 9 Oct 2009 19:29:08 -0000
Received: from (samitac@65.223.109.250 with login) by smtp103.sbc.mail.gq1.yahoo.com with SMTP; 09 Oct 2009 12:29:07 -0700 PDT
X-Yahoo-SMTP: 2TubM6mswBDzS84mnP14_Gq9MWTFqPrD9YAsl.JSPFAWkA--
X-YMail-OSG: 0QTFL4AVM1nwhUzMMPc37WVXCEEugWgWlHVtb2qU_43Y1TenUuV7kIaz_p1T8GE6ZVHsgGrELSK9bhMxKgTQwq5Gjl.VThROWcNk9tNdyYt_sGKHnMHmZ2xMpcSXiBBkGgSH3d41IR6HFxQ9MW7MkxDIjdFY0KSPaa6MP3HpKRhsII9gnstBIKfFB0orv8HUJJKVJ0c1JDG402CsQpsQtEqqw7Hpc1QQH8hzsqBXccGqRYmscV6lKQsdnKmcWUK1qYLNI0BJAbL4z376yxxTaD6SsG8Ct4rZwQ--
X-Yahoo-Newman-Property: ymail-3
From: Samita Chakrabarti <samitac@ipinfusion.com>
To: 'Enke Chen' <enkechen@cisco.com>
References: <4ACF6B32.7030209@trendmicro.com> <00d801ca490b$65507500$2ff15f00$@com> <4ACF87C7.1090404@cisco.com> <4ACF8AA8.1050704@cisco.com>
In-Reply-To: <4ACF8AA8.1050704@cisco.com>
Date: Fri, 09 Oct 2009 12:29:04 -0700
Message-ID: <00ea01ca4916$c3a09670$4ae1c350$@com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: AcpJE9Fo0pXy0SM6SCaH4Qtq/FwL1QAAbn0A
Content-Language: en-us
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 19:27:26 -0000
Hi Enke, You are right in pointing out that there is no change from RFC4893 merging text into the bis versions . I replied too fast. It's been a long time since we implemented this, but I remember it was not clear at that time and we had to do some interpretation of the text in RFC. Below, you have discussed the merged AS-PATH examples with the sample scenarios I provided. Do you think you can include some of those examples in the text for clarification? That might be helpful for the future implementations for clarity. Just a suggestion... Thanks, -Samita > -----Original Message----- > From: Enke Chen [mailto:enkechen@cisco.com] > Sent: Friday, October 09, 2009 12:11 PM > To: Samita Chakrabarti > Cc: ben_april@trendmicro.com; idr@ietf.org; Enke Chen > Subject: Re: [Idr] Question about RFC4893 > > BTW, based on the on-line IETF track tool, there has been no change in the > merge algorithm (Sect 4.2.3) from RFC 4893 to rfc4893bis-00.txt and to > rfc4893bis-01.txt: > > > http://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-idr- > rfc4893bis-00.txt > > http://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-idr- > rfc4893bis-01.txt > > Regards, -- Enke > > Enke Chen wrote: > > 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