Okay, I'm still not clear on some things.
1) Suppose that Alice and Bob expect to do 1 BTC volume of business (say a transfer of 10 GB). In this case why not just pay 1 whole BTC for 10 GB and forget about paying 0.0001 BTC per MB?
Yes, they could pay 1 BTC for 10GB and be done. They can do that today. But that scenario isn't consistent with, as my example, paying premium Tor nodes.
When you use Tor, you engage three Tor nodes your client selects at random. They are totally anonymous. They don't know you, you sort of know them (their IP) but that's about it. It's very casual. Your selection of Tor nodes changes every several minutes like a new dance partner after each song.
If you paid Tor nodes for their usage, they in turn would have more of an incentive to run them and give you access to higher bandwidth. This would lead to better performance and greater diversity and hence anonymity, as compared to now where nodes are run by volunteers and the only disincentive against wasting bandwidth is how slow everything runs.
When you use Tor, you don't make a 10GB agreement with one node, otherwise you've defeated the anonymity purpose of Tor. Tor connections are more like brief flings with strangers, not relationships. You want to buzz your way to a flower, hang out for a minute, and buzz on to the next. This idea is how to pay for the pollen at a for-pay flower.
2) Suppose that Alice and Bob expect to do only 0.0001 BTC of business. There is a micropayment problem. The volume of business is too small to be supported by a regular txn.
Not exactly. For his services, Bob receives a 1 in 10000 chance of receiving a whole bitcoin. That's worth something, not much, most likely nothing. But if Bob's service is a relay node, he is receiving these "chances" constantly, then the more of them he gets, the more reliably he can count on 1/10000 of them being worth a bitcoin. The more he sells, the more he can simply look at each one as being worth 0.0001 BTC. This is exactly how mining pools work. If the difficulty is 1300000, they pay you for shares, which are
completely worthless to the pool operator 1299999/1300000 of the time, knowing that the true value of the one share that pays him fifty btc 1/1300000 of the time is statistically going to happen often enough that it averages out the same as if each share were actually worth 50btc/1300000. The pool requires you to submit the share anyway just as proof that you're actually mining and nothing more.
In case 2, Alice and Bob sign a pledge contract which says that 1 BTC will be transferred with a 1 in 10000 probability. There is a p2p txn broadcast throughout the network which confirms that Alice has the BTC and ensures that she cannot spend the BTC in the near future. A p2p txn like this has to be broadcast everytime two people do 0.0001 BTC of business. Won't these broadcasts involve a lot of bandwidth and storage, perhaps more than the business is worth?
No, they only have to do it once per engagement. Alice pledges 1 BTC to Bob and uses his services for a few minutes. Over the course of those few minutes, Alice may only end up spending 0.0053 with Bob, perhaps she did 53 MB of transfer. Alice pledged 1 BTC as Bob's prize in case any of those 53 shares were winners. There was only one pledge for the whole encounter, one P2P message, not 53. A second pledge would be necessary if a) Bob won the bitcoin which forced Alice to pledge another, or b) the pledge expired and Alice wanted to continue doing business.
In Case 1, the broadcast will not be as onerous because Alice and Bob are doing a larger volume of business. However, in Case 1, it is not clear to me why micropayments are necessary in the first place. Are you worried about Bob taking the money and running if he is paid in a lump sum? Paying him in a steady trickle as services are provided is certainly one way to solve this problem. And I agree that this is a problem. However, this is not exactly the mircopayment problem which you set out to solve.
In the premium Tor node example, Alice and Bob don't and can't know each other, so if Bob were trusted with 1 BTC he didn't earn, he could run with it with impunity. So, yes, in this case, Bob can't be trusted to not do so.