Document ID: 5428
Contents
Introduction
Prerequisites
Requirements
Components Used
Conventions
Configure
Network Diagram
Configurations
Command Summary
Verify
Troubleshoot
Troubleshooting Commands
NetPro Discussion Forums - Featured Conversations
Related Information
Introduction
In ISDN dial-on-demand routing (DDR) environments, distance vector routing protocol periodic updates can unnecessarily keep an idle DDR link up. This results in high usage bills. This document explains how you can implement Snapshot Routing in order to overcome this limitation. Distance vector protocols such as IP Routing Information Protocol (RIP), Internetwork Packet Exchange (IPX) RIP, and Interior Gateway Routing Protocol (IGRP) send a full routing table at a fixed interval of time as this list describes:
-
The IP RIP routing protocol sends an update, by default, every 30 seconds.
-
The IPX RIP routing protocol sends an update every 60 seconds, per its default interval.
-
The IGRP routing protocol sends a routing table update, by default, every 90 seconds.
If you dial the central site for each of these updates, this periodic traffic keeps an ISDN line up indefinitely and results in a high usage bill. If you do not dial the central site for these updates, dynamic routes (learned from the routing protocol) are removed from the routing table. Snapshot routing forces the router to keep the routing table intact when the DDR link is down and controls when to dial for periodic routing protocol updates.
Snapshot routing provides the remedy for the constant periodic updates that the distance vector routing protocols generate. Snapshot routing defines a routing protocol update active period and quiet period. The router can exchange a snapshot of the routing table during the active period. After the active period expires, a quiet period is maintained where routing updates are suppressed and the snapshot of the routing table is kept intact. You can apply snapshot routing to IPX/RIP and AppleTalk Routing Table Maintenance Protocol (RTMP) as well.
For more detailed information on how Snapshot Routing works, refer to Snapshot Routing.
Note: Enhanced IGRP (EIGRP) and link-state routing protocols, such as Novell Link Services Protocol (NLSP), Open Shortest Path First (OSPF), and Intermediate System-to-Intermediate System (IS-IS) depend on the periodic hello messages to neighboring routers in order to discover and maintain routes. Hence, you cannot use snapshot routing with these routing protocols. With OSPF, you can use the OSPF demand circuit feature in order to obtain the same effect as snapshot routing. Refer to Why OSPF Demand Circuit Keeps Bringing Up the Link for more information.
Prerequisites
Requirements
There are no specific requirements for this document.
Components Used
The information in this document is based on these software and hardware versions:
-
Router 1 - A Cisco 2503 with 1 Ethernet and 1 BRI interface that runs Cisco IOSĀ® Software Release 11.3(6)T
-
Router 2 - A Cisco 2503 with 1 Ethernet and 1 BRI interface that runs Cisco IOS Software Release 12.2(1a)
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Conventions
For more information on document conventions, refer to the Cisco Technical Tips Conventions .
Configure
This section presents you with the information you can use in order to configure the features this document describes.
Note: In order to find additional information on the commands this document uses, use the Command Lookup Tool ( registered customers only) .
Network Diagram
This document uses the network setup shown in this diagram.
Configurations
The snapshot routing configuration is performed in interface configuration mode. Snapshot routing configuration involves defining a snapshot client and snapshot server. Typically, the snapshot client is a branch office and the snapshot server is the headquarters or "hub" office. With snapshot routing, only the snapshot client makes a call to the snapshot server, the snapshot server is a called party. Snapshot routing is useful in a hub and spoke topology where spokes can obtain routing information, by dialing the snapshot server. This configuration uses the IGRP routing protocol between the two routers.
This document uses these configurations.
|
Router 1 - Client |
|---|
router1#show running-config Building configuration... Current configuration: ! version 11.3 service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname router1 ! username router2 password 0 snap !--- Username for remote router (router 2) and shared secret. !--- Shared secret (used for challenge handshake authentication !--- protocol [CHAP]) must be the same on both sides. isdn switch-type basic-5ess ! interface Loopback0 ip address 10.2.2.1 255.255.255.0 ! interface Ethernet0 ip address 192.168.100.1 255.255.255.0 ! interface Serial0 no ip address no ip mroute-cache shutdown no fair-queue ! interface Serial1 no ip address shutdown ! interface BRI0 ip address 10.1.1.1 255.255.255.0 !--- IP address for the BRI interface. encapsulation ppp no keepalive dialer idle-timeout 60 !--- Idle timeout (in seconds) for this BRI interface. dialer map ip 10.1.1.2 name router2 broadcast 96666600 !--- This defines the IP address, router name, !--- and dial string of the remote router. !--- This is used for normal DDR connections to the peer. Dialer map snapshot 60 name router2 broadcast 96666600 !--- Alternatively, use dialer map snapshot 60 96666600. !--- This specifies a sequence number of 60 to identify this dialer map and a dial !--- string of 96666600 used to initiate a call during the snapshot active period. !--- For more information about this command, see the !--- Command Summary section !--- of this document. dialer hold-queue 10 dialer-group 1 !--- Apply interesting traffic defined in dialer-list 1. isdn switch-type basic-5ess isdn T203 10000 snapshot client 5 30 suppress-statechange-update dialer !--- This is a client side with an active period of 5 !--- minutes and quiet period of !--- 30 minutes. Routing table updates are not exchanged when other interesting !--- traffic has activated the interface. This client is able to initiate a call !--- in order to start the active period for exchanging routing table updates. For more !--- information about this command, see the Command Summary !--- section of this document. ppp authentication chap !--- Use CHAP authentication. hold-queue 75 in ! router igrp 100 network 10.0.0.0 network 192.168.100.0 ! ip classless ! dialer-list 1 protocol ip permit !--- Interesting traffic is defined by dialer-list 1. !--- This is applied to BRI0 with the use of dialer-group 1. line con 0 line aux 0 line vty 0 4 login ! end |
|
Router 2 - Server |
|---|
router2#show running-config Building configuration... Current configuration: ! version 12.2 no service single-slot-reload-enable service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname router2 ! logging rate-limit console 10 except errors ! username router1 password 0 snap !--- Username for remote router (router 1) and shared secret. !--- Shared secret (used for CHAP) must be the same on both sides. ip subnet-zero no ip finger ! no ip dhcp-client network-discovery isdn switch-type basic-5ess ! interface Loopback0 ip address 10.3.3.1 255.255.255.0 ! interface Ethernet0 ip address 192.168.200.1 255.255.255.0 ! interface Serial0 no ip address shutdown no fair-queue ! interface Serial1 no ip address shutdown ! interface BRI0 ip address 10.1.1.2 255.255.255.0 !--- IP address for the BRI interface. Encapsulation ppp no keepalive dialer idle-timeout 60 !--- Idle timeout (in seconds) for this BRI interface. Dialer map ip 10.1.1.1 name router1 broadcast 96666700 !--- Dialer map for the BRI interface of the remote router. Dialer hold-queue 10 dialer-group 1 !--- Apply interesting traffic defined in dialer-list 1. isdn switch-type basic-5ess cdapi buffers regular 0 cdapi buffers raw 0 cdapi buffers large 0 snapshot server 5 dialer !--- The snapshot server command specifies !--- the active period interval in minutes. !--- The dialer parameter allows the router to !--- make a DDR call in order to initiate a snapshot !--- session in the absence of other "interesting" traffic that initiates a DDR call. !--- For more information about this command, see the !--- Command Summary section of this document. ppp authentication chap !--- Use CHAP authentication. ! router igrp 100 network 10.0.0.0 network 192.168.200.0 ! ip classless ip http server ! dialer-list 1 protocol ip permit !--- Interesting traffic is defined by dialer-list 1. !--- This is applied to BRI0 with the use of dialer-group 1. ! line con 0 transport input none line aux 0 line vty 0 4 ! end |
Command Summary
-
dialer map snapshot sequence-number dial-string
This table explains the syntax description of this command.
sequence-number
A number in the range from 1 to 254, inclusive, that uniquely identifies a snapshot dialer map. You can use multiple dialer map snapshot commands that connect to multiple locations. This sequence-number is used in order to uniquely identify each one.
dial-string
Telephone number of a remote snapshot server to be called during an active period.
-
snapshot client active-time quiet-time [suppress-statechange-updates] [dialer]
This table explains the syntax description of this command.
active-time
Amount of time, in minutes, that routing updates are regularly exchanged between the client and server routers. This can be an integer in the range 5 to 100. There is no default value. A typical value is 5 minutes.
quiet-time
Amount of time, in minutes, that routing entries are frozen and remain unchanged between active periods. Routes are not aged during the quiet period, so they remain in the routing table as if they were static entries. This argument can be an integer from 8 to 100000. There is no default value. The minimum quiet time is generally the active time plus 3.
suppress-statechange-updates
(Optional) The suppress-statechange-updates keyword prevents the routers from exchanging updates during connections that are established to transfer user data.
By default, snapshot routing allows routing updates to be exchanged over connections that are established to transfer user data. This means that, if necessary, snapshot routing forces the connection to last as long as the active period. If you do not want the routers to exchange updates during connections that are established to transfer user data, use the suppress-statechange-updates keyword. Refer to Snapshot Routing for more information.
dialer
(Optional) Used if the client router has to dial up the remote router in the absence of regular traffic.
-
snapshot server active-time [dialer]
This table explains the syntax description of this command.
active-time
Amount of time, in minutes, that routing updates are regularly exchanged between the client and server routers. This can be an integer in the range 5 to 100. There is no default value. A typical value is 5 minutes.
dialer
(Optional) Allows the router to dial up the remote router in the absence of regular traffic.
Verify
This section provides information you can use in order to confirm your configuration works properly.
Certain show commands are supported by the Output Interpreter Tool ( registered customers only) , which allows you to view an analysis of show command output.
-
show snapshot [interface-type interface-number] —Displays snapshot routing parameters associated with an interface.
-
show ip route—Displays the routing table. Look for the route learned via the BRI interface and note the age of the route.
-
show dialer—Displays the dialer information.
-
clear snapshot quiet-time interface-type interfacenumber —This command places the client router in a state to reenter the active period within 2 minutes. The 2 minute hold period ensures a quiet period of at least 2 minutes between active periods.
router1#show snapshot
BRI0 is up, line protocol is upSnapshot client
Options: dialer support, stay asleep on carrier up
Length of active period: 5 minutes
Length of quiet period: 30 minutes
Length of retry period: 8 minutes
For dialer address 60
Current state: quiet, remaining: 10 minutes
!--- This output displays the
!--- current snapshot client state, active
!--- and quiet time periods. It also shows that the current snapshot state
!--- is "quiet". However, when the
!--- clear snapshot command is used,
!--- it manually sets the snapshot client into an active state.
router1#clear snapshot quiet-time bri0
router1#show snapshot
BRI0 is up, line protocol is upSnapshot client
Options: dialer support, stay asleep on carrier up
Length of active period: 5 minutes
Length of quiet period: 30 minutes
Length of retry period: 8 minutes
For dialer address 60
Current state: active, remaining/exchange time: 5/0 minutes
Connected dialer interface: BRI0:1
!--- This show command
!--- shows that the snapshot server does not
!--- list the length of the quiet period. It lists the length of the active period
!--- only. The snapshot client defines the quiet period in snapshot routing.
router2#show snapshot
BRI0 is up, line protocol is upSnapshot server
Options: dialer support
Length of active period: 5 minutes
For ip address: 10.1.1.1
Current state: active, remaining time: 3 minutes
Connected dialer interface: BRI0:1
!--- This clear snapshot command
!--- displays that the snapshot server cannot
!--- initiate a snapshot session. Only the snapshot client can initiate a snapshot
!--- session. Only the snapshot client uses the dialer map snapshot statement.
!--- Therefore, only the snapshot client is supplied
!--- with a dial string to call.
router2#clear snapshot quiet-time bri0
SNAPSHOT: Interface is not the client side.
!--- This show ip route command
!--- output shows that the routes learned via BRI0 interface
!--- has an age of 12:23. This is well beyond the default hold
!--- down and route flush time
!--- limit of IGRP. It is retained in the routing table
!--- because it was learned
!--- through snapshot routing.
router1#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - ISIS, L1 - ISIS level-1, L2 - ISIS level-2, * - candidate default
U - per-user static route, o - ODR
Gateway of last resort is not set
I 192.168.200.0/24 [100/158350] via 10.1.1.2, 00:12:23, BRI0
10.0.0.0/24 is subnetted, 3 subnets
I 10.3.3.0 [100/158750] via 10.1.1.2, 00:12:23, BRI0
C 10.2.2.0 is directly connected, Loopback0
C 10.1.1.0 is directly connected, BRI0
C 192.168.100.0/24 is directly connected, Ethernet0
router1#
!--- This show dialer command
!--- output shows that dialing is initiated by snapshot routing.
router1#show dialer
BRI0 - dialer type = ISDN
Dial String Successes Failures Last called Last status
96666600 17 0 00:02:09 successful
0 incoming call(s) have been screened.
0 incoming call(s) rejected for callback.
BRI0:1 - dialer type = ISDN
Idle timer (60 secs), Fast idle timer (20 secs)
Wait for carrier (30 secs), Re-enable (15 secs)
Dialer state is data link layer up
Dial reason: snapshot
Time until disconnect 59 secs
Connected to 96666600 (router2)
BRI0:2 - dialer type = ISDN
Idle timer (60 secs), Fast idle timer (20 secs)
Wait for carrier (30 secs), Re-enable (15 secs)
Dialer state is idle
Troubleshoot
This section provides information you can use in order to troubleshoot your configuration.
Troubleshooting Commands
Certain show commands are supported by the Output Interpreter Tool ( registered customers only) , which allows you to view an analysis of show command output.
Note: Before you issue debug commands, refer to Important Information on Debug Commands.
-
debug snapshot—Lists the change in state of the snapshot operation.
-
debug dialer packet—Shows how the snapshot routing process provides an exception to dial-on-demand routing and dialer-lists.
-
debug dialer event—Shows useful information about the dialing process.
router1#debug snapshot 16:25:32: SNAPSHOT: BRI0[60]: Move to active queue (Operator intervention) 16:25:32: SNAPSHOT: BRI0[60]: moving to active queue 16:25:34: %LINK-3-UPDOWN: Interface BRI0:1, changed state to up 16:25:35: %LINEPROTO-5-UPDOWN: Line protocol on Interface BRI0:1, changed statep 16:25:40: %ISDN-6-CONNECT: Interface BRI0:1 is now connected to 96666600 router2 16:26:32: SNAPSHOT: BRI0[60]: Starting aging of ip protocol 16:27:35: SNAPSHOT: BRI0[60]: moving to client post active->quiet queue 16:28:35: %ISDN-6-DISCONNECT: Interface BRI0:1 disconnected from 96666600 routs 16:28:35: %LINK-3-UPDOWN: Interface BRI0:1, changed state to down 16:28:35: %LINEPROTO-5-UPDOWN: Line protocol on Interface BRI0:1, changed staten 16:29:35: SNAPSHOT: BRI0[60]: moving to quiet queue router1# !--- The debug snapshot output always begins with the SNAPSHOT: !--- prompt. It shows the change in state of snapshot operation. router1#debug dialer packets Dial on demand packets debugging is on 16:39:35: BRI0: snapshot, 2 bytes, outgoing interesting (set by snapshot) 16:39:35: BRI0: snapshot, 2 bytes, outgoing interesting (set by snapshot) 16:39:56: BRI0: ip (s=10.1.1.1, d=255.255.255.255), 60 bytes, outgoing uninteresting (set by snapshot) 16:39:56: BRI0: sending broadcast to ip 10.1.1.2 16:40:36: BRI0: snapshot, 2 bytes, outgoing interesting (set by snapshot) 16:40:36: BRI0: snapshot, 2 bytes, outgoing interesting (set by snapshot) 16:41:08: BRI0: ip (s=10.1.1.1, d=255.255.255.255), 60 bytes, outgoing uninteresting (set by snapshot) 16:41:18: BRI0: sending broadcast to ip 10.1.1.2 16:41:18: BRI0: ip (s=10.1.1.1, d=255.255.255.255), 60 bytes, outgoing uninteresting (set by snapshot) 16:41:18: BRI0: sending broadcast to ip 10.1.1.2 16:41:36: BRI0: snapshot, 2 bytes, outgoing interesting (set by snapshot) 16:41:36: BRI0: snapshot, 2 bytes, outgoing interesting (set by snapshot) 16:41:36: BRI0: sending broadcast to ip 10.1.1.2 router1#undebug all All possible debugging has been turned off !--- The debug dialer packets trace shows !--- that the packets with the destination address of 255.255.255.255 !--- are defined as "uninteresting" by DDR. It shows that the uninteresting !--- traffic is set by snapshot. This means that a dialer-list did not define this !--- packet as uninteresting; the snapshot routing process did. The packet with a !--- 255.255.255.255 is a routing table update which is suppressed during the !--- snapshot quiet period.
NetPro Discussion Forums - Featured Conversations
| NetPro Discussion Forums - Featured Conversations for Access |
| Network Infrastructure: Remote Access |
Related Information
- Snapshot Routing
- Snapshot Routing: Frequently Asked Questions
- Using ISDN Effectively in Multiprotocol Networks
- Access Technology Support Pages
- Tools and Utilities - Cisco Systems
- Technical Support & Documentation - Cisco Systems
| Updated: Jan 29, 2008 | Document ID: 5428 |
