Skip to content

The v2.7.0 BeeAdHoc anchor

Status: complete (2026-11-01). The anchor MISSES: BeeAdHoc's control overhead is below AODV's and DSDV's at 3 of the 5 pause times, and the pre-registered gate asked for 4. Under the comparator rule (AGENTS.md, Conventions) the beeadhoc arm ships as a written infeasibility verdict: its family numbers do not count. The verdict is recorded on #800. Re-reading it against the GECCO 2005 paper, once in hand, is #815.

← Benchmark index · Methodology · v2.5.0 comparators

What was fixed before dispatch

The plan file tools/bench/campaigns/v2.7.0-beeadhoc-anchor.yaml (generation v270a) holds the source, the cell and the rule; this section summarises it.

  • Source. The PG 460 final report (Univ. Dortmund, 2006, hdl 2003/22405), ch. 7, the one the arm was written from (fidelity sheet). Its numbers are in figures only, so the anchor is held to the trends its text states: BeeAdHoc "sends the smallest number of control packet[s]", constant over pause time (§7.2.5); lowest energy per kB (§7.2.2); best delay (§7.2.3) and throughput (§7.2.4).
  • Cell. routing-compare --scenario=paper with every knob explicit: 100 nodes, 3000 × 1000 m, 900 s, 20 CBR flows at 4 packets/s, random waypoint at U[0, 10] m/s, pause 1, 30, 100, 500, 1000 s, two-ray, 250 m range, UDP, image 3.42-opt, seeds 1–10 (two blocks of five).
  • Deviations. 64-byte data packets instead of 512 (the packet rate is kept, so the offered load is 1/8 of the source's); no DSR arm, so AODV and DSDV are the comparators; 10 seeds instead of 5.
  • Two settings. The arm's defaults (control), and no expanding ring (ringoff, InitialScoutTtl=10), because #806 found that the ring's starting TTL, which the report does not give, decides the arm's delay. The ringoff jobs run BeeAdHoc alone and pair with the control cell's AODV and DSDV rows on the same seeds.
  • Rule. PRIMARY, the gate: at each pause time, the paired 95 % CI of (BeeAdHoc − other) NRL lies wholly below zero against AODV and against DSDV; the anchor passes at ≥ 4 of 5 pause times in the default setting. SECONDARY, reported and not gated: energy per delivered packet, mean delay, PDR, throughput, the same comparisons for ringoff, and the in-packet route bytes (##INPKT##, #808).

This is the second dispatch. The first one, before #831, was void: at 4 packets/s the arm made the application re-send packets, so its cells counted duplicate deliveries. The cells here were run on the fixed code (f14d5cc), and scenario_check results passes every one with its duplicate-delivery rule (0 FAIL; the only WARNs are the path-diversity "churn-dominated" note, which concerns AntHocNet rows this cell does not have).

Results

Cells: results/cells/anchor-bee-p<pause>-v270a.txt (all three protocols) and anchor-bee-p<pause>-v270a-ringoff.txt (BeeAdHoc, ring off). Every interval is a paired 95 % CI over 10 seeds (t = 2.262); * marks one that excludes zero.

Primary: NRL (control packets per delivered data packet)

pause (s) BeeAdHoc AODV DSDV Bee − AODV Bee − DSDV gate
1 10.05 28.63 12.70 −18.58 [−20.45, −16.71]* −2.65 [−3.39, −1.92]* pass
30 10.50 28.13 12.64 −17.63 [−21.01, −14.25]* −2.14 [−2.67, −1.61]* pass
100 10.46 25.52 12.21 −15.05 [−17.29, −12.82]* −1.75 [−2.38, −1.12]* pass
500 10.02 20.99 10.40 −10.97 [−15.51, −6.43]* −0.39 [−1.18, +0.40] miss
1000 9.44 21.04 9.31 −11.60 [−18.66, −4.54]* +0.13 [−0.92, +1.18] miss

3 of 5: the anchor misses. What reproduces is the shape of §7.2.5: BeeAdHoc's control load is flat over pause time (9.4–10.5) and far below AODV's everywhere. What does not is the ranking against DSDV: DSDV's triggered updates fall away as the nodes stop moving, and from pause 500 s on it costs the same as BeeAdHoc. Counted in bytes (nrl_bytes) the arm is above DSDV at 500 and 1000 s (+0.87 [+0.20, +1.54]*, +1.48 [+0.50, +2.47]*), and the route it carries in every data packet (##INPKT##) adds another 1.1–1.6 to its byte NRL (nrlBytesIncl 8.6–9.6 against nrl_bytes 7.6–8.1). The report says its own DSDV runs were "left out in some cases due to errors", so the source's DSDV comparison may be thinner than its sentence; that is for #815 to read against GECCO, not a reason to move the gate.

Secondary, default setting (BeeAdHoc − other)

pause (s) energy/pkt (J) vs AODV vs DSDV mean delay (ms) vs AODV vs DSDV PDR (pp) vs AODV vs DSDV
1 −0.449* −0.244* +119.8 [+89.8, +149.8]* +152.6* +21.93* +14.06*
30 −0.440* −0.233* +140.1 [+104.9, +175.2]* +171.2* +21.29* +13.35*
100 −0.386* −0.200* +158.8 [+132.9, +184.6]* +184.7* +19.66* +11.97*
500 −0.248* −0.064* +206.9 [+151.2, +262.6]* +236.6* +14.73* +4.85*
1000 −0.220* −0.000 [−0.011, +0.011] +234.5 [+135.5, +333.6]* +278.2* +13.82* +0.30 [−0.46, +1.06]

Throughput follows PDR (the same flows at a fixed rate). BeeAdHoc's mean delay is 196–295 ms against AODV's 57–76 and DSDV's 17–43.

  • Energy (§7.2.2) reproduces: lowest per delivered packet at every pause time, tied with DSDV at 1000 s.
  • Delivery reproduces where the report implies it: BeeAdHoc delivers the most packets until the network is nearly static, where DSDV catches up.
  • Delay (§7.2.3) is contradicted in the default setting, by 120–280 ms. Almost all of it is the source's hold queue while the expanding ring searches (#805, #806).

Secondary, ring off (InitialScoutTtl=10)

pause (s) NRL vs DSDV vs Bee default mean delay (ms) vs AODV vs DSDV
1 14.42 +1.72* +4.37* 49.6 −26.5* +6.3*
30 14.40 +1.76* +3.90* 49.0 −22.9* +8.3*
100 14.76 +2.55* +4.30* 49.2 −16.2* +9.8*
500 13.90 +3.50* +3.88* 37.6 −19.2* +10.5*
1000 12.87 +3.56* +3.44* 23.2 −37.1* +6.6*

Without the ring the arm trades exactly as #806 found on the grid cell: mean delay falls by 146–272 ms to below AODV's at every pause time (still 6–11 ms above DSDV's), for about +4 control packets per delivered packet, which puts its NRL above DSDV's everywhere. Against AODV the NRL stays below at every pause time. PDR and energy per packet move by under 1 pp and 0.02 J. So neither setting gives the report's "smallest control load and best delay" together: the ring buys the control load with the delay, and dropping it buys the delay back with the control load.

What follows

  • beeadhoc stays in the module and in the per-PR delivery smoke; it is not run in the family comparison, and no page quotes its family numbers.
  • #815 re-reads the setup and the claims against GECCO 2005 when the paper is in hand. A different source setup is a new pre-registered anchor, not a re-reading of this one.