This is a technical notes as I read the paperRouting in delay tolerant Networks. I shoshould have written these words long before. I hope it is not too late.
In that paper, K. Fall et al. Create a set of abstract knowledge tables les, each able to answer questions we ask of them. These tables les are:
- contact summary oracle. This oracle can answer question about aggregate statistics of the contacts. in particle, the contacts summary Oracle provides the average waiting time until the next contact for an edge. thus, the contact summary oracle can only respond with time-invariant or Summary characteristics about contacts.
- Contact Oracle.This oracle can answer any question regarding contacts between two nodes at any point in time. this is equivalent to knowing the time-varying dtn multi-graph. the contacts summary oracle can be constructed using the contacts Oracle, but not vice versa.
-
- Queuing oracle.This oracle gives information about instantaneous buffer occupancies (queuing) at any node at any time and can be used to route around und congested nodes. (most difficult Oracle to realize in a distributed system)
- Traffic Demand oracle.This oracle can answer any question regarding the present or future traffic demand. It is able to provide the set of messages injected into the system at any time.
Routing Algorithms fall into 3 classes:
- Zero knowledge. (First Contact)
- Partial knowledge. (No traffic demand Oracle)
- Complete knowledge.
Computing shortest (minimum cost) path
Delay component: 1, queuing delay; 2, transmission delay; 3, propagation delay. Given that edge capacities and propagation delays vary with time, we also exact CTROute selection to vary with time.If edge cost is time-invariant, we can use Dijkstra's shortest path algorithm.