IP allows a maximum of 255 hops for any packet. This inherently restricts the topology of the Internet: As it stands, it can never be a world-wide decentralized mesh. Instead, you end up with large hubs and choke-points. The IP addressing scheme also makes it very difficult to have a mesh: IP addresses are assigned hierarchically. The name "Inter-Net" describes the problem directly: The Internet isn't a global network that just anyone can contribute or connect to; instead, the Internet is just a protocol for inter-connecting the world's centrally owned and operated networks. With the IP Internet forced topology, Economies-of-Scale make massive centralized services cheaper than distributed services (even if similarly massive). The obvious result: Comcast is your only ISP at home.
Disclosure: I've been working in my spare time for years on a solution, and I think an isochronous source-routed stream-based protocol is the only solution. I've got a proposed spec at IsoGrid.org