Cell Relay Archive[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index][Thread Index][Author Index][Subject Index] Re: EPD and PPD Simultaneously?
Just for a point of reference, all (well most) 1st and 2nd generation ATM switches were just that, ATM switch. They had no idea about the frame structure of the cells it was passing. So, congestion management was done on a per cell basis; if a cell, coming from the switch fabric, found the egress port congested it would be queued or tossed if the queue was full. So when people started running IP packets over ATM, performance during congestion was really poor, because even if just 1 cells in a 180 cell packet (MTU=9k) got tossed, the whole packet was "corrupted", and the other 179 cells were transmitted in vain. Later ATM switch designers got smart and started using the fact that IP used AAL5 which used PTI field bits to indicate the EOF cell. Just add one bit in context memory to indicate "discard until EOF cell" and voila! You have PPD and you've just improved the congestion performance (a.k.a. "goodput") of IP/ATM. People starting getting even smarter, and instead of waiting until the queue filled up to start discarding, and possibly wasting bandwidth because you've already transmitted half the packet, start discarding the first cell in a packet as soon as you "think" you are getting congested (i.e. queue 70% full)...and let PPD handle the rest of the packet. Where things started getting a little out of hand, IMHO, was when Weighted-Random Early Discard (love that name - first customer I meantioned it too laughted and said it sounded like a bug disguised as a feature!) was introduced to break TCP synchronization...but then I've never bother to look up how effective it is in the real world. Thomas Frieling <thomas.frieling@arcormail.de> wrote in message 39A85E2E.C500670C@arcormail.de">news:39A85E2E.C500670C@arcormail.de... > Early Packet Discard begins to discard cells when the buffer > situation is not too tight yet. The switch decides to discard an > entire packet and lets the one before pass untouched. All cells > that form the following packet are discarded and not just the > first! EPD sets the flag in connection context memory which PPD looks at to determine if that and all subsequent cells in that stream should be discarded. Anytime a cell is discarded in an AAL5 stream, that flag is set. PPD discards all cells in a stream if that flag is set, and resets the flag after discarding the EOF cell. Also, when EOF is received, another flag is set to let EPD know that when the next cell arrives, it is the first cell in the frame/packet. > Partial Packet Discard happens when the buffer fills up rapidly. > The switch cannot wait until a new packet arrives. It has to > start discarding cells immediately. This means, that some cells > of a packet or frame are already transmitted. To avoid confusion > at the receiver the last cell of the frame may be transmitted. That's not PPD, as I mentioned above, that is just generic ATM cell discarding, (the queue is full, gotta toss the cell). PPD is the process by which the rest of the frame gets discarded, even if the queue is empty. Wow, can't believe I still remember all this stuff... cheers dominic
|
|