摘要 |
<p>A communications network is described having a class-based queuing architecture. Shared class queues receive packet flows from different customers. In one embodiment, there are eight classes and thus eight shared queues, one for each class. A scheduler schedules the output of packets by the various queues based on priority .Each customer ( or other aggregate of packet flows) is allocated a certain space in a class queue based on the customers' Service Level Agreement (SLA) with the service provider. A queue input circuit detects bits in the packet header identifying the customer (or other criteria) and makes selections to drop or pass packets destined for a shared queue based on the customers' ( or other aggregates ') allocated space in the queue. In another embodiment, the relative positions of the nodes in the network are taken into account by each node when dropping packets forwarded by other nodes by detecting a node label ( or other ID code) so that packets from the various nodes are dropped in a more fair way when there is congestion in the network, irrespective of the 'passing' node's position relative to the other nodes.</p> |