Attention IOS experts!

plur

[H]ard|Gawd
Joined
Jun 3, 2001
Messages
1,397
Introduction
Sorry for the long post. Please read on :)
I have a few Cisco 2500 series routers here (CCNA labs, etc). It has always puzzled me why the latency was a lot more than current (and very cheap) home routers.

E.g.

Ping my home router:

Pinging 192.168.1.10 with 32 bytes of data:

Reply from 192.168.1.10: bytes=32 time<1ms TTL=128
Reply from 192.168.1.10: bytes=32 time<1ms TTL=128
Reply from 192.168.1.10: bytes=32 time<1ms TTL=128
Reply from 192.168.1.10: bytes=32 time<1ms TTL=128

(Linux shell shows the <1ms at around 0.1ms)

Ping my 2513:

Pinging 192.168.3.10 with 32 bytes of data:

Reply from 192.168.3.10: bytes=32 time=4ms TTL=255
Reply from 192.168.3.10: bytes=32 time=3ms TTL=255
Reply from 192.168.3.10: bytes=32 time=3ms TTL=255
Reply from 192.168.3.10: bytes=32 time=4ms TTL=255

As you can see, the 2513 is substantially higher.

"It's only 4ms!" I hear you cry. That 4ms increases the reponse time on everything, from refreshing multiple servers within ASE (a ping tool) to actually playing online games, etc.
Considering these bits of kit were around $3000 when they first came out, I find it hard to explain why a $30 piece of home equipment outperforms it.


Anyway, I think I found the 'problem'. I think, by default, these routers are using 'store and forward packet switching'. I won't bore you with the technical side (I'm sure most of you know anyway) but basically, it processes the entire frame before throwing it back out of the port, which incurs a higher latency.

What I need to know
How to enable cut-through packet switching (starts sending out the packet before it has received it all, much lower latency) for this router.
I have been through the cisco.com material and none of the syntax appears to be valid on the 2513, Version 12.2(8)T.
If anyone could lend some insight on this, I'd be very appreciative. Otherwise, this bulky grey router is not much good to me if it has trouble with 1 user playing a few online games :)
 
have to keep in mind those routers are not meant for 1 person so there not optimized for 1 person.
 
"cut through" and "store and forward" are switching techniques, not routing techniques. You'd implement these on a switch, not on a router.

Your router needs to wait for the entire frame(with the IP packet in side of it) and check the crc of the frame and packet,destination IP, possibly process an ACL or 2 and lookup the next IP hop before it can route it to its destination. For 10+ year old hardware, a 2500 series is still pretty good and much more versatile than a linksys.

Pinging a router is not a good test for latency either. A router's first job is to route packets between different networks, not to respond to ICMP echo requests. Anything directed to the router itself has a lower priority than a packet being routed through it.

Have you done extensive(not 1 or 2, but ~10 minutes constant)tests that show a definite 3-4ms increase when pinging a site on the internet when using the 2513 instead of the $30 SOHO router?
 
Hmm.
Cisco.com implies that this can also be used on a router.
When I use the 2513 as a gateway, ICMP responses are typically 10ms higher. This is not a huge problem.
When I do a mass 'ping' (I don't think it's ICMP specifically, as it also grabs server data, current number of players, etc) from within ASE (All Seeing Eye) from behind this router, I get results 300ms+. If I just use my el cheapo Conexant hardware, they are typically 30ms.

Basically, once I put any load on this router, the CPU time (monitored via SNMP) hits the roof and this is reflected in everything.
 
Here's something I just found:

cisco.com said:
The PA-12E/2FE port adapter offloads Layer 2 switching from the host CPU by using store-and-forward or cut-through switching technology between interfaces within the same virtual LAN (VLAN) on the PA-12E/2FE port adapter. The PA-12E/2FE port adapter supports up to four VLANs (bridge groups).

Examples
The following example configures interface 3/0 for cut-through switching:

Router(config)# interface fastethernet 3/0

Router(config-if)# bridge-group 10

Router(config-if)# cut-through

Router(config-if)# no shutdown

Router(config-if)# exit

Router(config)#

In this instance, it appears to be for some kind of port adapter but I have read other instances where it appears to be for the router itself. I could be wrong though.
 
Depends on your ACL's, CEF settings and possibly some other stuff you can turn off you don't need. The CPU on a 2500 series should not hit 100% with just a few kbit of traffic.

Post your router config?
 
plur said:
Here's something I just found:



In this instance, it appears to be for some kind of port adapter but I have read other instances where it appears to be for the router itself. I could be wrong though.

The example given is when a router interface is acting as a bridge(basically a switch). When it is also bridging, you can specify a switching type for the bridged traffic. This does not affect traffic that is routed by the router.
 
Why not just unplug the router if you dont know how to configure it and for you its slower? use it for labs and learning CCNA, not governing your interbutt connection. I'd stop using it untill you know how to configure it properly if its giving you that much hassle.

Remember though, your CISCO router is probably doing more stuff than the linksys, and in software too. The cheaper router probably has an inbuilt switch or network port so it can respond to ping requests and network traffic in hardware which is alot faster. Overall though, the CISCO router is a meataxe compared to your cheaper one, you just not using the CISCO one for what it was meant for in a sense.

If you want cut-through btw, you might wanna buy a Catalyst :)
 
Another thing you have to realise as well is that a 2500 is doing everything via the cpu, whats called process switching. Every packet is being copied to memory, crc'd, reading the IP header, check ACLs/routing tables and then rewriting the packet to the send buffer and then pushed on its way.

It doesn't do CEF/Netflow or any other nice kind of switching/forwarding, just process or fast switching (which still isn't really very fast). So, if you are doing anything tricky, with any amount of throughput (if I remember correctly, it can only do a few 1000 pps WITHOUT anything else, so for every extra thing you add to the config, the slower it gets) its going to slow down. It was never intended to be a broadband router, it was meant to be stuck in small offices, connecting the local lan to say a Frame Relay WAN or something (say 64K).

If you are studying for a CCNA or something, grab a 2600, its much faster and you can also use it normally as well.

I used to have a 3620 but its fans where way to loud. Still, its nifty having ipsec/bgp on your home router (tunneling bgp for fun)
 
Back
Top