background image
Tech Note #37:  Introduction to the TOAD
TM
 Protocol
©
1998 Bionic Buffalo Corporation; All Rights Reserved.
                  12 June 1998
http://www.tatanka.com
Page 
3 of 13
Furthermore, the relationship among the nodes may be different for one group of objects than
for another. Two nodes might operate as peers, for instance, when serving objects of one class,
while the same two nodes might operate as master and slave when serving objects of a different
class.
Motivation
The design goals of TOAD included:
 
The protocol must be suitable for very small networks of embedded systems, but must scale
dynamically to the Internet.
 
The minimum complexity of software necessary to use the services must be very low, to
accommodate simple, embedded systems without sophisticated capabilities or substantial
resources.
 
The protocol must be robust and resilient in the face of any unreliable node.
 
The protocol must be compatible with existing protocols, and inter-operate with existing
directory services.
The resulting design allows devices to operate autonomously in very small networks, but
requires these same devices to defer to management in the context of larger, more complex
networks.
In a single device, the implementor can choose the mechanisms for advertising and discovering
objects. Object repositories might take the form of databases, or objects might be equated with
file system directory entries.
In small networks, it is often practical for several such devices to use broadcast or multicast
mechanisms to share repository information. Commonly, messages are sent to peers to advertise
objects, or to look for objects of a given type.
As the network grows, however, the traffic and processing load from such an approach can
become too great. The common approach is for the devices to use a common directory server.
Besides reducing traffic, this mechanism allows groups of objects to be managed centrally in
ways that are not practical among many, autonomous nodes.
Internetworking and even larger networks create additional problems, which demand still more
complex protocols. These include security, performance, and management issues. The largest
networks include complex tools and protocols to address problems not found in smaller
environments.