At 155 Mbps you need 32 MB worth of buffer space to arrive at a delay like this. I wouldn't put it past ATM vendors to think of this kind of over-enthusiastic buffering as a feature rather than a bug.
Vendor C sells packet memory up to 256M each way for a line card. Whether this makes any sense depends obviously on your interfaces. Theoretically it makes sense to be able to accommodate the number of flows you´re carrying times the window size advertised by TCP. In live networks not too large a percentage of the flows send data at maximum so one would expect to have a few thousand "full" flows on a link at time. 64k window for thousand flows would use 64M buffer memory. (not counting memory utilization inefficiencies) If you go deeper into the equation and start to analyze how fast you´ll get the packets in anyway, the associated mathematics will require a significantly longer presentation which you´ll probably find easily by Google. Pete