Not to be pedantic, but the BGP spec *does* say that the AS_PATH documents the 
path of an UPDATE, and that each AS must add itself:
"
This attribute identifies the autonomous systems through which routing 
information carried in this UPDATE message has passed. 
...
   When a BGP speaker propagates a route it learned from another BGP
   speaker's UPDATE message, it modifies the route's AS_PATH attribute
   based on the location of the BGP speaker to which the route will be
   sent:
...
         1) if the first path segment of the AS_PATH is of type
            AS_SEQUENCE, the local system prepends its own AS number as
            the last element of the sequence (put it in the leftmost
            position with respect to the position of octets in the
            protocol message).  
"
<http://tools.ietf.org/html/rfc4271#section-5.1.2>

As I read this, in your example, B would not be conformant with the BGP spec if 
it forwarded UPDATEs from C without appending it's own AS.  It would probably 
be OK to *re-originate* the routes, but that creates a separate set of problems.

--Richard



On Feb 21, 2011, at 4:18 PM, Russ White wrote:

> 
>> The AS_PATH has always been intended to represent the ASs that
>> propagated the update.
>> 
>> The AS_PATH can be used to detect loops ONLY because it does represent
>> the ASs that propagated the update.
> 
> Sorry --but I just gave 5 examples of where the AS Path is intentionally
> modified without causing loops. The point is the loopfreeness, not the
> path the update took.
> 
> Let me ask this in a different way. Suppose you have the following:
> 
> A---B
> +-C-+
> 
> Now, for whatever reason, and with C's full knowledge and consent, B
> decides to advertise C's routes to A without putting itself in the AS
> Path. Is this possible? Yes, it is --using current commercial
> implementations of BGP. Is it wrong?
> 
> Well, it doesn't cause a loop, does it? As for policy --isn't that up to
> the contract between B and C? Why should BGP enforce the contract terms
> B and C are able to write between themselves? And yes, this situation
> does exist in the real world --I just happen to be helping a customer
> set this up in a private environment.
> 
> :-)
> 
> Russ
> 
> _______________________________________________
> sidr mailing list
> sidr@ietf.org
> https://www.ietf.org/mailman/listinfo/sidr

_______________________________________________
sidr mailing list
sidr@ietf.org
https://www.ietf.org/mailman/listinfo/sidr

Reply via email to