Today the word went around about mypollingplace.com, a site that helps people find their local polling station, running out of bandwidth from their provider and needing somebody to help it.
At the same time I did an interview for opinions about bitTorrent, and the idea came to me that a really useful application would be a P2P generalized web hosting tool aimed at spikes.
Volunteers who have a reachable IP address (including people who can open holes in NATs) would install software to volunteer to help host sites in need during a spike. This could be client software in a browser or permanent server software.
Then a few different things could happen. Ideally a site would install a tool which activated the sharing network when their load got high (but well before their provider cut them off.) People fetching static pages that weren't sharing bandwidth would be redirected to a port willing to share. The page would also be modified to encourage folks to join the process. Folks who were willing to share might get access or be redirected, and they would cache the page, declare where it resides and serve it there for some period of time or number of hits.
If a site didn't install the fancy redirector, they could redirect all web hits to a volunteer tracker that would do a further redirect to a real location willing to host the item.
Finally, for sites totally unaware of this, a browser plug-in could notice when access to a page is very slow or gets a "bandwidth limit exceeded" message. It could then query to see if any of the P2P folks have cached the page, and fetch from there, or offer the user a button to check or fetch from that network.
This latter mode is good because it strongly encourages having the magic plug-in with your browser. If you don't have it, you can't get at the P2P cache.
I've been informed that Coral from NYU does some of this, though it doesn't do the "on demand" aspect that leaves the web in normal state when not overloaded, and switches to cacheing only when needed. With Coral and other redirects, your Google adsense doesn't show up either!