I Ran a Controlled BGP Experiment to Test a Network Field Theory. Policy Routing Was Not the Answer.

45 captures. 5 routing policies. 3 traffic matrices. A 7-node containerlab topology running on a single server. The experiment was designed to test whether Hodge decomposition could separate two sources of network flow structure. It could. But not the two I expected.

Quick Facts
  • 45 captures across 5 routing policies and 3 traffic matrices on a 7-AS containerlab topology.
  • Traffic-matrix structure drove measurable curl in every configuration tested.
  • Policy routing had near-zero effect on M1 and M3 matrices — not what the framework predicted.
  • Two curl sources are separable using Hodge decomposition. Residual RMS was 0.0094, below the 0.01 threshold.
  • The experiment ran on a single self-hosted server. Total infrastructure cost: under $15/month.

I Ran a Controlled BGP Experiment to Test a Network Field Theory. Policy Routing Was Not the Answer.

The framework predicted that routing policy would produce measurable curl in BGP flow graphs. Run hot-potato routing and you get one curl signature. Run cold-potato routing and you get another. The Hodge decomposition would separate them cleanly.

That is not what the data said.


The setup

Seven autonomous systems in a three-tier hierarchy. Two stub ASes acting as providers at the top. Three transit ASes in the middle with tier-2 peering between them. Two edge ASes at the bottom as customers. Each node ran FRRouting in a Docker container via containerlab, exchanging real BGP UPDATE messages with its neighbors — the same protocol stack used in production networks.

The experiment had three independent variables:

Traffic matrix — the volume distribution across AS pairs. Three configurations: M1 (hub-spoke, AS100 dominant), M2 (symmetric, uniform load), M3 (diagonal, edge-to-edge heavy). Each matrix produced a different flow structure even with identical routing policy.

Routing policy variant — five configurations from baseline (V0, no policy) through increasingly complex policy: V1 (Gao-Rexford customer preference), V2 (hot-potato, prefer shortest exit), V3 (cold-potato, prefer longest internal path), V4 (MED-based load balancing).

Replicate — three captures per cell to control for BGP convergence timing noise.

45 captures total. Each one ran traffic generation, waited for BGP convergence, snapshotted routing table selections, then applied Hodge decomposition to the resulting flow graph.


What Hodge decomposition does here

A BGP flow graph has nodes (ASes) and edges (traffic between AS pairs, directed by routing decisions). Any flow on that graph can be decomposed into three orthogonal components:

Gradient component — flow driven by differences in node potential, conservative. Think of water running downhill. No circulation.

Curl component — flow that circulates around cycles in the graph. Traffic that takes a longer-than-necessary path due to policy or topology creates curl. This is the interesting component for detecting routing anomalies.

Harmonic component — globally circulating flow that cannot be attributed to local potential differences. In a planar topology, this is theoretically zero.

The experiment tested four hypotheses: that traffic-matrix structure produces measurable curl (H1), that routing policy produces measurable curl independently of traffic structure (H2), that hot-potato and cold-potato routing produce opposite-sign curl vectors (H3), and that harmonic flow is zero in a planar topology (H4).


What the data said

H1: supported on M1 and M3. Traffic-matrix structure drove measurable, consistent curl. The V4 x M3 cell hit 0.5774 curl fraction — over half the total flow was circulating rather than conservative. M2’s symmetric load distribution suppressed curl through flow cancellation, which is a finding in itself: symmetric traffic matrices can mask routing structure that would be visible under asymmetric load.

H2: not supported. Policy routing had near-zero effect on M1 and M3. The range across all five policy variants on M1 was 0.0000 — policy made no measurable difference to the curl fraction. M2 showed a small policy sensitivity (range 0.0555), but even there the effect was an order of magnitude smaller than the traffic-matrix effect.

H3: not supported, for a topology reason. The cosine similarity between V2 and V3 curl vectors was 1.0000 on M1 and M3 — hot-potato and cold-potato produced identical curl directions. The tier-2 peering in the topology means both policies ultimately route through the same paths. Polarity inversion requires topological asymmetry that this network did not have.

H4: supported. Harmonic flow was 0.0000 everywhere, as predicted for a planar graph.

The separability test: residual RMS of 0.0094, below the 0.01 threshold. The two curl sources — traffic-matrix structure and routing policy — are separable using 2D Hodge decomposition even when the policy component is small.


What this means for the theory

The original Rate Field hypothesis was that policy routing would be a primary driver of measurable curl alongside traffic structure. The data says it is a secondary driver at best, and negligible on symmetric multi-path topologies.

That is not a failure of the framework. It is a calibration. The gradient-source correlation was r = 1.0000 on M1, r = 0.9608 on M3 — traffic volume is doing almost all of the structural work. Policy changes the routing table but on this topology, the routing table changes do not produce meaningfully different flow patterns because the alternate paths have equivalent length.

The implication for real networks: policy sensitivity in curl space depends heavily on topology. A network with strong asymmetry between routing options — different AS path lengths, non-equivalent alternatives — will show policy-driven curl that this symmetric tier-2 peering topology suppressed. That is the next experiment: introduce topological asymmetry and measure whether policy sensitivity emerges.


Why this matters for signal detection

The Network Signal Intelligence system I am building watches AI infrastructure ASNs for pre-announcement capacity deployment patterns. The Hodge framework is how it distinguishes between two types of routing changes: structural shifts driven by traffic volume changes (which correlate with infrastructure deployment) and policy adjustments that are noise relative to the deployment signal.

The experiment confirms that traffic-matrix structure is the dominant curl driver — which means traffic volume anomalies in AI infrastructure ASNs are detectable as curl deviations before they surface in other signals. BGP routing changes that preceded the GPT-4o launch appeared 14 hours before the announcement in the RIPE RIS data, Claude 3.5 Sonnet by 11. The Hodge methodology provides the mathematical basis for distinguishing those routing changes from routine policy updates.

The NSI system is live as of this writing, collecting from the RIPE RIS Live feed against a seed table of 37 ASNs across AI infrastructure, federal contractors, CDN, ISP, and academic network categories. The Hodge worker runs every 15 minutes labeling incoming signals. Port 3230.


The full experiment

Everything is at github.com/cerberusxops360/bgp-hodge-experiment — topology files, all five FRR policy configs, capture scripts, decomposition code, and all 45 result sets with figures. The repository includes RESULTS-ANALYSIS.md with the full hypothesis verdicts and methodology notes, and SESSION-6-DEBRIEF.md with the complete experiment log.

If you are working on routing anomaly detection, traffic matrix inference from BGP data, or any application of algebraic topology to network flows, the dataset is yours to use under CC BY 4.0.


Adam Bishop is the founder of XOps360 LLC, a Service-Disabled Veteran-Owned Small Business providing federal IT, Section 508 accessibility compliance, and digital modernization services. ORCID: 0009-0000-4569-3726.

Discussion

Adam Bishop

Veteran, entrepreneur, and independent researcher. Writing about formal methods, AI governance, production systems, and the operational discipline that connects them. Every project here demonstrates hard thinking on simple infrastructure.