Inband Network Telemetry (“INT”) is a framework designed to allow the collection and reporting of network state, by the data plane, without requiring intervention or work by the control plane (http://p4.org/p4/inband-network-telemetry/). In the INT architectural model, packets contain header fields that are interpreted as “telemetry instructions” by network devices. These instructions tell an INT-capable device what state to collect and write into the packet as it transits the network. SwitchID, hop latency and queue occupancy are some of the per-packet metadata that could be collected using INT. Connection Path and Latency Tracking (PLT) is a novel network monitoring application that leverages INT in a scalable manner to gain real-time visibility into a network's behavior. PLT uses INT to track the path and latency encountered by every connection and uses deduplication (from within the data plane) to do this in a scalable and efficient manner . Each time a new connection is detected or a change is detected in the path/latency of an existing connection, an "INT report" is generated and sent to a remote distributed monitoring engine. The reports enable the monitoring engine to detect a variety of anomalies in the network in real time (eg: connection/switch congestion, unused switches, flow imbalance, etc.). They also facilitate other interesting use cases such as network behavior verification, faithful reconstruction of traffic patterns and network characterization.
*This presentation also has an associated demo: Using INT to Build a Real-time Network Monitoring System @ Scale*