throbber
111111
`
`1111111111111111111111111111111111111111111111111111111111111111111111111111
`US 20110185202Al
`
`(19) United States
`c12) Patent Application Publication
`Black et al.
`
`(10) Pub. No.: US 2011/0185202 A1
`Jul. 28, 2011
`(43) Pub. Date:
`
`(54) MOBILE COMPUTING DEVICE AND
`METHOD FOR MAINTAINING
`APPLICATION CONTINUITY
`
`(75)
`
`Inventors:
`
`Gregory R. Black, Vernon Hills, IL
`(US); John P. Boos, Grayslake, IL
`(US)
`
`(73) Assignee:
`
`MOTOROLA, INC., Schaumburg,
`IL (US)
`
`(21) Appl. No.:
`
`12/694,244
`
`(22) Filed:
`
`Jan.26,2010
`
`Publication Classification
`
`(51)
`
`Int. Cl.
`G06F 1132
`
`(2006.01)
`
`(52) U.S. Cl. ........................................................ 713/320
`(57)
`ABSTRACT
`
`A method of maintaining application continuity (900) and
`mobile computing device (200) are described. The method
`involves a mobile device running an application in synchro(cid:173)
`nous communication with an application server. The applica(cid:173)
`tion has a threshold communication null period for maintain(cid:173)
`ing application continuity. The method (900) can include the
`steps of: operating (910) the application in synchronous com(cid:173)
`munication with an application server, defining an active
`mode, wherein the synchronous communication is automati(cid:173)
`cally enabled; providing (920) a dormant mode wherein the
`synchronous communication is automatically disabled in the
`mobile device for a predetermined duration; and interrupting
`(930) the dormant mode by momentarily communicating
`with the application server prior to a threshold communica(cid:173)
`tion null period, for maintaining application continuity.
`Advantageously, prior to a threshold period of communica(cid:173)
`tion inactivity, the dormant mode can be interrupted to main(cid:173)
`tain application connectivity, so the server will not stop the
`application and data will not be lost.
`
`MOBILE
`COMPUT~NG
`DEVICE
`112-D
`
`MOBILE
`COMPUTING
`DEVICE
`112-D
`
`Page 1 of 23
`
`GOOGLE EXHIBIT 1006
`
`

`

`Patent Application Publication
`
`Jul. 28, 2011 Sheet 1 of 8
`
`US 2011/0185202 A1
`
`MOBILE
`COMPUTING
`DEVICE
`112--D
`
`MOBILE
`COMPUTING
`DEVICE
`112-D
`
`FIG. 1
`
`155
`r'
`providing a polling manager configured to receive for each of the plurality of
`applications a predetermined polling interval and tolerance window;
`
`monitoring data communication activity of the mobile computing device:
`
`r160
`
`r165
`determining, for each of the plurality of running applications, the time elapsed
`since the previous synchronization
`
`/170
`synchronizing the application if at least one of the following conditions occurs:
`a) the time elapsed since the previous synchronization is substantially equal to
`the predetermined polling interval for the application,
`b) communication activity is detected, and the time elapsed since the previous
`synchronization is within the tolerance window for the application.
`
`FIG. 2
`
`Page 2 of 23
`
`

`

`Patent Application Publication
`
`Jul. 28, 2011 Sheet 2 of 8
`
`US 2011/0185202 Al
`
`FIG. 3a
`
`Aim
`1
`2
`
`lnt Win
`24 11
`21
`6
`
`3
`
`4
`
`8
`
`6
`
`3
`2
`
`Aim
`1
`2
`
`F1G. 3b
`
`lnt Win
`24 11
`21
`6
`
`3
`
`4
`
`8
`
`6
`
`3
`
`2
`
`FIG. 3c
`
`AQQ
`1
`2
`
`lnt Win
`- - -
`24 11
`21
`6
`
`3
`
`4
`
`8
`
`6
`
`3
`
`2
`
`0 0 0 0
`
`2 2
`
`[
`
`j
`
`~
`
`:
`
`!
`
`:
`
`:
`
`~-L-~-+-1--~-- -1--1-- ·- '-~
`~-~--L-~- __i_J
`
`• • • : .; • ~ • • • .; " • .;
`
`• ,;
`=
`oi
`= • ~
`: . ;
`'
`'-~-+~
`·-~-·
`= "
`4'1' 2 3 ~ ~ t 7 8~1~1,112131415161718 9202122232425'2~T
`Sync1,2,3,4 II Sync3,4 I
`
`~
`
`•
`
`~
`
`'
`i
`!
`! ~
`
`:
`
`:
`
`t
`
`-t-~
`
`o 1 2 s 4 s e 7 8 91o 1'1 f 1's14151eh1819~w21222s24'2s'26 r
`I Sync3, 4 I
`
`01123443
`
`!
`0
`
`2 3 4 5 6 7 8 910 1
`
`1
`
`11,21,31'41516 hf 1'92o21 :b:b242s2; T
`[Sync 1, 2, 3:4]
`
`FIG. 3
`
`Page 3 of 23
`
`

`

`Patent Application Publication
`
`Jul. 28, 2011 Sheet 3 of 8
`
`US 2011/0185202 Al
`
`;
`
`i
`
`:
`
`:
`
`i
`
`:
`
`FIG. 4a
`
`Aim
`1
`
`2
`
`3
`
`4
`
`8
`
`6
`
`3
`
`2
`
`,;
`,;
`,;
`. ~
`
`.
`
`.
`
`.
`
`;
`
`i
`
`l
`
`'·' +-~-t++- -LI-+i .... -tt
`·-~--~-+- --!-~
`
`;
`
`:
`
`:
`
`lnt Win 0 0 0 0 1 2 2
`• ,;
`• oi
`24 11
`~ •
`6
`21
`~ .
`++-!-_,
`~+• ~
`~ 1' 2 3 ~ ~ t 7 8 9101112131415161718 920212223242526
`I Sync 1, 2, 3, 4 II Sync 3, 4 I
`
`Aim
`1
`
`lnt Win
`24 11
`
`FIG. 4b
`
`2
`
`3
`
`4
`
`2i 6
`
`8
`
`6
`
`3
`
`2
`
`FIG. 4c
`
`FIG. 4d
`
`Aim
`1
`2
`
`lnt Win
`24 11
`21
`
`6
`
`3
`
`4
`
`8
`
`6
`
`3
`
`2
`
`Aim
`1
`
`lnt Win
`24 1 1
`
`2
`
`3
`
`4
`
`21
`
`8
`
`6
`
`6
`
`3
`
`2
`
`0.0001222
`! l f
`[ ;
`: ! ~
`j
`:
`.
`.
`.
`.
`.
`.
`.
`~ !
`;
`•
`j
`: ~--;--~-t-~--:--t--1--:--r--t-~
`
`.
`
`:
`
`. . ~
`~ I ~ ,-~-+-~-i--i-~ .
`; . :
`+-t-1·-+
`t·t-i : '
`' '
`o 1 2 3 4 5 a 1 8 91o 1'1 f 1.31'41s1e1r1a1e2o212223'24,25,26
`I Sync 3, 4 I
`i ! : l : 1
`,. 1--r-r -r r-r -,--r-: -t-1
`'
`'-i-tti·t-~
`j +++.,
`j ! ; "
`rtt! :
`
`01123443
`
`:
`
`~
`
`!
`
`•
`
`i
`
`!
`
`4 5
`
`7
`
`0
`
`2
`
`3
`
`4 3
`
`1 1
`]
`
`~
`
`·-~- -~-.- .tL .. L~-1-i
`. . .
`~ • ,; •
`.
`~-~--~-.,
`•+i
`
`~
`
`~
`
`;
`
`;
`
`:
`1213141516
`
`;
`
`:
`
`4 5
`
`7
`
`11
`
`FIG. 4
`
`Page 4 of 23
`
`

`

`Patent Application Publication
`
`Jul. 28, 2011 Sheet 4 of 8
`
`US 2011/0185202 Al
`
`280 ?
`r250 ~240
`I TRANSCEIVER I
`
`y
`
`r210
`
`c230
`
`AUDIOUO J
`
`200
`
`c215
`
`I
`
`BATTERY
`
`I
`
`i
`i
`
`_c220
`
`CONTROLLER
`
`270
`290
`
`J
`l
`
`MEMORY
`
`Polling/P<>I/'~j
`Management
`Module
`
`I
`
`SIM
`
`r285
`
`I
`
`c.260
`USER INTERFAC~-1
`
`FIG. 5
`
`Page 5 of 23
`
`

`

`Patent Application Publication
`
`Jul. 28, 2011 Sheet 5 of 8
`
`US 2011/0185202 Al
`
`"" ...... 1 ./...1 0
`
`Runnino Aoos
`
`News Feed
`
`Photo Uploading
`
`Data Backup
`
`' '
`615:
`' ' '
`
`Toleranoa
`Window
`Win(A)
`Register
`
`620
`
`Claim 1
`
`625
`
`Set:
`
`Yes
`
`. """"""""""""""""""""""""""""""""""""""""""" ,,., . .,. .. , ....
`
`605
`
`Start
`1-----"""
`T PREVIOUS( A) = 0
`T Mln(A} = lnt(A}- Win( A)
`T1oeA~(A) = lnt(A)
`T=O
`
`v----.635
`
`...t:
`Comm Active ?
`JNo
`
`640
`
`~
`
`645
`
`---
`650 No
`
`655
`
`I Set A= AppCount
`;t::
`T 0!: T1oeAdA} ?
`Yes
`"J,
`I Set A' = AppCount r
`r-660
`:1:.
`-=:::::::::--
`T > TMIN(A')?
`No
`~ Yes
`I synchronize Application( A')
`+
`T PREVIOus(A') = T
`T Mln(A') = T + lnt(A)- Win(A)
`TIDEAL(A') = T + lnt(A)
`
`665
`
`,..---.._67C
`
`Set:
`
`r·
`
`No
`
`t
`....... :
`675
`A' =A' -1
`_t
`-L::._680
`=-
`A'= 0?
`T Yes
`....
`r
`c-690 No
`
`685
`
`Yes
`
`695
`697
`
`FIG. 6
`
`A=A-1
`
`I
`-*-
`-=:::::....__ A= 0?
`"T
`I Delay D.T
`I T=T+ I
`
`Page 6 of 23
`
`

`

`700
`
`710
`
`Operating an application in synchronous communication with an application
`server via a persistent IP session, defining an active mode, wherein the
`synchronous communication is automatically enabled by establishing a
`persistent IP session according to a prearranged schedule
`
`,.- 720
`
`providing a dormant mode wherein the synchronous communication is
`automatically disabled in the mobile device by closing the persistent IP
`session according to the preaaranged schedule
`
`I
`programming a user programmable dormancy mode scheduler for scheduling
`the dormant mode period.
`
`/
`
`730
`
`FIG. 7
`
`(')
`
`~ .....
`
`'"= ~ .....
`("D = .....
`~ 'e -....
`.... 0 = '"= = 0" -....
`.... 0 =
`2' :-
`
`(')
`
`~ .....
`
`N
`~CIO
`N
`
`0 ....
`....
`rFJ =(cid:173)
`.....
`0\
`0 .....
`CIO
`
`("D
`("D
`
`c
`rFJ
`N
`0 ....
`....
`..._
`0 ....
`
`CIO
`Ul
`N
`0
`N
`
`> ....
`
`Page 7 of 23
`
`

`

`820
`Wireless
`Infrastructure
`
`822
`Packet Data
`Switch
`(Internet
`Gateway)
`
`824
`Circuit Switch
`
`810
`Mobile
`Device
`Client
`
`812
`Mobile
`Device
`Client
`
`830
`Application Service Aggregation Server
`
`....
`
`_..
`
`832
`834
`Front ~ Data
`End
`Cache
`
`836
`
`Back
`End
`
`800
`
`840
`Application
`Server
`
`850
`Application
`Server
`
`860
`Application
`Server
`
`FIG. 8
`
`(')
`
`~ .....
`
`'"= ~ .....
`('D = .....
`~ 'e -....
`.... 0 = '"= = 0" -....
`.... 0 =
`2' :-
`
`(')
`
`~ .....
`
`N
`~CIO
`N
`
`0 ....
`....
`rFJ =(cid:173)
`.....
`-....l
`0 .....
`CIO
`
`('D
`('D
`
`c
`rFJ
`N
`0 ....
`....
`..._
`0 ....
`
`CIO
`Ul
`N
`0
`N
`
`> ....
`
`Page 8 of 23
`
`

`

`900
`
`(900
`
`Operate an application in synchronous communication with an application server,
`defining an active mode, wherein the synchronous communication is
`automatically enabled.
`
`(920
`
`I
`
`(930
`
`Provide a dormant mode wherein the synchronous communication is
`automatically disabled in the mobile device for a predetermined duration.
`
`Interrupt the dormant mode by momentarily communicating with the application
`server prior to a threshold communication null period, for maintaining application
`continuity.
`
`FIG. 9
`
`(')
`
`~ .....
`
`'"= ~ .....
`('D = .....
`~ 'e -....
`.... 0 = '"= = 0" -....
`.... 0 =
`2' :-
`
`(')
`
`~ .....
`
`N
`~CIO
`N
`
`0 ....
`....
`rFJ =(cid:173)
`.....
`CIO
`0 .....
`CIO
`
`('D
`('D
`
`c
`rFJ
`N
`0 ....
`....
`..._
`0 ....
`
`CIO
`Ul
`N
`0
`N
`
`> ....
`
`Page 9 of 23
`
`

`

`US 2011/0185202 AI
`
`Jul. 28, 2011
`
`1
`
`MOBILE COMPUTING DEVICE AND
`METHOD FOR MAINTAINING
`APPLICATION CONTINUITY
`
`CROSS REFERENCE TO RELATED CASES
`
`[0001] This application is related to applicant's provisional
`patent applications, entitled: A Mobile Computing Device
`and Method With Enhanced Poling Management (Docket
`numberCML07453), filed on May 21,2009, having U.S. Ser.
`No. 61/180,301; and A Mobile Computing Device and
`Method With Intelligent Pushing Management (Docket num(cid:173)
`ber CS37274), filed on Nov. 30, 2009, having U.S. Ser. No.
`61/265,211.
`
`FIELD OF THE INVENTION
`
`[0002] The field of the invention relates to a mobile com(cid:173)
`puting device and method for maintaining application conti(cid:173)
`nuity.
`
`BACKGROUND OF THE INVENTION
`
`[0003] When operating a mobile device in synchronous
`communication with an application server, there is a tradeoff
`between good application performance which requires more
`frequent data exchanges, for example, a short synchroniza(cid:173)
`tion interval, and good battery life which requires less fre(cid:173)
`quent data exchanges, for example, a long synchronization
`interval.
`[0004] The problem being addressed in this patent applica(cid:173)
`tion, is that after a certain threshold period of time of com(cid:173)
`munication inactivity between a server and a mobile comput(cid:173)
`ing device, the server will terminate the application, which
`can result in loss of desired data. It would be an improvement
`in the art, if prior to the threshold period, a method could be
`devised to maintain the application.
`[0005] Mobile computing devices, such as mobile or wire(cid:173)
`less stations, cellphones, radios, laptops, wireless communi(cid:173)
`cation devices and the like, operate with a power storage
`device with a limited energy supply, such as a battery, fuel cell
`or the like. A mobile computing device needs a power source
`and, in many cases, this power source is a battery. For
`instance, cellular phones use various types of batteries to
`operate. The amount of time a mobile station can typically
`operate before the energy of the battery is consumed (which is
`often referred to as "battery life"), is often an important
`criteria that consumers use in choosing one brand or type of
`mobile computing device over another brand. The terms bat(cid:173)
`tery, energy storage device and power storage device are used
`interchangeably herein.
`[0006] While the power storage device is generally
`rechargeable, it may not be convenient or even possible for a
`user to recharge. Accordingly, there is a need to maximize the
`useful operational time of a wireless computing device.
`[0007] Additionally, different operating environments can
`cause the user to be surprised and/or frustrated when the
`battery runs out much more quickly than would typically be
`expected by the user. Thus, a variation or unexpected short
`battery life is very undesirable from a user perspective.
`[0008] This is a particularly relevant problem for mobile
`computing devices running applications supported by an
`applications server because of the power drain due to the
`wireless data exchange between the mobile device and the
`server, since each upload or download causes the consump(cid:173)
`tion of energy in the mobile device and server. The problem is
`
`especially acute in the mobile device, which is typically bat(cid:173)
`tery powered and has finite energy available. For example, a
`mobile device may employ an email server for uploading and
`downloading email in support of an email application, a con(cid:173)
`tact server for uploading and downloading contact status in
`support of a social networking application, an information
`server for downloading movies, news, music, etc. in support
`of a media playing application, and a back-up/storage server
`for uploading mobile device data in support of a data back-up
`application. Typically, the mobile device and application
`server synchronize on a regular or periodic basis, i.e. they
`communicate, upload, download or exchange information at
`essentially regular or fixed time intervals, and in this docu(cid:173)
`ment, the exchange of data between and mobile device run(cid:173)
`ning an application and an application server is referred to as
`"synchronization", and the amount of time between data
`exchanges is referred to as the "synchronization interval" or
`"sync interval", for a given application and application server.
`Thus, there is a need for increasing a length of a synchroni(cid:173)
`zation interval, in order to conserve energy in a power storage
`device of a wireless computing device, such as a mobile
`station, in order to prolong useful power storage device or
`battery life.
`[0009] Generally, there is a tradeoff between good applica(cid:173)
`tion performance which requires more frequent data
`exchanges, i.e. a short synchronization interval, and good
`battery life which requires less frequent data exchanges, i.e. a
`long synchronization interval. For example, performance of
`an email application may be determined by the amount of
`time it takes to receive an email, and performance of a social
`networking application may be determined by the delay in
`receiving a change in a social contact's status.
`[001 0] The exchange of data with an application server may
`be initiated by the server, i.e. a "push" data service, or by the
`mobile, i.e. a "pull" data service. In the case of a "pull" data
`service the mobile device typically provides a timer operable
`to trigger the expiration of the synchronization interval at
`which time the mobile device may pole the application for the
`availability of new application data. Thus with a "pull" data
`service the mobile device is in control of the synchronization
`interval, also known as the pulling or poling interval. Con(cid:173)
`versely, in the case of a "push" data service the mobile device
`responds to the synchronization requests from the server
`which may or may not be periodic.
`[0011]
`It is known to vary the synchronization interval
`according to the application, since the performance of certain
`applications may be more sensitive to synchronization fre(cid:173)
`quency than others. It is also known that the requirement for
`timely synchronization varies with the state of the applica(cid:173)
`tion. Synchronization may also be initiated a-periodically by
`the application running on the mobile device, or by the user.
`Thus, when multiple applications are running, each applica(cid:173)
`tion is likely to require different synchronization intervals,
`which may or may not be controlled by the mobile device.
`[0012] Synchronization of an application with an applica(cid:173)
`tion server involves the uploading or downloading of appli(cid:173)
`cation data between the mobile device and the application
`server over the communication infrastructure. Before the
`application data is exchanged with the application server
`there is a need to execute certain starting activities, such as
`powering-up the communication circuits, and establishment
`of a data communications session with the communication
`infrastructure. Similarly after the data is exchanged with the
`application server there is a need to execute certain ending
`
`Page 10 of 23
`
`

`

`US 2011/0185202 AI
`
`Jul. 28, 2011
`
`2
`
`activities, such as terminating the data communication ses(cid:173)
`sion with the communication infrastructure and powering(cid:173)
`down the data communication circuits. These starting and
`ending activities cause power drain in the mobile device. Thus
`there is a tendency for uncoordinated synchronization which
`causes power drain due to the stopping and starting activities
`associated with each data exchange. Thus, there is a need to
`minimize the starting and stopping activities by coordinating
`the synchronization times for multiple applications.
`[0013] When operating a mobile device in synchronous
`communication with an application server, there is a tradeoff
`between good application performance which requires more
`frequent data exchanges, i.e. a short synchronization interval,
`and good battery life which requires less frequent data
`exchanges, i.e. a long synchronization interval
`[0014]
`It is known to vary the synchronization interval
`according to a schedule, such that the period between down(cid:173)
`loading increases when certain applications are less likely to
`require frequent downloads. However, since application
`usage is a human behavior, the optimum download period
`cannot always be predicted and scheduled. Furthermore, the
`power drain due to the wireless data exchange with the appli(cid:173)
`cation server may be unpredictable. The available wireless
`networks may be such that only data transmission methods
`requiring high power consumption are available. Hence, the
`optimum synchronization interval cannot always be pre(cid:173)
`dicted and scheduled. Thus, there is a need to provide a longer
`downloading synchronization interval or period for drawing
`less energy consumption at certain "dormant times", while
`also providing shorter downloading synchronization inter(cid:173)
`vals at "active times", when an application requires timely
`information.
`[0015] Also, there is a need to provide a longer download(cid:173)
`ing synchronization interval or period for drawing less energy
`consumption when the energy required for synchronization is
`higher, while also providing shorter downloading synchroni(cid:173)
`zation interval when the energy required for synchronization
`is lower, thereby taking advantage of favorable network con(cid:173)
`ditions which may be temporary.
`[0016]
`In connection with push applications, data is pushed
`on a regular interval from an application server, and Applicant
`is not aware of a method available at any mobile client for
`adjusting the pushing interval. It would be considered an
`improvement in the art, if a mobile device could autono(cid:173)
`mously adjust the rate at which it accepts pushed data. In
`addition, it would also be considered an improvement in the
`art if a mobile device could control applications in which data
`is pushed from an application server to the mobile device.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0017] FIG.1 is a block diagram of a system with enhanced
`poling management to reduce energy drain, according to the
`present invention.
`[0018] FIG. 2 is a flowchart of one example of an approach
`for enhancing poling management to reduce energy drain,
`according to the present invention.
`[0019] FIG. 3 is a series of timing diagrams depicting the
`poling operation of a mobile computing device according to a
`first embodiment of the present invention.
`[0020] FIG. 4 is a series of timing diagram depicting the
`poling operation of a mobile computing device according to a
`second embodiment of the present invention.
`
`[0021] FIG. 5 is a block diagram of a mobile computing
`device that provides for an improved battery life according to
`the present invention.
`[0022] FIG. 6 is a flow diagram of a mobile computing
`device running an application in synchronous communica(cid:173)
`tion with an application server according to one embodiment
`of the present invention.
`[0023] FIG. 7 is a simplified block diagram of a method of
`saving energy in a mobile device running an application in
`synchronous communication with an application server, to
`reduce energy drain, according to an embodiment of the
`present invention.
`[0024] FIG. 8 is a simplified block diagram of a method of
`saving energy in a mobile device running an application in
`synchronous communication with an application server, to
`reduce energy drain, according to an embodiment of the
`present invention.
`[0025] FIG. 9 is a simplified block diagram of a method of
`saving energy in a mobile device running an application in
`synchronous communication with an application server, to
`maintain application continuity, according to an embodiment
`of the present invention.
`[0026] Skilled artisans will appreciate that elements in the
`figures are illustrated for simplicity and clarity and have not
`necessarily been drawn to scale. For example, the dimensions
`and/or relative positioning of some of the elements in the
`figures may be exaggerated relative to other elements to help
`to improve the understanding of various embodiments of the
`present invention. Also, common but well-understood ele(cid:173)
`ments that are useful or necessary in a commercially feasible
`embodiment are often not depicted in order to facilitate a less
`obstructed view of these various embodiments of the present
`invention. It will further be appreciated that certain actions
`and/or steps may be described or depicted in a particular order
`of occurrence while those skilled in the art will understand
`that such specificity with respect to sequence is not actually
`required. It will also be understood that the terms and expres(cid:173)
`sions used herein have the ordinary meaning as is accorded to
`such terms and expressions with respect to their correspond(cid:173)
`ing respective areas of inquiry and study except where spe(cid:173)
`cific meanings have otherwise been set forth herein.
`
`DETAILED DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`[0027] A system and method is described that controls the
`length of the synchronization interval associated with a
`mobile computing device (or mobile station, wireless com(cid:173)
`munication device, wireless computing device, mobile or
`wireless station, cellphone, radio, laptop and the like, such
`terms used interchangeably herein) running an application in
`periodic or synchronous communication with an application
`server, in order to conserve and improve the life of an energy
`storage device in connection with a mobile computing device.
`The approaches described herein allow a mobile computing
`device to operate in a variety of conditions and provide a
`variety of bandwidth intensive services without substantially
`compromising the energy storage device in association with
`the mobile station.
`[0028] Coordinating the synchronization interval of the
`periodic or synchronous communication between the mobile
`computing device running multiple applications with respec(cid:173)
`tive application servers may be made in a variety of different
`ways. In one example, the mobile device is equipped with a
`poling manager, which: receives for each application an ideal
`
`Page 11 of 23
`
`

`

`US 2011/0185202 AI
`
`Jul. 28, 2011
`
`3
`
`poling interval and tolerance window; monitors communica(cid:173)
`tion activity of the mobile computing device; determines the
`time elapsed since the previous synchronization for each
`application; and synchronizes the application if the time
`elapsed since the previous synchronization is substantially
`equal to the ideal poling interval for the application, or com(cid:173)
`munication activity is detected and the time elapsed since the
`previous synchronization is within the tolerance window for
`the application.
`In another example, the poling manager: receives
`[0029]
`for each application an ideal poling interval and tolerance
`window; monitors communication activity of the mobile
`computing device; determines the time elapsed since the pre(cid:173)
`vious synchronization for each application; selects a pre(cid:173)
`ferred synchronization interval between the time elapsed
`since the previous synchronization and a future synchroniza(cid:173)
`tion interval, and synchronizes the application if the time
`elapsed since the previous synchronization is substantially
`equal to the ideal poling interval for the application, or com(cid:173)
`munication activity is detected, the time elapsed since the
`previous synchronization is within the tolerance window for
`the application and is the preferred synchronization interval.
`The length of the synchronization interval may be dynami(cid:173)
`cally decreased or increased from the ideal interval, depend(cid:173)
`ing on the monitored communication activity and the deter(cid:173)
`mined preference.
`[0030] Further adjustments may also be made. For
`instance, the window of tolerance for a first application may
`be adjusted depending on the ideal synchronization interval
`of a second application, as detailed below.
`[0031] Thus, approaches are described whereby the power
`storage device of the mobile computing device is improved
`even under less than ideal operating conditions and different
`modes of operation, such as multiple applications running in
`synchronous commnnication with an application server. Con(cid:173)
`sequently, the mobile computing device can operate nnder a
`variety of operating conditions
`[0032] Referring to FIG. 1, one example of a system with
`enhanced poling management for increasing the battery life
`of a mobile computing device, is described. The system
`includes a first mobile computing device 102 that is coupled
`to a first Radio Access Network (RAN) 104. The first RAN
`104 is coupled to a commnnication infrastructure 106. The
`infrastructure can include a plurality of application servers,
`for running various applications, as detailed below. A second
`mobile computing device 110 is coupled to a second RAN
`108. The second RAN 108 is also coupled to the infrastructure
`106. The principles described herein may be applied to a
`variety of wide area network systems, such as long-term
`evolution (LTE), ultra mobile wideband (UMB), 802.16e &
`m, High Rate Packet Data (HRPD) systems, or systems such
`as
`the Universal Mobile Telecommunication System
`(UMTS), as well as wireless local area networks, personal
`area networks, and wired networks.
`[0033] The mobile computing devices 102 and 110 may be
`any type of mobile wireless device. The mobile computing
`devices 102 and 110 each include a poling management mod(cid:173)
`ule 112 for coordinating synchronous communications
`between application server poling applications, as detailed
`below. For example, the mobile computing devices 102 and
`110 may be cellular telephones, pagers, radios, mobile sta(cid:173)
`tions, personal computers, or personal digital assistants. As
`should be understood by those skilled in the art, other
`examples of mobile computing devices are possible.
`
`[0034] The RANs 104 and 108 may be any device or com(cid:173)
`bination of devices that allow the mobile computing devices
`102 and 110 to have access to the commnnication infrastruc(cid:173)
`ture 106. For example, the RANs 104 and 108 may include
`access points, base stations, base station controllers, anten(cid:173)
`nas, and other types of devices that facilitate these commu(cid:173)
`nications.
`[0035] The commnnication infrastructure 106 preferably
`includes devices and/or networks that allow communications
`to be made between mobile stations. For example, the infra(cid:173)
`structure 106 may include switches, servers, storage devices,
`and networks (e.g., wireless networks, the Internet, landline
`telephone networks) that facilitate commnnications between
`the mobile computing devices 102 and 110.
`[0036] Referring now to FIG. 2, an exemplary method of
`enhancing poling management for extending the useful life of
`an energy storage device in a mobile computing device, is
`shown. The method 150 is configured to help lengthen the
`battery life of a mobile computing device running a plurality
`of applications in synchronous or asynchronous, data com(cid:173)
`munication with an application server. The method 150
`includes the steps of: providing 155 a poling manager con(cid:173)
`figured to receive for each of the plurality of applications a
`predetermined poling interval and tolerance window; moni(cid:173)
`toring 160 data commnnication activity of the mobile com(cid:173)
`puting device; determining 165, for each of the plurality of
`running applications, the time elapsed since the previous
`synchronization; and synchronizing 170 the application if at
`least one of the following conditions occurs: the time elapsed
`since the previous synchronization is substantially equal to
`the predetermined poling interval for the application; and
`communication activity is detected, and the time elapsed
`since the previous synchronization is within the tolerance
`window for the application.
`[0037] Advantageously, this method can provide substan(cid:173)
`tial energy savings in an energy storage device in mobile
`computing device applications, for example, by synchroniz(cid:173)
`ing and running multiple applications together, which saves
`energy storage device or battery life by turning on the trans(cid:173)
`ceiver circuitry when necessary and minimizing or eliminat(cid:173)
`ing unnecessary or redundant synchronization, by the use of
`dynamic and smart poling management techniques, as
`detailed herein. This can be accomplished by providing a
`poling interval for each application that is within its window
`of tolerance, for example.
`In one arrangement, the synchronizing step 170 is
`[0038]
`triggered by detecting synchronization activity initiated by at
`least one of: an application; an application server; and a user.
`This provides each application the opportunity to synchro(cid:173)
`nize with its respective application server in coordination
`with the detected commnnication activity. In further detail,
`the synchronizing step 170 can be triggered substantially
`immediately after completion of the detected synchronization
`activity, thus avoiding stopping and restarting of the commu(cid:173)
`nication circuits, and thereby saving energy.
`[0039] Referring to FIG. 3, four synchronizations are
`shown moving from the top to the bottom of the figure, at time
`zero, six, twelve and eighteen, respectively. Application 1 has
`a synchronization interval of 24 nnits and window of toler(cid:173)
`ance of 11 units. The units can be in milliseconds. Application
`2 has a synchronization interval of 21 units and window of
`tolerance of 6 nnits. Application 3 has a synchronization
`interval of8 units and window of tolerance of3 units. Appli(cid:173)
`cation 4 has a synchronization interval of 6 units and window
`
`Page 12 of 23
`
`

`

`US 2011/0185202 AI
`
`Jul. 28, 2011
`
`4
`
`of tolerance of2 units. Referring to FIG. 3a, at time 0, a sync
`occurs for applications 1, 2, 3, and 4. At time 6, a synch
`occurs, triggered by the amount of time passing since the
`previous synchronization being equal to the synchronization
`interval for application 4. Applications 3 and 4 are synchro(cid:173)
`nized because these are the applications for which the win(cid:173)
`dow of tolerance includes time 6. Referring now to FIG. 3b,
`the window of tolerance is shifted from FIG. 3a for applica(cid:173)
`tions 3 and 4, to account for the time of the previous synchro(cid:173)
`nization having changed from time 0 to time 6. At time 12, a
`synch occurs, triggered by the amount of time passing since
`the previous synchronization being equal to the synchroniza(cid:173)
`tion interval for application 4. Applications 3 and 4 are again
`synchronized because these are the applications for which the
`window of tolerance includes time 12. Referring now to FIG.
`3c, the window of tolerance is shifted from FIG. 3b for appli(cid:173)
`cations 3 and 4, to account for the time of the previous syn(cid:173)
`chronization having changed from time 6 to time 12. At time
`18, a sync occurs, whereby applications 1, 2, 3 and 4 are
`synchronized because these are the applications for which the
`window of tolerance includes time 18. Thus it is the synchro(cid:173)
`nization of the four applications is coordinated thereby reduc(cid:173)
`ing power drain in the data communication device.
`[0040] By the use of smart poling management techniques,
`as detailed herein, synchronizing and running multiple appli(cid:173)
`cations together, can provide substantial energy savings. For
`example, the transceiver circuitry is turned on at times 0, 6, 12
`and 18, as necessary to obtain a down load, etc. Referring
`again to FIG. 3a, unnecessary or redundant synchronizations
`do not occur, as would happen at time 8, for example, if the
`synchronization for application 3 were not advanced from
`time 8 to time 6.
`

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


Or .

Accessing this document will incur an additional charge of $.

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

Accept $ Charge
throbber

Still Working On It

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

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

throbber

A few More Minutes ... Still Working

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

Thank you for your continued patience.

This document could not be displayed.

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

Your account does not support viewing this document.

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

Your account does not support viewing this document.

Set your membership status to view this document.

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

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

Become a Member

One Moment Please

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

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

Your document is on its way!

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

Sealed Document

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

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


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket