Cell Relay Archive

Cell Relay Retreat>List Archive>month:1998-Feb> msg00098



[Date Prev][Date Next][Thread Prev][Thread Next]  
  [Date Index][Thread Index][Author Index][Subject Index]

Re: Explanation of PPD

  • From: ws@shore.net (William Stallings)
  • Date: 24 Feb 1998 14:47:59 GMT

In article <6csnbt$p2q$1@nnrp2.dejanews.com>, rhiggins@westell.com wrote:

> Hello:
> 
> Can somebody explain to me what PPD is?  And how it is different from EPD.
> 
> Thanks In Advance
> 
> Rodger Higgins
> rhiggins@westell.com
> 

These terms refer to stratgies for carrying TCP/IP over ATM. Here is an
excerpt from my book that discusses them. (HIGH-SPEED NETWORKS: TCP/IP and
ATM Design Principles,Prentice-Hall, William Stallings, 1998; ISBN
0-13-525965-7). Sorry, I can't include the figures.

------------------------------------------------------------------------
   Partial Packet Discard and Early Packet Discard
   The conclusions of all of these studies have led a number of switch
vendors to increase ATM switch buffer size. A number of vendors have also
been influenced by proposals for two techniques to improve the cell
discard behavior. These proposals are referred to as partial packet
discard and early packet discard. Both strategies are aimed at reducing
the transmission of useless cells.
   Partial packet discard (PPD) operates as follows: if a cell from an IP
datagram is dropped from a switch buffer, the subsequent cells in that
datagram are also discarded. For a switch to recognize, at the ATM level,
which cells belong to a given IP datagram, PPD must operate on a
per-virtual-channel basis. When a switch discards a cell on a particular
VC, it then discards all subsequent cells on that VC until it sees a cell
with the SDU type bit set to one in the ATM cell header. This cell marks
the end of an AAL5 PDU and therefore the end of an IP datagram. This final
cell is not dropped. Because AAL5 does not support the multiplexing of
cells from different PDUs, the SDU parameter can be used successfully to
delimit IP datagram boundaries.
   Figure 10.16c shows the performance of PPD. As can be seen, PPD
provides better performance than TCP over plain ATM, but is not as
effective as one might wish. Improvement is limited because PPD only
discards the "tail end" of a datagram. On average, we can expect that only
half of a damaged datagram is discarded with each cell discard. 
   A more effective scheme is early packet discard (EPD). In this case,
when a switch buffer reaches a threshold level, but before it is actually
required to discard any cells due to buffer overflow, an entire IP
datagram is dropped. Thus, when the switch senses that congestion is
beginning and that cell discard may soon be necessary, it preemptively
discards all of the cells, starting with the first, of an IP datagram. For
this purpose, the switch looks for the first incoming cell on a VC with an
SDU bit of 0 that immediately follows a cell on the same VC with an SDU
bit of 1. This cell marks the beginning of a new datagram, and the
discarding begins with this cell. In effect, the EPD strategy emulates a
packet-switching network in which entire packets are dropped.
   Figure 10.16d shows the performance of EPD, with a threshold set to
half the total buffer size. Except for very small buffer sizes, high
effective throughput is achieved. 
   The combination of EPD with the TCP congestion control mechanism seems
to provide effective throughput for the average TCP connection. EPD has a
short-term orientation, anticipating congestion and reacting immediately
to drop a packet. Complementing this action is the longer-term orientation
of TCP, which reacts to packet loss by backing off and only slowly
resuming its former rate of transmission.
------------------------------------------------------------------------



|                | Descriptions, errata sheets and discount order info |
| Bill Stallings |              for my current books and               |
|  ws@shore.net  |       information on my forthcoming books at        |
|                |              http://www.shore.net/~ws               |