Configuring Interpacket Delay

Configuring Interpacket Delay

Problem

You want to slow down the rate that a router sends the packets in a single update to ensure that slower devices aren't so overwhelmed that they lose information.

Solution

Use the output-delay configuration command to adjust the inter-packet delay of the RIP protocol:

Router2#configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Router2(config)#router rip
Router2(config-router)#output-delay 10
Router2(config-router)#exit
Router2(config)#end
Router2#

Discussion

If the routing table distributed in each update is small, it will fit into a single packet. But the maximum size for a RIP update packet is 512 bytes. Each packet has an 8-byte UDP header, and 4 bytes of general RIP information. The remaining 500 bytes of the packet carry the actual routes. Each individual route takes 20 bytes, so there can be at most 25 routes in one packet. If you have more than 25 routes in your routing table, RIP must send it as multiple packets.

The problem with this is that some devices can't process large amounts of incoming routing information quickly, and they wind up missing some of the routing information. This is particularly true for older legacy equipment, or routers with slow processors or insufficient memory. So if you find that one or more of the neighboring routers has a mysteriously incomplete routing table, it might help to increase the interpacket spacing. The other reason for increasing the output-delay is to prevent bursts of RIP traffic from causing network congestion.

For example, in Frame Relay networks, if you burst above the Committed Information Rate (CIR), the extra packets are marked as Discard Eligible, meaning that if there is congestion, these are the first packets that the network should drop. Dropping routing protocol packets can cause serious problems. Spreading out this burst of RIP traffic might be sufficient to prevent this sort of problem.

The output-delay command allows you to specify the interpacket delay in milliseconds. The default is 0, meaning that the router will send packets as fast as it can. You can specify any delay value between 8 and 50 milliseconds with this command. It is not necessary to specify a corresponding delay on neighboring routers.

The output of the show ip protocols command includes the output delay value if you specify any nondefault value:

Router2#show ip protocols 
Routing Protocol is "rip"
Sending updates every 60 seconds, next due in 17 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Output delay 10 milliseconds between packets
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Redistributing: rip
Default version control: send version 1, receive any version
Interface Send Recv Triggered RIP Key-chain
Ethernet0 1 1 2
Serial0.1 1 1 2
Automatic network summarization is in effect
Maximum path: 4
Routing for Networks:
172.25.0.0
192.168.30.0
Routing Information Sources:
Gateway Distance Last Update
172.25.2.1 120 00:00:23
Distance: (default is 120)
Router2#

See Also