Network testing can be classified into different realms, each with its separate but complementary advantages. Network element-testing deals with the verification of a network node (of a switch, router or a firewall) from some proximity and with some understanding of its specific characteristics. Network cloud-testing, on the other hand, focuses on the aggregates of such nodes, typically from a distance and with some abstraction of the underlying specific technologies as well as topologies. End-to-end testing, the most intuitive of all, probes a complete traversal of a network cloud by sending, as an example a ping message from an end-station to another. Testing a network within the confines of an engineering laboratory enjoys the comfort of avoiding intrusiveness into an enterprise whereas testing a live network enables the diagnosis of some subtle and otherwise unobservable problems. The "Regatta" framework, described in this paper, establishes a network software infrastructure, a framework, supporting all modalities of network testing, and even more interestingly enabling switching back and forth dynamically between them in a fully automated way, following the requirements of the circumstances. Based on the dynamic extensibility of Java, as well as its mobility characteristics, Regatta takes advantage of this software technology, but also encounters its short-comings as a challenge.
展开▼