Patent ID: 6182120
Filing Date: 2001-01-30
Classification: G06F

Abstract:
A method for controlling data transfer between a host data processing system and a communication network by processing queued messages in a plurality of queues saved in a data store, said method comprising the steps of:(a) including in the data store a first service table (ACTST) containing a plurality of bits wherein each bit is associated with a corresponding queue so as to determine which queue has to be served, said first service table being stored before entering a critical state and updated according to the critical queues and being the result of an AND operation between two other service tables contained in the data store, specifically:a second service table (HDWST) containing a plurality of bits, each bit corresponding to the status of a queue so as to determine if a new message has been enqueued in said queue; anda third service table (WGHST) containing a plurality of bits, each bit associated with a corresponding queue so as to determine if said queue is to be served according to the associated predetermined number of allowed dequeue messages;(b) dequeueing, in a normal state, successively queued messages from a plurality of queues according to their associated queue priorities;(c) dequeueing in the normal state, in the order of queue priorities, queued messages from non-empty queues until their associated predetermined number of allowed dequeue messages are reached;(d) interrupting the normal state to enter a critical state, by dequeueing successively queued messages from a plurality of critical queues according to their associated queue priorities, said critical queues having their corresponding aging times exceed predetermined values;(e) dequeueing in the critical state, in the order of critical queue priorities, queued messages from non-empty critical queues until their associated predetermined critical number of allowed dequeue messages are reached; and(f) returning to the previous normal state with its set of parameters to continue until the next critical state occurs or until the end of scheduling cycle is reached.