An apparatus and method for monitoring data flow at a node on a network are
disclosed. A memory location or "bucket" is allocated to each of a
plurality of links and classes of service at the node. A free-running
counter is incremented at a rate determined by the maximum allowable data
rates on the various links and classes of service. When a data packet is
received at a particular link and class of service, the corresponding
memory location or bucket is adjusted or "leaked" by subtracting the
present counter value from the present bucket contents. That difference is
then added to the number of units of data, i.e., bytes or groups of bytes
of data, contained in the incoming packet. That sum is then compared with
a predetermined threshold determined by the allowable data rate associated
with the link and class of service. If the threshold is exceeded, then the
incoming data packet is marked accordingly. The system can include
multiple stages of monitoring such that multiple thresholds can be used to
assign one of multiple discard eligibility values to the incoming packet.
Un materiale e un metodo per il controllo dei dati fluiscono ad un nodo su una rete sono rilevati. Una posizione o "una benna" di memoria è assegnata a ciascuna di una pluralità di collegamenti e di codici categoria di servizio al nodo. Un contatore non sincronizzato incremented ad un tasso determinato dai tassi di dati massimi permessi sui vari collegamenti e codici categoria di servizio. Quando un pacchetto di dati è ricevuto ad un collegamento e ad un codice categoria di servizio particolari, la posizione o la benna di memoria corrispondente è registrata o "è fuoriuscita" sottraendo il contro valore attuale dal soddisfare attuale della benna. Che la differenza allora è aggiunta al numero di unità dei dati, cioè, byte o gruppi dei byte dei dati, contenuti nel pacchetto ricevuto. Che la somma allora è paragonata ad una soglia predeterminata ha determinato dal tasso di dati permissibile connesso con il collegamento ed il codice categoria di servizio. Se la soglia è oltrepassata, allora il pacchetto ricevuto di dati è contrassegnato di conseguenza. Il sistema può includere le fasi multiple di controllo dei tali che le soglie multiple possono essere usate per assegnare uno dei valori multipli di eleggibilità di scarto al pacchetto ricevuto.