If you are on my upstream chain, then I am accompanying my routing requirements with money. Whatever penalty you may incur I pay for with my upstream payment. Where your statement holds is once you are not seeing money from me (i.e. you are not an upstream paid directly or indirectly by me), in which case what would help us all is a recognised [*] community attribute which says "advertise this prefix together with this attribute only to your upstreams"
Actually, in all cases the requirements are accompanied by money. Even in settlement-free peering, if the two sides didn't feel they were getting paid to do whatever they are doing, they should sever the peering relationship and charge. You are getting that route from somewhere and if you aren't paid by someone to do so with value greater than its cost to you, you should stop accepting the route. The money flows along the same paths the routes do. Every time a route goes from router 1 to router 2, there is some agreement that allows it to do so. If the route exchange costs you more than you're getting out of it, renegotiate that connection. One thing that might help is if companies that work out peering that isn't free start to charge based, at least partly, upon aggregation. If extra routes really cost you, charge for them where they enter your network. Heck, charge per route if you want. This should work well for small to mid-sized companies that generally have trouble getting settlement free peering. I doubt you could pressure UUNet, Sprint, or C&W in this way. DS