A hierarchical directional internet-oriented ad-hoc network, defined by a software infrastructure, is composed of fixed gateway nodes and a plurality of wireless nodes, which may be fixed or mobile, and which may act as subscribers, routers, or both. The infrastructure hierarchy is defined by the hop count of each node (distance of that node to a fixed gateway node). The software infrastructure includes two tables associated with each node in the network: the upstream routing table which provides shortest routes to fixed gateway nodes through upstream neighbors, and the downstream routing table which provides shortest routes to subscribers through downstream neighbors. These two tables are used by routing algorithms. A peer table can also be used for alternate routes. The maintenance of the aforementioned tables is performed by autonomous algorithms operating locally on each node by receiving and processing signals from their neighbors.