AV-over-IP Network Inspector Prototype
A network reconnaissance and diagnostic suite prototype built for converged AV-over-IP environments. The tool inspects four independent network planes: Discovery, Timing/Sync, Media Transport/QoS and Switch Infrastructure, delivering end-to-end visibility across Dante, AES67, Q-SYS, NDI, SMPTE ST 2110, Extron NAV and wireless RF systems with 1-click transactional interface recovery.
| Device and Hardware Identity | IPv4 / Subnet Status | Plane and Discovery Protocols | Switch Port and VLAN (LLDP) | QoS (DSCP) and Stream Health | Actions |
|---|
Evidence-Based Diagnostic Engine (4-Plane Correlation)
AV Hardware Factory Defaults Catalog
Instant lookup for static fallback IPs, factory credentials, and hardware reset pinholes across 25 broadcast and AV manufacturers.
Technical Architecture and Systems Engineering Specification
Building a dependable network diagnostic suite for live production requires reconciling low-level network realities with mission-critical broadcast uptime. A single endpoint laptop cannot assume omniscient visibility across VLANs or unicast switch paths; instead, it must correlate observations across four distinct network planes and enforce strict transactional safety whenever manipulating host network interfaces.
Plane 1: Discovery and Session Control
Protocols: Dante ConMon, mDNS, AES67 SAP, QDP, NMOS, WS-Discovery, ACN/SSC.
Handles multi-protocol endpoint enumeration across Layer 2 and routed boundaries, ingesting UDP 8700–8708, _netaudio-arc, _ndi._tcp, IS-04/IS-05 and RF telemetry streams.
Plane 2: Timing and Clock Synchronization
Standards: PTPv1 (IEEE 1588-2002), PTPv2 (IEEE 1588-2008), SMPTE ST 2059-2.
Parses clock domains for classic Dante, AES67 and DDM. Evaluates Best Master Clock Algorithm (BMCA) parameters and measures Sync packet delay variation (PDV) jitter.
Plane 3: Media Transport and QoS Data Plane
Telemetry: DiffServ DSCP (CS7/EF/AF41), RFC 3550 RTP, 9000B Jumbo MTU.
Validates IPv4 QoS markings—ensuring PTP events carry CS7 (56), audio carries EF (46) and video carries AF41 (34)—while tracking RTP sequence gaps and DF Path MTU sweeps.
Plane 4: Switch and L2 Infrastructure
Plumbing: LLDP-MED (0x88CC), Cisco CDP, IGMPv2/v3 Querier, 802.1w RSTP.
Decodes switch port identity, VLAN assignment and PoE+ draw. Monitors Spanning Tree Topology Change Notifications (TCNs) and IGMP Querier intervals to prevent flooding.
Transactional Secondary IP State Machine and VLAN-Aware BPF Pipeline
To capture both untagged access traffic and 802.1Q trunk frames without dropping packets, and to reach isolated off-subnet hardware without disrupting internet routing, the core executes the following pipeline:
// 1. Npcap / libpcap Kernel BPF Filter (Handles Untagged and 802.1Q VLAN-Tagged Frames)
const BPF_4PLANE_FILTER: &str = "
(arp or ether proto 0x88cc or ether proto 0x88f7 or (ether[14:2] == 0x2000) or
igmp or udp portrange 8700-8708 or udp port 4440 or udp port 4455 or
udp port 9875 or udp port 5353 or udp port 2467 or udp port 6504 or
udp port 3702 or udp port 319 or udp port 320 or udp port 2202 or
udp port 5568 or udp port 6454 or udp port 67 or udp port 68)
or (vlan and (arp or igmp or udp))
";
// 2. Transactional Secondary IP State Machine (Windows iphlpapi.dll / macOS BSD AF_ROUTE)
1. DISCOVERY: Off-subnet endpoint observed (e.g., Shure AD4Q at 169.254.88.12/16).
2. CANDIDATE SELECTION and PRE-FLIGHT CHECK:
- Compute candidate host IP in target prefix (e.g., 169.254.88.249/16).
- Transmit 3x raw ARP Request probes across target NIC; ABORT if any MAC responds.
3. ROUTE METRIC SNAPSHOT:
- Snapshot GetAdaptersAddresses() and GetIpForwardTable2().
- Record primary 0.0.0.0/0 default gateway and interface metric (e.g., Metric 20).
4. ISOLATED ALIAS BINDING:
- Invoke AddIPAddress(candidate_ip, subnet_mask, if_index, &nte_context, &nte_instance).
- Leave Default Gateway NULL (0.0.0.0) so internet and VPN traffic never route to the alias.
5. 1Hz IPC HEARTBEAT and 15-MINUTE LEASE WATCHDOG:
- Write NTE context to transactional Write-Ahead Log (%APPDATA%/state.wal).
- Background watchdog daemon monitors 1Hz UI heartbeat and 15-minute extendable lease.
6. ATOMIC ROLLBACK and CRASH RECOVERY:
- Invoke DeleteIPAddress(nte_context) on user click, lease expiry, or process termination.
- Verify post-rollback routing table parity against initial snapshot.
4-Plane Broadcast Protocol Discovery and Diagnostic Matrix
| Protocol / Standard | Plane and Domain | Transport, Ports and Multicast | Expected QoS / MTU | Fault Signatures Monitored |
|---|---|---|---|---|
| Audinate Dante (Native) | Plane 1 and 3 (Audio) | UDP 8700–8708 (ConMon), UDP 4440/4455, mDNS _netaudio-arc._udp |
DSCP 56 (CS7) Clock / DSCP 46 (EF) Audio • 1500B | APIPA 169.254.x.x fallback, QoS remarking to BE (00), Unicast/Multicast RTP drops, DDM subnet isolation |
| AES67 / SMPTE ST 2110-30 | Plane 1 and 3 (Audio) | UDP 9875 (SAP on 239.255.255.255), RTP UDP 5004 |
DSCP 46 (EF) • 1500B | SAP SDP payload mismatch, PTPv1/v2 boundary clock drift, RFC 3550 sequence gaps and packet time jitter |
| Q-SYS (Q-LAN) | Plane 1 and 3 (Audio/DSP) | UDP 2467 / 6504 (QDP on 224.0.23.175) |
DSCP 46 (EF) / CS6 (48) • 1500B | Core/Peripheral discovery timeout across VLANs, PTPv2 priority clash with Dante Brooklyn II modules |
| NewTek NDI 5 / 6 | Plane 1 and 3 (Video) | mDNS _ndi._tcp.local (224.0.0.251:5353), Discovery Server TCP 5960, Media 5961+ |
DSCP 34 (AF41) • 1500B | Unpruned multicast flooding, keyframe microburst buffer starvation, Discovery Server TCP unreachability |
| SMPTE ST 2110 and NMOS | Plane 1 and 3 (Broadcast Video) | NMOS IS-04/IS-05 (HTTP REST), ST 2110-20/30/40 RTP Multicast | DSCP 34 (AF41) / EF (46) • 9000B Jumbo | Jumbo Frame (MTU 9000) blackhole on 1500B switch trunks, narrow-sender pacing violations |
| Extron NAV and SIS Control | Plane 1 and 3 (Video/Matrix) | PURE3 RTP (239.252.x.x:5004), Extron SIS over SSH (TCP 22023) |
DSCP 34 (AF41) • 1500B / 9000B | Factory static subnet isolation (192.168.254.254), HDCP/EDID handshake drops, MTU fragmentation |
| ONVIF (Profile S / G / T) | Plane 1 and 3 (IP Video) | UDP 3702 WS-Discovery (239.255.255.250), RTSP TCP/UDP 554, VISCA UDP 52381 |
DSCP 34 (AF41) • 1500B | Stranded factory static IPs (.100.100 / .0.10), RTSP stream teardown, default credential exposure |
| Shure ACN and Sennheiser SSC | Plane 1 (RF and Control) | Shure SLP/ACN (239.255.254.253:2202/8427), Sennheiser _ssc._udp |
DSCP 32 (CS4) / BE • 1500B | Missing PortFast causing DHCP timeout into APIPA, control/Dante NIC subnet overlap |
| sACN (E1.31) and Art-Net | Plane 1 and 3 (Stage Lighting) | sACN Multicast 239.255.x.x:5568, Art-Net Broadcast/Unicast UDP 6454 |
DSCP 32 (CS4) • 1500B | Legacy Art-Net Limited Broadcast storms (255.255.255.255) saturating 100Mbps embedded AV control NICs |
| PTPv1 and PTPv2 (IEEE 1588) | Plane 2 (Timing and Sync) | UDP 319 (Event) and 320 (General) on 224.0.1.129, gPTP Layer 2 0x88F7 |
DSCP 56 (CS7) / 48 (CS6) | Same-domain split-brain Grandmasters, PTPv1/v2 boundary instability, Sync PDV jitter (>50 µs, missing Transparent Clock) |
| IGMPv2/v3, LLDP-MED and RSTP | Plane 4 (Infrastructure) | IGMP 224.0.0.1 (IP Proto 2), LLDP 0x88CC, CDP, RSTP BPDU 01:80:C2:00:00:00 |
Link-Local L2 Control | Missing IGMP Querier (>255s timeout causing port flooding), RSTP Topology Change Notification (TCN) table flushes, PoE+ budget exhaustion |