Delay and Disruption Tolerant Networks (Interplanetary and Earth-Bound -- Architecture, Protocols, and Applications)