Disruption Tolerant Networking
Last night I saw a rather interesting presentation at the local IEEE ComSec chapter by a fellow from JPL. His presentation centered around Disruption Tolerant Networking. DTN is primarily being developed with networks running in space in mind, but there are some more earthly applications as well.
The basic concept is that TCP/IP, along with the rest of a standard modern networking stack, expects all nodes to be available all the time, with a relatively large quantity of bandwidth. In space, this isn't always the case. For example, look at the Mars Rovers. We communicate with them by sending commands on the ground, which go through an Earth-orbiting satellite, through space to a Mars-orbiting satellite, and finally down to the rovers on the Martian surface. What makes this connection tricky is that nothing's stationary - the satellites are orbiting the planets, the rovers are moving, and the planets are orbiting the sun. Line-of-sight is required for communication, but not always available. A standard TCP/IP stack would require the entire path to be complete, while DTN does not due to a store and forward type structure, where packets (called "bundles") are stored in local storage on the satellite until the link is available.
The video below is only 4.5 minutes long, but explains the process very thoroughly. Check it out, and be sure to switch to HD if possible: