IEEE COMMUNICATIONS LETTERS, VOL. 4, NO. 6, JUNE 2000 205
A FIFO-Based Buffer Management Approach for the
ATM GFR Services
Chia-Tai Chan, Shuo-ChengHu, Pi-Chung Wang, and Yaw-Chung Chen, Member, IEEE
Abstract—We investigate the TCP packet transmission over
the ATM Guaranteed Frame Rate (GFR) service using a selective
packet-discard with buffer vacancy tracking strategy and a
packet-based push-out buffering scheme. Our approach is based
on FIFO queueing discipline, it features fair sharing of available
resources as well as feasibility in hardware implementation.
Index Terms—Packet-based push-out buffering scheme, selec-
tive packet-discard.
I. INTRODUCTION
G
UARANTEED Frame Rate (GFR) has recently been stan-
dardized by the ATM Forum. It is expected to be useful
for TCP/IP based application. The GFR is intended to provide a
minimum rate guarantee to VC’s at the frame level. In addition,
a connection sending in excess of the minimum rate should re-
ceive a fair share of any unused network capacity. The design
of a simple and efficient buffer management approach for ac-
commodating GFR service requirements is an important issue
toward the successful development of GFR.
Fair queueing disciplines [1] such as weighted fair queueing
(WFQ), virtual clock, packet-by-packet generalized processor
sharing (PGPS), and self-clocked fair queueing (SCFQ) have
high processing overhead for tracking the progresses of tasks.
It has been suggested in [8] that a simple rate-guaranteeing
discipline (i.e., Weighted Round Robin) with per-VC queueing
is indeed necessary to ensure GFR service. However, the
per-VC queueing (i.e., each virtual connection uses separate
queue) greatly complicates the switching system design. The
effective throughput of TCP over ATM networks may be
unsatisfactory because packet fragmentation may result in
wasted bandwidth for transmitting those cells of corrupted
packets, in which at least one cell is dropped, and the packet
has to be retransmitted [2]–[4]. The Fair Random Early Drop
(FRED) [6], a modified version of RED, uses per-active-flow
accounting to provide better protection than RED. However,
FRED does not address the packet fragmentation problem.
It has been demonstrated that the packet-discard strategies,
i.e., early packet discard (EPD) and partial packet discard
(PPD), prevent packet fragmentation problem. In this work,
we propose a feasible FIFO buffering scheme that provides
Manuscript received July 13, 1999. The associate editor coordinating the re-
view of this letter and approving it for publication was Prof. N. B. Shroff.
C.-T. Chan is with the Telecommunication Laboratories, Chunghwa Telecom
Company, Ltd, Taipei 106, Taiwan, R.O.C. (e-mail: ctchan@ms.chttl.com.tw).
S.-C. Hu, P.-C. Wang, and Y.-C. Chen are with the Department of
Computer Science and Information Engineering, National Chiao Tung
University, Hsinchu, Taiwan, R.O.C. (e-mail: {schu@csie.nctu.edu.tw;
pcwang@csie.nctu.edu.tw; ycchen@csie.nctu.edu.tw).
Publisher Item Identifier S 1089-7798(00)05693-3.
the requirements of GFR service. The merit of the proposed
approach is the efficient and fair sharing of network resources
with a feasible implementation method for ATM GFR services.
The organization of this paper is as follows. In Section II,
we present the functional approach of the proposed scheme.
The implementation architecture is discussed in Section III.
Section IV concludes the work.
II. PACKET-DISCARD PUSH-OUT CONTROL APPROACH
Our approach consists of a selective packet-discard with
buffer-vacancy tracking strategy and a packet-based push-out
buffering scheme (abbreviated as PDPO here after). The
latter ensures the fair sharing of the network resources and
prevents misbehaved connections from occupying excessive
buffer space, while the former avoids the packet fragmentation
problem and improves the TCP throughput [5].
A. Selective Packet-Discard with Buffer-Vacancy Tracking
Strategy
Assume that an ATM switch has an output FIFO queue of
size (in cell units), and the maximum packet size is cells.
The switch maintains a variable to track the buffer vacancy,
and a variable to count the incoming packet length for the
virtual connection . Initially, the switch sets to and
( ) to zero, where is the number of VC’s.
Whenever a cell is transmitted, will be incremented by one.
If , the first cell of an arriving packet will be admitted
and will be set to . Otherwise, the cell and all sub-
sequent cells of the same packet will be dropped. When the first
cell of a packet from is admitted, the switch starts to count
up until the last cell is received, then is updated to
. The switch can identify the last cell of an in-
coming packet by checking the ATM-layer user-to-user (AUU)
indication bit. By tracking the buffer vacancy, the buffer utiliza-
tion can be improved and the packet fragmentation problem can
be avoided.
B. Packet-Based Push-out Buffering Scheme
A flow can acquire larger service rate by sending more traffic
to keep higher occupancy of the FIFO buffer. To guarantee fair
bandwidth sharing, it should either admit or discard the arriving
packet according to the fairness requirement. A switch can use
per-VC accounting (i.e., keep a separate record for each VC)
to realize the dynamic buffer sharing. Let be the bandwidth
available in an output port, and be the requested service rate of
, where . Using FIFO queueing, the service rate
1089–7798/00$10.00 © 2000 IEEE