A method of utilizing shared memory resources in switching Protocol Data Units
(PDUs) at a data switching node is presented. The method includes reserving: a
temporary memory storage portion for storing PDUs prior to queuing for processing
thereof, a Class-of-Service memory storage portion to provide support Quality-of-Service
guarantees, a shared memory-pool portion and an input port memory storage portion
enabling non-blocking input port flow control. Provisions are made for PDU discard
decisions to be delayed until after PDU headers are inspected subsequent to the
receipt of each PDU. Provisions are made for well-behaved data flows conveyed via
an input port to be protected against blocking from misbehaving data flows conveyed
via other input ports of the data switching node. The advantages are derived from
a memory management scheme which can be equally applied in a PDU discard and a
flow control environment to reduce PDU discard instances at a data network node
implementing the memory management scheme while reducing memory storage requirements.