throbber
(12) United States Patent
`Delaney et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 7,675,905 B2
`Mar. 9, 2010
`
`US007675905B2
`
`(54) METHODS, SYSTEMS, AND COMPUTER
`PROGRAM PRODUCTS FOR SELECTIVELY
`PERFORMING GLOBAL TITLE
`TRANSLATION BASED ON MESSAGE TYPE
`
`(75)
`
`Inventors: Robert J. Delaney, Raleigh, NC (US);
`T°dd Ekhlers Wake Forests NC (US)
`(73) Assigneei Tekelecs M0rfiSVi11e: NC (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U'S'C‘ i54(b) by i237 days‘
`
`(21) APPL N05 11/1041189
`.
`F11ed3
`
`AP1'- 12: 2005
`
`(22)
`
`(65)
`
`Prior Publication Data
`Us 2006/0227784 A1
`Oct. 12, 2006
`
`(51)
`
`Int. Cl.
`
`H04L 12/50
`
`(2006.01)
`
`(2006.01)
`H04M 7/00
`(52) U.S. Cl.
`..................... .. 370/352; 370/360; 370/385;
`379/221.09; 379/230
`(58) Field of Classification Search ..................... .. None
`See appiicaiioii iiie for Coiiipieie Search history‘
`References Cited
`U.S. PATENT DOCUMENTS
`
`(56)
`
`5,953,404 A *
`6,098,076 A
`6,101,494 A
`
`................ .. 379/230
`9/1999 Fikis et al.
`8/2000 Rekieta etal.
`8/2000 Khosravi-Sichaniet al.
`
`6,108,409 A
`6,230,164 B1
`6,282,280 B1
`6,577,723 B1 *
`6,611,533 B1 *
`
`2004/0096049 A1
`2004/0141493 Al*
`2005/0013290 A1
`
`8/2000 Cooper et al.
`5/2001 Rek1eta et al.
`8/2001 Rek1eta et al.
`
`6/2003 Mooney .............. .. 379/221.08
`8/2003 L1ao et al.
`. . . . . . .
`. . . . .. 370/467
`Efi1i:I:1ye:t;1' """""" " 379/229
`5/2004 Delaney et al.
`7/2004 D l
`l.
`........... .. 370/352
`1/2005 Aii1:I<f1yei:iai.
`
`OTHER PUBLICATIONS
`Notification ofEuropean PublicationNumberandlnformation onthe
`Application of Article 67(3) EPC for European Application No.
`04756298.8 (Mar. 1, 2006).
`Notice ofAllowance and Fee(s) Due for U.S. Appl. No. 10/878,171
`GDec.2l,2005)
`Notification of Transmittal of the International Search Report and the
`Written Opinion of the International Searching Authority, or the
`Declaration for International Application No. PCT/US 06/ 13405
`'7
`(Aug 29’ ‘°°7)'
`* cited by examiner
`.
`.
`.
`Przrnary Examn1er—Damel Ryman
`.
`ASSlSZ(1I’lZ Exammer—Cassandra Decker
`AZZ0l"l’l€y, Agent, 0}’ Fzrm—Jenk1ns, WIISOH, Taylor &
`Hunts PA
`
`ABSTRACT
`(57)
`Methods, Systems, and Computer program products are dis_
`closed for selectively performing global
`title translation
`based on message type at an SS7 network node. A message is
`received indicating route-on-global-title. A message type of
`the received message is determined. Global title translation is
`selectively performed based on the determined message type.
`
`26 Claims, 6 Drawing Sheets
`
`STATEFUL
`APPLICATION
`
`STATEFUL
`APPLICATION
`
`MTP LEVEL
`
`SS7 LINKS
`
`APPLE 1015
`
`APPLE 1015
`
`1
`
`

`
`U.S. Patent
`
`Mar. 9, 2010
`
`Sheet 1 of6
`
`US 7,675,905 B2
`
`
`
`<_,.0_u_
`
`mn_>._.m_o<mwms_Z0om_w<mmom
`
`ms_<mOHmmzommmmQ5”.31
`
`,.mo<o._C.
`
`mom
`
`2:
`
`
`
`m_...U_u_
`
`omm<:m9.9ems.3 I3.:NOVOcw
`
`
`
`mm:pmmscmmEs“.:.
`
`
`
`
`
`n_Ow._L.O\>>nC.wn_ww
`
`2
`
`
`
`

`
`U.S. Patent
`
`Mar. 9, 2010
`
`Sheet 2 of6
`
`US 7,675,905 B2
`
`I\IIII/\
`
`Nam
`
`8w
`
`
`
`._wEE®U_D.cozommcmfi
`
`ox
`
`N.0_u_
`
`
`
`mo.:o_.omm:m.F
`
`
`
`
`
`.w_;,__Ewu_wocosummEmcoaeoo
`
`
`
`
`
`£95..mocmsamwEmcoaEoo
`
`
`
`
`
`_..=mC®.._cozomm:m._._.
`
`3
`
`

`
`U.S. Patent
`
`Mar. 9, 2010
`
`Sheet 3 of6
`
`US 7,675,905 B2
`
`MSG TYPE!
`CdPA DET
`
`MTP LEVEL
`
`4
`
`

`
`U.S. Patent
`
`Mar. 9, 2010
`
`Sheet 4 of6
`
`US 7,675,905 B2
`
`START
`
`400
`
`RECEIVE MESSAGE INDICATING ROUTE-ON-
`
`GLOBAL-TITLE
`
`402
`
`DETERMINE MESSAGE TYPE OF RECEIVED
`
`MESSAGE
`
`404
`
`DETERMINE WHETHER TO PERFORM GLOBAL
`
`MESSAGE TYPE
`
`TITLE TRANSLATION BASED ON DETERMINED
`
`FIG. 4
`
`5
`
`

`
`U.S. Patent
`
`Mar. 9, 2010
`
`Sheet 5 of6
`
`US 7,675,905 B2
`
`START
`
`GLOBAL-TITLE
`
`RECEIVE MESSAGE INDICATING ROUTE-ON-
`
`500
`
`502
`
`DETERMINE MESSAGE TYPE AND CALLED
`
`MESSAGE
`
`PARTY INFORMATION FROM RECEIVED
`
`504
`
`
`
`
`
`No
`
`MESSAGETYPECORRESPONDS
`
`TO AN ONGOING TRANSACTION?
`
`Yes
`
`506
`
`ROUTE MESSAGE BASED ON CALLED PARTY
`
`INFORMATION
`
`508
`
`PERFORM GLOBAL TITLE TRANSLATION,
`
`MESSAGE
`
`POST-GTT LOAD SHARING, AND ROUTE
`
`FIG. 5
`
`6
`
`

`
`U.S. Patent
`
`Mar. 9, 2010
`
`Sheet 6 of6
`
`US 7,675,905 B2
`
`START
`
`GLOBAL-TITLE
`
`RECEIVE MESSAGE INDICATING ROUTE-ON-
`
`600
`
`602
`
`DETERMINE MESSAGE TYPE AND CALLED
`
`PARTY INFORMATION FROM RECEIVED
`
`MESSAGE
`
`
`
`604
`
`
`INFORMATION CORRESPONDS TO STATEFUL
`
`CALLED PARTY
`
`No
`
`
`
`APPLICATION?
`
`
`
`Yes
`
`606
`
`ROUTE MESSAGE BASED ON CALLED PARTY
`
`INFORMATION
`
`608
`
`PERFORM GLOBAL TITLE TRANSLATION,
`
`MESSAGE
`
`POST-GTT LOAD SHARING, AND ROUTE
`
`FIG. 6
`
`7
`
`

`
`US 7,675,905 B2
`
`1
`METHODS, SYSTEMS, AND COMPUTER
`PROGRAM PRODUCTS FOR SELECTIVELY
`PERFORMING GLOBAL TITLE
`TRANSLATION BASED ON MESSAGE TYPE
`
`TECHNICAL FIELD
`
`The subject matter described herein relates to routing mes-
`sages in a communications network. More particularly, the
`subject matter described herein relates to selectively perform-
`ing global title translation based on message type.
`
`BACKGROUND
`
`In telecommunications signaling networks, global title
`translation (GTT) refers to the process by which the signaling
`connection control part (SCCP) called party address (CdPA)
`in a signaling message is translated into the point code of an
`intermediate or final destination. In intermediate global title
`translation, the SCCP CdPA is translated into the point code
`of an intermediate destination. In final global title translation,
`the SCCP CdPA is translated into the point code and sub-
`system number of a final destination.
`A node that performs intermediate GTT translates the glo-
`bal title address (GTA) digits in the message to a point code
`corresponding to a second node and sends the message with a
`route-on-global-title indication to the second node. The first
`node may or may not modify the GTA digits before sending to
`the second node. The second node performs another global
`title translation, which could be another intermediate GTT, or
`a final GTT.
`
`The node performing the final GTT translates the GTA
`digits in the message to the point code and subsystem number
`corresponding to the final destination node for the message.
`After translation, the node sends the message route—on—point—
`code-subsystem-number to the next hop in the routing path.
`The next hop in the routing path may or may not be the final
`destination. Although no subsequent GTTs will be per-
`formed, the message may be routed through several more
`nodes before reaching its final destination.
`The transaction capabilities application part (TCAP) pro-
`tocol is used in Signaling System 7 (SS7) telecommunica-
`tions networks for sending database queries to a service con-
`trol point (SCP). The SCP provides an interface to local and
`remote databases that contain subscriber and routing infor-
`mation. TCAP messages can also be sent from one voice
`switch to invoke functions in another switch in the network.
`
`When TCAP is used to query a database, SCCP may be used
`in conjunction with TCAP to route the message to the appro-
`priate database subsystem.
`In some telecommunications networks, SCPs are redun-
`dantly provided. That is, multiple identically provisioned
`SCPs may be present in a network for enhanced reliability
`and/or for increasing the speed at which SCP services are
`provided. Each of the redundant SCPs may have a separate
`point code, and other network nodes may rely on GTT trans-
`lations to route messages to the SCPs. In such a case, most
`final GTT translations are performed such that messages will
`be distributed among redundant SCPs based on any suitable
`criteria, such as load sharing. Load sharing between redun-
`dant SCPs may be equal, for example, if the SCPs have
`identical processing capabilities. Alternatively, load sharing
`may be unequal, for example, if one SCP has greater relative
`processing capabilities. Another reason for unequal load dis-
`tribution may include providing a high quality of service SCP
`for subscribers willing to pay for faster SCP access.
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`Regardless of the reason for distributing messages among
`redundant SCPs, there may be some cases in which it is
`desirable to ensure that a message is delivered to a particular
`SCP. More particularly, certain types ofmessages are handled
`more efficiently when sent to an SCP already involved in the
`associated transaction. For example, when a query is initiated
`by an SCP, a response to the query can be handled more
`efficiently if returned to the initiating SCP. Conventionally,
`however, there is no discrimination performed based upon the
`type of message being processed. For example, when load
`sharing is employed, the load sharing algorithm does not
`process messages differently based on whether the mes sage is
`a response or another message type. Thus, a conventional
`GTT load sharing application could result in a message being
`sent to the incorrect SCP.
`
`Some conventional approaches use a calling party address
`(CgPA) point code (PC) from a query message to return the
`response to the query back to the SCP originating the query.
`Not all network implementations, however, have a point code
`in the CgPA. Global System for Mobile Communications
`(GSM) implementations, for example, do not use a CgPA PC
`in order to provide space for other data. As a result, for GSM
`implementations, each transaction must be tracked using a
`transaction ID in the TCAP message to associate specific
`transactions with a particular SCP. This requires the use of a
`device that tracks the state of each transaction by transaction
`ID and associates it with an SCP until the entire transaction is
`
`completed.
`Tracking individual transactions requires resource-inten-
`sive complex operations, thereby increasing overhead for
`message processing. Accordingly, a need exists for methods,
`systems, and computer program products for selectively per-
`forming GTT translations based on a message type without
`requiring the tracking of transactions.
`
`SUMMARY
`
`In one aspect of the subject matter disclosed herein, a
`method is disclosed for selectively performing global title
`translation based on message type at an SS7 network node. A
`message is received for global title translation. A message
`type ofthe received message is determined. Global title trans-
`lation is selectively performed based on the determined mes-
`sage type.
`In another aspect of the subject matter disclosed herein, a
`computer program product is disclosed that includes com-
`puter executable instructions embodied in a computer-read-
`able medium for receiving a message for global title transla-
`tion, determining a message type of the received message,
`and selectively performing global title translation based on
`the determined message type.
`In another aspect of the subject matter disclosed herein, a
`system is disclosed for selectively performing global title
`translation based on message type. The system includes logic
`configured to receive a message for global title translation,
`logic configured to determine a message type of the received
`message, logic configured to selectively perform global title
`translation based on the determined message type.
`In another aspect of the subject matter disclosed herein, a
`system is disclosed for selectively performing global title
`translation based on message type. A routing interface
`receives a message for global title translation. A message type
`detector determines a message type of the received message.
`
`8
`
`

`
`US 7,675,905 B2
`
`3
`A global title translation function selectively performs global
`title translation based on the determined message type.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`invention will
`Objects and advantages of the present
`become apparent to those skilled in the art upon reading this
`description in conjunction with the accompanying drawings,
`in which like reference numerals have been used to designate
`like elements, and in which:
`FIG. 1A is a block diagram illustrating a network including
`a signal transfer point having message type-based GTT func-
`tionality according to an aspect of the subject matter dis-
`closed herein;
`FIG. 1B is a signaling message diagram illustrating the
`bypassing of GTT and load-sharing by STP 102 illustrated in
`FIG. 1A;
`FIG. 2 is a schematic diagram illustrating a sample struc-
`ture of an SS7 message signaling unit carrying transmission
`capabilities application part information;
`FIG. 3 is a block diagram illustrating an exemplary internal
`architecture for a signal transfer point having message-type-
`based GTT functionality according to an aspect ofthe subject
`matter disclosed herein;
`FIG. 4 is a flow diagram illustrating a method for selec-
`tively performing global title translation based on message
`type according to an aspect of the subject matter disclosed;
`FIG. 5 if is a flow diagram illustrating a method for selec-
`tively performing global title translation based on message
`type according to another aspect of the subject matter dis-
`closed; and
`FIG. 6 is a flow diagram illustrating a method for selec-
`tively performing global title translation based on message
`type according to another aspect of the subject matter dis-
`closed.
`
`DETAILED DESCRIPTION
`
`To facilitate an understanding of exemplary embodiments,
`many aspects are described in terms of sequences of actions
`that can be performed by elements of a computer system. For
`example, it will be recognized that in each of the embodi-
`ments, the various actions can be performed by specialized
`circuits or circuitry (e.g., discrete logic gates interconnected
`to perform a specialized function), by program instructions
`being executed by one or more processors, or by a combina-
`tion of both.
`
`Moreover, the sequences of actions can be embodied in any
`computer-readable medium for use by or in connection with
`an instruction execution system, apparatus, or device, such as
`a computer-based system. processor containing system. or
`other system that can fetch the instructions from a computer-
`readable medium and execute the instructions.
`
`As used herein, a “computer-readable medium” can be any
`means that can contain, or store, the program for use by or in
`connection with the instruction execution system, apparatus,
`or device. The computer-readable medium can be,
`for
`example but not limited to, an electronic, magnetic, optical,
`electromagnetic, or semiconductor system, apparatus or
`device. More specific examples (a non exhaustive list) of the
`computer-readable medium can include the following: a por-
`table computer diskette, a random access memory (RAM), a
`read-only memory (ROM), an erasable programmable read-
`only memory (EPROM or Flash memory), and a portable
`compact disc read-only memory (CDROM).
`Thus, the subject matter described herein can be embodied
`in many different forms, and all such forms are contemplated
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`
`to be within the scope of what is claimed. Any such form of
`embodiment can be referred to herein as “logic configured to”
`perform a described action.
`FIG. 1A is a block diagram illustrating a network including
`a signal transfer point having message-type-based GTT func-
`tionality according to an aspect of the subject matter dis-
`closed herein. In FIG. 1A, a service switching point (SSP)
`100 forwards messages via a signal transfer point (STP) 102
`to either ofa mated pair of SCPs 104 and 106. Messages are
`routed to STP 102 based on a destination point code (DPC) of
`1-1-1 for STP 102 contained in the message transfer part
`(MTP) layer. An originating point code (OPC) of 244-2-1
`corresponding to SSP 100 is also included in the MTP layer
`portion of the message.
`STP 102 performs GTT processing on messages routed
`from SSP 100 by translating SCCP address information into
`a point code and subsystem number combination associated
`with a final destination. The message is then given to the
`MTP-3 layer with the translated point code so that it may be
`routed by MTP-3 to its final destination. The subsystem num-
`ber is an address of a database or other subsystem component
`that may be accessed through an SCP, for example for pro-
`cessing a TCAP message.
`STP 102 includes GTT tables with GTA address ranges
`that correspond to CgPA and/or CdPA addresses. The GTT
`tables include information for routing a message to an SCP. A
`mated application (MAP) table may also be employed for
`load sharing determinations between mated SCPs. For
`example, the Eagle® signal transfer point available from
`Tekelec of Calabasas, Calif., currently load shares post-GTT
`destinations through the use of a MAP table for final GTT. In
`one example, a user may define GTA:9194605500 in the
`GTT tables with a translation to PC:248-5-6. The user may
`then define a relationship in the MAP table between PCs
`248-5-6 and 248-5-7. Accordingly, all trafiic routed using
`GTA:9194605500 will
`conventionally be
`load-shared
`between the two PCs, without regard to message type.
`One possible implementation of GTT and MAP tables as
`shown in Tables 1 and 2 below.
`
`Starting GTA
`919460000
`919560000
`
`TABLE 1
`
`GTT Table
`
`Ending GTA
`919469999
`919569999
`
`TABLE 2
`
`PC
`248—5—6
`248—5—7
`
`SSN
`20
`25
`
`Mated Application MAP Table
`Mated PC/SSN
`
`248—5—7/25
`248—5—6/20
`
`PC/SSN
`
`248—5—6/20
`248—5—7/25
`
`Rel Cost
`
`10
`10
`
`The MAP table includes PC/SSN combinations. A final
`GTT analysis of GTA 919461 1000 and any other GTAs in the
`GTT table that translate to PC:248-5-6 and SSN 20 will
`
`result in a match in the MAP table showing a load sharing
`relationship between 248-5-6 SSN 20 and 248-5-7 SSN 25,
`and vice versa. The MAP table may also include a relative
`cost associated with each PC/SSN for use by the load sharing
`algorithm in load sharing determinations.
`Referring to FIG. 1B, a signaling diagram is shown to
`illustrate selectively performing GTT translation based on
`
`9
`
`

`
`US 7,675,905 B2
`
`5
`message type according to an aspect of the subject matter
`described herein. In line 1 of the message flow diagram, SSP
`100 sends a message to STP 102. In line 2 ofthe message flow
`diagram, STP 102 performs GTT and it is assumed that the
`resulting point code corresponds to one of SCPs 104 and 106.
`Next,
`it is determined whether GTT and post-GTT load-
`sharing should be performed. Such a determination can be
`made by analyzing the message type. For example, if the
`message is a response or one of the other types enumerated
`below, load sharing should be bypassed. In this example, it is
`assumed that the message should be load shared. Accord-
`ingly, in line 2 of the message flow diagram, the message is
`load shared by performing a lookup in the MAP table and
`selecting the point code of SCP 104. The message is then sent
`to SCP 104 using a load sharing algorithm.
`SCP 104 processes the message and determines that addi-
`tional information is required to complete the transaction. For
`example, a personal identification (PIN) number may be
`required (e.g., need to be dialed-in) from the calling party. In
`lines 3 and 4 of the message flow diagram, a request message
`is sent back to SSP 100 via STP 102. SSP 100 responds by
`sending a response message including the requested informa-
`tion in line 5 of the message flow diagram. Here, if conven-
`tional GTT processing and load sharing were used, the mes-
`sage would be global
`title translated,
`load shared, and
`possibly sent to SCP 106 (incorrectly), as illustrated by line 7
`of the message flow diagram. In this case, however, the
`response message is needed at SCP 104, as illustrated by line
`6 of the message flow diagram.
`According to an aspect of the subject matter described
`herein, STP 102 determines that the message is a response
`based on message type, such as TCAP package type, and
`routes the response message back to SCP 104 (the requesting
`SCP) based on the CdPA PC address. That is, if a point code
`is present in the SCCP CdPA field of the message, that point
`code is copied from the SCCP CdPA field to the MTP desti-
`nation point code field. If the SCCP CdPA includes a global
`title address, rather than a point code, the global title address
`may be translated to the point code of SCP 106 using a table
`in STP 102 that is separate from the GTT and MAP tables.
`This approach provides compatibility with GSM implemen-
`tations, which typically do not include the CdPA PC address
`in the message, but do include the CdPA GTA in the message.
`A sample structure of an SS7 message signaling unit
`(MSU) 200 that carries TCAP information (e.g., a TCAP
`message) is illustrated in FIG. 2. Signaling information field
`(SIF) 202 of MSU 200 includes TCAP portion 204, SCCP
`portion 206, and MTP-3 portion 208. TCAP portion 204 is
`divided into three portions: a transaction portion 210, a com-
`ponent portion 212, and a dialog portion 214. Transaction
`portion 210 provides information necessary for a signaling
`point to route the component information to its destination.
`Component portion 212 receives component
`information
`from an operation protocol data unit (OPDU) received from a
`corresponding application. The OPDU contains the primi-
`tives and parameters necessary to invoke an operation on
`request services from another entity, such as a database query.
`Dialog portion 214 is used to identify the version of the
`transaction being used and provide security information and
`encryption is used on the transaction. Dialog portion 214 is an
`optional field within TCAP.
`Transaction portion 210 indicates whether or not compo-
`nent portion 212 consists of a single transaction or multiple
`transactions, and alerts the corresponding recipient applica-
`tion as to how to process the message. A TCAP package type
`identifier 216, TCAP message length, transaction ID, and
`other parameters are provided to the recipient application to
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`aid in processing the message. Package type identifier 216
`indicates the type of TCAP message being forwarded. Table
`3 below includes a list ofpackage types and the associated bit
`values (A-H) used in package type identifier field 216 of
`transaction portion 210. Table 3 also includes an ongoing
`transaction indication that may be associated with each mes-
`sage type.
`
`TABLE 3
`
`TCAP Package Types
`
`H
`l
`1
`1
`
`l
`l
`
`1
`
`1
`
`G
`l
`l
`l
`
`l
`l
`
`l
`
`1
`
`F
`
`I
`
`I
`I
`
`I
`
`0
`
`E
`0
`0
`0
`
`0
`0
`
`0
`
`1
`
`D
`0
`0
`0
`
`0
`0
`
`0
`
`0
`
`C
`0
`l
`0
`
`0
`l
`
`l
`
`1
`
`Ongoing
`B A Transaction
`0
`1 No
`0 Yes
`0 Yes
`
`l
`
`l
`0
`
`l
`
`1
`
`1 Yes
`1 Yes
`
`0 Yes
`
`0 Yes
`
`TCAP
`Package Type
`Unidirectional
`Response
`Query With
`Permission
`Query Without
`Permission
`Conversation
`WiI_l1 Perrnission
`Conversation W/out
`Permission
`Abort
`
`TCAP messages may be associated with ongoing transac-
`tions occurring between applications. In such a case, the
`message should be sent to the application associated with the
`ongoing transaction. For example, the SCP and subsystem
`that sends a request for more information to a remote endpoint
`has initiated a transaction and should receive the response to
`that request as part of the ongoing transaction. Accordingly,
`Table 3 may be used by STP 102 for determining whether a
`message is associated with an ongoing transaction, as will be
`described further below.
`
`Messages that may be part of ongoing transactions include
`a response message, since a response is typically sent in
`response to a request sent by a requesting application that
`maintains state, such as, “waiting for response.” In the case of
`a query, the response is used to return the requested data. In
`the case of a dialog between two applications, the response is
`the last transmission sent. Other TCAP message or package
`types that may be associated with ongoing transactions
`include query with permission, query without permission,
`conversation with permission, conversation without permis-
`sion, and abort messages. A query with permission mes sage is
`used to access information stored within a database and
`
`grants permission to the message recipient to end the trans-
`action. If a dialog is to take place, a query may be followed by
`an information exchange between two applications. A con-
`versation with permission message is sent after a query and is
`used to carry out a dialog between two applications and grants
`permission to the mes sage recipient to end the transaction. An
`abort message is used to end a transaction, either by an origi-
`nating entity or a user. A query without permission is gener-
`ated when an application needs to enter into a transaction with
`a remote application. A conversation without permission is
`sent to prevent a remote application from ending a transaction
`before the originating application has completed the trans-
`mission of all its components. In each case, one or more
`applications may be actively tracking the state of a transac-
`tion. In contrast, a unidirectional message is sent in one direc-
`tion only and does not require a return message (or response),
`and therefore is typically not related to ongoing transactions.
`According to one aspect, ongoing transaction indication in
`a Table 3 may be based on a probability that a given message
`type is associated with an ongoing transaction. For example,
`if over a 50% of messages received of this message type
`
`10
`
`10
`
`

`
`US 7,675,905 B2
`
`7
`correspond to an ongoing transaction, tl1e message type can
`be considered to be associated with an ongoing transaction.
`This information may be static or change dynamically based
`on messages received. One example of message type and
`associated ongoing transaction indicators is shown in Table 3.
`Other message type to ongoing transaction indicator relation-
`ships are possible and such relationships may be operator
`configurable.
`The first mes sage in a given transaction may be load- shared
`and sent to any SCP capable ofhandling the transaction. Once
`this occurs, there is an ongoing transaction. Subsequent mes-
`sages relating to the ongoing transaction should be sent to the
`SCP associated with the ongoing transaction. Referring again
`to FIG. 1B, the response message processed by STP 102 in
`line 5 may include a TCAP package type identifier 212 bit
`value of 11100100 corresponding to message
`type
`“response”, as indicated in Table 3 . Accordingly, STP 102 can
`use the TCAP package type identifier 212 to determine the
`message type and take appropriate steps to forward the
`response to the requesting SCP 104, rather than performing
`GTT or load sharing.
`Applications that maintain state information for ongoing
`transactions may be referred to as “stateful applications” and
`applications that do not maintain state information for a trans-
`action may be referred to as “stateless applications”. Accord-
`ing to another aspect of the subject matter disclosed herein,
`STP 102 may also include a stateful application table that
`includes the list of stateful applications by address and sub-
`system number. Table 4 provides an operator configurable list
`of applications that the operator wants global title translation
`to be performed based on message type. Table 4 may also
`include specific message types. When a message is received
`and the message type, called party address, and subsystem
`have been extracted from the message, the stateful application
`table may be checked to see if the message type, called party
`address, and subsystem are listed therein. If so, the message
`can be sent to the SCP and subsystem corresponding to the
`called party address/subsystem extracted from the message.
`Otherwise, the message is processed according to the GTT
`table and MAP table following normal procedures.
`
`TABLE 4
`
`Stateful Application Table
`
`CdPA PC/SSN
`
`CdPA GTNS SN
`
`Package Type
`
`248-5-6/20
`248—5—6/20
`248—5—7/25
`248—5—7/25
`—
`—
`
`—
`—
`9195100045/25
`9195100045/25
`9195100025/30
`9195100025/30
`
`Response
`Abort
`Response
`Abort
`Abort
`Response
`
`According to another aspect ofthe subject matter disclosed
`herein, the stateful application list table may include either or
`both ofthe CdPA PC/SSN and the CdPA GTA/SSN. Either (or
`both) called party address information may be extracted from
`the received message, depending on what called party address
`information is available in the message. For example, in a
`GSM implementation, the CdPA PC is typically not included
`with the message to provide space for other information.
`Instead, messages are routed based on the CdPA GTA.
`Accordingly, for GSM-related messages received, a lookup
`may be performed in the stateful application table based on
`global title address. Once the lookup is performed, a corre-
`sponding CdPA PC in Table 4 may be used for routing the
`message to the appropriate application. Alternatively, the
`
`8
`CdPA PC may be obtained from another table in STP 102 or
`the message may be routed based on the CdPA GTA, where
`feasible. Other messages, however, may include a CdPA PC
`and subsystem number for the application associated with the
`transaction. Accordingly, a lookup may be performed in the
`stateful application table based on the CdPA PC and the
`message may be routed based on the CdPA PC.
`FIG. 3 is a block diagram illustrating an exemplary internal
`architecture for STP 102 according to an aspect of the subject
`matter disclosed herein. In FIG. 3, STP 102 includes a plu-
`rality of i11temal processing modules 302, 304, 306, and 308.
`Each processing module 302, 304, 306, and 308 may include
`a printed circuit board having an application processor and a
`communications processor mounted thereon. The application
`processor may perform application level functions, such as
`message routing and card-specific functions. The communi-
`cations processor may control communications with other
`processing modules via a counter-rotating dual-ring bus 310.
`In the illustrated example, processing module 302 com-
`prises a link interface module for sending and receiving SS7
`messages via SS7 signaling links. Link interface module 302
`includes an MTP level
`1 and 2 function 312, a gateway
`screening function 314, a discrimination function 316, a dis-
`tribution function 318, and a routing function 320. MTP level
`1 and 2 function 312 performs MTP level 1 and 2 operations,
`such as error detection, error correction, and message
`sequencing. Gateway screening function 314 screens incom-
`ing SS7 messages based on the destination point code in each
`message to determine whether to allow the message into the
`network. Discrimination function 316 screens messages to
`determine whether the messages are addressed to STP 102 or
`to an external node. For messages addressed to STP 102,
`discrimination function 316 forwards the messages to distri-
`bution function 3 18 for distribution to the appropriate internal
`processing module. For messages requiring global title trans-
`lation, discrimination function 316 forwards the messages to
`distribution function 318. Distribution function 318 then for-
`
`10
`
`15
`
`25
`
`30
`
`35
`
`wards the messages to one of DSMs 306 and 308 for GTT
`processing. Routing function 320 routes messages that are not
`addressed to STP 102 to the cards associated with the out-
`
`40
`
`bound signaling links corresponding to the point codes in the
`messages.
`Processing module 304 comprises a data communications
`module for sending and receiving SS7 and/or IP telephony
`signaling messages over IP signaling links. In the illustrated
`example, data communications module 304 includes an IP
`converter 322 and functions 314 though 320 described with
`regard to link interface module 302. Functions 314-320 per-
`form the same operations described with regard to link inter-
`face module 302. Hence, a description thereof will not be
`repeated herein. IP converter 322 performs the signaling
`operations necessary for sending and receiving SS7 messages
`over IP links. For example, IP converter 322 may include an
`Ethernet layer, an IP layer, a TCP, UDP, or SCTP layer, and an
`SS7 adaptation layer. The SS7 adaptation layer may be imple-
`mented using M3UA, M2PA, SUA, TALI, or other appropri-
`ate SS7 adapter layer, as described in the correspondingly
`named IETF Internet Drafts and RFCs.
`Modules 306 and 308 are database services modules for
`
`performing GTT processing according to an aspect of the
`subject matter disclosed herein. Each database service mod-
`ule 306 and 308 includes a signaling connection routing con-
`troller (SCRC) 324 for receiving messages requiring SCCP
`services and determining the appropriate application for pro-
`cessing the messages. In the illustrated example, SCRC 324
`may select GTT function 326 for messages requiring GTT,
`such as messages that include a route-on-global-title indica-
`
`45
`
`50
`
`55
`
`60
`
`65
`
`11
`
`11
`
`

`
`US 7,675,905 B2
`
`9
`tion. GTT function 326 may access a GTT table 328, a MAP
`table 330, a stateful application table 332, a message type
`table 334, and a message type/CdPA detector 336. Stateful
`application table 332 and message type table 334 may corre-
`spond, for example, to Tables 4 and 3 above, respectively
`Message type/CdPA detector 336 determines a message type
`of a message currently being GTT processed. For example,
`message type detector 334 may analyze package type identi-
`fier 212 in transaction portion 206 of TCAP data 204 of the
`message. GTT function 326 may then determine, based on the
`message type, whether the message is associated with an
`ongoing transaction. F

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket