Route management

Overview

A managed route is an IP path from a specified source router to a specified destination router. An IP path represents one or more GRE or LDP tunnels, and loose-path RSVP LSPs, of the same source and destination. Managed routes can span multiple areas and, therefore, multiple 7701 CPAAs.

Multiple managed routes are stored by the route manager object and any changes to the paths of managed routes are monitored via the JMS event channel. A separate route manager must be created for each OSS application. This separate route allows for separate sets of managed routes for different applications. JMS events may be filtered by application.

The route manager and its set of managed routes are persisted. The paths of the managed route are not persisted.

Route management workflow

The following workflow describes how to set up to monitor managed routes.

 

Create a managed route client.


Create a request to add or register managed routes.


Monitor managed route changes via the JMS interface.


Retrieve managed routes information.

Route management configuration

The XML API supports the creation of managed route client, creation of request to register managed routes, and retrieval of managed routes information.

The following examples show the minimum XML parameter tags required to develop an XML request to create a managed route client.

The generic.GenericObject.configureChildInstance method is used to create a managed route client, which uses the topology.TopologyManager class singleton as the parent. The request response returns the <objectFullName> attribute to identify the new managed route object.

Managed route client creation parameters

Figure 21-12: Managed route client creation request example
<generic.GenericObject.configureChildInstance xmlns="xmlapi_1.0">
   <deployer>immediate</deployer>
   <distinguishedName>tpgy-mgr</distinguishedName>
   <childConfigInfo>
      <topology.RouteManager>
         <actionMask>
            <bit>create</bit>
         </actionMask>
         <applicationName>TestRoutes</applicationName>
      </topology.RouteManager>
   </childConfigInfo>
</generic.GenericObject.configureChildInstance>

The following examples show the minimum XML parameter tags required to develop an XML request to register a managed route.

Managed route registration parameters

Figure 21-13: Add or register managed routes request example
<topology.RouteManager.registerRoutes xmlns="xmlapi_1.0">
   <deployer>immediate</deployer>
   <instanceFullName>tpgy-mgr:application-TestRoutes</instanceFullName>
   <routeKeySet>
      <topology.RouteKey>
         <sourceType>ipv4</sourceType>
         <source>198.51.100.45</source>
         <sourceLen>32</sourceLen>
         <destType>ipv4</destType>
         <dest>198.51.100.47</dest>
         <destLen>32</destLen>
      </topology.RouteKey>
   </routeKeySet>
</topology.RouteManager.registerRoutes>

The route can be deregistered by using the topology.RouteManager.deregisterRoutes method with the same parameters as the topology.RouteManager.registerRoutes method. See the XML API Reference for descriptions of the input parameters. See the XML API SDK Sample Code Navigator under the Configuration/CPAM directory for a sample of this script.

Route management retrieval

The route can be retrieved by using the topology.RouteManager.retrieveRoutes method with the same parameters as the topology.RouteManager.registerRoutes method. See the XML API Reference for descriptions of the input parameters. See the XML API SDK Sample Code Navigator under the Configuration/CPAM directory for a sample of this script.

The following figure shows an example of a response from the topology.RouteManager.retrieveRoutes method.

Figure 21-14: Managed route retrieval response example
<topology.RouteManager.retrieveRoutesResponse xmlns="xmlapi_1.0">
   <result>
      <item>
         <key>
            <topology.RouteKey>
               <sourceType>ipv4</sourceType>
               <source>198.51.100.45</source>
               <sourceLen>32</sourceLen>
               <destType>ipv4</destType>
               <dest>198.51.100.47</dest>
               <destLen>32</destLen>
            </topology.RouteKey>
         </key>
         <value>
            <topology.RouteResult>
               <errorCode>noError</errorCode>
               <errorMessage>No Error</errorMessage>
               <type>standard</type>
               <vertices>
                  <topology.RouterVertex>
                     <fdn>tpgy-mgr:name-igp1-AS-0:router-595137581</fdn>
                     <egressEdges>
                        <topology.LinkEdge>
                           <destFdn>tpgy-mgr:name-igp1-AS-0:router-595137583</destFdn>
                           <fdn>tpgy-mgr:name-igp1-AS-0:link-start-tpgy-mgr%name
-igp1-AS-0%router-595137581-ip-10.45.47.1-if-0-pointToPoint-to-tpgy-mgr%name-igp1-AS-0%router-595137583</fdn>
                        </topology.LinkEdge>
                     </egressEdges>
                  </topology.RouterVertex>
                  <topology.RouterVertex>
                     <fdn>tpgy-mgr:name-igp1-AS-0:router-595137583</fdn>
                     <egressEdges/>
                  </topology.RouterVertex>
               </vertices>
               <detailedErrors/>
            </topology.RouteResult>
         </value>
      </item>
   </result>
</topology.RouteManager.retrieveRoutesResponse>