Cisco IOS Mobile Wireless Gateway GPRS Support Node Configuration Guide, Release 12.4T
Optimizing GGSN Performance on the Cisco 7200 Series Router Platform
Downloads: This chapterpdf (PDF - 231.0KB) The complete bookPDF (PDF - 3.39MB) | Feedback

Optimizing GGSN Performance on the Cisco 7200 Series Router Platform

Table Of Contents

Optimizing GGSN Performance on the Cisco 7200 Series Router Platform

Configuring Switching Paths on the GGSN

Overview of Switching Paths

CEF Switching Configuration Task List

Enabling CEF Switching Globally

Enabling CEF Switching on an Interface

Verifying the CEF Switching Configuration

Monitoring and Maintaining CEF Switching

show Command Summary

Displaying CEF Switching Information for a PDP Context

Minimizing Static Routes on the GGSN Using Route Aggregation

Overview of Route Aggregation on the GGSN

Route Aggregation Configuration Task List

Configuring Route Aggregation Globally on the GGSN

Configuring Route Aggregation at an Access Point

Configuring Automatic Route Aggregation at an Access Point

Verifying Aggregate Routes on the GGSN

Configuration Examples

CEF Switching Configuration Example

Route Aggregation Configuration Example


Optimizing GGSN Performance on the Cisco 7200 Series Router Platform


This chapter describes how to optimize performance on gateway GPRS support nodes (GGSNs) implemented on the Cisco 7200 series router platform.

For a complete description of the GGSN commands in this chapter, refer to the Cisco GGSN Release 5.0 Command Reference. To locate documentation of other commands that appear in this chapter, use the command reference master index or search online.

This chapter includes the following sections:

Configuring Switching Paths on the GGSN

Minimizing Static Routes on the GGSN Using Route Aggregation

Configuration Examples

Configuring Switching Paths on the GGSN

GGSN Release 3.0 and later implements the enhanced performance support of Cisco Express Forwarding (CEF) switching on the Gn and Gi interfaces on the GGSN. Prior to GGSN Release 3.0, only fast switching was supported. GGSN Release 4.0 and later supports process switching and CEF switching.

This section provides an overview of the available switching paths on the GGSN and describes how to configure CEF switching. It includes the following topics:

Overview of Switching Paths

CEF Switching Configuration Task List

Verifying the CEF Switching Configuration

Monitoring and Maintaining CEF Switching

Overview of Switching Paths

Cisco routers provide a variety of switching algorithms, or paths, to optimize IP packet processing. Switching paths minimize the amount of time needed for the router to forward a packet from its incoming interface to an outgoing interface. Some of the switching paths supported are dependent upon the type of platform in use.

The following are some of the types of switching paths that are available on the router platforms, in order of performance benefit:

Process switching

Fast switching

CEF switching


Note GGSN Release 3.0 and later support process and CEF switching.


Process Switching

When packets are process switched, frames received by the router are copied into a system buffer. The router looks up the destination Layer 3 network address in its routing table and initializes the route-cache table. Packets are placed in a processing queue according to their Layer 3 protocol, and remain in the queue until the scheduler gives the CPU to the corresponding process. The waiting time depends on the number of processes waiting to run and the number of packets waiting to be processed. The routing decision is made based on the routing table and the Address Resolution Protocol (ARP) cache. When the routing decision is made, the packet is forwarded to the corresponding outgoing interface.

Fast Switching

When packets are fast switched, frames received by the router are immediately processed. The processor looks up the destination Layer 3 network address in the route-cache table on the router. If the destination is found in the cache table, the router rewrites the header and forwards the packet to the appropriate outgoing interface. If the destination address is not found, the packet is process switched and a route-cache entry is added for the new destination.

CEF Switching

CEF switching uses a Forwarding Information Base (FIB) table and an adjacency table to accomplish packet switching. The adjacency table is indexed by Layer 3 network addresses and contains the corresponding Layer 2 information to forward a packet.

CEF switching eliminates the use of the route-cache table, and the overhead that is required in aging out its table entries and repopulating the table. The FIB table mirrors the entire contents of the IP routing table, which eliminates the need for a route-cache table.

For more information about switching paths, refer to the Cisco IOS Switching Services Configuration Guide, Release 12.2.

CEF Switching Configuration Task List

CEF switching is the preferred switching path, and it is required to support virtual routing and forwarding (VRF) on the GGSN. To achieve the maximum performance benefits of CEF switching on the GGSN, you should configure all of the following entities for CEF switching:

Virtual template interface of the GGSN

Interfaces that support GTP on the SGSN (the Gn interface)

Interfaces over which mobile stations (MSs) will access the public data networks (PDNs) (the Gi interface)

To configure CEF switching for general packet radio service/Universal Mobile Telecommunication System (GPRS/UMTS), perform the following tasks:

Enabling CEF Switching Globally (Required)

Enabling CEF Switching on an Interface (Optional)

Enabling CEF Switching Globally

When you enable CEF switching globally on the GGSN, all interfaces on the GGSN are automatically enabled for CEF switching.


Note To ensure that CEF switching functions properly, wait a short time before enabling CEF switching after it has been disabled using the no ip cef command.


To enable CEF switching on the GGSN, use the following commands, beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# ip cef

Enables CEF on the route processor card.

Step 2 

Router(config)# gprs gtp ip udp ignore checksum

Disables verification of the UDP checksum to support CEF switching on the GGSN.


Caution If you do not configure the gprs gtp ip udp ignore checksum command, GTP PDUs (G-PDUs) with a non-zero User Datagram Protocol (UDP) checksum will be process switched.

Enabling CEF Switching on an Interface

After you have enabled CEF switching globally on the GGSN, CEF switching is automatically enabled on all of the interfaces.

If the no ip route-cache cef command is configured on the Gn or Gi interfaces of the GGSN, then you should enable CEF switching on those interfaces.


Note When CEF switching is enabled on an interface (either by configuration, or automatically, through the use if the ip cef global configuration command), the ip route-cache cef command does not appear in the output of the show running-config command. However, the no ip route-cache cef command does appear if it is configured.


To enable CEF switching on the interface between the GGSN and SGSN (over the Gn interface), and between the GGSN and PDNs (over the Gi interface), use the following commands, beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# interface type slot/port

Accesses the interface configuration.

Note The actual syntax of the interface command depends on the type of interface that you have configured for the Gn or Gi interfaces.

Step 2 

Router(config-if)# ip route-cache cef

Reenables disabled CEF or distributed CEF (dCEF) operation on an interface.

Verifying the CEF Switching Configuration

To verify that CEF switching is enabled for the GGSN on the virtual-template interface and other interfaces, use the show running-config and the show cef interface commands.


Step 1 Use the show running-config command and verify that the ip cef and gprs gtp ip udp ignore checksum commands are configured. The following example provides portions of output from a show running-config command with the related commands shown in bold:

GGSN# show running-config
Building configuration...

Current configuration :3815 bytes
!
version 12.2

...

service gprs ggsn

...

ip cef
ip address-pool dhcp-proxy-client
!
interface Ethernet1/0
 description - Ga interface to Charging Gateway
 ip address 10.67.67.1 255.255.255.0
 no ip mroute-cache
!
interface FastEthernet2/0
 description - Gn Interface to SGSN
 ip address 10.12.12.1 255.255.255.0
 no ip mroute-cache
 duplex half
!
interface FastEthernet4/0
 description - Gi Interface to PDN
 ip address 10.78.78.1 255.255.255.0
 no ip mroute-cache
 duplex full
!
interface loopback 1
 ip address 10.112.112.1 255.255.255.0
!
interface Virtual-Template1
 ip unnumber loopback 1
 encapsulation gtp
 gprs access-point-list gprs
!
...

gprs maximum-pdp-context-allowed 45000
gprs qos map canonical-qos
gprs default ip-address-pool dhcp-proxy-client
gprs default charging-gateway 10.65.65.2
!
gprs memory threshold 512
!
gprs gtp ip udp ignore checksum
!         

Step 2 Use the show cef interface command to verify that CEF switching is enabled on the virtual template interface, as shown in bold in the following example:

GGSN# show cef interface virtual-access 1
Virtual-Access1 is up (if_number 17)
  Corresponding hwidb fast_if_number 17
  Corresponding hwidb firstsw->if_number 17
  Internet address is 112.112.112.1/24
  ICMP redirects are always sent
  Per packet load-sharing is disabled
  IP unicast RPF check is disabled
  Inbound access list is not set
  Outbound access list is not set
  IP policy routing is disabled
  Interface is marked as point to point interface
  Hardware idb is Virtual-Access1
  Fast switching type 22, interface type 21
  IP CEF switching enabled
  IP Feature Fast switching turbo vector
  IP Feature CEF switching turbo vector
  Input fast flags 0x20000, Output fast flags 0x20000
  ifindex 13(13)
  Slot -1 Slot unit 1 VC -1
  Transmit limit accumulator 0x0 (0x0)
  IP MTU 1500

Step 3 Use the show cef interface command for each of the Gn and Gi interfaces to verify that CEF switching is enabled on those interfaces, as shown in bold in the following example. The following example shows sample output for the Gn interface:

GGSN# show cef interface fa2/0           
FastEthernet2/0 is up (if_number 12)
  Corresponding hwidb fast_if_number 12
  Corresponding hwidb firstsw->if_number 12
  Internet address is 12.12.12.1/24
  ICMP redirects are always sent
  Per packet load-sharing is disabled
  IP unicast RPF check is disabled
  Inbound access list is not set
  Outbound access list is not set
  IP policy routing is disabled
  Hardware idb is FastEthernet2/0
  Fast switching type 1, interface type 18
  IP CEF switching enabled
  IP Feature Fast switching turbo vector
  IP Feature CEF switching turbo vector
  Input fast flags 0x0, Output fast flags 0x0
  ifindex 10(10)
  Slot 2 Slot unit 0 VC -1
  Transmit limit accumulator 0x0 (0x0)
  IP MTU 1500
 
   

Monitoring and Maintaining CEF Switching

This section describes the commands used to display CEF switching status on the GGSN and to display CEF packet processing for packet data unit (PDP) contexts.

It includes the following topics:

show Command Summary

Displaying CEF Switching Information for a PDP Context

show Command Summary

This section provides a summary list of the show commands that you can use to monitor CEF switching on the GGSN.

The following privileged EXEC commands are used to monitor and maintain CEF switching on the GGSN:

Command
Purpose
Router# show cef interface

Displays CEF-related interface information.

Router# show gprs gtp pdp-context imsi hex-data

Displays PDP contexts by international mobile subscriber identity (IMSI).

Router# show gprs gtp pdp-context tid hex-data

Displays PDP contexts by tunnel ID.


Displaying CEF Switching Information for a PDP Context

To display CEF packet processing statistics for a particular PDP context, you can use the show gprs gtp pdp-context command with the tid or imsi keyword. The following example shows sample output for the show gprs gtp pdp-context tid command for a PDP context. The output fields displaying CEF packet information are shown in bold:

GGSN# show gprs gtp pdp-context tid 2424111111111120
TID              MS Addr         Source  SGSN Addr       APN
2424111111111120 10.24.24.28     Static  10.10.10.2      www.pdn1.com

    current time :Dec 06 2001 13:15:34
    user_name (IMSI): 424211111111110    MS address: 10.24.24.28
    MS International PSTN/ISDN Number (MSISDN): 243926901
    sgsn_addr_signal: 10.10.10.2         ggsn_addr_signal: 10.30.30.1
    signal_sequence:  7                  seq_tpdu_up:      0
    seq_tpdu_down:    5380
    upstream_signal_flow:   371          upstream_data_flow:   372
    downstream_signal_flow: 1            downstream_data_flow: 1
    RAupdate_flow:          0
    pdp_create_time:   Dec 06 2001 09:54:43
    last_access_time:  Dec 06 2001 13:15:21
    mnrgflag:          0                tos mask map: 00
    gtp pdp idle time: 72
    gprs qos_req: 091101               canonical Qos class(req.): 01
    gprs qos_neg: 25131F               canonical Qos class(neg.): 01
    effective bandwidth: 0.0
    rcv_pkt_count:       10026         rcv_byte_count:  1824732 
    send_pkt_count:      5380          send_byte_count: 4207160 
    cef_up_pkt:          10026         cef_up_byte:     1824732
    cef_down_pkt:        5380          cef_down_byte:   4207160
    cef_drop:            0
    charging_id:         12321224
    pdp reference count: 1
    ntwk_init_pdp:       0

Minimizing Static Routes on the GGSN Using Route Aggregation

As of Release 3.0, the GGSN supports route aggregation to minimize the resource and performance impact of static routes for each PDP context request on the GGSN.

This section provides an overview of route aggregation and how to configure it on the GGSN. It includes the following topics:

Overview of Route Aggregation on the GGSN

Route Aggregation Configuration Task List

Verifying Aggregate Routes on the GGSN

Overview of Route Aggregation on the GGSN

The GGSN uses a static host route to forward user data packets received from the Gi interface, using the virtual template interface of the GTP tunnel, to the Gn interface.

Without route aggregation, the GGSN creates a static host route for each MS PDP request. For example, for 90,000 PDP contexts supported, the GGSN creates 90,000 static host routes in its IP routing table. These routing table entries are in addition to entries in the forwarding information base (FIB) table or the fast switching cache. As the number of PDP contexts supported by the GGSN increases, the forwarding performance can be degraded and memory usage is increased.

To minimize the allocation of static routes in the IP routing table on the GGSN, you can specify that the GGSN creates a single network route for PDP contexts from a particular IP network.

If you use DHCP and route aggregation on the GGSN, you can control the IP address ranges assigned to PDP context requests from an MS to a particular PDN, and then you also can control how the GGSN aggregates those routes.

Use care when assigning IP addresses to an MS before you configure the aggregation ranges on the GGSN. A basic guideline is to aggregate as many addresses as possible, but to minimize your use of aggregation with respect to the total amount of IP address space being used by the access point.

As with other access point configuration options on the GGSN, you can configure route aggregation globally for all access points, or for a particular access point. At an access point, you can specify one or more aggregate commands. Or, you can configure the GGSN to establish automatic route aggregation for IP address masks returned by a DHCP or RADIUS server through a particular access point.

The way that the GGSN implements aggregate and static routes depends on whether the IP address of the MS is statically or dynamically derived, and also depends on the type of global and access point configuration that is being supported on the GGSN.

The following scenarios describe how the GGSN manages routes for MSs through an access point, for the possible route aggregation configurations and addressing methods:

No aggregation is configured on the GGSN, at the access point name (APN) or globally—The GGSN inserts the 32-bit host route of the MS into its routing table as a static route.

A default aggregate route is configured globally, but no aggregation is configured at the access point name (APN):

If a statically or dynamically derived address for an MS matches the default aggregate route range, the GGSN inserts an aggregate route into its routing table.

If the MS address does not match the default aggregate route, the GGSN inserts the 32-bit host route as a static route into the routing table.

A default aggregate route is configured globally, and automatic route aggregation is configured at the APN:

If a statically derived address for an MS matches the default aggregate route range, the GGSN inserts an aggregate route into its routing table.

If a statically derived address for an MS does not match the default aggregate route, the GGSN inserts the 32-bit host route as a static route into its routing table.

If a dynamically derived address for an MS is received, the GGSN aggregates the route, based on the address and mask returned by the DHCP or RADIUS server.

A default aggregate route is configured globally, and an aggregate route is also configured at the APN:

If a statically or dynamically derived address for an MS matches the aggregate range at the APN through which it was processed, or otherwise matches the default aggregate range, the GGSN inserts an aggregate route into its routing table.

If a statically or dynamically derived address for an MS does not match either the aggregate range at the APN or the global default aggregate range, the GGSN inserts the 32-bit host route as a static route into its routing table.

Route Aggregation Configuration Task List

This section describes how to configure route aggregation on the GGSN. You can configure route aggregation globally on the GGSN for all access points, and you can configure individual aggregate routes or automatic route aggregation at a particular access point.

To configure route aggregation on the GGSN, perform the following tasks:

Configuring Route Aggregation Globally on the GGSN (Optional)

Configuring Route Aggregation at an Access Point (Optional)

Configuring Automatic Route Aggregation at an Access Point (Optional)


Note The aggregate and gprs default aggregate commands affect routing on the GGSN. Use care when planning and configuring IP address aggregation.


Configuring Route Aggregation Globally on the GGSN

You can configure aggregate routes globally to reduce the number of static routes implemented for PDP requests at all access points on the GGSN. The GGSN allows you to specify an IP network prefix to combine the routes of PDP requests from the same network as a single route on the GGSN.

If you use the gprs default aggregate command to globally define an aggregate IP network address range for all access points on the GGSN, you also can use the aggregate command to override this default address range at a particular access point.

Automatic route aggregation can be configured at the access-point configuration level only on the GGSN. The gprs default aggregate global configuration command does not support the automatic aggregation option; therefore, you cannot configure automatic route aggregation globally on the GGSN. For more information about configuring automatic route aggregation, see the "Configuring Automatic Route Aggregation at an Access Point" section.

To specify that the GGSN configures an aggregate route in its IP routing table for any PDP context request from MSs on the specified network for any GGSN access point, use the following global configuration command:

Command
Purpose

Router(config)# gprs default aggregate ip-network-prefix {/mask-bit-length | ip-mask}

Specifies a global aggregate route in the IP routing table of the GGSN to route PDP requests at all access points on the GGSN.


Configuring Route Aggregation at an Access Point

You can configure aggregate routes to reduce the number of static routes implemented by the GGSN for PDP contexts at a particular access point. The GGSN allows you to specify an IP network prefix to combine the routes of PDP contexts from the same network as a single route on the GGSN.

You can specify multiple aggregate commands at each access point to support multiple network aggregates. However, if you use the aggregate auto command at the APN, you cannot specify any other aggregate route ranges at the APN. In this case, if you also need to handle other static route cases at the APN, then you need to use the gprs default aggregate global configuration command. For more information about configuring route aggregation globally, see the "Configuring Route Aggregation Globally on the GGSN" section.

To configure aggregate routes for a particular access point, or to override the default aggregate route specified by the gprs default aggregate global configuration command, use the following commands, beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# gprs access-point-list list_name

Specifies the access-point list name, and enters access-point list configuration mode.

Step 2 

Router(config-ap-list)# access-point access-point-index

Specifies a number associated with this access-point definition, and enters access-point configuration mode. If the access point is already defined, specify the number of the access point that you want to modify.

Step 3 

Router(config-access-point)# aggregate {auto | ip-network-prefix{/mask-bit-length | ip-mask}}


Configures the GGSN to create an aggregate route in its IP routing table when receiving PDP requests from MSs on the specified network through a particular access point on the GGSN.

Configuring Automatic Route Aggregation at an Access Point

If you want the GGSN to automatically aggregate routes from a DHCP or RADIUS server for a particular access point, you can use the aggregate auto command at the access point. Automatic route aggregation is typically used when you are using a DHCP server at the access point.

Automatic route aggregation is not available through a global configuration for all access points on the GGSN. Therefore, to use automatic route aggregation, you must configure it at each access point where it applies.

In addition, if you use the aggregate auto command at the APN, you cannot specify any other aggregate route ranges at the APN. If you need to handle other static route cases at the APN, then you will have to use the gprs default aggregate global configuration command. For more information about configuring route aggregation globally, see the "Configuring Route Aggregation Globally on the GGSN" section.

To configure automatic route aggregation at an access point using DHCP services, perform the following tasks:

Configuring the Access Point for Automatic Route Aggregation Using a DHCP Server

Configuring a Loopback Interface for the DHCP Gateway Address

Configuring the Access Point for Automatic Route Aggregation Using a DHCP Server

To configure the GGSN to automatically aggregate routes for IP address masks that are returned by a DHCP server, use the following commands, beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# gprs access-point-list list_name

Specifies the access-point list name, and enters access-point list configuration mode.

Step 2 

Router(config-ap-list)# access-point access-point-index

Specifies a number associated with this access-point definition, and enters access point configuration mode. If the access point is already defined, specify the number of the access point that you want to modify.

Step 3 

Router(config-access-point)# aggregate auto

Configures the GGSN to automatically create an aggregate route in its IP routing table according to the IP address masks that it receives from a DHCP or RADIUS server through a particular access point.

Step 4 

Router(config-access-point)# ip-address-pool dhcp-proxy-client

Specifies a dynamic address allocation method using IP address pools for the current access point, where dhcp-proxy-client specifies that the access point IP address pool is maintained on a DHCP server.

Step 5 

Router(config-access-point)# dhcp-server {ip-address | name} [{ip-address | name}]


Specifies a primary (and backup) DHCP server that the GGSN uses at a particular access point to obtain IP address leases for mobile users for access to a PDN, where:

ip-address—Specifies the IP address of a DHCP server. The second (optional) ip-address argument specifies the IP address of a backup DHCP server.

name—Specifies the host name of a DHCP server. The second (optional) name argument specifies the host name of a backup DHCP server.

Step 6 

Router(config-access-point)# dhcp-gateway-address ip-address

Specifies the subnet in which the DHCP server should return addresses for DHCP requests for MS users entering a particular PDN access point.

Configuring a Loopback Interface for the DHCP Gateway Address

When you configure DHCP services at an APN and you specify a DHCP gateway address, you need to configure a loopback interface on the GGSN that corresponds to the IP address of the DHCP gateway.

To configure a loopback interface, use the following commands, beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# interface loopback number

Defines a loopback interface on the GGSN with a particular reference number.

Step 2 

Router(config-if)# ip address ip-address mask

Specifies an IP address for the interface, where:

ip-address—Specifies the IP address of the interface in dotted decimal format.

Note The ip-address should match the IP address in the dhcp-gateway-address command.

mask—Specifies a subnet mask in dotted decimal format.

Verifying Aggregate Routes on the GGSN

To verify the route aggregation configuration on the GGSN, use the show running-config, show gprs gtp pdp-context all, show ip route, and show gprs-access point commands.


Step 1 Use the show running-config command and verify that the gprs default aggregate global configuration or the aggregate access point configuration commands are configured.

The following example provides portions of output from a show running-config command with areas of the configuration that are related to the aggregate route configuration shown in bold. Note that two aggregate commands are configured at access point 8, and that a global gprs default aggregate route is also configured.

GGSN# show running-config
Building configuration...

Current configuration :3815 bytes
!
version 12.2

...

service gprs ggsn

...

ip cef
ip address-pool dhcp-proxy-client
!
interface Loopback0
 ip address 10.88.0.1 255.255.255.255
!
. . .
!
interface Virtual-Template1
 ip unnumber Loopback0
 encapsulation gtp
 gprs access-point-list gprs
!
. . .
!
gprs access-point-list gprs
  access-point 8
   access-point-name pdn.aaaa.com
     aggregate 10.88.0.0 255.255.255.0
     aggregate 10.80.0.0 255.255.255.0
   exit

...

gprs maximum-pdp-context-allowed 45000
gprs qos map canonical-qos
gprs default ip-address-pool dhcp-proxy-client
gprs default charging-gateway 10.65.65.2
!
gprs memory threshold 512
!
gprs default aggregate 192.168.100.0/24
gprs gtp ip udp ignore checksum

Step 2 Use the show gprs gtp pdp-context all command to verify the PDP context requests that are active on the GGSN.

In the following output for the show gprs gtp pdp-context all command, 5 PDP context requests are active on the GGSN for pdn.aaaa.com from the 10.88.0.0 /24 network:

GGSN# show gprs gtp pdp-context all
TID                     MS_ADDR         Dynamic SGSN_addr       APN

6161616161610001        10.88.0.1       0       172.16.123.1    pdn.aaaa.com
6161616161610002        10.88.0.2       0       172.16.123.1    pdn.aaaa.com
6161616161610003        10.88.0.3       0       172.16.123.1    pdn.aaaa.com
6161616161610004        10.88.0.4       0       172.16.123.1    pdn.aaaa.com
6161616161610005        10.88.0.5       0       172.16.123.1    pdn.aaaa.com

Step 3 Use the show ip route command to verify that the corresponding aggregate route appears in the routing table.

Remember that a route only appears if the GGSN has received a PDP context from an MS on the network specified by the gprs default aggregate command (for any access point), or specified by the aggregate commands for a particular access point.

In our example, the following output for the show ip route command shows a single static route in the IP routing table for the GGSN, which routes the traffic for the 10.88.0.0/24 subnet through the virtual template (or Virtual-Access1) interface:

GGSN# 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 - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter
area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     10.80.0.0/16 is subnetted, 1 subnets
C       10.80.0.0 is directly connected, Loopback0
     10.113.0.0/16 is subnetted, 1 subnets
C       10.113.0.0 is directly connected, Virtual-Access1
     172.16.0.0/16 is variably subnetted, 3 subnets, 3 masks
C       172.16.43.192/28 is directly connected, FastEthernet0/0
S       172.16.43.0/24 is directly connected, FastEthernet0/0
S       172.16.43.35/32 is directly connected, Ethernet2/3
     10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
U       10.88.0.0/24 [1/0] via 0.0.0.0, Virtual-Access1
C       10.88.0.0/16 is directly connected, Loopback2 

Step 4 Use the show gprs access-point command to verify whether route aggregation is configured on an APN, and if it is configured, to display the aggregate ranges.

In the following output for the show gprs access-point command, an aggregate route has been configured for a particular access point, overriding the default aggregate routes configured globally:

GGSN#show gprs access-point 6
    apn_index 6          apn_name = gprs.corporate.com
    apn_mode:transparent
    apn_type:Real
    accounting:Disable
    wait_accounting:Disable
    input ACL:None, output ACL:None
    dynamic_address_pool:disable
    apn_dhcp_server:0.0.0.0         backup:0.0.0.0
    apn_dhcp_gateway_addr:0.0.0.0
    apn_authentication_server_group:
    apn_accounting_server_group:
    apn_username:  apn_password:
    subscribe_required:No
    deactivate_pdp_context_on violation:No
    network_activation_allowed:No
    Block Foreign-MS Mode:Disable
    VPN:Enable  (VRF Name :vpn1)
    GPRS vaccess interface:Virtual-Access4
    RADIUS attribute suppress MSISDN:Disabled
    RADIUS attribute suppress IMSI:  Disabled
    RADIUS attribute suppress SGSN Address:  Disabled
    number of ip_address_allocated 0
    idle timer:0
    Security features
      Verify mobile source addr:     disable
      Verify mobile destination addr:disable

    Total number of PDP in this APN :0

    aggregate:
    In APN:   55.0.0.0/8

    In Global:40.40.0.0/16
                 11.0.0.0/8


Configuration Examples

This section includes the following configuration examples for optimizing performance on the GGSN:

CEF Switching Configuration Example

Route Aggregation Configuration Example

CEF Switching Configuration Example

The following example enables CEF switching globally on the GGSN, which enables CEF for all interfaces on the GGSN. However, notice that CEF switching has been disabled at the tunnel 0 interface. To support CEF switching, UDP checksum verification is disabled near the end of the example.

Current configuration : 4660 bytes
!
version 12.2
!
! Enable the router for GGSN services
!
service gprs ggsn
!
hostname myGGSN
!
ip dhcp pool 1
   network 10.60.0.0 255.255.255.240
   lease infinite
!         
! Configure CEF switching globally
!
ip cef    
!  
interface Loopback0
 ip address 10.60.0.1 255.255.255.255
!         
interface Tunnel0
 ip address 10.9.9.2 255.255.255.0
!
! Disable CEF switching on this
! interface only
!
 no ip route-cache cef
 tunnel source 10.25.25.1
 tunnel destination 10.25.25.2
!         
interface Tunnel1
 ip address 10.11.11.2 255.255.255.0
 no ip mroute-cache
 tunnel source 10.26.26.1
 tunnel destination 10.26.26.2
!         
interface FastEthernet0/0
 description Connect to Control subnet
 ip address 172.18.43.178 255.255.255.240
 no ip mroute-cache
 duplex full
!         
interface FastEthernet1/0
 description - to PDN-2 over IPSec/GRE tunnel
 ip address 10.25.25.1 255.255.255.0
 no ip mroute-cache
 duplex full
!         
interface Ethernet2/0
 description Connect to Server GW
 ip address 10.59.59.1 255.255.0.0
 duplex half
!         
interface Ethernet2/1
 no ip address
 no ip mroute-cache
 shutdown 
 duplex half
!         
interface Ethernet2/3
 description - to CG - Ga
ip address 10.65.65.3 255.255.255.0
 duplex half
!         
interface FastEthernet3/0
 description - to SGSN-1 Gn
 ip address 10.15.15.1 255.255.0.0
 no ip mroute-cache
 duplex full
!         
interface FastEthernet5/0
 description - to PDN-3 over IPSec/GRE tunnel
 ip address 10.26.26.1 255.255.255.0
 no ip mroute-cache
 duplex full
!         
interface loopback 1
 ip address 10.40.40.3 255.255.255.0
!
interface Virtual-Template1
 ip unnumber loopback 1
 encapsulation gtp
 gprs access-point-list gprs
!
ip default-gateway 172.18.43.177
ip classless
ip route 10.5.5.0 255.255.255.0 Tunnel0
ip route 10.30.30.0 255.255.255.0 10.25.25.2
ip route 192.168.0.0 255.255.0.0 172.18.43.177
ip route 172.0.0.0 255.0.0.0 172.18.43.177
ip route 172.18.43.35 255.255.255.255 10.59.59.3
ip route 192.168.220.1 255.255.255.255 FastEthernet3/0
no ip http server
!         
! Configure the GGSN access point list
!
gprs access-point-list gprs
  access-point 1
   access-point-name gprs.cisco.com
   dhcp-server 10.60.0.1
   dhcp-gateway-address 10.60.0.1       
   exit   
  !      
  access-point 2
   access-point-name hprs.cisco.com
   access-mode non-transparent
   ip-address-pool radius-client
   aaa-group authentication foo
   exit   
   !      
! GGSN global configuration parameters
!
gprs maximum-pdp-context-allowed 45000
gprs qos map canonical-qos
gprs default ip-address-pool dhcp-proxy-client
gprs default charging-gateway 10.65.65.2
!
gprs memory threshold 512
!
! Disable verification of the UDP checksum
! 
gprs gtp ip udp ignore checksum
!         
radius-server host 172.18.43.7 auth-port 1645 acct-port 1646 non-standard
radius-server host 10.5.5.6 auth-port 1812 acct-port 1812 non-standard
radius-server host 172.18.61.17 auth-port 1645 acct-port 1645 non-standard key gociscogo
radius-server retransmit 1
radius-server timeout 1
radius-server key lab
call rsvp-sync

Route Aggregation Configuration Example

The following example shows a portion of a configuration that implements automatic route aggregation at an access point.

Notice that the aggregate auto command is configured at the access point where DHCP is being used. The dhcp-gateway-address command specifies the subnet addresses to be returned by the DHCP server. This address should match the IP address of a loopback interface on the GGSN. In addition, to accommodate route aggregation for another subnet 10.80.0.0, the gprs default aggregate global configuration command is used.

In this example, the GGSN aggregates routes for dynamically derived addresses for MSs through access point 8, based on the address and mask returned by the DHCP server. For PDP context requests received for statically derived addresses on the 10.80.0.0 network, the GGSN also implements an aggregate route into its routing table, as configured by the gprs default aggregate command.

Current configuration :3815 bytes
!
version 12.2

...

service gprs ggsn

...
!
! Configures a loopback interface
! for the DHCP gateway address
!
interface Loopback0
ip address 10.80.0.1 255.255.255.255
!
gprs access-point-list gprs
 access-point 8
  access-point-name pdn.aaaa.com
!
! Enables DHCP services at the
! access point
!
  ip-address-pool dhcp-proxy-client
!
! Enables automatic route aggregation
!
  aggregate auto
!
! Configures an external DHCP server
! to support dynamic IP addressing for
! MSs through this access point
!
  dhcp-server 172.16.43.35
!
! Configures the subnet for which
! the DHCP server should return IP addresses
!
  dhcp-gateway-address 10.88.0.1
  exit
!
! Enables a single route to be established
! for PDP contexts with statically derived
! addresses on the 10.80.0.0 network 
! 
gprs default aggregate 10.80.0.0 255.255.255.0