The ad-hoc router enables a decentralized IP routing network (mobile of
fixed) amongst a set of network devices, and can offer quality of
services for voice, video and data applications. The ad-hoc router is
divided into a receiving, control/management processing, IP
datapath/routing, randomizer, scheduler and transmission blocks. The IP
datapath/routing block provides, in addition to the standard datapath
routing functionality, per packet labels that uniquely identify the
source device of the packet in the network. The scheduler maintains a
plurality of QoS queues, which are then dequeued with a WFQ scheduler,
which can be based on standard technology or a simplified low-cost
implementation. The randomizer uses the labels to route the packets to a
queue such that all packets from the source device, indicated by the
label, enter the same queue. For greater security, the randomizer uses a
random mapping function that is re-computed periodically.