Transmission Scheduling and Routing Algorithms for Delay Tolerant Networks