System information

CHAPTER 23
Distributed Universal Number
Discovery (DUNDi)
A community is like a ship; everyone ought to be
prepared to take the helm.
—Henrik Ibsen
Distributed Universal Number Discovery, or DUNDi, is a service discovery protocol
that can be used for locating resources at remote locations. The original intention of
DUNDi was to permit decentralized routing among many peers using a General Peering
Agreement (GPA). The GPA (available at http://dundi.com/PEERING.pdf) is intended
to take on the role of a centralized control authority with a document to create a trust
relationship among the peers in the cloud. While the idea is interesting and sound, the
GPA has not taken off. That doesn’t mean the DUNDi protocol itself hasn’t found a
home though: the original intention of DUNDi has been expanded so that now it
doesn’t just act as a location service, but can be used to request and pass information
among peers.
How Does DUNDi Work?
Think of DUNDi as a large phone book that allows you to ask peers if they know of an
alternative VoIP route to an extension number or PSTN telephone number.
For example, assume that you are connected to another set of Asterisk boxes listening
for and responding to DUNDi requests, and those boxes are in turn connected to other
Asterisk boxes listening for and responding to DUNDi requests. Assume also that your
system does not have direct access to request anything from the remote servers.
Figure 23-1 illustrates how DUNDi works. You ask your friend Bob if he knows how
to reach 4001, an extension to which you have no direct access. Bob replies, “I don’t
know how to reach that extension, but let me ask my peer, Sally.”
503