Methods, systems, and computer program products for identifying a serving home subscriber server (HSS) in a communications network

Information

  • Patent Grant
  • 7996541
  • Patent Number
    7,996,541
  • Date Filed
    Thursday, August 2, 2007
    16 years ago
  • Date Issued
    Tuesday, August 9, 2011
    12 years ago
Abstract
Methods, systems, and computer program products for determining a serving home subscriber server (HSS) in a communications network are described. One method includes obtaining a subscriber identifier from a query message. An exceptions-based data structure contained in a database is accessed to locate a database entry associated with the subscriber identifier. Similarly, a range-based data structure contained in the database is accessed to locate the database entry associated with the subscriber identifier if the exceptions-based data structure does not contain the database entry. The method also includes acquiring serving HSS data corresponding to the located entry from either the exceptions-based data structure or the range-based data structure.
Description
TECHNICAL FIELD

The subject matter described herein relates to optimizing a subscriber locator function (SLF) in an IP multimedia subsystem (IMS). More particularly, the subject matter described herein relates to methods, systems, and computer program products for identifying a serving home subscriber server (HSS) in a communications network.


BACKGROUND

Internet protocol (IP) multimedia subsystem (IMS) is defined by the Third Generation Partnership Project (3GPP) as a mobile network infrastructure that enables the convergence of data, speech, and mobile network technology over an IP-based infrastructure. IMS bridges the gap between the existing traditional telecommunications technology and Internet technology, allowing network operators to offer a standardized, reusable platform with new, innovative services by enhancing real time, multimedia mobile services, such as voice services, video telephony, messaging, conferencing, and push services. IMS can be used to provide services for both mobile networks and fixed networks at the same time, providing unique mixtures of services with transparency to the end-user.


IMS supports the establishment of any type of media session (e.g., voice, video, text, etc.) and provides the service creator the ability to combine services in the same session and dynamically modify sessions (e.g., adding a video component to an existing voice session). As a result, new and innovative user-to-user and multi-user services have become available, such as enhanced voice services, video telephony, chat, push-to-talk, and multimedia conferencing, all of which are based on the concept of a multimedia session. The underlying IMS infrastructure enables mobile IP communication services via its ability to find a user in the network and then to establish a session with the user. The key IMS components enabling mobility management are the call session control function (CSCF) and home subscriber server (HSS). The CSCF is essentially a proxy, which aids in the setup and management of sessions and forwards messages between IMS networks. The HSS holds all of the key subscriber information and enables users (or servers) to locate and communicate with other end users.


As the number of subscribers or processing load on an individual HSS increases, it may be desirable for a network operator to include multiple HSSs in a network. If each of the multiple HSSs is identically provisioned, i.e., includes copies of the same subscriber data, the HSSs may operate in a load sharing manner and it is not necessary to have a location function to determine which HSS holds a particular subscriber's data. However, if the multiple HSSs do not include identical data, it is necessary to identify the HSS that contains a particular subscriber's data when attempting to establish a call involving that subscriber. IMS documentation defines a subscriber locator function (SLF) for locating the HSS serving a particular subscriber when the subscriber's network includes multiple HSS functions. However, the implementation of the SLF is not believed to be specified.


Accordingly, there exists a need for improved methods, systems, and computer program products for identifying a serving home subscriber server in a communications network.


SUMMARY

According to one aspect, the subject matter described herein comprises methods, systems, and computer program products for identifying a serving home subscriber server (HSS) in a communications network. One method includes obtaining a subscriber identifier from a message. An exceptions-based data structure contained in a database is accessed to locate a database entry associated with the subscriber identifier. Similarly, a range-based data structure contained in the database is accessed to locate the database entry associated with the subscriber identifier if the exceptions-based data structure does not contain the database entry. The method also includes acquiring serving HSS data that corresponds to the located entry from either the exceptions-based data structure and the range-based data structure.


The subject matter described herein for identifying a serving HSS may 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 includes disk memory devices, programmable logic devices, and application specific integrated circuits. In addition, a computer readable medium that implements the subject matter described herein may be distributed across multiple physical devices and/or computing platforms.





BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the subject matter described herein will now be explained with reference to the accompanying drawings of which:



FIG. 1 is a network diagram illustrating exemplary communications network adapted to identify a serving home subscriber server according to an embodiment of the subject matter described herein;



FIG. 2 is a flow chart illustrating exemplary steps for identify a serving home subscriber server in a communications network according to an embodiment of the subject matter described herein; and



FIG. 3 is a network diagram illustrating exemplary communications network adapted to identify a serving home subscriber server using an E.164 identifier according to an embodiment of the subject matter described herein; and



FIG. 4 is a flow chart illustrating exemplary steps for identifying a serving home subscriber server using an E.164 identifier in a communications network according to an embodiment of the subject matter described herein.





DETAILED DESCRIPTION

The present subject matter relates to systems and methods for identifying a serving home subscriber server (HSS) in a communications network. FIG. 1 illustrates an exemplary communications network 100 in which the present subject matter may be implemented according to an embodiment of the subject matter described herein.


Referring to FIG. 1, network 100 may include an interrogating call session control function (I-CSCF) 102, a subscriber location function (SLF) 104, and a plurality of home subscriber servers (HSS) 1061 . . . n. I-CSCF 102 and SLF 104 may each be located and supported by separate application servers in network 100. In other embodiments of the present subject matter, SLF 104 may be co-located/integrated with a network element, such as a CSCF element. In one embodiment, network 100 includes an IMS network.


In one embodiment, I-CSCF 102 may be adapted to receive a call signaling message (e.g., message 121), such as a SIP INVITE message, sent from a calling party (e.g., a calling subscriber) to a called party (e.g., a called subscriber). In an alternate embodiment, a proxy call session control function (P-CSCF) may be adapted to receive the call signaling message. In response to receiving message 121, I-CSCF 102 (or P-CSCF) is configured to subsequently obtain subscriber information (e.g., a subscriber identifier associated with the calling subscriber, such as the calling subscriber number) from the call signaling message. In order to locate a serving HSS of the calling subscriber (which is needed to further service the call), I-CSCF 102 transmits a query message 122 containing the subscriber information to SLF 104.


In one embodiment, SLF 104 is a function that resides on a dedicated application server in network 100. SLF 104 may include database 108, which may be accessed in response to receiving query message 122, which is specifically addressed to SLF 104. Namely, SLF 104 serves the function of storing and providing HSS identification information that identifies a serving HSS node for a given calling subscriber and does not intercept any messages directed to an HSS node or other like registry node (e.g., an HLR). In one embodiment, database 108 may include a hierarchical data structure that contains a range-based section 110 that is made up of block sections or ranges of subscriber identifiers (e.g., subscriber URI values) and corresponding HSS identifiers. Likewise, database 108 may also contain an exceptions-based section 112, which includes subscriber identifiers (i.e., subscriber URI values) that are exceptions to the subscriber identifier-to-HSS identifier associations in ranged-based section 110. The relationship between the two sections is described below in greater detail.


In one embodiment, range-based section 110 contains subscriber identifier data that may include ranges of SIP:URI, TEL:URI, Mailto:URI, or other URI values. Each entry in section 110 includes an alphabetic or numeric (e.g., E.164 formatted subscriber identifiers, mobile subscriber ISDN identifiers, plain old telephone service (POTS) identifiers, international mobile station identifiers (IMSI), etc.) range of subscriber identifiers, as defined by the wild card or “*” character in each entry. For example, the entry indicated by E* at VZW.com may include all subscriber URIs within the VZW.com domain that begin with “E”. In another example, the entry indexed by 336241* may correspond to a range of subscriber directory numbers from 3362410000-3362419999. It should also be noted that the wild card operator is shown in database 108 for illustrative purposes. In an actual implementation, ranges may be identified by values that indicate the start and end of a range. For example, a range of telephone numbers for 9193800000 to 9193809999 may be identified by the telephones at the endpoints of the range, i.e., 9193800000 and 9193809999. Any suitable method for identifying a range is intended to be within the scope of the subject matter described herein.


By utilizing a data structure that employs a range (or block) of subscriber identifiers as opposed to numerous single entries of subscriber identifiers that represent the exact same information, database 108 is capable of storing more subscribers (and serving HSS identification data) in the same amount of space. This configuration also allows for more efficient lookups since fewer entries need to be accessed as SLF 104 attempts to locate an entry that matches the subscriber identifier received in message 122.


Subscriber identifier section 112 of database 108 may include a database section that contains entries of individual subscriber identifier values, such as a SIP:URI value or a Mailto:URI value. Each subscriber identifier entry in section 112 may be associated with a corresponding HSS identifier. Exceptions-based subscriber identifier section 112 may also include numeric or Tel:URI values, such as POTS or mobile telephone numbers. For example, the URI value Ellie@VZW.com or the telephone number 9193803232 may be included in the exceptions-based data. Each URI value in section 112 has a corresponding HSS identifier (e.g., Ellie@VZW.com is associated with HSS B). In an alternate embodiment, an entry in exceptions-based section 112 may include a range or block of entries not unlike the format in section 110.


As used herein, the term “range-based data” refers to a grouping of data by numeric, alphabetic, or alphanumeric ranges. For example, a range-based grouping of telephone numbers may include a group of telephone numbers that fall within a numeric range. In another example, a range-based grouping of URIs may be all URIs that fall within the same alphanumeric range. The term “exceptions-based-data” refers to data that is within one of the ranges or groupings of range based data or outside of all of the groupings or ranges of range based data. For example, the number 3362415656 in exceptions-based section 112 of database 108 is within the range of 3362410000-3462419999 specified in range based section 110. However, 3362415656 contains a different HSS identifier to the range defined for 336241*. Accordingly, the HSS identification rule for the entry corresponding to 3362415656 is an exception to the rule defined for the remaining entries in the range 336241*. It will be appreciated that according to one embodiment, range-based section 110 of SLF database 108 may be thought of as default SLF routing rules, which are only utilized in the event that an exception-based SLF routing rule could not be located.


Upon receiving a query message (e.g., message 122), SLF 104 initially access and searches exceptions-based section 112 using the subscriber identifier. Namely, SLF 104 compares and attempts to match the subscriber URI with the URI entries in section 112 via a cross-referenced comparison. If a matching entry is found in exceptions-based section 112, then the associated HSS identification data is obtained and provided to the requesting entity (e.g., I-CSCF 102). If a match is not located in the exceptions-based section 112, then range-based section 110 is subsequently searched using the subscriber identifier. In one embodiment, SLF 104 searches section 110 to determine if the subscriber identifier falls within a designated range specified by an entry.


If a “match” (i.e., if subscriber identifier falls within a range) is located in the ranged-based section 110, then the associated HSS identifier is obtained and provided to the requesting entity. If a match is not located, then a default HSS identifier may be returned or an error indicator may be returned to the requesting entity.


For example, referring to database 108 in FIG. 1, Ellie@VZW.com is listed as an exception in section 112. The first entry in section 110 indicates that Ellie@VZW.com would normally be associated with HSS A. Notably, the first entry of section 210 includes a wildcard operator that indicates that all identifiers starting with the letter “E” in the VZW.com domain are supported by HSS A. However, since Ellie@VZW.com is listed as an exception in section 112, this particular subscriber URI is instead supported by HSS B (as indicated) as opposed to HSS A.



FIG. 2 is a flow chart illustrating the exemplary steps of a method 200 for determining a serving HSS in a communications network according to an embodiment of the subject matter described herein. In block 202, a call setup message is received. In one embodiment, I-CSCF 102 receives a SIP INVITE message (e.g., message 121 in FIG. 1) intended for a designated called subscriber from a calling subscriber. The INVITE message may include this called and calling subscriber information in the “To” and “From” parameters, respectively, of the message header.


In block 204, the subscriber identifier is obtained from the call signaling message. In one embodiment, I-CSCF 102 extracts a subscriber URI from INVITE message 121.


In block 206, a query message is sent to an SLF. For example, I-CSCF 102 transmits an SLF query message (e.g., query message 122 in FIG. 1), which includes the subscriber identifier, to SLF 104. In one embodiment, query message 122 may be a Diameter query message that includes the subscriber URI value. In this scenario, the connection between I-CSCF 102 and SLF 104 may include a Diameter interface.


In block 208, an exceptions data structure is searched using the subscriber identifier. In one embodiment, SLF 104 utilizes the received subscriber identifier to initially query an exceptions-based section 112 of database 108. As mentioned above, exceptions-based section 112 of database 108 includes a list of individual subscriber identifier values (or “sub-ranges” of subscriber identifier values) that are exceptions to the range-based entries in section 110.


In block 210, a determination is made as to whether the subscriber identifier matches one of the entries in exceptions-based section 212. In one embodiment, SLF 104 compares the subscriber identifier contained in query message 122 with the entries in section 112. If a matching entry is not found in exceptions-based section 112 by SLF 104, then method 200 continues to block 212. If a matching entry is found, then method 200 proceeds to block 216.


In block 212, a range-based data structure is searched using the subscriber identifier. In one embodiment, SLF 104 utilizes the received subscriber identifier to query a range-based section 112 of database 108 (since SLF 104 did not find an exception that matched the subscriber identifier). For example, SLF 104 compares the subscriber identifier with the ranges listed in section 110 to determine if the subscriber identifier falls within a particular range.


In block 214, a determination as to whether the subscriber identifier is included within a particular range listed in section 110. If a “match” is found (i.e., subscriber identifier is within a listed range), then method 200 continues to block 216. If a “match” is not found, then method 200 proceeds to block 220, where a predefined default HSS identifier is returned to I-CSCF 102. Alternatively, an error message may be sent to I-CSCF 102 indicating that a serving HSS cannot be found in either section 110 or section 112.


In block 216, the serving HSS identification data is obtained. In one embodiment, the SLF 104 acquires the serving HSS identification data associated with the subscriber identifier from database 108 (i.e., either from exceptions section 112 or range section 110). For example, SLF 104 obtains the HSS identifier that corresponds to the matched exceptions-based section entry.


In block 218, the serving HSS identification data (e.g., HSS identifier) is sent to the original querying entity. In one embodiment, after finding a match from either section 110 or section 112, SLF 104 transmits the HSS identification data associated with the subscriber identifier to I-CSCF 102.


In block 222, the serving HSS is queried. In one embodiment, I-CSCF 102 uses the HSS identifier to query the appropriate HSS (e.g., one HSS of HSSs 1061 . . . n). In one embodiment, I-CSCF 102 attempts to obtain the identity of the S-CSCF that is designated to handle the subscriber's call from the queried HSS.


In one embodiment, the subject matter described herein may include querying an E.164 number mapping (ENUM) server in order to obtain an E.164 number, which may be used as a subscriber identifier to access an SLF routing data structure (e.g., database 108). FIG. 3 illustrates an exemplary communications network 300 in which the present subject matter may be implemented according to an embodiment of the subject matter described herein. In one embodiment, network 300 is similar to network 100 except for the addition of ENUM server 302 (e.g., a computer supporting an E.164-to-URI mapping function) and ENUM database 304. One reason that it may be desirable to identify an E.164 number corresponding to a URI is that E.164 numbers can be used as access keys to entries corresponding to numeric ranges and exceptions to those ranges in database 108. A query that seeks, from an ENUM server, an E.164 number corresponding to a URI is referred to herein as a reverse ENUM query because such a query requests the reverse of the normal E.164 to URI mapping performed by ENUM servers.


In one embodiment, ENUM server 302 is adapted to receive a reverse ENUM query 323 from SLF 104. Query 323 may include a subscriber identifier, such as a subscriber URI, that is initially received by SLF 104. After receiving query 323, ENUM server 302 uses the subscriber identifier to access database 304 in order to obtain an associated E.164 number via a URI-to-E.164 number translation. In one embodiment, ENUM database 304 may include a data structure that contains a plurality of URIs and corresponding E.164 numbers (see FIG. 3). The associated E.164 number resulting from the reverse ENUM translation is then provided to SLF 104. SLF 104 then uses the E.164 number and is used to search an SLF data structure (e.g., database 108) and determine the serving HSS for the subscriber associated with the E.164 number in a similar manner mentioned above.



FIG. 4 is a flow chart illustrating the exemplary steps of a method 400 for determining a serving HSS using an E.164 number in a communications network according to an embodiment of the subject matter described herein. In block 402, a call setup message is received. In one embodiment, I-CSCF 102 receives a SIP INVITE message 121 intended for a designated called party from a calling subscriber. The INVITE message may include a subscriber identifier, such as a calling subscriber number or subscriber URI.


In block 404, the subscriber identifier is extracted from the call signaling message. In one embodiment, I-CSCF 102 extracts a subscriber URI from INVITE message 121.


In block 405, a query message is sent to a SLF. For example, I-CSCF 102 transmits an SLF query message (e.g., query message 122), which includes the subscriber identifier, to SLF 104.


In block 406, a determination is made as to whether the subscriber identifier is an E.164 identifier. In one embodiment, SLF 104 analyzes the subscriber identifier to ascertain whether it is an E.164 based identifier. In one embodiment, SLF 104 recognizes the subscriber identifier to be a subscriber URI that may be associated to an E.164 number. If the subscriber identifier is found to be an E.164 number, then method 400 proceeds to block 410 and continues normally.


If the subscriber identifier is found not to be an E.164 identifier, then method 400 continues to block 407, where a reverse-ENUM query message containing the subscriber identifier is sent to ENUM server 302. In block 408, ENUM server 302 receives the query message and performs a reverse ENUM translation to obtain an E.164 number associated with the subscriber identifier from the ENUM database 304. In block 409, the E.164 number is sent to SLF 104 via a reverse response message 324.


In block 410, an exceptions data structure is searched using the subscriber identifier. In one embodiment, SLF 104 utilizes the E.164 number contained in message 324 to initially query an exceptions-based section 112 of database 108.


In block 412, a determination is made as to whether the E.164 number matches one of the entries in exceptions-based section 112. In one embodiment, SLF 104 compares the E.164 number contained in message 122 with the entries in section 112. If a matching entry is not found in exceptions-based section 112 by SLF 104, then method 400 continues to block 414. If a matching entry is found, then method 400 proceeds to block 420.


In block 414, a range-based data structure is searched using the subscriber identifier. In one embodiment, SLF 104 utilizes the received E.164 number to query a range-based section 112 of database 108. For example, SLF 104 compares the subscriber identifier with all of the ranges listed in section 110 to determine if the subscriber identifier falls within a particular range.


In block 416, a determination as to whether the subscriber identifier matches or falls within a particular range listed in section 110. If a match is found, then method 400 continues to block 420. If a match is not found, then method 400 proceeds to block 418, where predefined default HSS identification data is sent to I-CSCF 102. Alternatively, an error message may be sent to I-CSCF 102 indicating that a serving HSS cannot be found in either section 110 or section 112.


In block 420, the serving HSS identification data is obtained. In one embodiment, the SLF 104 acquires the serving HSS identification data associated with the E.164 number from database 108.


In block 422, the serving HSS identification data (e.g., HSS identifier) is sent to the querying entity. In one embodiment, after finding a match from either section 110 or section 112, SLF 104 transmits the HSS identification data associated with the E.164 number to I-CSCF 102 via a response message 325.


In block 424, the serving HSS is queried. In one embodiment, I-CSCF 102 uses the HSS identification data to query the appropriate HSS of HSS 1061 . . . n to obtain the identity of a serving S-CSCF. The method 400 then ends.


In yet another embodiment, it may be desirable for an ENUM translation (i.e., E.164-to-URI translation) to be performed prior to performing SLF processing. In this case, an SLF function of the present subject matter is adapted to query an ENUM function prior to performing SLF processing. For example, an SLF function may receive a query message from a CSCF node that includes a numeric subscriber identifier (e.g., E.164 formatted telephone number). The SLF is adapted to generate an ENUM query that includes the numeric subscriber identifier, and transmit the query to an ENUM function. The SLF receives an ENUM response message, which includes a subscriber URI, from the ENUM function and is adapted to use perform SLF processing (such as that described previously in this disclosure) using the returned subscriber URI.


As described above, the present subject matter relates to various methods, systems, and computer program products for identifying a serving HSS in a communications network. For example, by employing the range-based and exceptions-based data hierarchy, the present subject matter is able to facilitate the storage of data in a highly efficient manner. Thus, more data may be stored in a fewer number of entries in a database structure. Similarly, by using the associated two-stage lookup procedure, high-speed data searches for identifying a subscriber's serving HSS in an IMS network may be realized.


It will be understood that various details of the subject matter described herein may be changed without departing from the scope of the subject matter described herein. Furthermore, the foregoing description is for the purpose of illustration only, and not for the purpose of limitation, as the subject matter described herein is defined by the claims as set forth hereinafter.

Claims
  • 1. A method for identifying a serving home subscriber server (HSS) in a communications network, comprising: obtaining a subscriber identifier from a message;accessing an exceptions-based data structure contained in a database to locate an exceptions-based database entry associated with the subscriber identifier;accessing a range-based data structure contained in the database to locate a range-based database entry associated with the subscriber identifier if the exceptions-based data structure does not contain the exceptions-based database entry; andacquiring serving HSS identification data corresponding to the located database entry,wherein at least one entry in the exceptions-based data structure is indexed by a subscriber identifier within a range corresponding to an entry in the range-based data structure but includes different serving HSS information from the entry in the range-based data structure.
  • 2. The method of claim 1 wherein the message comprises a query message requesting the serving HSS data associated with the subscriber identifier.
  • 3. The method of claim 2 wherein the query message is sent by an interrogating call session control function (I-CSCF).
  • 4. The method of claim 2 wherein the query message is a Diameter query message.
  • 5. The method of claim 3 comprising providing the serving HSS data to the I-CSCF.
  • 6. The method of claim 5 comprising querying an HSS indicated in the serving HSS data to obtain serving call session control function (S-CSCF) data associated with the subscriber identifier.
  • 7. The method of claim 1 wherein at least one entry of the range-based data structure specifies a numeric range.
  • 8. The method of claim 1 wherein at least one entry of the range-based data structure specifies an alphabetic range.
  • 9. The method of claim 1 wherein at least one entry in the exceptions-based data structure is indexed by a subscriber identifier that is outside of all of the ranges corresponding to entries in the range-based data structure.
  • 10. The method of claim 1 wherein obtaining a subscriber identifier comprises initiating a reverse E.164 numbering (ENUM) lookup and obtaining a reverse ENUM response containing an E.164 subscriber number that is used as the subscriber identifier.
  • 11. The method of claim 1 wherein obtaining a subscriber identifier comprises initiating an ENUM lookup and obtaining an ENUM response containing a URI that is used as the subscriber identifier.
  • 12. A non-transitory computer-readable medium having stored thereon a data structure for associating subscriber identifiers with IP Multimedia Subsystem (IMS) home subscription servers (HSSs), comprising: (a) a range-based data structure that associates serving HSSs with ranges of subscriber identifier values; and(b) an exceptions-based data structure that associates serving HSSs with individual subscriber identifier values, the exceptions-based data structure including entries that are exceptions to entries in the range-based data structure, wherein at least one entry in the exceptions-based data structure is indexed by a subscriber identifier within a range corresponding to an entry in the range-based data structure but includes different serving HSS information from the entry in the range-based data structure.
  • 13. The computer-readable medium of claim 12 wherein the ranges of subscriber identifier values include a range comprising numeric values.
  • 14. The computer-readable medium of claim 12 wherein the ranges of subscriber identifier values include a range comprising alphabetic values.
  • 15. The computer-readable medium of claim 12 wherein at least one entry in the exceptions-based data structure is indexed by a subscriber identifier that is outside of the ranges of subscriber identifier values.
  • 16. The computer readable medium of claim 12 wherein the message comprises a query message requesting the serving HSS data associated with the subscriber identifier and wherein the query message is a Diameter query message.
  • 17. A system for identifying a serving home subscriber server (HSS) in a communications network, comprising: a database including a range-based data structure that includes range-based entries corresponding to subscriber identifier ranges and serving HSS data respectively associated with the range-based entries and an exceptions-based data structure that includes exceptions-based entries corresponding to subscriber identifiers that indicate exceptions to the entries corresponding to the subscriber identifier ranges and serving HSS data respectively associated with the exceptions-based entries, wherein at least one entry in the exceptions-based data structure is indexed by a subscriber identifier within a range corresponding to an entry in the range-based data structure but includes different serving HSS information from the entry in the range-based data structure; anda subscriber locator function (SLF) for accessing the exceptions-based data structure to locate an exceptions-based entry associated with a subscriber identifier, accessing the range-based data structure to locate a range-based database entry associated with the subscriber identifier if the exceptions-based data structure does not contain the exceptions-based database entry, and acquiring serving HSS data corresponding to the located database entry.
  • 18. The system of claim 17 comprising a requesting interrogating call session control function (I-CSCF), wherein the SLF is adapted to provide the serving HSS data to the requesting I-CSCF.
  • 19. The system of claim 18 wherein the I-CSCF is adapted to query an HSS indicated in the serving HSS data to obtain serving call session control function (S-CSCF) data associated with the subscriber identifier.
  • 20. The system of claim 18 wherein the I-CSCF is adapted to send a Diameter query message to the SLF.
  • 21. The system of claim 17 wherein the entries of the range-based data structure include ranges comprising numeric values.
  • 22. The system of claim 17 wherein the entries of the range-based data structure include ranges comprising alphabetic values.
  • 23. The system of claim 17 wherein at least one entry in the exceptions-based data structure is indexed by a subscriber identifier that is outside of all of the ranges corresponding to entries in the range-based data structure.
  • 24. The system of claim 17 wherein the SLF is adapted to initiate a reverse E.164 number (ENUM) lookup and to obtain a reverse ENUM response containing an E.164 subscriber number that is used as the subscriber identifier.
  • 25. The system of claim 17 wherein the SLF is adapted to initiate an ENUM lookup and to obtain an ENUM response containing a URI that is used as the subscriber identifier.
RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Patent Application Ser. No. 60/934,703, filed Jun. 15, 2007; the disclosure of which is incorporated herein by reference in its entirety.

US Referenced Citations (171)
Number Name Date Kind
4310727 Lawser Jan 1982 A
4754479 Bicknell et al. Jun 1988 A
5089954 Rago Feb 1992 A
5237604 Ryan Aug 1993 A
5247571 Kay et al. Sep 1993 A
5251248 Tokunaga et al. Oct 1993 A
5400390 Salin Mar 1995 A
5422941 Hasenauer et al. Jun 1995 A
5423068 Hecker Jun 1995 A
5430719 Weisser, Jr. Jul 1995 A
5442683 Hoogeveen Aug 1995 A
5455855 Hokari Oct 1995 A
5457736 Cain et al. Oct 1995 A
5481603 Gutierrez et al. Jan 1996 A
5502726 Fischer Mar 1996 A
5504804 Widmark et al. Apr 1996 A
5526400 Nguyen Jun 1996 A
5579372 Åström Nov 1996 A
5590398 Matthews Dec 1996 A
5594942 Antic et al. Jan 1997 A
5623532 Houde et al. Apr 1997 A
5689548 Maupin et al. Nov 1997 A
5706286 Reiman et al. Jan 1998 A
5711002 Foti Jan 1998 A
5819178 Cropper Oct 1998 A
5822694 Coombes et al. Oct 1998 A
5832382 Alperovich Nov 1998 A
5854982 Chambers et al. Dec 1998 A
5878347 Joensuu et al. Mar 1999 A
5878348 Foti Mar 1999 A
5890063 Mills Mar 1999 A
5953662 Lindquist et al. Sep 1999 A
5953663 Maupin et al. Sep 1999 A
5983217 Khosravi-Sichannie et al. Nov 1999 A
6006098 Rathnasabapathy et al. Dec 1999 A
6011803 Bicknell et al. Jan 2000 A
6014557 Morton et al. Jan 2000 A
6018657 Kennedy, III et al. Jan 2000 A
6038456 Colby et al. Mar 2000 A
6049714 Patel Apr 2000 A
6097960 Rathnasabapathy et al. Aug 2000 A
6115463 Coulombe et al. Sep 2000 A
H1895 Hoffpauir et al. Oct 2000 H
6128377 Sonnenberg Oct 2000 A
6137806 Martinez Oct 2000 A
6138016 Kulkarni et al. Oct 2000 A
6138017 Price et al. Oct 2000 A
6138023 Agarwal et al. Oct 2000 A
6144857 Price et al. Nov 2000 A
6148204 Urs et al. Nov 2000 A
6192242 Rollender Feb 2001 B1
6205210 Rainey et al. Mar 2001 B1
6226517 Britt et al. May 2001 B1
6236365 LeBlanc et al. May 2001 B1
6263212 Ross et al. Jul 2001 B1
6308075 Irten et al. Oct 2001 B1
6327350 Spangler et al. Dec 2001 B1
6377674 Chong et al. Apr 2002 B1
6411632 Lindgren et al. Jun 2002 B2
6424832 Britt et al. Jul 2002 B1
6434144 Romanov Aug 2002 B1
6463055 Lupien et al. Oct 2002 B1
6505046 Baker Jan 2003 B1
6515997 Feltner et al. Feb 2003 B1
6535746 Yu et al. Mar 2003 B1
6539077 Ranalli et al. Mar 2003 B1
6560216 McNiff et al. May 2003 B1
6560456 Lohtia et al. May 2003 B1
6574481 Rathnasabapathy et al. Jun 2003 B1
6577723 Mooney Jun 2003 B1
6594258 Larson et al. Jul 2003 B1
6611516 Pirkola et al. Aug 2003 B1
6643511 Rune et al. Nov 2003 B1
6662017 McCann et al. Dec 2003 B2
6683881 Mijares et al. Jan 2004 B1
6684073 Joss et al. Jan 2004 B1
6731926 Link, II et al. May 2004 B1
6738636 Lielbriedis May 2004 B2
6748057 Ranalli et al. Jun 2004 B2
6775737 Warkhede et al. Aug 2004 B1
6795701 Baker et al. Sep 2004 B1
6836477 West, Jr. et al. Dec 2004 B1
6839421 Esparza et al. Jan 2005 B2
6871070 Ejzak Mar 2005 B2
6885872 McCann et al. Apr 2005 B2
6917612 Foti et al. Jul 2005 B2
6950441 Kaczmarczyk et al. Sep 2005 B1
6993038 McCann Jan 2006 B2
7010002 Chow et al. Mar 2006 B2
7027582 Khello et al. Apr 2006 B2
7035239 McCann et al. Apr 2006 B2
7039037 Wang et al. May 2006 B2
7054652 Luis May 2006 B2
7079524 Bantukul et al. Jul 2006 B2
7079853 Rathnasabapathy et al. Jul 2006 B2
7092505 Allison et al. Aug 2006 B2
7170982 Li et al. Jan 2007 B2
7221952 Cho et al. May 2007 B2
7274683 Segal Sep 2007 B2
7286839 McCann et al. Oct 2007 B2
7366530 McCann et al. Apr 2008 B2
7397773 Qu et al. Jul 2008 B2
7551608 Roy Jun 2009 B1
7715367 Nishida et al. May 2010 B2
7746864 Asawa et al. Jun 2010 B1
7751386 Kobayashi et al. Jul 2010 B2
7787445 Marsico Aug 2010 B2
7889716 Tejani et al. Feb 2011 B2
20010029182 McCann et al. Oct 2001 A1
20010030957 McCann et al. Oct 2001 A1
20010040957 McCann et al. Nov 2001 A1
20020054674 Chang et al. May 2002 A1
20020147845 Sanchez-Herrero et al. Oct 2002 A1
20020173320 Aitken et al. Nov 2002 A1
20020176382 Madour et al. Nov 2002 A1
20030007482 Khello et al. Jan 2003 A1
20030026289 Mukherjee et al. Feb 2003 A1
20030054844 Anvekar et al. Mar 2003 A1
20030065788 Salomaki Apr 2003 A1
20030081754 Esparza et al. May 2003 A1
20030109271 Lewis et al. Jun 2003 A1
20030128693 Segal Jul 2003 A1
20030193967 Fenton et al. Oct 2003 A1
20030227899 McCann Dec 2003 A1
20040003114 Adamczyk Jan 2004 A1
20040076126 Qu et al. Apr 2004 A1
20040081206 Allison et al. Apr 2004 A1
20040082332 McCann et al. Apr 2004 A1
20040087300 Lewis May 2004 A1
20040125925 Marsot Jul 2004 A1
20040141488 Kim et al. Jul 2004 A1
20040142707 Midkiff et al. Jul 2004 A1
20040198351 Knotts Oct 2004 A1
20040202187 Kelly et al. Oct 2004 A1
20040243596 Lillqvist et al. Dec 2004 A1
20040246965 Westman et al. Dec 2004 A1
20050119017 Lovell, Jr. et al. Jun 2005 A1
20050182781 Bouvet Aug 2005 A1
20050286531 Tuohino et al. Dec 2005 A1
20060002308 Na et al. Jan 2006 A1
20060034256 Addagatla et al. Feb 2006 A1
20060067338 Hua et al. Mar 2006 A1
20060072726 Klein et al. Apr 2006 A1
20060095575 Sureka et al. May 2006 A1
20060098621 Plata et al. May 2006 A1
20060136557 Schaedler et al. Jun 2006 A1
20060165068 Dalton et al. Jul 2006 A1
20060245573 Sheth et al. Nov 2006 A1
20060293021 Zhou Dec 2006 A1
20070019625 Ramachandran et al. Jan 2007 A1
20070061397 Gregorat et al. Mar 2007 A1
20070104184 Ku et al. May 2007 A1
20070115934 Dauster et al. May 2007 A1
20070116250 Stafford May 2007 A1
20070133574 Tejani et al. Jun 2007 A1
20070203909 Marathe Aug 2007 A1
20070286379 Wiatrowski et al. Dec 2007 A1
20080114862 Moghaddam et al. May 2008 A1
20080130856 Ku et al. Jun 2008 A1
20080247526 Qiu et al. Oct 2008 A1
20080258575 Sadiku et al. Oct 2008 A1
20080281975 Qiu et al. Nov 2008 A1
20090022146 Huang Jan 2009 A1
20090043704 Bantukul et al. Feb 2009 A1
20090103707 McGary et al. Apr 2009 A1
20090227276 Agarwal et al. Sep 2009 A1
20090264112 De Zen et al. Oct 2009 A1
20100020728 Jefferson et al. Jan 2010 A1
20100285800 McCann Nov 2010 A1
20110116382 McCann et al. May 2011 A1
20110126277 McCann et al. May 2011 A1
Foreign Referenced Citations (36)
Number Date Country
0 512 962 Nov 1992 EP
0 936 825 Aug 1999 EP
0 944 276 Sep 1999 EP
1 285 545 Oct 2004 EP
1 558 004 Jul 2005 EP
1 742 452 Jan 2007 EP
2000-0037801 Jul 2000 KR
2003-0040291 May 2003 KR
10-2004-0107271 Dec 2004 KR
WO 9512292 May 1995 WO
WO 9611557 Apr 1996 WO
WO 9733441 Sep 1997 WO
WO 9818269 Apr 1998 WO
WO 9856195 Dec 1998 WO
WO 9911087 Mar 1999 WO
WO 9957926 Nov 1999 WO
WO 0016583 Mar 2000 WO
WO 0060821 Oct 2000 WO
WO 0147297 Jun 2001 WO
WO 0154444 Jul 2001 WO
WO 03005664 Jan 2003 WO
WO 03021982 Mar 2003 WO
WO 03105382 Dec 2003 WO
WO 2004006534 Jan 2004 WO
WO 20040087686 Jan 2004 WO
WO 2004075507 Sep 2004 WO
WO 2004102345 Nov 2004 WO
WO 2005013538 Feb 2005 WO
WO 2006072473 Jul 2006 WO
WO 2007045991 Apr 2007 WO
WO 2007064943 Jun 2007 WO
WO 2007092205 Aug 2007 WO
WO 2007146257 Dec 2007 WO
WO 2008011101 Jan 2008 WO
WO 2009023573 Feb 2009 WO
WO 2009070179 Jun 2009 WO
Related Publications (1)
Number Date Country
20080311917 A1 Dec 2008 US
Provisional Applications (1)
Number Date Country
60934703 Jun 2007 US