A Delay-Tolerant Network Architecture for Challenged Internets Kevin Fall September 16, 2018 Anshul Kantawala
Challenged Networks Terrestrial mobile networks Unexpected partitions due to node mobility or RF interference Periodic, predictable partitions e.g. Commuter bus acting as store and forward switch September 16, 2018 Anshul Kantawala
Challenged Networks (cont.) Exotic Media Networks Near-Earth satellites, very long-distance radio (deep space) etc. High latencies with predictable interruption Outage due to environmental conditions Predictably available store and forward network service – e.g. low-earth orbiting satellites September 16, 2018 Anshul Kantawala
Challenged Networks (cont.) Military Ad-Hoc Networks Operate in hostile environments mobile nodes, environmental factors or intentional jamming cause disconnections Data traffic may be pre-empted by higher priority voice traffic Strong infrastructure protection requirements September 16, 2018 Anshul Kantawala
Challenged Networks (cont.) Sensor networks Limited end-node power, memory and CPU capability Thousands or millions of nodes per network Communication scheduled to conserve power Interfaced to other networks using proxy nodes September 16, 2018 Anshul Kantawala
Current Solutions Link-repair approach Use proxy agents Engineer problem links to appear similar to regular links Use proxy agents Attach challenged networks at edges using proxy agents Does not provide a general way to use these networks for data transit September 16, 2018 Anshul Kantawala
Characteristics of Challenged Networks Path and Link characteristics Network architectures End System characteristics September 16, 2018 Anshul Kantawala
Path and Link characteristics High latency, low data rate e.g. 10 kbps, 1-2 second latencies Asymmetric data rates e.g. remote instruments – large return channel, small uplink for device control Protocols should be terse and dynamic control functions performed open-loop or hop-by-hop September 16, 2018 Anshul Kantawala
Path and Link characteristics Disconnection Non-faulty disconnections Motion Predictable: satellite passes, bus acts as router Random: motion of nodes/routers, interference Low-duty-cycle operation Routing subsystem should not treat predictable disconnections as faults and can use this information to pre-schedule messages September 16, 2018 Anshul Kantawala
Path and Link characteristics Long queueing times Conventional networks rarely greater than a second Challenged network could be hours or days due to disconnection September 16, 2018 Anshul Kantawala
Network Architectures Interoperability considerations Networks may use application-specific framing formats, data packet size restrictions, limited node addressing and naming etc. Security End-to-end approach not attractive Require end-to-end exchanges of keys Undesirable to carry traffic to destination before authentication/access control check September 16, 2018 Anshul Kantawala
End System Characteristics Limited longevity Round-trip time may exceed node’s lifetime making ACK-based policies useless Low duty cycle operation Disconnection affects routing protocols Limited resources Affects ability to store and retransmit data due to limited memory September 16, 2018 Anshul Kantawala
Can we use TCP/IP? Transport layer (TCP) Network layer (IP) Routing High latency and moderate to high loss rates severely limit TCP’s performance Network layer (IP) Performance affected by loss of fragments Routing High latency will cause current routing protocols to incorrectly label links as non-operational September 16, 2018 Anshul Kantawala
Proxies and Protocol Boosters Proxies and protocol boosters are inherently fragile Increase system complexity if mobility is frequent May require both directions to flow through the proxy – fail for asymmetric routing Application proxies have limited re-use abilities and may fail to take advantage of special resources of the proxy node September 16, 2018 Anshul Kantawala
Delay Tolerant Message-Oriented Overlay Architecture September 16, 2018 Anshul Kantawala
Abstraction Message switching Overlay architecture Use message aggregates or “bundles” Allows network’s path selection and scheduling functions a-priori knowledge of the size and performance requirements of data transfers Overlay architecture DTN will operate over existing protocol stacks and provide a gateway when a node touches two or more dissimilar networks September 16, 2018 Anshul Kantawala
Regions and DTN Gateways DTN gateways are interconnection points between dissimilar network protocol and addressing families called regions e.g. Internet-like, Ad-hoc, Mobile etc. DTN gateways Perform reliable message routing Perform security checks Store messages for reliable delivery Resolve globally-significant name tuples to locally-resolvable names for internal destined traffic September 16, 2018 Anshul Kantawala
Name Tuples Two variable length portions Region name Entity name Globally-unique hierarchically structured region name Used by DTN gateways for forwarding messages Entity name Resolvable within the specified region, need not be unique outside it E.g. { internet.icann.int, http://www.ietf.org/ } September 16, 2018 Anshul Kantawala
Class of Service Similar to the Postal service Delivery priority: low, ordinary, high Notifications of mailing, delivery to receiver and route taken Reliable delivery using custody transfer at each routing hop September 16, 2018 Anshul Kantawala
Path Selection and Scheduling End-to-end path routing path cannot be assumed to exist Can solve a multicommodity flow optimization problem using approximate algorithms, since the protocol is message based September 16, 2018 Anshul Kantawala
Custody Transfer Two types of message nodes Custody Transfer Persistent (P) and non-persistant (NP) P nodes assumed to contain persistent memory storage and participate in custody transfer Custody Transfer Acknowledged delivery of message from one DTN hop to the next and passing of reliability delivery responsibility September 16, 2018 Anshul Kantawala
Custody Transfer (cont.) Advantages Relieves potentially resource-poor end nodes from maintaining end-to-end connection states Useful for overcoming high loss rates along the delivery path As reliable as typical end-to-end reliability September 16, 2018 Anshul Kantawala
Protocol Translation and Convergence Layers Bundle forwarding function assumes underlying reliable delivery capability with message boundaries Convergence layer augments underlying network protocols appropriately September 16, 2018 Anshul Kantawala
Time Synchronization Need for time synchronization Provide a mechanism to deliver pre-programmed control instructions to be executed at future points in time Use for scheduling, path selection and to remove expired pending messages Propose time synchronization on the order of 1 ms September 16, 2018 Anshul Kantawala
Security Each message contains Use public key cryptography Identity of sender Requested class of service (CoS) Use public key cryptography First DTN router verifies user and validates CoS request Re-signs message using its key Core routers need only cache keys of their neighbours September 16, 2018 Anshul Kantawala
Congestion and Flow Control Flow control is hop-by-hop Uses underlying protocols mechanisms if they exist Congestion control Refers to contention of persistent storage at a DTN forwarder Current approach uses a priority queue Priority inversion and head-of-line blocking can occur September 16, 2018 Anshul Kantawala
Application Interface Applications must be able to operate in a regime where request/response time may exceed the longevity of the client and server processes Application interface is non-blocking Also has registration and callback functions between bundle-based applications and the local forwarding agent September 16, 2018 Anshul Kantawala
Implementation September 16, 2018 Anshul Kantawala
Implementation (cont.) Prototype DTN system under Linux Application interface Rudimentary bundle forwarding across scheduled and “always on” connections Detection of new and lost contacts Two convergence layers TCP/IP Bundle-based proxy to the Berkeley mote network September 16, 2018 Anshul Kantawala
Conclusion DTN architecture attempts to provide interoperable communications between and among challenged networks Design uses message switching with in-network retransmission, late-binding of names and routing tolerant of network partitioning September 16, 2018 Anshul Kantawala