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=paperwith 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. Theringoffjobs run BeeAdHoc alone and pair with thecontrolcell'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¶
beeadhocstays 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.