I'm experimenting with CEF on a 2621. I have a fast PC on each FE port, each PC running a small tight program that opens a TCP socket and measures the throughput to/from the other PC. I wrote the code myself, it's very fast and is definitely not the limiting factor on speed (if the two PC's are connected through just a hub, throughput is ~80Mbps). When the 2621 sits between them, throughput is dramatically lower... ~10 Mbps in one direction and ~6600 Kbps in the other (with CEF disabled). I know the 2600 platform cannot sustain wire speeds, but at least this gives us a baseline. So I enabled CEF, expecting at least **some** increase in speed. Not so. In one direction (input F0/0 to output F0/1) the speed is unchanged; in the other (input F0/1 to output F0/0) the speed drops dramatically depending upon what interface settings I use. For example, with "ip route-cache flow" on both FE's the speed is roughly the same as the CEF-disabled rate (~6600 Kbps). However, add "ip route-cache cef" to both interfaces and the F0/1 to F0/0 speed drops to 700 Kbps (a drop of nearly 90%!). Removing all "ip route-cache" statements from both interfaces yields a middle ground of about 4500 Kbps. Meanwhile, in all cases the F0/0 to F0/1 traffic continues to be ~10Mbps, utterly unaffected by any CEF or route-cache settings. The only "extra" thing this router is doing is NAT. F0/0 is the outside interface, and F0/1 is the inside interface. NAT is using only static addresses. I don't know if NAT would be the limiting factor on speed, or if that burden would be unidirectional. Does NAT force all packets to be process switched, effectively disabling CEF? I would think that CEF's routing table could still be built even allowing for NAT, just as it allows for ACL's. Any ideas gratefully accepted. I'm just trying to understand what's happening here so I can get the most out of these routers.