Using routing masks

Use routing masks to help decrease the size of the routing tables that must be configured. Routing masks are bit masks that specify a subset of a destination point code to be matched against the routing table when searching for a route for either an inbound or outbound message.

Use routing masks to implement network and cluster routing in ANSI networks. In the following example, rather than specifying explicit routes to each of the seven remote SPs, routing masks and routes are used. All point codes and routing masks, regardless of point code length, are stored internally as 32-bit unsigned integers. Routing masks are also useful when implementing server-type applications, such as service control points (SCPs), where it is impractical to preconfigure the point codes of all possible requester signaling points.

Routing masks are global to all links, linksets, and user parts, and apply to both incoming and outgoing messages.

The following table shows typical routing masks used in ANSI networks for routing based on network or cluster IDs. Routing masks are applied to a message in the order in which they appear in the MTP configuration file. The first matching mask or route is the one selected.

Routing mask

Comment

0xFFFFFFFF

Always specify exact match as first mask.

0xFFFFFF00

Match on network ID and cluster ID next.

0xFFFF0000

Match on just network ID last.


The following partial MTP configuration file configures routing masks:

MAX_ROUTE_MASKS          3
ROUTE_MASK               0xFFFFFFFF     # always specify exact match 1st
ROUTE_MASK               0xFFFFFF00     # cluster mask next
ROUTE_MASK               0xFFFF0000     # network mask next
<Link Parameters>
#Routing Parameters
ROUTE                    0
DPC                      1.1.100        # Route up to this node
DIRECTION                UP 
END
#
ROUTE                    1
DPC                      1.1.255        # Explicit route to STP 1.1.255
END
#
ROUTE                    2
DPC                      1.2.255        # Explicit route to STP 1.2.255
END
#
ROUTE                    3
DPC                      2.1.255        # Explicit route to STP 2.1.255
END
#
ROUTE                    4
DPC                      1.1.0          # Partial route to cluster 1.1.x
ADJACENT_ROUTE           FALSE          # Route to non-adjacent cluster 1.1.x
END
#
ROUTE                    5
DPC                      1.2.0          # Partial route to cluster 1.2.x
ADJACENT_ROUTE           FALSE          # Route to non-adjacent cluster 1.2.x
END
#
ROUTE                    6
DPC                      2.0.0          # Partial route to network 2.x.y
ADJACENT_ROUTE           FALSE          # Route to non-adjacent cluster 2.x.y
END
# Link set Parameters
LINK_SET_DESCRIPTOR      1
ADJACENT_DPC             1.1.255        # link set to STP 1.1.255
ROUTE_NUMBER             1              # explicit route to 1.1.255
ROUTE_NUMBER             4              # cluster route to 1.1.x
END 
#
LINK_SET_DESCRIPTOR      2
ADJACENT_DPC             1.2.255        # link set to STP 1.2.255
ROUTE_NUMBER             2              # explicit route to 1.2.255
ROUTE_NUMBER             5              # cluster route to 1.2.x
END 
#
LINK_SET_DESCRIPTOR      3
ADJACENT_DPC             2.1.255        # link set to STP 2.1.255
ROUTE_NUMBER             3              # explicit route to 2.1.255
ROUTE_NUMBER             6              # network route to 2.x.y
END 
#

Although the previous example is specific to ANSI networks, routing masks can be applied equally to other networks to reduce the size of routing tables.

When using routing masks and partial-match routes, follow these guidelines: