The invention relates to telecommunication. More particularly, this invention relates to a technique for seamlessly integrating voice and data telecommunication services across a licensed wireless system and an unlicensed wireless system.
In order to gain access to an unlicensed mobile access (UMA) network (UMAN), a UMA subscriber has to be authenticated. For instance, the subscriber may be required to have a UMA subscription. Also, the subscriber has to access UMA through a valid access point and the access point has to be located within a valid Public Land Mobile Access Network (PLMN).
While the UMA/3GPP specification provides a method to enable basic authentication for UMA subscribers to the service, mobile network operators typically require finer grain control over the access that their customers have to the network, providing an opportunity for the operator to differentiate the services offered over the UMA interface. A typical example might be that of restricting a subscriber to a single WLAN zone or allowing the subscriber to register from a hotspot as well. Therefore, there is a need in the art for a system to authenticate and authorize a UMA subscriber for having access to the UMAN.
Some embodiments provide a method of performing discovery transactions for the UMAN. The method sends a discovery request message from the MS to the UNC. The method also sends a set of attributes from the UNC to an authentication server. The method further authenticates the discovery request by the authentication server by utilizing information in a set of databases. The method sends the result of the authentication from the authentication server to the UNC.
Some embodiments provide a method of performing discovery transactions for the UMAN. The method sends a discovery request message from the MS to the UNC. The method also sends a set of attributes from the UNC to an authentication server. The method further authenticates the discovery request by the authentication server by utilizing information in a set of databases. The method sends the result of the authentication from the authentication server to the UNC.
Some embodiments provide a system for authorization and authentication of an unlicensed mobile access (UMA) subscriber. The system includes an UMA network controller (UNC) which is communicatively coupled to a licensed wireless communication system. The system also includes an access point (AP) that serves a wireless local area network (WLAN). In some embodiments, the UNC and the AP are connected through a broadband access network. The system further includes a mobile station (MS) that is communicatively coupled to the AP and the licensed wireless communication system. The system also includes an authentication server that is communicatively coupled to the UNC. The authentication server authenticates a UMA subscriber for accessing an unlicensed mobile access network (UMAN) that includes the UNC and the AP.
Some embodiments define an interface between the UNC and the authentication server uses Remote Access Dial-In User Service (RADIUS) protocol. In some embodiments, the authentication server is communicatively coupled to the licensed wireless communication system Home Location Register (HLR) and a set of databases that contain authorization, authentication, and accounting data. In some embodiments, the authentication server is an Authorization, Authentication, and Accounting (AAA) server.
The novel features of the invention are set forth in the appended claims. However, for purpose of explanation, several embodiments of the invention are set forth in the following figures.
In the following detailed description of the invention, numerous details, examples, and embodiments of the invention are set forth and described. However, it will be clear and apparent to one skilled in the art that the invention is not limited to the embodiments set forth and that the invention may be practiced without some of the specific details and examples discussed.
Some embodiments provide a system for authorization and authentication of an unlicensed mobile access (UMA) subscriber. The system includes an UMA network controller (UNC) which is communicatively coupled to a licensed wireless communication system. The system also includes an access point (AP) that serves a wireless local area network (WLAN). In some embodiments, the UNC and the AP are connected through a broadband access network. The system further includes a mobile station (MS) that is communicatively coupled to the AP and the licensed wireless communication system. The system also includes an authentication server that is communicatively coupled to the UNC. The authentication server authenticates a UMA subscriber for accessing an unlicensed mobile access network (UMAN) that includes the UNC and the AP.
Some embodiments define an interface between the UNC and the authentication server uses Remote Access Dial-In User Service (RADIUS) protocol. In some embodiments, the authentication server is communicatively coupled to the licensed wireless communication system Home Location Register (HLR) and a set of databases that contain authorization, authentication, and accounting data. In some embodiments, the authentication server is an Authorization, Authentication, and Accounting (AAA) server.
Several more detailed embodiments of the invention are described in sections below. Sections I to VI describe several more detailed embodiments that utilize Authorization, Authentication, and Accounting (AAA) servers to interface between the Unlicensed Mobile Access Network and Unlicensed Mobile Access database servers. Specifically, Section I describes the overall system in which some embodiments are incorporated. The discussion in Section I is followed by a discussion of the architecture and protocol structure of the interface, referred to as the S1 interface, between an Unlicensed Mobile Access Network Controller and the AAA in Section II. Next, Section III describes the use of the RADIUS protocol over the S1 interface. Section IV then describes the S1 service access control procedures. Next, Section V presents the configuration parameters that apply to the S1 interface. An alternative embodiment that also utilizes AAA servers is identified in Section VI. Specifically, this section describes the differences between this alternative embodiment and the embodiments described in the prior sections.
Next, Section VII describes another alternative embodiment that uses the Unlicensed Mobile Access Service Control Protocol for application layer signaling. Last, Section VIII defines the abbreviations used in this application.
I. Overall System
The Home Location Register (HLR) 150, Serving General Packet Radio Service (GPRS) Switch Node (SGSN) 155, Mobile Switching Center (MSC) 160, and the Mobile Core 165 are part of a licensed wireless communication system. An example of such a system is the Global System for Mobile Communication (GSM) Access Network, or GERAN. As shown in
The Mobile Station 105 is a UMA-enabled mobile station. The MS is typically a handset device with dual mode GSM/UMA support where the mode is provided using an IP over 802.11 wireless local area network (WLAN) air interface. The MS is referred to as the UMA client device; however, the device may be a mobile station or a fixed UMA device. Also, some embodiments may support Bluetooth for the WLAN air interface. The Access Point 110 (also referred to as Indoor Base Station or Unlicensed Base Station) is a standard, commercially available WLAN Access Point used to forward IP frames from the 802.11 (or Bluetooth) air interface into a public or private IP network 115.
In some embodiments, the UNC 120 includes several components: (1) a standard Security Gateway 125, (2) a Standard Media & Signaling Gateway 130, and (3) an IP Network Controller (INC) 135. The Security Gateway 125 and the Media and Signaling Gateway 130 are commercially available standard gateway systems. In some embodiments, the INC 135 includes one or more identical servers (for redundancy) and at least a pair of Load Balancing Routers (for providing system load balancing). In some embodiments the INC 135 includes UMA control functions and packet gateway functions. The UMA control functions provide the overall management, control, and signaling component of the UMAN architecture. The packet gateway functions provide the conversion of GPRS frames received from the MS into the format required to attach to the SGSN.
As shown in
Finally, the “S1” interface is the interface between the UNC 120 and the AAA server 140 that is described in detail in the embodiments disclosed below. The S1 interface provides an open, standard-based authorization and authentication interface from the INC to an AAA server. As such, the S1 interface provides a substantially greater degree of control over the services that may be offered by the operator to a UMA subscriber and leverages database systems 145 (such as the policy management and subscriber database systems) already in place in the network rather than forcing the need for a new information technology (IT) system. In some embodiments, the AAA server 140 that supports S1 interface and the AAA server 170 that supports Wm interface may be the same. In some embodiments, more than one AAA servers may be used to support the S1 interface. Similarly, in some embodiments, more than one AAA servers may be used to support the Wm interface.
In some embodiments, the INC 135 receives Up session specific data from the MS 105 as part of the UMA registration process. Specifically, the INC 135 receives the subscribers International Mobile Subscriber Identity (IMSI), the Media Access Control (MAC) address and service set identifier (SSID) of the serving WLAN access point as well as the Cell Global Information (CGI) from the GSM cell site upon which the MS 105 is already camped. The INC 135 then passes this information to the AAA server 140 through a standard RADIUS interface to allow the AAA server 140 to perform a number of service management policies against it.
For instance, the AAA server 140 can use the information provided to verify the subscriber has a UMA subscription, is trying to access UMA through a valid access point 110 and is using an access point 110 located within a valid Public Land Mobile Network (PLMN). Further, the AAA server 140 can obtain the location of the access point 110 from operator databases 145 (typically, the AAA accesses the databases 145 through a set of UMA database servers which are not shown in
Some embodiments of the invention are implemented in a UMA compliant system. A UMA compliant system is a system that complies with most or all of the requirements set forth in the UMA standards elaborated in the following UMA and 3rd Generation Partnership Project (3GPP) documents.
The RADIUS protocol runs over UDP transport. The default UDP port numbers are specified in Sub-section V.A below. The S1 interface uses standard UDP procedures. One RADIUS message is encapsulated in each UDP packet.
In some embodiments, the S1 interface supports IPv4 (version 4 of the Internet Protocol). Some other embodiments may support other versions of Internet Protocol such as IPv6 (e.g., along with IPv6 support on the other UMAN interfaces). Some embodiments utilize IPSec to secure communication between the INC and AAA; e.g., via IPSec endpoint devices that are external to the INC and AAA servers.
III. Use of Radius Protocol
A. Overview
The S1 interface uses a subset of the RADIUS protocol functions. To establish the S1 interface, procedures are also added to the RADIUS protocol. Examples of such procedures include procedures that add transaction management capabilities. One such transaction management capability is RADIUS transaction timeout and retry. Another example is management of communication between an INC and multiple AAA servers (e.g., load balancing of requests to multiple AAA servers). Several examples of the use of the RADIUS protocol over the S1 interface are given below with reference to the current version of the RADIUS protocol functions that are defined in RFC 2865: “Remote Authentication Dial In User Service (RADIUS)”, June 2000 (Hereinafter referred to as [RFC 2865]). A person of ordinary skill in the art will realize that as the RADIUS protocol may be modified in the future or be replaced by a similar protocol, the invention can be practiced by utilizing the newer versions of the protocol.
B. Packet Types and Attributes
Table 1 identifies the RADIUS packet types used by the S1 interface protocol of some embodiments.
Each of these packet types is further described in sub-sections below. Table 2 identifies the RADIUS attributes used by the S1 interface of some embodiments.
Each of these attributes is further described in sub-sections below.
1. Access-Request
This RADIUS packet type may be sent by the INC to the AAA. A summary of the Access-Request packet format is shown below. The fields are transmitted from left to right.
The following is a description of different fields:
Table 3 lists the attributes that may be present in this packet type. Table 3 has a reference to a note. The note that is referred to in the table is the note that is listed immediately below the table. This is true about several tables that appear below. Specifically, the notes that are referred to in each particular table below are the notes that appear immediately below that particular table.
Table 4 identifies which attributes are present in the Access-Request packet for each of the URR-Transaction-Type values. ‘M’ indicates a mandatory attribute, ‘O’ indicates an optional attribute.
2. Access-Accept
This RADIUS packet type may be sent by the AAA to the INC. A summary of the Access-Accept packet format is shown below. The fields are transmitted from left to right.
The following is a description of different fields:
Table 5 identifies the attributes that may be present in this packet type:
Table 6 identifies which attributes are present in the Access-Accept packet for each of the URR-Transaction-Type values. ‘M’ indicates a mandatory attribute, ‘O’ indicates an optional attribute.
3. Access-Reject
This RADIUS packet type may be sent by the AAA to the INC. A summary of the Access-Reject packet format is shown below. The fields are transmitted from left to right.
Table 7 identifies the attributes that may be present in this packet type:
Table 8 identifies which attributes are present in the Access-Accept packet for each of the URR-Transaction-Type values. ‘M’ indicates a mandatory attribute, ‘O’ indicates an optional attribute.
C. Vendor-Specific-Attributes
The coding of the RADIUS vendor-specific attribute follows the guidelines defined in [RFC 2865, section 5.26]. The following diagram illustrates the format.
1. VSAs Based on UMA Information Elements
Table 9 lists the VSAs that are based on UMA parameters. Refer to the UMA reference sections for the vendor-type, vendor-length and attribute specific values.
2. Other Vendor Specific Attributes (VSAs)
In addition to the vendor-specific attributes that are based on UMA information elements, the following vendor-specific attributes are defined to implement the S1 interface. Although, specific values are given for each field, a person of ordinary skill in the art will realize that other values can be used without deviation from teaching of the invention.
a) User-Private-IPv4-Address
This attribute indicates the source IPv4 address that was received by the INC in the URR_C message form the UMA device that triggered the access request. This attribute may be used by the AAA server (or other system) to verify that the UMA device uses the same IMSI in the URR message as was used in the Up interface IPSec tunnel establishment; i.e., by comparing the IMSI that is assigned the private IP address by the AAA during tunnel establishment and the IMSI that is present in the S1 access request for the same private IP address.
b) URR-Transaction-Type
This attribute indicates the type of URR transaction associated with the S1 transaction. Note that there is always an S1 response message from the AAA, even for the S1 transactions associated with the URR Deregister and Register-Update transactions which are unidirectional in UMA (i.e., no response message defined in UMA).
c) Deregister-Info
This attribute provides additional information regarding the reason the INC is sending the Deregister notification to the AAA server; i.e., in addition to the information in the UMA-Register-Reject-Cause.
d) User-Public-IPv4-Address
This attribute indicates the source IPv4 public address that was received by the AAA from the UNC Security Gateway during the establishment of the Up interface IPSec tunnel.
e) Max-Concurrent-Calls
This attribute indicates the maximum number of concurrent calls per access point and per broadband line IP address that shall be allowed by the INC. Note that the broadband line IP address is received in the User-Public-IPv4-Address attribute.
D. Procedures
1. Deriving the AAA Address
The INC is configured with the IP addresses for the set of AAA servers. In some embodiments, the DNS is not used to resolve the AAA address. In some other embodiments, the DNS may also be used to resolve the AAA address.
2. RADIUS Transaction Procedures
a) Initialization
Initially, all AAA servers are marked as ‘available’ in the INC.
b) New Transaction
When an INC client has an S1 message to send for a new transaction that is triggered by the receipt of a URR message, it does the following:
1. If no AAA servers are available, then the INC responds to the URR request as follows:
2. If one or more AAA servers is available, then the INC starts transaction timer Ts1.
3. The INC selects a AAA server based on its load balancing algorithm and taking into account “unavailable” servers.
4. The INC sends the RADIUS Access-Request message to the selected AAA server and starts request timer Ts2. Possible outcomes are:
5. If no AAA servers are available or timer Ts1 has expired, then the INC responds to the URR request as described in step 1.
The AAA server processes the received message and responds as described in Section IV below.
c) AAA Server Load Balancing
Several AAA server load balancing procedures (e.g., round robin) are used by the INC.
d) AAA Server Availability Management
These procedures are used to move AAA servers from the ‘unavailable’ state to the ‘available’ state. For instance, the INC may periodically check the status of the AAA servers that were marked as ‘unavailable’ and if a server responds, the INC will mark it as ‘available’.
This section describes the basic service access control procedures that are defined for the INC and AAA server. The detailed descriptions of the AAA processing (e.g., the description of configuration parameters) are provided as examples of possible AAA procedures. Additional AAA-controlled procedures may be supported, as long as they do not conflict with the procedures described below.
A. Discovery Transaction
1. Discovery Transaction Initiation by the INC
This procedure is triggered when the INC receives a URR DISCOVERY REQUEST message and the S1 interface is enabled. The INC sends the set of attributes specified in Sub-section III.B.1 to the AAA in the RADIUS Access-Request message using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Discovery’. Attributes that are optional are included if received in the URR DISCOVERY REQUEST message.
2. Discovery Transaction Processing by the AAA
The AAA performs one or more of the following procedures when it receives the Access-Request message from the INC with the URR-Transaction-Type attribute set to ‘Discovery’ (i.e., starting from the first procedure, then branching as necessary):
1. Discovery: Check if IMSI is authorized
2. Discovery: Check if AP is authorized
3. Send Discovery Accept
4. Send Discovery Reject
(a) Discovery: Check if IMSI is Authorized
If the ‘Check IMSI on Discovery’ configuration parameter has value ‘No’, then the AAA continues with the next procedure.
If the ‘Check IMSI on Discovery’ configuration parameter has value ‘Yes’, then the AAA retrieves the subscriber record from the UMA Database Server.
(b) Discovery: Check if AP is Authorized
If the ‘Check AP on Discovery’ configuration parameter has value ‘No’, then the AAA continues with the next procedure.
If the ‘Check AP on Discovery’ configuration parameter has value ‘Yes’, but the UMA-Classmark attribute indicates that the UMA device is not an MS (i.e., ‘no radio’ in the TURA field), then the AAA continues with the next procedure.
Otherwise, the AAA retrieves the subscriber record from the UMA Database Server (if not yet retrieved).
(c) Send Discovery Accept Procedure
The AAA sends the RADIUS Access-Accept message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Discovery’. The AAA then considers the transaction complete.
(d) Send Discovery Reject Procedure
The AAA sends the RADIUS Access-Reject message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Discovery’. The AAA then considers the transaction complete.
3. Discovery Response Processing by the INC
a) INC Receives Discovery Accept from AAA
When the INC receives the RADIUS Access-Accept (Discovery) message from the AAA, it considers the S1 transaction complete and continues with its processing of the URR DISCOVERY REQUEST.
b) INC Receives Discovery Reject from AAA
When the INC receives the RADIUS Access-Reject (Discovery) message from the AAA, it considers the S1 transaction complete, and relays the information to the MS in the URR DISCOVERY REJECT message. If no UMA-TU3902-Timer attribute is received from the AAA and the reject cause is ‘Network Congestion’, the INC assigns an appropriate value and includes it in the TU3902 IE.
B. Register-Request Transaction
1. Register-Request Transaction Initiation by the INC
This procedure is triggered when the INC receives a URR REGISTER REQUEST message and the S1 interface is enabled.
The INC sends the set of attributes specified in Sub-section III.B.1 to the AAA in the RADIUS Access-Request message using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Register-Request’. Attributes that are optional are included if received in the URR REGISTER REQUEST message.
2. Register-Request Transaction Processing by the AAA
The AAA performs one or more of the following procedures when it receives the Access-Request message from the INC with the URR-Transaction-Type attribute set to ‘Register-Request’ (i.e., starting from the first procedure, then branching as necessary):
1. Register-Request: Check if IMSI is authorized
2. Register-Request: Check if AP is authorized
3. Register-Request: Set Termination-Action
4. Send Register Accept
5. Send Register Reject
a) Register-Request: Check if IMSI is Authorized
If the ‘Check IMSI on Register-Request’ configuration parameter has value ‘No’, then the AAA continues with the next procedure.
If the ‘Check IMSI on Register-Request’ configuration parameter has value ‘Yes’, then the AAA retrieves the subscriber record from the UMA Database Server.
b) Register-Request: Check if AP is Authorized
If the ‘Check AP on Register-Request’ configuration parameter has value ‘No’, then the AAA continues with the next procedure.
Otherwise, the AAA retrieves the subscriber record from the UMA Database Server (if not yet retrieved).
c) Register-Request: Set Termination-Action
If the ‘Request Deregistration Notification’ configuration parameter has value ‘No’, then the AAA sets the Termination-Action attribute to the value ‘0’ (default) and continues with the Send Register Accept procedure.
If the ‘Request Deregistration Notification’ configuration parameter has value ‘Yes’, then the AAA sets the Termination-Action attribute to the value ‘1’ (send new Access-Request). In this case, the AAA server may also record the subscriber's current location in a subscriber location register or other table, allowing the service provider to maintain a view of how many subscribers are operating in UMA mode, on which serving UNC, and at what AP location. The AAA then continues with the Send Register Accept procedure.
d) Send Register Accept Procedure
The AAA sends the RADIUS Access-Accept message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Register-Request’. The AAA then considers the transaction complete.
e) Send Register Reject Procedure
The AAA sends the RADIUS Access-Reject message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Register-Request’. The AAA then considers the transaction complete.
3. Register-Request Response Processing by the INC
a) INC Receives Register Accept from AAA
When the INC receives the RADIUS Access-Accept (Register-Request) message from the AAA, it considers the S1 transaction complete and continues with its processing of the URR REGISTER REQUEST, including:
If the Termination-Action attribute is set to the value ‘1’ then the INC marks the subscriber record to indicate that AAA notification is required on deregistration.
b) INC Receives Register Reject from AAA
When the INC receives the RADIUS Access-Reject (Register-Request) message from the AAA, it considers the S1 transaction complete, and relays the information to the MS in the URR REGISTER REJECT message.
C. Register-Update Transaction
1. Register-Update Transaction Initiation by the INC
This procedure is triggered when the INC receives a URR REGISTER UPDATE UPLINK message and the S1 interface is enabled.
The INC sends the set of attributes specified in Sub-section III.B.1 to the AAA in the RADIUS Access-Request message using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Register-Update’. Attributes that are optional are included if received in the URR REGISTER UPDATE UPLINK message.
2. Register-Update Transaction Processing by the AAA
The AAA performs one or more of the following procedures when it receives the Access-Request message from the INC with the URR-Transaction-Type attribute set to ‘Register-Update’ (i.e., starting from the first procedure, then branching as necessary):
1. Register-Update: Check if AP is authorized
2. Send Register Update Accept
3. Send Register Update Reject
a) Register-Update: Check if AP is Authorized
If the ‘Check AP on Register-Update’ configuration parameter has value ‘No’, then the AAA continues with the Send Register Update Accept procedure.
If the ‘Check AP on Register-Update’ configuration parameter has value ‘Yes’, then the AAA retrieves the subscriber record from the UMA Database Server.
b) Send Register Update Accept Procedure
The AAA sends the RADIUS Access-Accept message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Register-Update’. The AAA then considers the transaction complete.
c) Send Register Update Reject Procedure
The AAA sends the RADIUS Access-Reject message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Register-Update’. The AAA then considers the transaction complete.
3. Register-Update Response Processing by the INC
a) INC Receives Register Update Accept from AAA
When the INC receives the RADIUS Access-Accept (Register-Update) message from the AAA, it considers the S1 transaction complete.
b) INC Receives Register Update Reject from AAA
When the INC receives the RADIUS Access-Reject (Register-Update) message from the AAA, it considers the S1 transaction complete. The INC then initiates the URR Deregistration procedure using the cause provided by the AAA server (which may result in an S1 Deregistration transaction, depending on the setting of the Termination-Action attribute for the subscriber).
D. Deregister Transaction
1. Deregister Transaction Initiation by the INC
This procedure is triggered when the INC deregisters an MS which has been marked with a Termination-Action attribute set to the value ‘1’ (send new Access-Request). The deregistration may be INC-initiated or MS-initiated.
The INC sends the set of attributes specified in Sub-section III.B.1 to the AAA in the RADIUS Access-Request message using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Deregister’.
2. Deregister Transaction Processing by the AAA
The AAA performs one or more of the following procedures when it receives the Access-Request message from the INC with the URR-Transaction-Type attribute set to ‘Deregister’ (i.e., starting from the first procedure, then branching as necessary):
1. Deregister: Update subscriber location register
2. Send Deregister Accept
3. Send Deregister Reject
a) Deregister: Update Subscriber Location Register
The AAA server may update the record of the subscriber's current location in a subscriber location register or other table, allowing the service provider to maintain a view of how many subscribers are operating in UMA mode, on which serving UNC, and at what AP location.
b) Send Deregister Accept Procedure
The AAA sends the RADIUS Access-Accept message to the requesting INC using the procedures described in Sub-section III.D. The URR-Transaction-Type attribute is set to ‘Deregister’. The AAA then considers the transaction complete.
c) Send Deregister Refect Procedure
The Send Deregister Reject procedure is not allowed.
3. Deregister Response Processing by the INC
INC Receives Deregister Accept from AAA
When the INC receives the RADIUS Access-Accept (Deregister) message from the AAA, it considers the S1 transaction complete.
A. INC Parameters
The Table 10 summarizes the configuration parameters that apply to the S1 interface at the INC.
B. AAA Parameters
The Table 11 summarizes the configuration parameters that apply to the S1 interface and associated processing at the AAA.
Some embodiments use modified versions of the protocols described above for the S1 interface between the INC and the AAA server. These embodiments are described in this section. A person of ordinary skill in the art will realize that the same technique described in this section can be utilized to add, modify, or delete features of the protocol described in Sections I-V above. The exemplary embodiment described in this section is similar to the embodiments described in Sections I-V above, except that this embodiment does not utilize RADIUS State and Termination-Action attributes. Also, this embodiment does not use the vendor specific attributes “Deregister-Info” and “User-Public-IPv4-Address”. The following sub-sections highlight these differences. For simplicity, features that are similar to features described in Sections I-V are not repeated in these sub-sections. Several additional features are also described.
A. Use of RADIUS Protocol
1. S1 Interface RADIUS Attributes
Table 12 identifies the attributes used by this embodiment. This table is similar to Table 2 above, except that State and Termination-Action attributes are not used.
2. Access-Request Attributes
Table 13 identifies the Access-Request attributes of this embodiment. These attributes are similar to Table 3 attributes, except that RADIUS attribute “State” and VSA attribute “Deregister-Info” are not used.
3. Attribute Presence in Access-Request Packet
Table 14 identifies the attribute presence in Access-Request packet. This Table is similar to Table 4 above, except that RADIUS attribute “State” and VSA attribute “Deregister-Info” are not used. Also, the table does not have a Deregister column.
4. Access-Accept Attributes
Table 15 identifies Access-Accept attributes of this embodiment. This table is similar to Table 5 above, except that RADIUS attribute “State” and VSA attribute “User-Public-IPV4-Address” are not used.
5. Attribute Presence in Access-Accept Packet
Table 16 identifies attribute presence in Access-Accept packet for this embodiment. This table is similar to Table 6 above, except that RADIUS attributes “State” and “Termination-Action” are not present. Also, the VSA attribute “User-Public-IPV4-Address” is not used. Also, the table does not have a Deregister column.
6. Access-Reject Attributes
Table 17 identifies Access-Reject attributes of this embodiment. This table is similar to Table 7 above, except that RADIUS attribute “State” is not used.
7. Attribute Presence in Access-Reject Packet
Table 18 identifies attribute presence in Access-Reject packet for this embodiment. This table is similar to Table 8 above, except that RADIUS attribute “State” is not used and there is no Deregister column.
8. Other VSAs
These VSAs are similar to the VSAs described in Sub-section III.C.2 above with the following exceptions. 1) This embodiment does not use Deregister-Info and User-Public-IPv4-Address VSAs. 2) The URR=Transaction-Type does not include Deregister. 3) This embodiment has the extra “Location-Key” VSA.
a) URR-Transaction-Type
The Vendor specific attribute “URR-Transaction-Type” of this embodiment has only three options (0, 1, and 2) as shown below.
b) Location-Key
This attribute is a key or index to a UMA database record. It is provided by the AAA server to the INC, and by the INC to the GMLC (via the MSC). This allows the GMLC to query the UMA database for location information, for example.
9. Use of RADIUS Protocol—Procedures
This embodiment uses the same procedures as described in Sub-section III.D above, except the following. As shown below, for a new RADIUS transaction procedure 1) there is no S1 message to signal AAA that the MS has been deregistered and 2) the INC does not raise an alarm if the Ts2 timer expires.
a) Deriving the AAA Address
The INC is configured with the IP addresses for the set of AAA servers. DNS is not used to resolve the AAA address.
b) RADIUS Transaction Procedures
The RADIUS transaction procedures are 1) initialization, 2) new transaction, 3) AAA server load balancing, and 4) AAA server availability management. The initialization and new transaction procedures will now be described by reference to the process 400 illustrated in
(1) Initialization
As shown in
(2) New Transaction
When the INC receives a URR message (at 410), the INC performs the following operations in order to send an S1 message for a new transaction. If (at 415) the process determines that a AAA server is available, the process 400 proceeds to 465 which is described below. Otherwise, the process determines (at 420) whether an URR-Discovery-Request was received. If no URR-Discovery-Request was received, the process proceeds to 435 that is described below. Otherwise, the INC responds (at 425) by sending an URR-Discovery-Reject with Reject Cause set to ‘Network Congestion’. Next (at 430), the INC chooses a value for the timer TU3902 (which is returned to the MS) to achieve an acceptable delay before the MS next attempts discovery with the INC. Some embodiments have two different TU3902 timer values that can be configured in the INC; one for “normal” congestion and another to handle this case. The process 400 then proceeds back to 410.
If (after 420) the process proceeds to 435, the process checks whether an URR-Register-Request was received by the INC. If no URR-Register-Request was received, the process proceeds to 450 that is described below. Otherwise, the INC sends (at 440) an URR-Register-Reject with Reject Cause set to ‘Network Congestion’. Next (at 445), the INC chooses a value for the timer TU3907 (which is returned to the MS) to achieve an acceptable delay before the MS next attempts to register with the INC. The process 400 then proceeds back to 410.
If (after 435) the process proceeds to 450, the process checks whether an URR-Register-Update-Uplink was received by the INC. If no URR-Register-Update-Uplink was received, the process proceeds back to 410. Otherwise, the INC sends (at 455) an URR-Deregister with Reject Cause set to ‘Network Congestion’. Next (at 460), the INC chooses a value for the timer TU3907 (which is returned to the MS) to achieve an acceptable delay before the MS next attempts to register with the INC. The process 400 then proceeds back to 410.
If (after 415) the process 400 determines that a AAA server is available, the INC starts (at 465) the transaction timer Ts1. Next (at 470), the INC selects a AAA server based on its load balancing algorithm and taking into account “unavailable” servers. Next (at 472), the INC sends the RADIUS Access-Request message to the selected AAA server and starts request timer Ts2.
Next (at 474), the process 400 checks whether the INC has received a valid response message. If a valid response was received, the transaction is complete and the INC processes (at 478) the response per Section IV above (subject to the differences described in Sub-section VI.B. below). The process then proceeds back to 410 which was described above. Otherwise, the process checks (at 476) whether the timer Ts2 has expired. If the timer has not expired, the process proceeds back to 474. Otherwise, the INC retries (at 480) the request for one time. The retried message contains the same ID and Request Authenticator.
Next (at 482), the process checks whether the INC has received a valid response message. If the INC has received a valid response message, the transaction is complete and the INC processes (at 484) the response per Section IV above (subject to the differences described in Sub-section VI.B. below). The process then proceeds back to 410 which was described above. Otherwise, the process checks (at 486) whether the timer Ts2 has expired. If the timer has not expired, the process returns to 482. Otherwise, the INC marks (at 490) the AAA server as ‘unavailable’.
Next (at 495), the process checks whether no AAA servers are available or timer Ts1 has expired. If no AAA servers are available or timer Ts1 has expired, the process proceeds to 415 which was described above. Otherwise, the process proceeds to 470 to select another AAA server. The AAA server processes the received message and responds as described in Section IV above (subject to the differences described in Sub-section VI.B. below).
(3) AAA Server Load Balancing
Several AAA server load balancing procedures (e.g., round robin) are used by the INC.
(4) AAA Server Availability Management
These procedures are used to move AAA servers from the ‘unavailable’ state to the ‘available’ state. For instance, the INC may periodically check the status of the AAA servers that were marked as ‘unavailable’ and if a server responds, the INC will mark it as ‘available’.
B. S1 Service Access Control Procedures
This embodiment uses the same S1 Service Access Control procedures as described in Section IV above with the following exceptions. As shown below, in this embodiment, the AAA does not perform the “Set Termination-Action” during Register-Request transaction processing. Consequently, the INC processing does not include processing for Termination-Action attribute. Also, the INC does not store UMA-Geographical-Location. In some variation of this embodiment, the AAA server may have access to the logic and data to perform the UNC selection process or to perform UMA redirection process, as described below.
1. Discovery Transaction
The discovery transaction of this embodiment is similar to the embodiment described in Section III above. Except that in some variation of this embodiment, the AAA server may have access to the logic and data to perform the UNC selection process; e.g., based on the GSM CGI received or the location of the access point, the AAA server is able to determine the Default UNC and SEGW to assign to the MS. In this case, the AAA returns the UNC/SEGW address information in the Access-Accept.
2. Register-Request Transaction Processing by the AAA
The AAA performs one or more of the following procedures when it receives the Access-Request message from the INC with the URR-Transaction-Type attribute set to ‘Register-Request’ (i.e., starting from the first procedure, then branching as necessary):
1. Register-Request: Check if IMSI is authorized
2. Register-Request: Check if AP is authorized
3. Send Register Accept
4. Send Register Reject
3. Send Register Accept Procedure
The AAA sends the RADIUS Access-Accept message to the requesting INC using the procedures described in Sub-section III.D. The AAA may include attributes retrieved from the UMA Database, as defined in Sub-section IIIB.2. The URR-Transaction-Type attribute is set to ‘Register-Request’. The AAA then considers the transaction complete.
4. INC Receives Register Accept from AAA
When the INC receives the RADIUS Access-Accept (Register-Request) message from the AAA, it considers the S1 transaction complete and continues with its processing of the URR REGISTER REQUEST, including:
5. Variations for Register-Request Transaction
In some variations of this embodiment, the AAA server may have access to the logic and data to perform the UMA redirection process; e.g., based on the GSM CGI received or the location of the access point, the AAA server is able to determine the Serving UNC and SEGW to which the MS should be redirected. In this case, the AAA returns the UNC/SEGW address information in the Access-Reject message (with UMA-Register-Reject-Cause=Redirection).
The AAA server may have access to the logic and data to perform the GSM blacklist processing; e.g., based on the GSM CGI received, the AAA server is able to determine that UMA access is not allowed in the area. In this case, the AAA returns the blacklist information in the Access-Reject message (with UMA-Register-Reject-Cause=Location Not Allowed).
6. Send Register Update Accept Procedure
The AAA sends the RADIUS Access-Accept message to the requesting INC using the procedures described in Sub-section III.D. The AAA may include attributes retrieved from the UMA Database, as defined in Sub-section III.B. 1. The URR-Transaction-Type attribute is set to ‘Register-Update’. The AAA then considers the transaction complete.
7. INC Receives Register Update Accept from AAA
When the INC receives the RADIUS Access-Accept (Register-Update) message from the AAA, it considers the S1 transaction complete.
8. INC Receives Register Update Reject from AAA
When the INC receives the RADIUS Access-Reject (Register-Update) message from the AAA, it considers the S1 transaction complete. The INC then initiates the URR Deregistration procedure using the cause provided by the AAA server.
9. Variations to Register-Update Transaction
The AAA server may have access to the logic and data to perform the UMA redirection process; e.g., based on the GSM CGI received or the location of the access point, the AAA server is able to determine the Serving UNC and SEGW to which the MS should be redirected. In this case, the AAA returns the UNC/SEGW address information in the Access-Reject message (with UMA-Register-Reject-Cause=Redirection).
The AAA server may have access to the logic and data to perform the GSM blacklist processing; e.g., based on the GSM CGI received, the AAA server is able to determine that UMA access is not allowed in the area. In this case, the AAA returns the blacklist information in the Access-Reject message (with UMA-Register-Reject-Cause=Location Not Allowed).
10. S1 Accounting Procedures
RADIUS accounting-based procedures for S1 (e.g., to support AAA-based session control) may be defined in some variations of this embodiment.
C. Configuration Parameters
AAA Parameters
Table 19 summarizes the configuration parameters that apply to the S1 interface and associated processing at the AAA. This table is similar to Table 11, except this table does not include a Request Deregistration Notification parameter.
These embodiments utilize UMA Service Control Protocol (USCP), defined below, for application layer signaling. The following sub-sections define the architecture and the protocols used in this embodiment.
A. Architecture
The overall system in which these embodiments are implemented is similar to the system illustrated in
The S1 protocol structure is illustrated in
The default USCP UDP port number is specified in Sub-section VII.D.1 below. The S1 interface uses standard UDP procedures. Exactly one USCP message is encapsulated in each UDP packet. The S1 interface supports IPv4. Some embodiments utilize IPSec to secure communication between the INC and SPS.
B. UMA Service Control Protocol (USCP)
1. Overview
The UMA Service Control Protocol exposes the INC internal interface to an external, UDP-based interface, and adds the following transaction management capabilities:
The INC internal interface is hereinafter referred to as the R10 interface. The R10 messages in effect convey the same information as the messages (such as UMA RR request messages received from the mobile station) received through the Up interface.
2. Messages
The USCP protocol message format consists of the following elements:
Table 20 identifies the USCP message types utilized by this embodiment.
Table 21 identifies the USCP parameter types utilized by this embodiment.
a) USC REQUEST
This message may be sent by the INC to the SPS or by the SPS to the INC. Table 22 identifies USC REQUEST message attributes.
b) USC RESPONSE
This message may be sent by the INC to the SPS or by the SPS to the INC, in response to a USC REQUEST. Table 23 identifies the USC RESPONSE message attributes.
c) TEST REQUEST
This message may be sent by the INC to the SPS or by the SPS to the INC. Table 24 identifies TEST REQUEST message attributes.
d) TEST RESPONSE
This message may be sent by the INC to the SPS or by the SPS to the INC, in response to a TEST REQUEST. Table 25 identifies TEST RESPONSE message attributes.
3. Parameters
a) R10 Message
The R10 Message IE contents are illustrated below:
The R10 Version is set to the value 1.
The R10 Message Value contains the R10 message structure, including the R10 message identifier, length and parameters.
b) USCP Server State
The USCP Server State IE is illustrated below:
Table 26 identifies the USCP Server State values.
All other values shall be treated as ‘Server is in maintenance busy state’
4. Procedures
a) Deriving the SPS Address
The INC is configured with either FQDNs or IP addresses (but not both) for the primary and secondary SPS. If FQDNs are configured, the INC uses DNS to resolve the SPS address.
b) USC Request Procedures
The USCP client is normally the INC but may be the SPS for certain R10 messages; likewise, either INC or SPS could be the USCP server.
c) INC Procedures
When the INC has a R10 message to send (i.e., for a new transaction), it does the following:
d) SPS Procedures
When the SPS receives a USC-REQUEST message, it does the following:
D. R10 Protocol
1. Overview
The UMA Service Control Protocol effectively externalizes the INC R10 internal interface and protocol. The R10 protocol allows the INC to get UMA service control instructions and data (e.g., for discovery and registration handling purposes) from the external SPS, rather than locally.
2. Messages
The R10 messages include the R10 message identifier, length and parameters. In general, the R10 messages use a fixed size structure, where all parameters are always included (in the order listed) and have fixed sizes. However, the first octet of each “optional” parameter represents the length of the significant portion of the remaining parameter contents; i.e., if the first octet is zero, then the remaining octets in the parameter should be disregarded. Table 27 lists the R10 message identifier values.
a) R10 DISCOVERY REQUEST
This message may be sent by the INC to the SPS. Table 28 identifies R10 DISCOVERY REQUEST attributes.
b) R10 DISCOVERY ACCEPT
This message may be sent by the SPS to the INC. Table 29 identifies R10 DISCOVERY ACCEPT message attributes.
c) R10 DISCOVERY REJECT
This message may be sent by the SPS to the INC. Table 30 identifies R10 DISCOVERY REJECT message attributes.
d) R10 REGISTER REQUEST
This message may be sent by the INC to the SPS. Table 31 identifies R10 REGISTER REQUEST message attributes.
e) R10 REGISTER ACCEPT
This message may be sent by the SPS to the INC. Table 32 identifies R10 REGISTER ACCEPT message attributes.
f) R10 REGISTER REDIRECT
This message may be sent by the SPS to the INC. Table 33 identifies R10 REGISTER REDIRECT message attributes.
g) R10 REGISTER REJECT
This message may be sent by the SPS to the INC. Table 34 identifies R10 REGISTER REJECT message attributes.
h) R10 REGISTER UPDATE UPLINK
This message may be sent by the INC to the SPS. Table 35 identifies R10 REGISTER UPDATE UPLINK message attributes.
i) R10 REGISTER UPDATE DOWNLINK
This message may be sent by the SPS to the INC. Table 36 identifies R10 REGISTER UPDATE DOWNLINK message attributes.
j) R10 DEREGISTER FROM INC
This message may be sent by the INC to the SPS. Table 37 identifies R10 DEREGISTER FROM INC message attributes.
k) R10 DEREGISTER FROM SPS
This message may be sent by the SPS to the INC. Table 38 identifies R10 DEREGISTER FROM SPS message attributes.
3. Parameters
Each mandatory parameter in the R10 messages follows the format of the UMA counterpart, but without the tag and length fields. Each optional parameter in the R10 messages also follows the format of the UMA counterpart. However, unless otherwise specified, all optional parameters are always included (in the order listed) and have fixed sizes.
Also unless otherwise specified, the first octet of each “optional” parameter represents the length of the significant portion of the remaining parameter contents; i.e., if the first octet is zero, then the remaining octets in the parameter should be disregarded. Otherwise, the parameter types follow the definitions in [UMA P] and the reference is to the appropriate section in [UMA P]. Exceptions to the UMA alignment include the Data Block parameter and the Billing CI and LAI parameters, whose use is described in the message definitions.
4. Procedures
a) R10 Discovery Procedures
(1) R10 Discovery Request Initiation by the INC
This procedure is triggered when the INC receives a URR DISCOVERY REQUEST message and the S1 interface is enabled. The INC relays the contents of the URR DISCOVERY REQUEST message to the SPS in the R10 Discovery Request message using the USCP procedures described in section b) (i.e., in the USC Request message).
(2) R10 Discovery Request Processing by the SPS
The SPS performs one or more of the following procedures when it receives the R10 DISCOVERY REQUEST message from the INC (i.e., starting from the first procedure, then branching as necessary):
1. Discovery UMA Release Indicator check
2. Discovery UMA Classmark check
3. Discovery IMSI Allowed check
4. Discovery IMSI Assigned UNC check
5. Discovery GSM Coverage check
6. Discovery GSM-to-UMA mapping
7. Discovery redirection check
8. Send Discovery Accept
9. Send Discovery Reject
(3) Discovery UMA Release Indicator Check Procedure
No checking of the UMA Release Indicator is done by the SPS; any necessary screening occurs at the INC. In some variation of this embodiment SPS does the checking of the UMA Release Indicator. The SPS continues with the next procedure.
(4) Discovery UMA Classmark Check Procedure
No checking of the UMA Classmark is done by the SPS. In some variations of this embodiment the SPS may check UMA Classmark. The SPS continues with the next procedure.
(5) Discovery IMSI Allowed Check Procedure
If the ‘Check IMSI on Discovery’ configuration parameter has value ‘No’, then the SPS continues with the next procedure.
If the ‘Check IMSI on Discovery’ configuration parameter has value ‘Yes’, then the SPS retrieves the subscriber record from the UMA Database Server.
(6) Discovery IMSI Assigned UNC Check Procedure
If the subscriber record retrieved in the Discovery IMSI Allowed Check procedure contains UNC assignment information then the SPS uses this information and continues with the Discovery Redirection Check procedure.
(7) Discovery GSM Coverage Check Procedure
The SPS checks the GSM Coverage Indicator, LAI, RAC and CI parameters:
(8) Discovery GSM-to-UMA Mapping Procedure
The SPS queries the GSM-to-UMA Mapping Table with the inputs from the preceding Discovery GSM Coverage Check procedure. The result of the query should be the UNC assignment information (i.e., main and alternate UNC and SGW IP addresses or FQDNs). In this case, the SPS continues with the Discovery Redirection Check procedure.
The GSM-to-UMA mapping logic must be prepared to find multiple records matching the query inputs and select one (e.g., if multiple INCs serve a particular LAC and there is no static assignment of cells within the LAC to INCs, then this could be based on load balancing of subscribers to the set of found INCs). If mapping is not successful, then the SPS sets the Discovery Reject Cause to ‘Unspecified’ and continues with the Send Discovery Reject procedure.
(9) Discovery Redirection Check Procedure
If the ‘Check Discovery Redirection’ configuration parameter has value ‘No’ or the SPS did not receive the Register Reject Cause parameter from the INC, then the SPS continues with the Send Discovery Accept procedure.
If the ‘Check Discovery Redirection’ configuration parameter has value ‘Yes’ and the SPS received the Register Reject Cause parameter from the INC, then the SPS proceeds as follows:
(10) Send Discovery Accept Procedure
The SPS sends the R10 Discovery Accept message to the requesting INC using the USCP procedures described in section b) (i.e., in the USC Response message), including the selected UNC and SGW information (i.e., either IP addresses or FQDNs). The SPS then considers the transaction complete.
(11) Send Discovery Reject Procedure
The SPS sends the R10 Discovery Reject message to the requesting INC using the USCP procedures described in section b) (i.e., in the USC Response message), including the Discovery Reject Cause (i.e., either ‘unspecified’ or ‘IMSI not allowed’). The SPS then considers the transaction complete.
(12) R10 Discovery Response Processing by the INC
When the INC receives the R10 Discovery Accept message from the SPS, it relays the information to the MS in the URR DISCOVERY ACCEPT message and considers the transaction complete. When the INC receives the R10 Discovery Reject message from the SPS, it relays the information to the MS in the URR DISCOVERY REJECT message and considers the transaction complete.
b) Abnormal Cases
(1) S1 Communication Error
The INC uses the USC layer to send the request to the SPS. The USC layer handles retries and timeouts and signals the INC in the case of S1 communication error. The INC sends a URR DISCOVERY REJECT message to the MS with the Discovery Reject Cause set to ‘Unspecified’ and considers the transaction complete.
(2) UNC Congestion
The SPS signals congestion by sending a USC RESPONSE message to the INC and including the USCP Server State parameter set to the value ‘Server is in overload state’. The INC sends a URR DISCOVERY REJECT message to the MS with the Discovery Reject Cause set to ‘Network Congestion’ and considers the transaction complete. Note: The TU3902 timer value (included in URR DISCOVERY REJECT) is part of the INC configuration data, not related to the S1 interface.
c) R10 Registration Procedures
(1) R10 Register Request Initiation by the INC
This procedure is triggered when the INC receives a URR REGISTER REQUEST message and the S1 interface is enabled. The INC relays the contents of the URR REGISTER REQUEST message to the SPS in the R10 Register Request message using the USCP procedures described in section b) (i.e., in the USC Request message).
(2) R10 Register Request Processing by the SPS
The SPS performs one or more of the following procedures when it receives the R10 REGISTER REQUEST message from the INC:
1. Register UMA Release Indicator check
2. Register UMA Classmark check
3. Register GSM RR State check
4. Register IMSI allowed check
5. Register GSM CGI Blacklist check
6. Register AP Blacklist check
7. Register GSM Coverage check
8. Register GSM-to-UMA mapping
9. Register redirection check
10. Send Register Accept
11. Send Register Redirect
12. Send Register Reject
(3) Register UMA Release Indicator Check Procedure
No checking of the UMA Release Indicator is done by the SPS; any necessary screening occurs at the INC. The SPS continues with the next procedure. In some variations of this embodiment the SPS may check the UMA Release Indicator.
(4) Register UMA Classmark Check Procedure
No checking of the UMA Classmark is done by the SPS.
This may change in a future version of the S1 protocol spec.
The SPS continues with the next procedure.
(5) Register GSM RR State Check Procedure
No checking of the GSM RR State is done by the SPS.
This may change in a future version of the S1 protocol spec.
The SPS continues with the next procedure.
(6) Register No GSM Coverage Check Procedure
If the ‘Special Handling of No GSM Coverage on Registration’ configuration parameter has value ‘No’, then the SPS continues with the next procedure.
If the ‘Special Handling of No GSM Coverage on Registration’ configuration parameter has value ‘Yes’, then the SPS retrieves the subscriber record from the UMA Database Server.
(7) Register IMSI Allowed Check Procedure
If the ‘Check IMSI on Registration’ configuration parameter has value ‘No’, then the SPS continues with the next procedure.
If the ‘Check IMSI on Registration’ configuration parameter has value ‘Yes’, then the SPS retrieves the subscriber record from the UMA Database Server.
(8) Register GSM CGI Blacklist Check Procedure
If the ‘Check GSM CGI Blacklist on Registration’ configuration parameter has value ‘No’, then the SPS continues with the next procedure.
If the ‘Check GSM CGI Blacklist on Registration’ configuration parameter has value ‘Yes’, then:
(9) Register AP Blacklist Check Procedure
If the ‘Check AP Blacklist on Registration’ configuration parameter has value ‘No’, then the SPS continues with the next procedure.
If the ‘Check AP Blacklist on Registration’ configuration parameter has value ‘Yes’, then:
(10) Register AP Check Procedure
If the AP Radio Identity parameter is not included in the URR REGISTER REQUEST message, then the SPS continues with the next procedure.
If the ‘Check IMSI on Registration’ configuration parameter has value ‘Yes’, then the SPS retrieves the subscriber record from the UMA Database Server.
If the subscriber record retrieved in the Discovery IMSI Allowed Check procedure contains UNC assignment information then the SPS uses this information and continues with the Discovery Redirection Check procedure.
(11) Register GSM Coverage Check Procedure
The SPS checks the GSM Coverage Indicator, LAI, RAC and CI parameters:
(12) Register GSM-to-UMA Mapping Procedure
The SPS queries the GSM-to-UMA Mapping Table with the inputs from the preceding Discovery GSM Coverage Check procedure.
The result of the query should be the UNC assignment information (i.e., main and alternate UNC and SGW IP addresses or FQDNs). In this case, the SPS continues with the Discovery Redirection Check procedure.
Note that the GSM-to-UMA mapping logic must be prepared to find multiple records matching the query inputs and select one (e.g., if multiple INCs serve a particular LAC and there is no static assignment of cells within the LAC to INCs, then this could be based on load balancing of subscribers to the set of found INCs).
If mapping is not successful, then the SPS sets the Discovery Reject Cause to ‘Unspecified’ and continues with the Send Discovery Reject procedure.
(13) Register Redirection Check Procedure
If the ‘Check Discovery Redirection’ configuration parameter has value ‘No’ or the SPS did not receive the Register Reject Cause parameter from the INC, then the SPS continues with the Send Discovery Accept procedure.
If the ‘Check Discovery Redirection’ configuration parameter has value ‘Yes’ and the SPS received the Register Reject Cause parameter from the INC, then the SPS proceeds as follows:
(14) Send Register Accept Procedure
The SPS sends the R10 Discovery Accept message to the requesting INC using the USCP procedures described in section b) (i.e., in the USC Response message), including the selected UNC and SGW information (i.e., either IP addresses or FQDNs). The SPS then considers the transaction complete.
(15) Send Register Reject Procedure
The SPS sends the R10 Discovery Reject message to the requesting INC using the USCP procedures described in section b) (i.e., in the USC Response message), including the Discovery Reject Cause. If the Discovery Reject Cause is ‘Network Congestion’ then the SPS also includes the TU3902 configuration parameter value. The SPS then considers the transaction complete.
(16) R10 Register Response Processing by the INC
When the INC receives the R10 Discovery Accept message from the SPS, it relays the information to the MS in the URR DISCOVERY ACCEPT message and considers the transaction complete. When the INC receives the R10 Discovery Reject message from the SPS, it relays the information to the MS in the URR DISCOVERY REJECT message and considers the transaction complete.
d) Abnormal Cases
(1) Unspecified UNC Error
The INC sends a URR DISCOVERY REJECT message to the MS with the Discovery Reject Cause set to ‘Unspecified’ and considers the transaction complete.
(2) UNC Congestion
The INC sends a URR DISCOVERY REJECT message to the MS with the Discovery Reject Cause set to ‘Unspecified’ and considers the transaction complete.
E. Configuration Parameters
1. INC Parameters
Table 39 summarizes the configuration parameters that apply to the S1 interface at the INC.
2. SPS Parameters
Table 40 summarizes the configuration parameters that apply to the S1 interface at the SPS.
VIII. Definitions and Abbreviations
The following is a list of abbreviations used:
While the invention has been described with reference to numerous specific details, one of ordinary skill in the art will recognize that the invention can be embodied in other specific forms without departing from the spirit of the invention. For instance, protocols other than RADIUS or USCP may be used. Also, the attributes values (e.g., the Vendor-Specific attributes, VSAs), length of the fields, type codes, default port values, and other similar values may be changed. Also, the specific sequencing of procedures described and their associated attributes may be modified. Thus, one of ordinary skill in the art would understand that the invention is not to be limited by the foregoing illustrative details, but rather is to be defined by the appended claims.
This application claims the benefit of U.S. Provisional Application 60/649,977, entitled “Circuit Switched Services Interface for a Licensed Wireless Communication System Using an Unlicensed Wireless Communication System,” filed Feb. 4, 2005, which is herein incorporated by reference. This application also claims the benefit of U.S. Provisional Application 60/722,936, entitled “Circuit Switched Services Interface for a Licensed Wireless Communication System Using an Unlicensed Wireless Communication,” filed Sep. 29, 2005, which is herein incorporated by reference. This application is also continuation in part of U.S. patent application Ser. No. 10/688,470, entitled “Apparatus and Method for Extending the Coverage Area of a Licensed Wireless Communication System using an Unlicensed Wireless Communication system,” filed Oct. 17, 2003 now U.S. Pat. No. 7,127,250 and U.S. patent application Ser. No. 11/129,134, entitled “Messaging in an Unlicensed Mobile Access Telecommunications System,” filed May 12, 2005. The content of both applications is herein incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
5101501 | Gilhousen et al. | Mar 1992 | A |
5109528 | Uddenfeldt | Apr 1992 | A |
5226045 | Chuang | Jul 1993 | A |
5235632 | Raith | Aug 1993 | A |
5260944 | Tomabechi | Nov 1993 | A |
5260988 | Schellinger et al. | Nov 1993 | A |
5267261 | Blakeney, II et al. | Nov 1993 | A |
5367558 | Gillig et al. | Nov 1994 | A |
5390233 | Jensen et al. | Feb 1995 | A |
5392331 | Patsiokas et al. | Feb 1995 | A |
5406615 | Miller et al. | Apr 1995 | A |
5428601 | Owen | Jun 1995 | A |
5442680 | Schellinger et al. | Aug 1995 | A |
5445619 | Burns | Aug 1995 | A |
5448619 | Evans et al. | Sep 1995 | A |
5507035 | Bantz et al. | Apr 1996 | A |
5533027 | Akerberg et al. | Jul 1996 | A |
5594782 | Zicker et al. | Jan 1997 | A |
5610969 | McHenry | Mar 1997 | A |
5634193 | Ghisler | May 1997 | A |
5640414 | Blakeney, II et al. | Jun 1997 | A |
5659598 | Byrne | Aug 1997 | A |
5659878 | Uchida et al. | Aug 1997 | A |
5664005 | Emery et al. | Sep 1997 | A |
5673307 | Holland et al. | Sep 1997 | A |
5675629 | Raffel et al. | Oct 1997 | A |
5724658 | Hasan | Mar 1998 | A |
5732076 | Ketseoglou et al. | Mar 1998 | A |
5745852 | Khan et al. | Apr 1998 | A |
5758281 | Emery et al. | May 1998 | A |
5796727 | Harrison et al. | Aug 1998 | A |
5796729 | Greaney et al. | Aug 1998 | A |
5815525 | Smith | Sep 1998 | A |
5818820 | Anderson et al. | Oct 1998 | A |
5822681 | Chang et al. | Oct 1998 | A |
5825759 | Liu | Oct 1998 | A |
5852767 | Sugita | Dec 1998 | A |
5870677 | Takahashi et al. | Feb 1999 | A |
5887020 | Smith et al. | Mar 1999 | A |
5887260 | Nakata | Mar 1999 | A |
5890055 | Chu et al. | Mar 1999 | A |
5890064 | Widergen et al. | Mar 1999 | A |
5903834 | Wallstedt et al. | May 1999 | A |
5915224 | Jonsson | Jun 1999 | A |
5926760 | Khan et al. | Jul 1999 | A |
5936949 | Pasternak et al. | Aug 1999 | A |
5940512 | Tomoike | Aug 1999 | A |
5946622 | Bojeryd | Aug 1999 | A |
5949773 | Bhalla et al. | Sep 1999 | A |
5960341 | LeBlanc et al. | Sep 1999 | A |
5995828 | Nishida | Nov 1999 | A |
6016318 | Tomoike | Jan 2000 | A |
6035193 | Buhrmann et al. | Mar 2000 | A |
6052592 | Schellinger et al. | Apr 2000 | A |
6101176 | Honkasalo et al. | Aug 2000 | A |
6112080 | Anderson et al. | Aug 2000 | A |
6112088 | Haartsen | Aug 2000 | A |
6119000 | Stephenson et al. | Sep 2000 | A |
6130886 | Ketseoglou et al. | Oct 2000 | A |
6134227 | Magana | Oct 2000 | A |
6138019 | Trompower et al. | Oct 2000 | A |
6226515 | Pauli et al. | May 2001 | B1 |
6236852 | Veerasamy et al. | May 2001 | B1 |
6243581 | Jawanda | Jun 2001 | B1 |
6256511 | Brown | Jul 2001 | B1 |
6263211 | Brunner | Jul 2001 | B1 |
6269086 | Magana et al. | Jul 2001 | B1 |
6320873 | Nevo et al. | Nov 2001 | B1 |
6327470 | Ostling | Dec 2001 | B1 |
6359872 | Mahany et al. | Mar 2002 | B1 |
6374102 | Brachman et al. | Apr 2002 | B1 |
6381457 | Carlsson et al. | Apr 2002 | B1 |
6389059 | Smith et al. | May 2002 | B1 |
6415158 | King et al. | Jul 2002 | B1 |
6430395 | Arazi et al. | Aug 2002 | B2 |
6445921 | Bell | Sep 2002 | B1 |
6463307 | Larsson et al. | Oct 2002 | B1 |
6539237 | Sayers et al. | Mar 2003 | B1 |
6542516 | Vialen et al. | Apr 2003 | B1 |
6553219 | Vilander et al. | Apr 2003 | B1 |
6556822 | Matsumoto | Apr 2003 | B1 |
6556825 | Mansfield | Apr 2003 | B1 |
6556830 | Lenzo | Apr 2003 | B1 |
6574266 | Haartsen | Jun 2003 | B1 |
6587444 | Lenzo et al. | Jul 2003 | B1 |
6633761 | Singhal | Oct 2003 | B1 |
6643512 | Ramaswamy | Nov 2003 | B1 |
6647426 | Mohammed | Nov 2003 | B2 |
6658250 | Ganesan et al. | Dec 2003 | B1 |
6665276 | Culbertson et al. | Dec 2003 | B1 |
6675009 | Cook | Jan 2004 | B1 |
6680923 | Leon | Jan 2004 | B1 |
6708033 | Linkola et al. | Mar 2004 | B1 |
6711400 | Aura | Mar 2004 | B1 |
6766160 | Lemilainen | Jul 2004 | B1 |
6788656 | Smolentzov et al. | Sep 2004 | B1 |
6795701 | Baker et al. | Sep 2004 | B1 |
6801519 | Mangal | Oct 2004 | B1 |
6801772 | Townend et al. | Oct 2004 | B1 |
6801777 | Rusch | Oct 2004 | B2 |
6807417 | Sallinen | Oct 2004 | B2 |
6824048 | Itabashi et al. | Nov 2004 | B1 |
6826154 | Subbiah et al. | Nov 2004 | B2 |
6829227 | Pitt | Dec 2004 | B1 |
6842462 | Ramjee et al. | Jan 2005 | B1 |
6845095 | Krishnarajah et al. | Jan 2005 | B2 |
6895255 | Bridgelall | May 2005 | B1 |
6909705 | Lee et al. | Jun 2005 | B1 |
6922559 | Mohammed | Jul 2005 | B2 |
6925074 | Vikberg et al. | Aug 2005 | B1 |
6937862 | Back et al. | Aug 2005 | B2 |
6970719 | McConnell et al. | Nov 2005 | B1 |
6993359 | Nelakanti et al. | Jan 2006 | B1 |
7009952 | Razavilar et al. | Mar 2006 | B1 |
7039025 | Menon et al. | May 2006 | B1 |
7099339 | Wang et al. | Aug 2006 | B1 |
20010029186 | Canyon et al. | Oct 2001 | A1 |
20010031645 | Jarrett | Oct 2001 | A1 |
20010046860 | Lee | Nov 2001 | A1 |
20010049790 | Faccin et al. | Dec 2001 | A1 |
20020045459 | Morikawa | Apr 2002 | A1 |
20020066036 | Makineni | May 2002 | A1 |
20020075844 | Hagen | Jun 2002 | A1 |
20020082015 | Wu | Jun 2002 | A1 |
20020083344 | Vairavan | Jun 2002 | A1 |
20020085516 | Bridgelall | Jul 2002 | A1 |
20020102974 | Raith | Aug 2002 | A1 |
20020118674 | Faccin et al. | Aug 2002 | A1 |
20020131387 | Pitcher et al. | Sep 2002 | A1 |
20020132630 | Arazi et al. | Sep 2002 | A1 |
20020142761 | Wallstedt et al. | Oct 2002 | A1 |
20020147008 | Kallio | Oct 2002 | A1 |
20020147016 | Arazi et al. | Oct 2002 | A1 |
20020155829 | Proctor, Jr. et al. | Oct 2002 | A1 |
20020160811 | Jannette et al. | Oct 2002 | A1 |
20020161905 | Haverinen et al. | Oct 2002 | A1 |
20020164984 | Thakker | Nov 2002 | A1 |
20020166068 | Kilgore | Nov 2002 | A1 |
20020191575 | Kalavade et al. | Dec 2002 | A1 |
20020191596 | Moyano et al. | Dec 2002 | A1 |
20020197984 | Monin et al. | Dec 2002 | A1 |
20030007475 | Tsuda et al. | Jan 2003 | A1 |
20030031151 | Sharma et al. | Feb 2003 | A1 |
20030043773 | Chang | Mar 2003 | A1 |
20030087653 | Leung | May 2003 | A1 |
20030112789 | Heinonen | Jun 2003 | A1 |
20030119480 | Mohammed | Jun 2003 | A1 |
20030119490 | Mohammed | Jun 2003 | A1 |
20030119527 | Labun | Jun 2003 | A1 |
20030119548 | Mohammed | Jun 2003 | A1 |
20030130008 | Rajaniemi et al. | Jul 2003 | A1 |
20030139180 | McIntosh et al. | Jul 2003 | A1 |
20030142673 | Patil | Jul 2003 | A1 |
20030154306 | Perry | Aug 2003 | A1 |
20030176186 | Mohammed | Sep 2003 | A1 |
20030193952 | O'Neill | Oct 2003 | A1 |
20030210199 | Sward et al. | Nov 2003 | A1 |
20030219024 | Pumadai et al. | Nov 2003 | A1 |
20040003060 | Asoh et al. | Jan 2004 | A1 |
20040008649 | Wybenga | Jan 2004 | A1 |
20040009749 | Arazi et al. | Jan 2004 | A1 |
20040013099 | O'Neill | Jan 2004 | A1 |
20040037312 | Spear | Feb 2004 | A1 |
20040053623 | Hoff et al. | Mar 2004 | A1 |
20040068571 | Ahmavaara | Apr 2004 | A1 |
20040077355 | Krenik et al. | Apr 2004 | A1 |
20040077356 | Krenik et al. | Apr 2004 | A1 |
20040077374 | Terry | Apr 2004 | A1 |
20040116120 | Gallagher et al. | Jun 2004 | A1 |
20040147223 | Cho | Jul 2004 | A1 |
20040171378 | Rautila | Sep 2004 | A1 |
20040192211 | Gallagher et al. | Sep 2004 | A1 |
20040202132 | Heinonen | Oct 2004 | A1 |
20040203346 | Myhre et al. | Oct 2004 | A1 |
20040203737 | Myhre et al. | Oct 2004 | A1 |
20040203800 | Myhre et al. | Oct 2004 | A1 |
20040203815 | Shoemake et al. | Oct 2004 | A1 |
20050064896 | Rautiola | Mar 2005 | A1 |
20050101245 | Ahmavaara | May 2005 | A1 |
20050101329 | Gallagher | May 2005 | A1 |
20050181805 | Gallagher | Aug 2005 | A1 |
20050186948 | Gallagher | Aug 2005 | A1 |
20050198199 | Dowling | Sep 2005 | A1 |
20050207395 | Mohammed | Sep 2005 | A1 |
20050210154 | Verma et al. | Sep 2005 | A1 |
20050239441 | Eronen | Oct 2005 | A1 |
20050255879 | Shi | Nov 2005 | A1 |
20050265279 | Markovic et al. | Dec 2005 | A1 |
20050266853 | Gallagher | Dec 2005 | A1 |
20050271008 | Gallagher | Dec 2005 | A1 |
20050272424 | Gallagher | Dec 2005 | A1 |
20050272449 | Gallagher | Dec 2005 | A1 |
20060009201 | Gallagher | Jan 2006 | A1 |
20060009202 | Gallagher | Jan 2006 | A1 |
20060019656 | Gallagher | Jan 2006 | A1 |
20060019657 | Gallagher | Jan 2006 | A1 |
20060019658 | Gallagher | Jan 2006 | A1 |
20060025143 | Gallagher | Feb 2006 | A1 |
20060025144 | Gallagher | Feb 2006 | A1 |
20060025145 | Gallagher | Feb 2006 | A1 |
20060025146 | Gallagher | Feb 2006 | A1 |
20060025147 | Gallagher | Feb 2006 | A1 |
20060079258 | Gallagher | Apr 2006 | A1 |
20060079259 | Gallagher | Apr 2006 | A1 |
20060079273 | Gallagher | Apr 2006 | A1 |
20060079274 | Gallagher | Apr 2006 | A1 |
20060094431 | Saifullah et al. | May 2006 | A1 |
20060098598 | Gallagher | May 2006 | A1 |
20060172732 | Nylander et al. | Aug 2006 | A1 |
Number | Date | Country |
---|---|---|
0936777 | Aug 1999 | EP |
1207708 | Oct 2004 | EP |
2282735 | Apr 1995 | GB |
WO9204796 | Mar 1992 | WO |
WO9724004 | Jul 1997 | WO |
WO9948312 | Sep 1999 | WO |
WO9948315 | Sep 1999 | WO |
WO 0028762 | May 2000 | WO |
WO 0051387 | Aug 2000 | WO |
WO 0245456 | Jun 2002 | WO |
WO 03039009 | May 2003 | WO |
WO 03039009 | May 2003 | WO |
WO 03092312 | Nov 2003 | WO |
WO 2004002051 | Dec 2003 | WO |
WO 2004034219 | Apr 2004 | WO |
WO 2004039111 | May 2004 | WO |
WO 2005006597 | Jan 2005 | WO |
WO 2005107169 | Nov 2005 | WO |
WO 2005107297 | Nov 2005 | WO |
WO 2005114918 | Mar 2006 | WO |
Number | Date | Country | |
---|---|---|---|
20060223497 A1 | Oct 2006 | US |
Number | Date | Country | |
---|---|---|---|
60722936 | Sep 2005 | US | |
60649977 | Feb 2005 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10688470 | Oct 2003 | US |
Child | 11349024 | US | |
Parent | 11129134 | May 2005 | US |
Child | 10688470 | US |