This invention relates generally to packet data communications systems having mobile nodes and, more specifically, relates to techniques for routing data packets to a mobile node during a network initiated data session.
The following abbreviations are herewith defined for the purposes of this patent application:
Those skilled in the art should appreciate that the foregoing description of the wireless network 20 shown in
In order to provide an “Always On Service” the network 20 is required to push data to the MS 100. However, the CDMA network architecture as currently defined by 3GPP-2 does not include a capability for the wireless network 20 to push data to a MS 100 that is on an Idle state or mode. If the MS 100 is instead in the Active state, the PDSN 32 has knowledge of the location of the Ms 100 because of the RP session with the PCF 30.
However, for a MS 100 in the Idle state there is no corresponding RP session. A data session needs to be initiated by the MS 10-0 and, at present, there is no defined way for the network 20 to initiate the session set up. As such, it can be appreciated that one of the problems that arise in a network-initiated session set up is to locate the MS 100 in the network 20.
On the voice side of the network the MSC/HLR 60, 64 have exact location information for the MS 100. Thus, when a mobile terminated voice call needs to be delivered the HLR 64 is contacted to obtain the current location information, and the MS 100 is then paged efficiently by the correct group of BTSs 50. On the data side, however, the packet core network elements have data that needs to be pushed to the MS 100, but there is no interface to the HLR 64 (as can be seen in
It can be noted that even if there were an interface to the HLR 64 from the packet core network elements, the HLR 64 does not have the MS 100 location information in terms of the correct PCF 30 and PDSN 32 combination.
There has been a proposal to address this problem between the PCF 30 and the BSC 40 (using the A8 and A9 interfaces). Reference in this regard can be made to a document: 3GPP2 cdma2000 TSG-C, entitled “Mobile paging with mobile station sub-paging zone update”, Ke-Chi Jang et al. (Nortel Networks, 2003, C23-20030714-038R3). This document proposes an efficient way to enable a BS 45 to page a MS 100 in a smaller area. It is said that a registration zone is adequate for voice services, but for packet data service the BS 45 may need to track the MS 100 to a smaller sub-paging zone to achieve a more efficient dormant to active transition. To improve the paging with a smaller SPZ, it was proposed to broadcast a SPZ_ID in an overhead message. The MS 100 that supports this feature reports its location on the R-CSCH (Reverse Common Signaling Logical Channel, a logical channel that carries higher layer signaling traffic from the MS to the BS over a common physical channel) when it detects a SPZ change. The service provider configures the size of the SPZ, and all BSs 45 in the same SPZ have the same zone value. Based on the report from the MS 100, a network 20 with BSC 40 level control can page the MS 100 within the zone where the MS 100 sends the location report over the R-CSCH.
One of the problems encountered in NIDS is routing the data packets from a CN to the MS 100. If the CN, which is providing the push service, uses an IP address to route the packets, there is no guarantee that the IP address used can be mapped to the correct MS 100 as the MS 100 may be using a dynamic IP address. Also, even if the MS 100 is using a static IP address, it is possible that the MS 100 has moved, but is still in the Idle state. Therefore, the MS 100 does not yet have a mobile IP association with the HA 90.
A related problem is that the network is required to waste IP addresses by reserving them for the MS, even though the MS does not have an open session with the network.
It has been proposed to use the IP address associated with the MS 100 to route the packets. Reference in this regard can be made to a document: 3GPP2 TSG-S Meeting in San Diego, Calif., entitled “Additional Information on Network Initiated Data Sessions”, J. Jayapalan et al. (Motorola, Inc., 2003, S10-20030512-007). This proposal provides a Stage 2 call flow example of the use of NIDS for a Mobile IP call. In the example it is assumed that the mobile either has a fixed IP address, or was previously assigned an IP address from its initial session establishment and has gone idle, and that the Home Agent (HA 90) is able to associate the target IP address to the correct PDSN.
This conventional call flow example proceeds as follows:
It can be appreciated that this proposal does not solve the problems noted above, and thus an unfulfilled need still exists to enable the data side of the network 20 to efficiently route data packets to the MS 100 in the NIDS mode.
The foregoing and other problems are overcome, and other advantages are realized, in accordance with the presently preferred embodiments of these teachings.
In order to solve the problem of effectively routing the data to the correct MS this invention uses the NAI as the information for routing the packets to the MS. A new entity in the home service network, referred to as a Content Proxy Server, is defined.
When a mobile user subscribes to a service or services offered by a CN in the public network, it sends the NAI and the address of the Content Proxy Server. This can be done by using existing HTTP extension fields. The CN saves this information and later, when the it has data to send to the MS, it sends the data to the Content Proxy server in an HTTP session. The NAI of the user is included as part of the HTTP extension. The Content Proxy Server queries the profile of the user by sending a query to the home AAA server, indicating the NAI in question. Based on the response from the AAA server, the Content Proxy Server forwards the data packets to the HA, or to the home PDSN or visited PDSN.
The invention thus solves the problem of routing packets to a MS that does not have a data session, and thus an associated IP address.
This invention provides the capability to extend the network initiated data session feature for a MS that does not have a static IP address. The invention also overcomes the problem where the network has to waste IP addresses by reserving them for the MS, even though the MS does not have an open session with the network.
Disclosed is a method to operate a wireless network with a mobile station MS, as well as a wireless network and MS operate in accordance with the method. The method includes registering the MS with a correspondent node CN; sending data from the CN to a Content Proxy Server identified by the MS; and determining a current location of the MS with the Content Proxy Server, setting up a Point to Point Protocol PPP between the MS at its current location and the wireless network, and routing the data from the Content Proxy Server to the MS at its current location. Registering includes sending a Network Access Identifier NAI of the MS and an Internet Protocol IP address of the Content Proxy Server to the CN from the MS, where the data sent from the CN to the Content Proxy Server includes the NAI, and where the Content Proxy Server determines the current location of the MS by sending a query to a home Authentication, Authorization and Accounting AAA server, the query comprising the NAI.
A Content Proxy Server is also disclosed. The Content Proxy Server has a network address, a network interface and a controller coupled to the network interface for receiving and storing data intended for a MS from a CN. The Content Proxy Server operates to determine a current location of the MS and to initiate a Network Initiated Data Session NIDS for the MS at its current location. In the preferred embodiment the controller determines the current location of the MS by issuing a query to the AAA server.
In accordance with a further aspect of this invention there is a method and system to operate a wireless network with a MS. The method includes registering the MS with the CN; sending data from the CN to the Content Proxy Server identified by the MS; determining a current location of the MS with the Content Proxy Server; and initiating a Network Initiated Data Session NIDS for the MS at its current location. In response to the MS obtaining an IP address, in one embodiment the method routes data from the Content Proxy Server to the MS at its current location, and in another embodiment the MS re-registers with the CN, which sends the data to the MS at its current location.
Also disclosed is a MS operable in a wireless network that comprises a BS. The MS comprises a transmitter for sending a registration request via the BS to a CN. The wireless network further comprises or is otherwise coupled to a Content Proxy Server. The CN sends data to the Content Proxy Server that is identified by the MS when sending the registration request to the CN. The Content Proxy Server operates to determine a current location of the MS and to initiate a Network Initiated Data Session NIDS for the MS at its current location. The MS also has a receiver to receive data sourced by the CN, via the BS, at its current location.
Also disclosed is a BS operable in a wireless network that comprises a MS. The BS comprises a receiver for receiving a registration request from the MS for a CN. The wireless network further comprises or is otherwise coupled to a Content Proxy Server. The CN sends data to the Content Proxy Server that is identified by the MS when sending the registration request to the CN. The Content Proxy Server operates to determine a current location of the MS and to initiate a Network Initiated Data Session NIDS for the MS at its current location. The BS further includes a transmitter to transmit data sourced by the CN to the MS at its current location.
The foregoing and other aspects of these teachings are made more evident in the following Detailed Description of the Preferred Embodiments, when read in conjunction with the attached Drawing Figures, wherein:
By way of introduction, and referring to
The air interface standard can conform to any suitable standard or protocol, and may enable both voice and data traffic, such as data traffic enabling Internet 70 access and web page downloads. The air interface standard may compatible with a 3GPP2-compatible standard, or a code division multiple access (CDMA) air interface standard, such as one known as cdma2000, although this is not a limitation upon the practice of this invention. For example, this invention could be employed in a CDMA 2000-802.11 (WLAN) interworking scenario.
The MS 100 typically includes a control unit or control logic, such as a microcontrol unit (MCU) 120 having an output coupled to an input of a display 140 and an input coupled to an output of a keyboard or keypad 160. The MS 100 may be a handheld radiotelephone, such as a cellular telephone or a personal communicator. The MS 100 could also be contained within a card or module that is connected during use to another device. For example, the MS 100 could be contained within a PCMCIA or similar type of card or module that is installed during use within a portable data processor, such as a laptop or notebook computer, or even a computer that is wearable by the user.
The MCU 120 is assumed to include or be coupled to some type of a memory 130, including a non-volatile memory for storing an operating program and other information, as well as a volatile memory for temporarily storing required data, scratchpad memory, received packet data, packet data to be transmitted, received zone ID information, and the like. At least some of this temporary data can be stored in a buffer 130A. The operating program is assumed, for the purposes of this invention, to enable the MCU 120 to execute the software routines, layers and protocols required to implement the methods in accordance with this invention, as well as to provide a suitable user interface (UI), via display 140 and keypad 160, with a user. Although not shown, a microphone and speaker are typically provided for enabling the user to conduct voice calls in a conventional manner, via the BS 45 and the MSC 60.
The MS 100 also contains a wireless section that includes a digital signal processor (DSP) 180, or equivalent high speed processor or logic, as well as a wireless transceiver that includes a transmitter 200 and a receiver 220, both of which are coupled to an antenna 240 for communication with the network operator. At least one local oscillator, such as a frequency synthesizer (SYNTH) 260, is provided for tuning the transceiver. Data, such as digitized voice and packet data, as well as signalling messages are transmitted and received through the antenna 240.
As will be made evident below, this invention can employ a technique described in commonly assigned U.S. patent application Ser. No.: ______, filed on even date herewith, and entitled “Method and Apparatus to Provide Efficient Paging for a Network Initiated Data Session”, by Sarvesh Asthana (Attorney Docket No.: NC34708/871.0117.U1(US)). Before described the present invention in further detail, a review is herewith made of the invention described in this commonly assigned U.S. Patent Application.
In accordance with the invention disclosed in the commonly assigned U.S. Patent Application it becomes possible, from the data side of the network 20, to locate the MS 100 by a combination of BTS 50, BSC 40, PCF 30 and PDSN 32. For convenience this technique employs the already-defined identifiers for a BTS 50, or a group of BTSs 50, and the controlling BSC 40, that were referred to above as the SPZ_ID, and for the PCF 30 the already defined PZID (see, again, the above-referenced C23-20030714-038R3 document). In order to identify the position of the MS 100 in the network 20 across the PDSNs (30, 32′) the IP address of the pertinent one of the PDSNs is used as the identifier for the PDSN 32.
With regard to the invention in the commonly assigned U.S. Patent Application, a description is now made of a registration procedure on the data side of the network 20. Reference is also made to
Step 1: The MS 100 sends a Registration message to the BS 45. The sending of the Registration message is triggered by the MS 100 moving to a different SPZ_ID zone and/or a different PZID, as detected by the MS 100 from the downlink message that is broadcast to include the SPZ_ID. The Registration message includes the SPZ_ID received by the MS 100 in the received downlink message that triggered the sending of the Registration message, since it differed from a previous SPZ_ID stored in the buffer memory 130A of the MS 100. In the preferred embodiment of this invention the Registration message is sent when the MS 100 is in the Idle state.
Step 2: The BS 45 sends an A9-Update_Location message to the PCF 30. The A9-Update_Location message includes the IMSI of the MS 100 and the SPZ_ID reported by the MS 100 in the Registration message.
Step 3: The PCF 30 selects a PDSN 32 based on a suitable PDSN 32 selection algorithm and forwards the location information to the selected PDSN 32 in an A11 Update_Location message. This message includes the IMSI, SPZ_ID and PZID information for the MS 100.
Step 4: The PDSN 32 updates a user profile (UP 80A) stored in the AAA server 80 to reflect the current SPZ_ID, PZID by using a LDAP interface, or a JAVA/SQL interface to the AAA server 80 (JAVA™ is a Trademark of Sun Microsystems, Inc.) LDAP defines a standard for defining a hierarchical directory structure, and a standard interface for accessing these directories. LDAP originated from the X.500 standard. A protocol such as LDAP can be used to access an X.500 directory. It is also within the scope of this invention to use a modified RADIUS interface that includes change information to be sent asynchronously to the AAA server 80.
The AAA server 80, if this is the home AAA server 80 for the MS 100 stores the SPZ_ID, PZID and the PDSN IP address for indicating the current location of the MS 100. If the AAA server is not the home AAA server 80, i.e., it is a visited AAA server 80′, it forwards the SPZ_ID, PZID and the PDSN IP address information, along with the and identity of the MS 100 (e.g., the IMSI) to the home AAA server 80 possibly through one or more broker AAA servers 81 (see
As was noted above, in order to solve the problem of effectively routing the data to the correct MS 100 the present invention employs the NAI as information for routing the packets to the MS 100. The new entity in the home service network, referred to as the Content Proxy Server 95, is also defined.
In general, the NAI is used to address a user within a specific Internet domain. The format of the NAI is similar to that of an email address, as it contains a user portion that identifies the individual node and a realm portion that identifies an administrative domain within the Internet. The two portions are separated by an @ sign. The NAI is used for access/accounting in CDMA wireless networks, and usually takes the form of “user@realm”, “user@domain.com” or “MIN@domain.com”. Reference can be made to IS83 3GPP2 for further details related to the use of the NAI. The use of the NAI is preferred as the IMSI is more proprietary to service providers.
Described now in further detail is a procedure for setting up a subscription for a NIDS application with a CN 99, and the routing of packets to a correct PDSN 32 for setting up a PPP session with the MS 100 so that the data from the CN 99 can be delivered to the MS 100.
The service is setup between the MS 100 and a CN 99 that is advertising a push kind of service in the Internet 70. It is assumed that once the subscription has been setup the CN 99 will periodically send (push) the relevant data to the MS 100. Stock quotes, weather forecasts and traffic reports are all non-limiting examples of data that can be pushed to the MS 100 from a CN 99.
Step 1: The MS 100 sends the subscription request including the NAI of the MS 100 and the address of the Content Proxy Server 95 in the home network. The address of the Content Proxy Server 95 can be provisioned into the MS 100 by direct programming or by over the air programming, or it can be discovered by the MS 100.
Step 2: The CN 99 saves the NAI of the MS 100 and the address of the Content Proxy Server 95 with the other subscription information, and sends a subscription complete message back to the MS 100. At this time the subscription process is complete.
Referring now to
Step 1: The CN 99 sends data to the Content Proxy Server 95. The data includes the NAI of the MS 100 as an HTTP extension. As an example, a HTTP extension framework is defined in RFC 2774. It is believed that MMS currently uses HTTP extensions to communicate NAI/IMSI information.
Step 2: The Content Proxy Server 95 uses the LDAP/SQL/JAVA interface into the AAA server 80 to query the location information of the MS 100. In this embodiment the location information that is queried is that provided to the AAA server 80 in accordance with
Step 3: The AAA server returns the MS 100 location information as a location tuple in terms of the current PDSN IP address, current PZID and current SPZ_ID. It may also indicate if the MS 100 has a static IP address, as well as the IMSI of the MS 100.
Step 4: The Content Proxy Server 95 forwards the data to the current PDSN 32 reported in the location tuple by the AAA server 80. It should be noted that if the MS 100 has a static IP address that the Content Proxy Server 95 preferably forwards the data first to the HA 90, with the IMSI, PDSN, SPZ_ID and PZID information. In this case the HA 90 checks to determine if there is a mobile IP association for the MS 100, and if there is the HA 90 forwards the data to that PDSN 32 (e.g., to PDSN 32′), otherwise it forwards the data to the PDSN 32 reported in the location information.
With regard to this Step 4, it is noted that at this time there is not an actual existing context between the Content Proxy Server 95 and the PDSN 32 or HA 90 for forwarding these messages. There are, however, several solutions to this problem. For example, in a first solution the Content Proxy Server 95 saves or caches the messages received from the CN 99, and may then send a proprietary message to the PDSN 32 or HA 90 to initiate the NIDS. Once the MS 100 obtains an IP address as a result of the call setup it contacts the Content Proxy Server 95 to retrieve the cached messages. In a second solution the Content Proxy Server 95 receives the message(s) from the CN 99 and initiates the NIDS setup by sending a proprietary message to the PDSN 32 or the HA 90. Once the NIDS completes and the MS 100 has an IP address, it re-subscribes with the CN 99 and the CN 99 then sends the data directly to the MS 100.
Step 5: The PDSN 32 is assumed to detect that it does not have a PPP associated with the IMSI of the MS 100. In response, it sends an A11 Reconnect message to the PCF 30 identified by the PZID. This message includes the IMSI and the SPZ_ID indicating the current position of the MS 100.
Step 6: The PCF 30 sends an A9 BS Service Request to the BS 45 identified by the SPZ_ID.
Step 7: The BS 45 sends an A1 BS Service Request message to the MSC 60.
Steps 8-18: The MS 100 and the BS 45 set-up the traffic channel, using conventional protocols and procedures, and the MSC 60 and the PCF 30 are notified of the successful setup.
Step 19: As there is no PPP session, the PDSN 32 and the MS 100 set-up the PPP. This process may involve a MIP registration process as well. The Mobile Internet Protocol provides a set of extensions to the Internet protocol standards defined by the IETF. The focus of MIP is to permit a user to register on Foreign networks and connect back to their Home network via a combination of FA (Foreign Agent) and HA (Home Agent 90).
Once the PPP is setup, the PDSN 32 forwards the data over the PPP link to the MS 100 during an Active Packet Session, shown generally as Step 19.
Based on the foregoing description it can be appreciated that an aspect of this invention is the Content Proxy Server 95. The Content Proxy Server 95 is assumed to have a network address, a network interface 95A and a controller, or more generally a control function, that is coupled to the network interface for receiving and storing data packets intended for MS 100 from the CN 99. The Content Proxy Server 95 operates to determine a current location of the MS 100 and to initiate setting up the PPP between the MS 100 and the wireless network 20, at the current location of the MS 100, so as to send the data from the Content Proxy Server 95 to the MS 100 at its current location. In the presently preferred, but non-limiting embodiment, the controller determines the current location of the MS 100 by issuing the query to the AAA server 80. The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of the best method and apparatus presently contemplated by the inventor for carrying out the invention. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. As but some examples, the use of other similar or equivalent messages and message data elements may be attempted by those skilled in the art. Further, the various functional units and interfaces shown in
Furthermore, some of the features of the present invention could be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles of the present invention, and not in limitation thereof.