[65766] in North American Network Operators' Group
Re: AS Path Loops in practice ?
daemon@ATHENA.MIT.EDU (Robert E. Seastrom)
Mon Dec 8 15:51:01 2003
To: Jaideep Chandrashekar <jaideepc@cs.umn.edu>
Cc: nanog@merit.edu
From: "Robert E. Seastrom" <rs@seastrom.com>
Date: 08 Dec 2003 15:50:21 -0500
In-Reply-To: <20031208183158.GA8141@cs.umn.edu>
Errors-To: owner-nanog-outgoing@merit.edu
Jaideep Chandrashekar <jaideepc@cs.umn.edu> writes:
> Hi.
> Apologies if this posting is off topic.
>
> I'd observed some loops in the AS Paths as seen by the Route-Views
> routeserver.
> In one particular snapshot -- about 2% of the paths involved such
> loops.
>
> Here are some examples.....(taken from route-views).
>
> 11608 2914 1239 12064 22773 12064 11836
> 1221 4637 1239 12064 22773 12064 11836
> 1224 38 7228 1239 12064 22773 12064 11836
> 1239 12064 22773 12064
> 1239 12064 22773 12064 11836
> 19092 3356 1299 766 288 766
> 3356 1299 766 288 766
> 4181 3356 1299 766 288 766
> 6079 3356 1299 766 288 766
> 8220 1 3356 701 668 5058 48 3356
>
> RFC 1771 has the following to say:
>
> -----------------------------
> 9.3 Route Selection Criteria
>
> Generally speaking, additional rules for comparing routes among
> several alternatives are outside the scope of this document. There
> are two exceptions:
> - If the local AS appears in the AS path of the new route being
> considered, then that new route cannot be viewed as better than
> any other route. If such a route were ever used, a routing loop
> would result.
> ------------------------------
>
> So it seems to me that these paths violate the BGP spec.
>
>
> Can anybody comment about whether these paths are in fact valid. Are
> these used in specific settings by ISP's. Most of these loops are of
> length < 3, but there are also some that are really long (5-6).
>
> Looking closely at the shorter paths, I get the feeling that these
> loops are intentional, perhaps to acheive some traffic engineering
> goal. Note that we tried to traceroute along some of these loops, and
> in almost all the cases, there was no forwarding loop (so probably
> not a flaky route).
>
> What sort of situations would warrant these AS Path loops.
>
> From my understanding of the BGP decision process - routes that
> contain the current AS in the path are automatically excluded from
> the path selection process. Is this correct ?
>
> Any comments would be helpful.
In many (most?) these "loops" are intentional, and a result of playing
prepending games... There's no restriction on what you can prepend to
an AS path (and it can be handy to put stuff in there to keep other
providers from picking up your routes as we'll see momentarily), but
your peer generally wants to see the most recent as in the path as
your AS.
So if I (AS3066) wanted to send routes to Sprint that were not to be
picked up by UUnet, I could do as follows:
route-map to-as1239-nothanks-uu permit 10
set as-path prepend 3066 701
and apply it outbound in the advertisement to Sprint.
Then what you would see in the route reflector would be:
1239 3066 701 3066
for routes that I originated internally.
Hope this helps,
---Rob