HK1102880B - Contention resolution among applications requiring data connections between a mobile communications device and a wireless packet data network - Google Patents
Contention resolution among applications requiring data connections between a mobile communications device and a wireless packet data network Download PDFInfo
- Publication number
- HK1102880B HK1102880B HK07111229.3A HK07111229A HK1102880B HK 1102880 B HK1102880 B HK 1102880B HK 07111229 A HK07111229 A HK 07111229A HK 1102880 B HK1102880 B HK 1102880B
- Authority
- HK
- Hong Kong
- Prior art keywords
- mobile communications
- communications device
- application
- data
- data connections
- Prior art date
Links
Description
The present disclosure relates, in general, to communications sessions between mobile communications devices and wireless packet data service networks and, in particular, to a system and method for resolving contention among applications operating on a mobile communications device that require data connections to a wireless packet data service network.
It is becoming commonplace to use wireless packet data service networks for effectuating data sessions with mobile communications devices. For example, a mobile communications device may be used to provide certain high priority data services such as wirelessly extending a corporate email account, personal information manager or the like. Similarly, the same mobile communications device may also be used to provide other lower priority data services such as messenger applications, web browsing or the like. As many of these applications require a continually active data connection or constant connectivity, it has been found that only a limited number of such applications can operate at the same time on a typical mobile communications device. Accordingly, a need has arisen for a system and method for resolving contention among applications operating on a mobile communications device that require data connections to a wireless packet data service network.
Disclosed herein are methods and systems for resolving contention between applications operable on a mobile communications device that require data connections to a wireless packet data service network. Broadly, the technique involves executing a contention manager routine on the mobile communications device that is operable to select which of the applications currently conducting data sessions should release its data session in favor of an application currently requesting a data session.
In one aspect, a method for resolving contention among applications operable on a mobile communications device involves conducting at least two data connections between the mobile communications device and the wireless network, each of the data connections associated with a connected application operating on the mobile communications device, requesting a data connection for an unconnected application operable on the mobile communications device, releasing one of the data connections responsive to the request, the releasing including selecting one of the connected applications by a contention manager based upon a comparison of a contention parameter associated with each of the connected applications and releasing the data connection associated with the selected connected application and then establishing the data connection between the mobile communications device and the wireless network for the requesting unconnected application.
In one embodiment, the least two data connections between the mobile communications device and the wireless network represent the maximum number of data connections allowed by the mobile communications device. In another embodiment, the at least two data connections between the mobile communications device and the wireless network represent the maximum number of data connections allowed between the mobile communications device, and the wireless network. In a further embodiment, each of the applications is an application requiring constant connectivity.
The method may utilize a variety of contention parameters to determine which of the connected applications should release its data connection. For example, the contention parameters may include application priority, data traffic, duration of current connection and the like. The method may utilize a single contention parameter or a group of contention parameters which may be analyzed by the contention manager either in series or parallel.
In another aspect, a mobile communications device includes a wireless transceiver operable to conduct at least two data connections between the mobile communications device and a wireless network wherein each of the data connections is associated with a connected application operating on the mobile communications device. A processor is coupled to the wireless transceiver and is operable to process a request for a data connection for an unconnected application operable on the mobile communications device, to release one of the data connections associated with one of the connected applications and to establish a data connection between the mobile communications device and the wireless network for the unconnected application. A contention manager is operable to select the connected application to be released based upon a comparison of a contention parameter associated with each of the connected applications.
In a further aspect, a computer program product includes a storage medium and computer instructions stored in the storage medium. The computer instructions are executable by a processor of a mobile communications device that is operable to conduct at least two data connections with a wireless network. Each of the data connections is associated with a connected application operating on the mobile communications device. The computer instructions resolve contention among applications operable on the mobile communications device by receiving a request for a data connection for an unconnected application operable on the mobile communications device, selecting one of the connected applications based upon a comparison of a contention parameter associated with each of the connected applications, releasing the data connection associated with the selected connected application and establishing the data connection between the mobile communications device and the wireless network for the unconnected application.
For a more complete understanding of the features and advantages of the present method and mobile device, reference is now made to the detailed description along with the accompanying figures in which corresponding numerals in the different figures refer to corresponding parts and in which:
While various embodiments of a mobile communications device operating within a network system are discussed in detail below, it should be appreciated that the present disclosure provides many applicable inventive concepts which can be embodied in a wide variety of specific contexts. The specific embodiments discussed herein are merely illustrative of specific ways to use the mobile communications device within the network system, and do not delimit the scope of the present disclosure.
Referring now to the drawings, and more particularly to figure 1 , depicted therein is an exemplary network environment 10 including a wireless packet data service network 12 wherein an embodiment of the present method may be practiced. An enterprise network 14 for serving a plurality of corporate users, which may be a packet-switched network, can include one or more geographic sites and be organized as a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN) or the like. A number of application servers 16-1 through 16-N disposed as part of the enterprise network 14 are operable to provide or effectuate a host of internal and external services such as Internet access, corporate data access, information management and the like as well as certain continually operable data services such as email, video mail, messaging, calendaring, scheduling and the like. Accordingly, a diverse array of personal information appliances 18 such as desktop computers, laptop computers, palmtop computers or the like may be operably networked to one or more of the application servers 16-i, i = 1, 2,...,N, with respect to the services supported in the enterprise network 14.
Additionally, a remote services server 20 may be interfaced with the enterprise network 14 for enabling a corporate user to access or effectuate any of the services from a remote location using a suitable mobile communications device (MCD) 22. A secure communication link with end-to-end encryption may be established that is mediated through an external IP network, i.e., a public packet-switched network such as the Internet 24, as well as the wireless packet data service network 12 operable with MCD 22 via suitable wireless network infrastructure that includes a base station 26. In one embodiment, a trusted relay network 28 may be disposed between the Internet 24 and the infrastructure of wireless packet data service network 12. By way of example, MCD 22 may be a data-enabled handheld device capable of receiving and sending messages, web browsing, interfacing with corporate application servers and the like.
For purposes of the present disclosure, the wireless packet data service network 12 may be implemented in any known or heretofore unknown mobile communications technologies and network protocols, as long as a packet-switched data service is available therein for transmitting packetized information. For instance, the wireless packet data service network 12 may be comprised of a General Packet Radio Service (GPRS) network that provides a packet radio access for mobile devices using the cellular infrastructure of a Global System for Mobile Communications (GSM)-based carrier network. In other implementations, the wireless packet data service network 12 may comprise an Enhanced Data Rates for GSM Evolution (EDGE) network, an Integrated Digital Enhanced Network (IDEN), a Code Division Multiple Access (CDMA) network, a Universal Mobile Telecommunications System (UMTS) network, or any 3rd Generation (3G) network. As will be seen hereinbelow, the embodiments of the present disclosure for resolving contention between applications operable on a mobile communications device that require data connections to a wireless packet data service network will be described regardless of any particular wireless network implementation.
In one embodiment, the communication module 34 is operable with both voice and data communications. Regardless of the particular design, however, signals received by antenna 44 through base station 26 are provided to receiver 36, which may perform such common receiver functions as signal amplification, frequency down conversion, filtering, channel selection, analog-to-digital (A/D) conversion, and the like. Similarly, signals to be transmitted are processed, including modulation and encoding, for example, by DSP 42, and provided to transmitter 44 for digital-to-analog (D/A) conversion, frequency up conversion, filtering, amplification and transmission over the air-radio interface via antenna 46.
Microprocessor 32 also interfaces with further device subsystems such as auxiliary input/output (I/O) 48, serial port 50, display 52, keyboard 54, speaker 56, microphone 58, random access memory (RAM) 60, a short-range communications subsystem 62 and any other device subsystems generally labeled as reference numeral 64. To control access, a Subscriber Identity Module (SIM) or Removable user Identity Module (RUIM) interface 66 is also provided in communication with the microprocessor 32. In one implementation, SIM/RUIM interface 66 is operable with a SIM/RUIM card having a number of key configurations 68 and other information 70 such as identification and subscriber-related data.
Operating system software and software associated with transport stack 72 may be embodied in a persistent storage module (i.e., non-volatile storage) such as flash memory 74. In one implementation, flash memory 74 may be segregated into different areas, e.g., storage areas for computer programs 76, device states 78, address book 80, other personal information manager (PIM) data 82 and other data storage areas generally labeled as reference numeral 84. Additionally, a contention manager logic module 86 is provided for resolving contention among applications operable on MCD 30 that require data connections to wireless packet data service network 12 according to the teachings set forth herein.
The bottom layer (Layer 1) of the transport stack 100 is operable as an interface to the wireless network's packet layer. Layer 1 handles basic service coordination within the exemplary network environment 10 shown in figure 1 . For example, when an MCD roams from one carrier network to another, Layer 1 verifies that the packets are relayed to the appropriate wireless network and that any packets that are pending from the previous network are rerouted to the current network. The top layer (Layer 4) exposes various application interfaces to the services supported on the MCD. The remaining two layers, Layer 2 and Layer 3, are responsible for datagram segmentation/reassembly and security, compression and routing, respectively.
For purposes of illustration, a particular MCD is capable of having two simultaneous data connections and is currently conducting a data session for messenger application 114 and a data session for email application 110. The user of the MCD now attempts to launch browser application 116. As the present MCD can only have two simultaneous data connections, the MCD is not able to open a new data session for browser application 116 without first releasing one of the active data sessions from either messenger application 114 or email application 110. Contention manager logic module 118 determines which of the two applications should release its data connection and then establishes a data connection for browser application 116. Specifically, contention manager logic module 118 uses one or more contention parameters associated with either the connected applications, in this case messenger application 114 and email application 110, or the data connections associated with the connected applications to determine which data connection to release. In one embodiment, contention manager logic module 118 may use application priority as the contention parameter. In the present example, as email application 110 is intended to be an "always on" application, email application 110 has a high priority. On the other hand, messenger application 114 is of a low priority. As such, using the contention parameter of application priority, contention manager logic module 118 selects messenger application 114 to release its data connection. Thereafter, the data connection for browser application 116 can be established.
Continuing with the present example and assuming the MCD is currently conducting a data session for messenger application 114 and a data session for browser application 116, email application 110 now requests a data connection either due to a user input or due to an automatic attempt to reestablish a data connection. As above, the MCD is not able to open a new data session for email application 110 without first releasing one of the active data sessions from either messenger application 114 or browser application 116. In this case, the application priority is low for both messenger application 114 and browser application 116. As such, contention manager logic module 118 uses an alternate contention parameter to select the application that should release its data connection. For example, contention manager logic module 118 may use data traffic, duration of data connection or other indicia as the contention parameter to select the application that should release its data connection. Thereafter, the data connection for the selected application is released and a data connection for email application 110 can be established.
In one implementation, contention manager logic module 118 may consider more than one contention parameter in determining which of the connected applications should release its data connection. For example, in the above case wherein the MCD is currently conducting data sessions for messenger application 114 and browser application 116, then email application 110 requests a data connection, contention manager logic module 118 could sequentially or simultaneously analyze multiple contention parameters such as data traffic and duration of data connection to determine that while the data connection for messenger application 114 has a longer duration, the data traffic associated with that connection warrants that its connection should be maintained. Thus, contention manager logic module 118 selects browser application 116 to release its data connection such that a data connection for email application 110 can be established.
As should be understood by those skilled in the art, contention manager logic module 118 can consider one or any number of contention parameters associated with the connected applications, the data connections associated with the connected applications or other indicia to determine which data connection to release. Likewise, it should be understood by those skilled in the art that contention manager logic module 118 can consider multiple contention parameters simultaneously using a contention parameter formula to weigh the various contention parameters in its determination of which data connection to release. Additionally, it should be understood by those skilled in the art that contention manager logic module 118 can consider multiple contention parameters sequentially using, for example, a contention parameter hierarchy to determine the order of consideration. Further, while contention manager logic module 118 has been described as automatically releasing the data connection of the selected connected application, it should be understood by those skilled in the art that contention manager logic module 118 may prompt the user to acknowledge that the application selected by contention manager logic module 118 should release its data connection.
GPRS uses a packet-switching technique to transfer both high-speed and low-speed data and signaling in an efficient manner over GSM radio networks. Packet switching means that GPRS radio resources are used only when users are actually sending or receiving data. Rather than dedicating a radio channel to a mobile data user, e.g., MCD 30, for a fixed period of time, the available radio channels can be concurrently shared between several users. Therefore, GPRS is designed to support from intermittent and bursty data transfers (e.g., web browsing) to occasional transmission of large volumes of data (e.g., FTP). Allocation of GPRS radio channels can be flexible: from 1 to 8 radio interface timeslots can be allocated per one Time Division Multiple Access (TDMA) frame. Typically, timeslots are shared by the active users, and uplinks and downlinks are allocated separately. Various radio channel coding schemes are available to allow a range of data bit transfer rates.
Two additional network nodes are provided within a GSM network in order to implement a packet-switched data transfer service. A Serving GPRS Support Node (SGSN) 134, which is coupled to a Home Location Register (HLR) 132 and disposed at the same hierarchical level as a Mobile Switching Center (MSC) of the circuit-switched cellular network, is operably coupled to base station 26 and keeps track of the location of a GPRS user such as the user of MCD 30. Further, SGSN 134 is responsible for performing security functions and handling access control with respect to MCD 30. A Gateway GPRS Support Node (GGSN) 136 provides interworking with the external packet-switched IP network 24, and is operably coupled to one or more SGSNs, e.g., SGSN 134, via an IP-based GPRS backbone network.
In order to access the packet data service, MCD 30 makes its presence known to the network by performing what is known as a GPRS Attach. Thereafter, to send and receive packet data, MCD 30 activates the packet data address that it wants to use. This operation renders MCD 30 "visible" in the corresponding GGSN, and interworking with external data networks can then begin. User data is transferred transparently between MCD 30 and the external data networks with a method known as encapsulation and tunneling wherein data packets are equipped with GPRS-specific protocol information and transferred transparently between MCD 30 and GGSN 136 using, for example, a Packet Data Protocol (PDP) context between MCD 30 and GPRS network 130.
While this disclosure has described a mobile communications device operating within a network system with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments as well as other embodiments, will be apparent to persons skilled in the art upon reference to the description. It is, therefore, intended that the appended claims encompass any such modifications or embodiments.
Claims (21)
- A method for resolving contention among applications operable on a mobile communications device (30) that require data connections to a wireless network (12), the method comprising:conducting at least two data connections between the mobile communications device (30) and the wireless network (12), each of the data connections associated with a connected application operating on the mobile communications device (30);requesting a data connection for an unconnected application operable on the mobile communications device (30);responsive to the request, automatically selecting one of the connected applications;releasing the data connection associated with the selected connected application; andestablishing the data connection between the mobile communications device (30) and the wireless network (12) for the unconnected application.
- The method as recited in claim 1 wherein the step of conducting at least two data connections between the mobile communications device (30) and the wireless network (12) further comprises conducting the maximum number of data connections allowed by the mobile communications device (30).
- The method as recited in claim 1 wherein the step of conducting at least two data connections between the mobile communications device (30) and the wireless network (12) further comprises conducting the maximum number of data connections allowed between the mobile communications device (30) and the wireless network (12).
- The method as recited in claim 1 wherein each of the applications further comprises an application requiring constant connectivity.
- The method as recited in claim 1 wherein the step of automatically selecting one of the connected applications further comprises comparing an application priority associated with the connected applications to determine the selected connected application.
- The method as recited in claim 1 wherein the step of automatically selecting one of the connected applications further comprises comparing data traffic associated with the data connections of the connected applications to determine the selected connected application.
- The method as recited in claim 1 wherein the step of automatically selecting one of the connected applications further comprises comparing a duration of connection associated with the data connections of the connected applications to determine the selected connected application.
- A mobile communications device (30) comprising:a wireless transceiver (34) operable to conduct at least two data connections between the mobile communications device (30) and a wireless network (12), each of the data connections associated with a connected application operating on the mobile communications device (30);a processor (32) coupled to the wireless transceiver (34) and operable to process a request for a data connection for an unconnected application operable on the mobile communications device (30), to release one of the data connections associated with one of the connected applications and to establish a data connection between the mobile communications device (30) and the wireless network (12) for the unconnected application; anda contention manager (86) operable to automatically select the connected application to be released.
- The mobile communications device (30) as recited in claim 8 wherein the data connections between the mobile communications device (30) and the wireless network (12) further comprise a maximum number of data connections allowed by the mobile communications device (30).
- The mobile communications device (30) as recited in claim 8 wherein the data connections between the mobile communications device (30) and the wireless network (12) further comprise a maximum number of data connections allowed between the mobile communications device (30) and the wireless network (12).
- The mobile communications device (30) as recited in claim 8 wherein each of the applications further comprises an application requiring constant connectivity.
- The mobile communications device (30) as recited in claim 8 wherein the contention manager (86) is operable to analyze an application priority associated with each of the connected applications to select the connected application to be released.
- The mobile communications device (30) as recited in claim 8 wherein the contention manager (86) is operable to analyze data traffic associated with the data connection of each of the connected applications to select the connected application to be released.
- The mobile communications device (30) as recited in claim 8 wherein the contention manager (86) is operable to analyze a duration of the data connection associated with each of the connected application to select the connected application to be released.
- A computer program product comprising:a storage medium (74); andcomputer instructions (86) stored in the storage medium (74) and executable by a processor (32) of a mobile communications device (30) operable to conduct at least two data connections with a wireless network (12), each of the data connections associated with a connected application operating on the mobile communications device (30), the computer instructions (86) operable to resolve contention among applications operable on the mobile communications device (30) by:receiving a request for a data connection for an unconnected application operable on the mobile communications device (30);automatically selecting one of the connected applications;releasing the data connection associated with the selected connected application; andestablishing the data connection between the mobile communications device (30) and the wireless network (12) for the unconnected application.
- The computer program product as recited in claim 15 wherein the data connections between the mobile communications device (30) and the wireless network (12) further comprise a maximum number of data connections allowed by the mobile communications device (30).
- The computer program product as recited in claim 15 wherein the data connections between the mobile communications device (30) and the wireless network (12) further comprise a maximum number of data connections allowed between the mobile communications device (30) and the wireless network (12).
- The computer program product as recited in claim 15 wherein each of the applications further comprises an application requiring constant connectivity.
- The computer program product as recited in claim 15 wherein selecting one of the connected applications further comprises comparing an application priority associated with the connected applications to determine the selected connected application.
- The computer program product as recited in claim 15 wherein selecting one of the connected applications further comprises comparing data traffic associated with the data connections of the connected applications to determine the selected connected application.
- The computer program product as recited in claim 15 wherein selecting one of the connected applications further comprises comparing a duration of connection associated with the data connections of the connected applications to determine the selected connected application.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05256859A EP1783961B1 (en) | 2005-11-04 | 2005-11-04 | Contention resolution among applications requiring data connections between a mobile communications device and a wireless packet data network |
Publications (2)
Publication Number | Publication Date |
---|---|
HK1102880A1 HK1102880A1 (en) | 2007-12-07 |
HK1102880B true HK1102880B (en) | 2008-06-06 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8189611B2 (en) | System and method for resolving contention among applications requiring data connections between a mobile communications device and a wireless network | |
CA2567115C (en) | System and method for resolving contention among applications requiring data connections between a mobile communications device and a wireless network | |
EP1978685B1 (en) | Method and apparatus for dynamic quality of service modification | |
US8184637B2 (en) | Method, system and apparatus for dynamic quality of service modification | |
US7685233B2 (en) | Method and apparatus for sequentially conducting independent data contexts using a mobile communications device | |
CA2526396C (en) | System and method for sequentially conducting independent data contexts using a mobile communications device | |
HK1102880B (en) | Contention resolution among applications requiring data connections between a mobile communications device and a wireless packet data network | |
HK1143266B (en) | Contention resolution among applications requiring data connections between a mobile communications device and a wireless packet data network | |
HK1091357B (en) | Method for sequentially conducting independent data contexts using a mobile communications device and mobile communications device |