consistent policy != consistent announcements

> > M
> > / \
> > A B * Peer link
> > > * | Customer link
> > RRRRRRR
> > Point1 * * Point2
> > VVVVVVV

[...]

R could request A to provide it with a list of ASes for indirect
customers behind A. (R probably already does that.) That would be
sufficient information for R's router at the R/B interconnection to tag
M's routes as customer routes. Essentially, when R's router at the R/B
interconnection receives a route with path "B M", it could use the fact
"M is an indirect customer" rather than "B is a non-customer" to tag the
route appropriately.

Furthermore, R could provide sufficient incentive for A to provide a
list of indirect customers by accepting only registered routes (or AS
paths). (This should sound familiar.) E.g. (A) and (A M) routes would
be accepted but all other (A *) would not be in this example.

Alternately, R could audit routing tables at Point1 and Point2 from
time to time, as I mentioned earlier. It ought to be rather simple to
find routes which are in Point1 as "exportable" and Point 2 as
"non-exportable", or vice-versa. The rest follows.

Regards,

--John