The subject matter described herein relates to routing messages in a mobile communications network. More particularly, the subject matter described herein relates to methods, systems, and computer program products for providing triggerless mobile services in a communications network.
In mobile communications networks, signaling messages, such as mobility management messages, are sent to or from mobile switching centers (MSCs), home location registers (HLRs), visitor location registers (VLRs), equipment identity registers (EIRs), authentication centers (AuCs), home subscriber servers (HSSs), and short message service centers (SMSCs). Because sending nodes lack address information regarding destinations, mobility management messages are typically sent route-on-global title (route-on-gt). Route-on-gt means that the sending node sets a signaling connection control part (SCCP) parameter in the message to indicate that the global title translation (GTT) is required before the message can be routed to its intended destination.
Global title translation is typically performed at an intermediate node, such as an STP. One STP marketed by the assignee of the present invention as the Eagle® STP includes SCCP cards that perform global title translation for received signaling messages. Signaling messages received by the STP are identified as route-on-gt and forwarded an SCCP card, referred to as a database services module (DSM), where GTT is performed. At the SCCP card, the message may be global title translated using standard global title translation tables. Alternatively, if the message requires a specialized type of global title translation, alternate tables may be accessed.
One specialized SCCP application marketed by the assignee of the present invention as G-Flex™ or G-Flex™ Message Relay, performs a lookup in a first database using the SCCP called party address. The first database may contain global title translation rules that are exceptions to rules in the standard GTT database. If a lookup in the first database results in a match, the message is global title translated using the entry in the first database and routed to its intended destination. If the lookup in the first database fails to locate a match, a lookup is performed in the GTT database, and the message is routed based on the results of the GTT translation.
Currently, G-Flex™ and other wireless database applications assume that mobility management messages are sent route-on-gt. That is, many wireless database applications require that messages be sent route-on-gt in order for the application to be triggered. As used herein, the term “mobility management message” is intended to include any signaling message relating to providing mobile telecommunications service to a mobile subscriber, include messages sent to or from a mobile services node, such as an HLR, a VLR, an EIR, an AuC, an HSS, or an SMSC. Relying on GTT to route mobility management messages to their destinations is sufficient for GSM networks where the mobility management messages are sent route-on-gt. However, other types of mobility management messages, such as IS-41 mobility management messages, are typically sent route-on-pc-ssn (MTP routed) where the DPC in each message is not set to the point code of the STP. Rather, the DPC is set to the point code of another node (e.g., the HLR). Therefore, GTT and other applications that assume the message is sent route-on-gt are ineffective for IS-41 networks. In addition, applications triggered by global title routed messages are bypassed.
Accordingly, in light of the reliance of conventional networks of routing mobility management messages based on global title translation, there exists a need for improved methods, systems, and computer program products for routing mobility management messages sent route-on-point-code-subsystem-number.
According to one aspect, the subject matter described herein includes a method for intercepting and redirecting mobility management messages sent route-on-point-code-subsystem-number. According to the method, a mobility management message sent route-on-point-code-subsystem-number is received. The mobility management message includes a message transfer part (MTP) destination point code (DPC) that is not equal to a point code of the receiving node. Even though the message is sent route-on-point-code-subsystem-number, the message is identified as a candidate for global title translation service. It is determined whether the SCCP portion of the message contains global title data. If the SCCP portion of the message does not contain GTT data, global title data is derived from a TCAP portion of the message. GTT is performed based on the derived global title data from the TCAP portion of the message. GTT is performed based on the derived global title data and a point code of mobile services node is determined. The MTP DPC in the mobility management message is replaced with the point code of the mobile services node. The message is then MTP routed to the mobile services node.
According to another aspect of the subject matter described herein, a signaling message routing node includes a first module for receiving a mobility management message sent route-on-point-code-subsystem-number. The mobility management message is MTP addressed to a point code other than a point code of the signaling message routing node. The signaling message is identified as a candidate for GTT service. It is also determined whether the SCCP portion of the message includes global title data. A second module receives the mobility management message and, if the SCCP portion of the message does not include GTT data, the second module derives global title data from a TCAP portion of the message. The second module performs GTT based on the derived global title data and determines a point code corresponding to a mobile services node. The MTP DPC in the message is replaced with a point code, and the message is routed to the mobile services node.
The methods and systems described herein for providing triggerless mobile services can be implemented in hardware, software, firmware, or any combination thereof. According to one aspect, the subject matter described herein can be implemented using a computer program product comprising computer executable instructions embodied in a computer readable medium. Exemplary computer readable media suitable for implementing the subject matter described herein include chip memory devices, optical or magnetic disk memory devices, downloadable electrical signals, programmable logic devices, or any other device capable of storing computer executable instructions.
Preferred embodiments of the subject matter described herein will now be explained with reference to the accompanying drawings of which:
As described above, the subject matter described herein includes methods and systems for providing triggerless mobile services. By “triggerless mobile services,” it is meant that mobile services, such as routing messages to HLRs, AuCs, EIRs, HSSs, or SMSCs or other services triggered by GT-routed messages, may be performed without requiring that the messages be addressed to the point code of an intermediate node that provides the services or that the messages be sent route-on-gt.
The global title indicator (GTI) may also be analyzed at LIM 202 to determine how GTT will be performed. If the global title indicator indicates that the SCCP portion contains global title information, a first flag may be set in the message to indicate to DSM 208 that GTT is to be performed using the global title information in the SCCP portion of the message, even though the message is not addressed to the point code of routing node 200. If the message is determined not to have global title information in the SCCP portion (i.e., GTI=0), the message is preferably tagged with second that indicates to DSM 208 that the TCAP/MAP portion of the message must be decoded to derive global title information.
In this example, it is assumed that global title data derivation is required. Accordingly, at step 2 in the message flow of
Once the SCCP portion of the message is modified to include the GT address and translation type, the message is forwarded to GTT/G-Flex process 212. GTT/G-Flex process 212 performs a lookup in a translation table and determines a point code of the destination. The point code is inserted in the MTP portion of the message.
After GTT or G-Flex processing is performed message may optionally be forwarded to MAP screening process 214. MAP screening process 214 screens predetermined types of MAP messages to determine whether to allow the message in the network. Exemplary MAP screening functions are described in detail in commonly assigned, co-pending U.S. Patent Application Publication No. US-2001-0046856-A1, published Nov. 29, 2001, the disclosure of which is incorporated herein in its entirety. Briefly, MAP screening includes analyzing the MAP portion of the message and screening predetermined MAP message types. Such screening is useful in preventing certain types of MAP messages from entering or being routed through a network.
Assuming that the message passes MAP screening, the message is forwarded to routing function 216 where the message is routed to the link interface module, in this case, LIM 206, associated with the outbound signaling link. Link interface module 206 forwards the message to HLR 220.
Using the message flow illustrated in
The message flow indicated by the solid arrows in
In the example presented in
In addition, unlike conventional GTT, the OPC in the routing label of the outbound message may not be changed to the point code of routing node 200. This ensures that the response will be sent to the appropriate destination.
Another advantage of the scenario illustrated in
If, on the other hand, the message is determined to be a through-switched message, control proceeds to step 306 where it is determined whether a trigger is set by gateway screening. As will be described in more detail below, gateway screening is a process performed on the inbound link interface module to determine whether a message should be allowed into the network. According to the subject matter described herein, special triggers may be set in gateway screening to determine whether the message is a mobility management message. If the message does not match a gateway screening trigger, control proceeds to step 308 where the message is routed.
If the message does match a gateway screening trigger, control proceeds to step 310 where it is determined whether the called party global title indicator is equal to 0. If the called party global title indicator is not equal to 0, the SCCP portion of the message may include global title information. Accordingly, control proceeds to step 312 where a regular trigger flag is set in the message (indicating that GTT should be performed based on SCCP data), and the message is forwarded to the SCCP card. Control then proceeds to step 314 where GTT and related processing is performed on the message and the message is routed, preferably without changing the routing label OPC.
In step 310, if the called party global title indicator is equal to 0, this means that the SCCP portion of the message does not contain any global title information. If the SCCP does not contain any global title information, control proceeds to step 316 where a special trigger flag is set and the message is sent to the SCCP card. The special trigger flag may indicate to the SCCP card that the message requires global title data derivation. In step 318, the SCCP card decodes the TCAP/MAP portion of the message and extracts the dialed digits and the op code. In step 320, the SCCP card places the digits in the called party address of the message. The opcode is preferably correlated to a translation type. The translation type is preferably placed in the called party address field of the message. Control then proceeds to step 314 where GTT and related applications are performed. Control then returns to step 316 where the message is routed to its intended destination.
As described above, the G-Flex database may include entries or translations that are exceptions to the entries in the GTT database. For example, entries in the GTT database may be indexed by ranges of mobile subscriber identifiers. The G-Flex database may include entries that are indexed by individual mobile subscriber identifiers that are inside of the ranges of mobile subscriber identifiers by which entries in the GTT database are indexed. In addition or in the alternative, the G-Flex database may include entries that are indexed by individual mobile subscriber identifiers that are outside of the ranges of mobile subscriber identifiers by which entries in the GTT database are indexed. Further details regarding G-Flex processing can be found in commonly-assigned U.S. Pat. No. 6,836,477.
In
In the illustrated example, LIM 202 includes functionality for sending and receiving SS7 signaling message via SS7 signaling links. An MTP level 1 and 2 function 402 performs MTP level 1 and 2 functions, such as error detection, error correction, and sequencing of SS7 signaling messages. An I/O queue 404 stores inbound and outbound signaling messages before they can be processed by higher or lower layers. A gateway screening function 406 screens signaling messages based on OPC, DPC, and SI parameters to determine whether to allow messages into the network. In addition, gateway screening function 406 may access mobile services node data 408 to determine whether a message is a mobility management message that is sent route-on-point-code-subsystem-number according to an embodiment of the subject matter described herein. For such messages, gateway screening function 406 may forward the messages directly to a distribution function 410 for distribution to DSM 208.
For messages that are not mobile services messages that are sent route-on-point-code-subsystem-number, gateway screening function 406 may forward the messages to discrimination function 412. Discrimination function 412 may analyze the destination point code in the message and determine whether the message is addressed to the point code of routing node 200 or to another point code. For messages addressed to the point code of routing node 200, discrimination function 412 may forward the messages to distribution function 410. Distribution function 410 may distribute the message to an internal processing module, such as DSM 208, for internal processing.
For messages that are not addressed to the point code of routing node 200, discrimination function 412 may forward the messages to routing function 216. Routing function 216 routes the messages to the interface module associated with the outbound signaling link. However, as stated above, predetermined messages, such as mobility management message, that are not addressed to the point code of routing node 200 may bypass discrimination function 412 and routing function 216 and be forwarded automatically to DSM 208.
DCM 400 performs functions similar to LIM 202 for sending and receiving signaling messages over IP signaling links. In the illustrated example, DCM 400 includes a physical layer function 414, a network layer function 416, and an SS7 adaptation layer function 418. Physical layer function 414 may control the sending and receiving signaling messages over IP signaling links. In one exemplary implementation, physical layer function 414 may be implemented using an Ethernet transceiver. Network layer function 416 performs network layer functions for signaling messages. Network layer function 416 may be implemented using Internet protocol. Transport layer function 418 may perform transport layer functions, such as setting up connections between endpoints. In one example, transport layer function 418 may be implemented using stream control transmission protocol (SCTP). In an alternate implementation, transport layer function 418 may be implemented using transmission control protocol (TCP) or user datagram protocol (UDP). Signaling adaptation layer 420 may perform functions for sending and receiving signaling messages over IP signaling links. Signaling adaptation layer 420 may be implemented using M3UA, M2PA, SUA, TALI, or other suitable adaptation layer protocol. The remaining functions of DCM 400 are the same as those of LIM 202. Hence, a description thereof will not be repeated herein.
Database services module 208 includes functions for providing SCCP layer services. In the illustrated, example DSM 208 includes a signaling connection routing controller (SCRC) 422 for identifying the type of service required for a received message. SCRC 422 may analyze the GTI or special flag set by LIM 202 to identify whether global title data derivation is required. If global title data derivation is required, SCRC 422 may forward the message to global title data derivation function 210. Global title data derivation function 210 derives global title translation data from the TCAP/MAP portion of the message as described above. Global title data derivation function 210 may then forward the message to either GTT function 424 or G-Flex function 426. Determining whether a message should be forwarded to GTT function 424 or G-Flex function 426 may include forming a compound key based on parameters in the message including TT, subsystem number, global title indicator, nature of address indicator, or other parameters. If the message is identified as requiring G-Flex service, the message is forwarded to G-Flex function 426. G-Flex function 426 performs a lookup based on the SCCP called party address in G-Flex database 428.
If the result of the lookup in G-Flex database 428 results in a match, the destination point code in the message is replaced with that extracted from G-Flex database 428. The message is then forwarded to routing function 216 for routing. Additional SCCP layer functions, such as MAP screening function 214, may also process the message before it is routed.
If the message is indicated as requiring GTT service only or if the lookup in G-Flex database 428 fails, GTT function 424 performs a lookup in GTT database 430. The result of the lookup in GTT database 430 is a point code corresponding to the destination. This point code is inserted in the MTP routing label of the message and the message is routed by routing function 216. In addition, advanced mobile services, such as those provided by MAP screening function 214, may be applied.
Routing function 216 may route the message to the interface module associated with the destination signaling link. If the destination signaling link is an SS7 signaling link, routing function 216 may route the message to the link interface module associated with the SS7 signaling link. If the destination is an IP signaling link, routing function 216 may route the message to the data communications module associated with the IP signaling link. For SS7 messages destined for IP signaling links, the DCM may encapsulate the messages in SS7 adaptation layer, transport layer, network layer, and physical layer packets before sending the message to the destination node. If the destination node is a SIP-enabled node, such as an HSS, the DCM may convert the SS7 message into a SIP message including the mobility management information and forward the SIP message to the HSS over the IP network.
Thus, as described above, the subject matter described herein includes methods, systems, and computers program products for providing triggerless mobile services. The triggerless mobile services may be provided for mobility management messages that are not addressed to the point code of an intermediate node and that are not sent route-on-global-title. As a result, messages in networks that do not use global title routing, such as IS-41 networks, may be routed to alternate destinations without requiring modification to sending nodes. In addition, advanced mobile services conventionally triggered by gt-routed messages may be provided for non-gt-routed messages.
It will be understood that various details of the invention may be changed without departing from the scope of the invention. Furthermore, the foregoing description is for the purpose of illustration only, and not for the purpose of limitation, as the invention is defined by the claims as set forth hereinafter.
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 60/562,002, filed Apr. 14, 2004; the disclosure of which is incorporated herein by reference in its entirety.
| Number | Date | Country | |
|---|---|---|---|
| 60562002 | Apr 2004 | US |