Colony Arena swarm-routing ⌥

Zone towers · Protocol · swarm-routing/HOPNET

HOPNET

Ants that hop between routing zones: proactive inside a zone, reactive between zones.

Locked: Later: bootstrapped, not scheduled

RepositoryPlan .github#52Thesis (UManitoba MSpace)

What it does

HOPNET (Wang, 2007 MSc thesis, University of Manitoba) crosses ant colony routing with zone routing. Each node keeps a zone of nodes within a few hops. Inside the zone, routes are kept proactively; towards a destination outside it, forward ants hop from zone border to zone border instead of flooding every node, and backward ants bring the path home.

It is the one published result found that benchmarks against AntHocNet directly, claiming better scaling, so its anchor pairs the two through ns3-tools with the AntHocNet configuration pinned and stated. No AntHocNet code exists for it: core/ is written fresh from the thesis.

Diagrams

HOPNET: how a route forms (UML sequence diagram)Sequence diagram of HOPNET's mechanism across 4 lifelines: local ants keep intrazone routes; forward ant to a border node; ant hops zone to zone; D inside this zone: intrazone route; backward ant: pheromone along borders; data along the zone path.source Sborder of S's zoneborder of next zonedestination Dlocal ants keep intrazone routesforward ant to a border nodeant hops zone to zoneD inside this zone: intrazone routebackward ant: pheromone along bordersdata along the zone pathloop [inside each zone: proactive]opt [D outside S's zone: reactive]
Sequence diagram (UML): solid arrows are control messages, dashed arrows return, bold arrows carry data; boxes are combined fragments (opt, loop, alt). Drawn from the paper; the repository's fidelity sheet is the authority once written.
HOPNET: hexagonal architectureHOPNET's simulator-agnostic core in the centre, reached only through ports; the ns-3 module and the browser adapter outside only convert headers and carry out the core's route decisions.«MIT OR GPL-2.0-only»core/zone membershipintrazone tablesborder-hopping antsclock portrng portneighbour porttimer portlink-state portobserver port«GPL-2.0-only»ns-3 adaptercontrib module hopnetheader ⇄ messagetimers, queueon swarm-coreimplementsthe ports«GPL-2.0-only»browser adaptercore/ → WebAssemblywhen the protocolreaches the site(site#13)implementsthe portsports on the rim: the only way in or out of core/
Ports and adapters: core/ includes no simulator header; time, randomness, neighbours and timers arrive through ports, and every adapter only carries out the core's decisions. Dashed: planned.
HOPNET: package diagramUML package diagram of HOPNET: the core package, the ns-3 module that uses it, the shared swarm-core module, the docs, the ns3-tools harness the module registers with, and this site.«use»«use»«use»registers armbuildscitescore«MIT OR GPL-2.0-only»algorithm, messages, codecports (injected)unit testsns3::hopnet«GPL-2.0-only»header codec, adapterhelper, examplestest.py suiteswarm-core«ns-3 contrib module»PheromoneTable, VisitedPathwire helpers, RouteDecisionSwarmRoutingBasedocs«GPL-2.0-only»fidelity sheetpaper § → implementationparameters with sourcesns3-tools::routing-bench«harness»arm registration##RUN## / ##BENCH## linesColony Arena«this site»core/ → WebAssemblypinned in protocols.lock
Package diagram (UML): dashed arrows are «use» dependencies; the licence of each package is its stereotype. The dependency never points from core to GPL-only code. Dashed outlines: planned.

Package structure

The repository's layout, its licence per directory (LICENSING.md) and what exists today.

Directories of swarm-routing/HOPNET
PathWhatLicenceState
core/simulator-agnostic algorithm + unit testsMIT OR GPL-2.0-onlyplanned
ns3/contrib module hopnet: header codec, adapter, helper, examples, test suiteGPL-2.0-onlyplanned
docs/fidelity sheet: zone radius, ant rates, the AntHocNet configuration compared againstGPL-2.0-onlyplanned
docs/adr/architecture decisions (template)GPL-2.0-onlypresent

Where it sits in the colony

The swarm-routing organisation: who depends on whomDependency graph of the swarm-routing organisation. The five protocols link against swarm-core and register as arms in ns3-tools; swarm-core and ns3-tools build and run inside the ns3-containers images; ns3-tools writes verdicts into benchmarks; the Colony Arena site builds AntHocNet's core to WebAssembly and will render the benchmarks leaderboard; the .github repository provides every repository's reusable CI.linkslinkslinkslinksextractsarmarmarmbuilds inruns inverdictscore/ → WASMleaderboardCIAntHocNetprotocol · liveARAprotocolBeeAdHocprotocolTermiteprotocolHOPNETprotocolswarm-coreshared modulens3-toolsharness · readersns3-containersns3-dev imagesbenchmarksdatasets · verdictsColony Arenathis site.githubreusable CI · templatesdashed arrow: «use» dependency (UML); highlighted: this project and its neighbours
HOPNET and its neighbours in the organisation.

Quests

Sources

Facts as of 2026-11-08, from the repository's AGENTS.md and the org ROADMAP.