Overview

Depending on their configuration, administration and provisioning, networks can provide drastically different features and service quality for customers. Similarly, configuration differences between end hosts can result in wide variation in security and performance impacts for networks.

Because the standard IP interface does not provide mechanisms for networks to query the properties of end hosts, and vice versa, clients and network operators resort to ad hoc techniques to detect these differences. Such techniques are intrusive, brittle, and provide few assurances as to the quality of the provided information.

Networks cannot distinguish between clients
Networks cannot distinguish between clients
Clients cannot differentiate between different networks
Clients cannot differentiate between different networks
Networks cannot differentiate between other networks
Networks cannot differentiate between other networks
The standard IP network interface masks differences between different network participants.

NetQuery is a universal channel for distributing properties of network participants, such as forwarding tables for routers and process lists for end hosts. By providing query and monitoring interfaces over this information, NetQuery enables applications to reason about the current state of the network, and establish long-running guarantees covering future network states.

Such network guarantees are valid only if there is an established basis to trust the state representation. NetQuery attributes every property to the principal responsible for generating it, enabling applications to rely only on information from trustworthy sources. NetQuery is well-suited for both "clean-slate" networks, where secure coprocessors, such as the Trusted Platform Module (TPM), embedded within each network device serve as a root of trust, and legacy networks, where operator reputation serves as the root of trust.

NetQuery is light-weight and efficient, requiring only modest hardware overheads in deployment, and few changes to existing devices. By storing information and processing queries with a distributed server infrastructure, NetQuery decouples network participants from any additional load incurred by queries, and is scalable to the volume of properties and event rates needed to represent large networks such as the Internet.