Is lightning network limited by the 'size' of channels? Imagine we start with multiple channels which eventually link two individuals, Alice and Rob: (the BTC amounts is the total locked in their multisig address for their channels between each other)

Alice --- 100 BTC ---&gt; David --- 50 BTC ---&gt; Rob


Now - suppose Alice wants to send 100 BTC to Rob. Alice is connected to Rob via David but there's only 50 BTC available to be distributed between David and Rob. Therefore Rob cannot trust a payment of 100 BTC from David.

How does Alice deal with this?

Assuming Alice does not have another 100 BTC sitting around outside of lightning - she has to close out her channel with David; wait for confirmation of this; and then send Rob a traditional transaction to make payment (or open a channel with him). Is this correct? Or is there a better way of dealing with this? Some way of passing value between channels?

If not - is this a problem for lightning network? It would seem that routing across channels is only as useful as the smallest connecting channel. And users have every incentive to keep channels as small as possible to minimise 'committed' BTC. If users have to wait for confirmation to close out a channel, their ability to make fast payments over the original bitcoin network is vastly slowed down by having to wait for confirmation of a channel closure before being able to conduct a transaction on the main network.
In fact, it's worse: payment channels can only transfer the balance that belongs to the sender in it. So, if David and Rob each paid 25BTC into the channel, David can at most send 25 BTC to Rob.— However, there could actually be multiple paths from Alice to Rob which could in parallel allocate 100BTC to Rob.

There's an interesting trade-off here: the Bitcoin blockchain scales easily in the amounts to be settled, but is limited in transaction throughput. Lightning Network on the other hand is practically unlimited in the transaction throughput, however limited in the amounts to be sent. This is why transactions on the blockchain are priced by the cost of including them in the block, i.e. the primary bottleneck, and transactions in the Lightning Network will probably be priced mostly relative to the value they transfer. Obviously, this favors larger value transfers on the blockchain and smaller payments to move to the Lightning Network. However, sending smaller payments requires both a smaller locked-in amount, and will make it easier to find routes.

So, it may actually just work out.— We'll see when it goes live on the Bitcoin blockchain.