A system for hierarchical topological addressing and hierarchical recursive routing in a network, the system comprising: a plurality of routing devices (210, 220, 230) operating in two or more routing layers below a network layer in a network protocol stack, wherein within each routing layer a respective group of the routing devices (210, 220, 230) are organized in a respective hierarchical topology, each topology including a plurality of levels, the levels including at least a first level and a second level, the first level including a first subset of the respective group of routing devices, the second level including a second subset of the respective group of routing devices, each routing device in the first level being directly connected to one or more routing devices in the second level, each routing device in the hierarchical topology having a hierarchical address based on a location of the respective routing device within the hierarchical topology, wherein, within the respective hierarchical topology corresponding to each routing layer, the hierarchical address of each routing device in the first level includes the hierarchical address of a corresponding routing device in the second level, and wherein each of the routing devices in the hierarchical topology is operable to perform recursive one-hop routing to route packets through the network, and wherein a first routing device performing the recursive one-hop routing on a particular packet includes: selecting a network port of the first routing device based on at least a prefix of a destination address of the packet, wherein the destination address is a hierarchical address of a second routing device in the first level, and forwarding the packet to a routing device directly connected to the selected port. a plurality of routing devices (210, 220, 230) operating in two or more routing layers below a network layer in a network protocol stack, wherein within each routing layer a respective group of the routing devices (210, 220, 230) are organized in a respective hierarchical topology, each topology including a plurality of levels, the levels including at least a first level and a second level, the first level including a first subset of the respective group of routing devices, the second level including a second subset of the respective group of routing devices, each routing device in the first level being directly connected to one or more routing devices in the second level, each routing device in the hierarchical topology having a hierarchical address based on a location of the respective routing device within the hierarchical topology, wherein, within the respective hierarchical topology corresponding to each routing layer, the hierarchical address of each routing device in the first level includes the hierarchical address of a corresponding routing device in the second level, and wherein each of the routing devices in the hierarchical topology is operable to perform recursive one-hop routing to route packets through the network, and wherein a first routing device performing the recursive one-hop routing on a particular packet includes: selecting a network port of the first routing device based on at least a prefix of a destination address of the packet, wherein the destination address is a hierarchical address of a second routing device in the first level, and forwarding the packet to a routing device directly connected to the selected port.