US20120143978A1 - Enabling plural computing devices to communicate using a master account - Google Patents
Enabling plural computing devices to communicate using a master account Download PDFInfo
- Publication number
- US20120143978A1 US20120143978A1 US12/958,426 US95842610A US2012143978A1 US 20120143978 A1 US20120143978 A1 US 20120143978A1 US 95842610 A US95842610 A US 95842610A US 2012143978 A1 US2012143978 A1 US 2012143978A1
- Authority
- US
- United States
- Prior art keywords
- master
- candidate
- master device
- communication system
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 claims abstract description 230
- 238000000034 method Methods 0.000 claims description 33
- 238000012545 processing Methods 0.000 claims description 22
- 230000003993 interaction Effects 0.000 claims description 3
- 238000000926 separation method Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 10
- 238000013459 approach Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000009424 underpinning Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
Definitions
- wireless-enabled devices include laptop-type computers of various sizes and feature sets, mobile telephones, personal digital assistant (PDA) devices, tablet-type computing devices, book reader devices, and so on.
- PDA personal digital assistant
- tablet-type computing devices tablet-type computing devices
- book reader devices book reader devices
- Some manufacturers have attempted to consolidate many different functions into a single wireless-enabled device. Yet, at present, many users own two or more distinct wireless-enabled devices. Furthermore, many users routinely carry and utilize plural wireless-enabled devices. For example, a user who departs for a business trip may bring along a mobile telephone, a tablet-type device, and a laptop computer. Each of these devices may fulfill a slightly different purpose over the course of the trip.
- a user who purchases a wireless-enabled device is typically expected to enter into a contractual obligation with a communications operator.
- a user who owns a mobile telephone and a wireless modem card may sign up for two separate accounts with one or more communications operators.
- the account associated with the mobile telephone may entitle the user to talk for a prescribed number of minutes in a billing cycle.
- the account associated with the wireless modem card may allow the user to consume a prescribed volume of content during the billing cycle, and so forth.
- an account may allow the user to obtain information at a prescribed maximum bandwidth, and so on.
- Functionality allows plural computing devices to share a master account.
- the master account defines an amount of available communication resources that can be consumed by the plural computing devices.
- the functionality allows any candidate device to directly communicate with a communication system using the master account, providing that the candidate device satisfies a prescribed condition with respect to a master device.
- the functionality can allow the candidate device to communicate with the communication system if it is within a threshold distance of the master device.
- functionality is described that again allows plural computing devices to share a master account.
- the functionality instructs the master device and the candidate device to set up a tethering relationship if these devices satisfy a prescribed condition.
- the functionality can then allow the candidate (slave) device to communicate with the communication system, via the master device, using the master account.
- the functionality can set up the tethering relationship without any involvement of the user (or users) who operate the master device and candidate device, or without substantial involvement.
- the functionality can prepare and forward billing information to an account holder which describes the utilization of communication resources by the plural computing devices.
- FIG. 1 shows a first environment that allows plural computing devices to share a master account having a prescribed consumption quota associated therewith.
- FIG. 2 shows an illustrative communication system for use in the environment of FIG. 1
- FIG. 3 is a flowchart that describes one illustrative manner of operation of the communication system of FIG. 2 .
- FIG. 4 is a flowchart that describes an illustrative manner of determining whether a prescribed condition is met, which enables a candidate device to use a master account.
- FIG. 5 is a flowchart that describes an illustrative manner of use of any computing device within the environment of FIG. 1 .
- FIG. 6 is a flowchart that describes an illustrative manner of preparing and forwarding billing information using the communication system of FIG. 2 .
- FIG. 7 shows illustrative billing information that can be prepared using the approach described in FIG. 6 .
- FIG. 8 shows a second environment that allows plural computing devices to share a master account; in this case, a candidate device uses the master account by establishing a tethering relationship with a master device.
- FIG. 9 shows an illustrative communication system for use in the environment of FIG. 8 .
- FIG. 10 shows illustrative functionality provided by a computing device for use in the environment of FIG. 8 .
- FIG. 11 is a flowchart that describes one illustrative manner of operation of the communication system of FIG. 8 .
- FIG. 12 is a flowchart that describes one illustrative manner of operation of a master device in the environment of FIG. 8 .
- FIG. 13 is a flowchart that describes one illustrative manner of operation of a candidate (slave) device in the environment of FIG. 8 .
- FIG. 14 is a flowchart that describes an illustrative manner of use of any computing device within the environment of FIG. 8 .
- FIG. 15 shows illustrative processing functionality that can be used to implement any aspect of the features shown in the foregoing drawings.
- Series 100 numbers refer to features originally found in FIG. 1
- series 200 numbers refer to features originally found in FIG. 2
- series 300 numbers refer to features originally found in FIG. 3 , and so on.
- Section A describes illustrative functionality that enables plural computing devices to share a master account according to a first implementation.
- any candidate device is permitted to directly interact with a communication system if it satisfies a prescribed condition with respect to a master device.
- Section B describes illustrative functionality that enables plural computing devices to share a master account according to a second implementation.
- any candidate (slave) device is permitted to communicate with a communication system via a tethering relationship with a master device, providing that it satisfies a prescribed condition with respect to the master device.
- Section C describes illustrative processing functionality that can be used to implement any aspect of the features described in Sections A and B.
- FIG. 15 provides additional details regarding one illustrative physical implementation of the functions shown in the figures.
- FIG. 1 shows an environment 100 in which plural computing devices (e.g., computing devices 102 , 104 , 106 , 108 , 110 ) can share a master account when interacting with a communication system 112 . That is, each computing device can interact with the communication system 112 based on terms specified in the master account.
- the master account may specify a quota of communication resources that can be consumed by the pool of computing devices ( 102 , 104 , 106 , 108 , 110 ) within a billing cycle or other consumption period.
- a user who owns plural computing devices is not required to set up (and pay for) separate per-device accounts which govern interaction with the communication system 112 .
- This section (Section A) sets forth a first approach for implementing shared account functionality.
- the next section (Section B) sets forth a second approach for implementing shared account functionality.
- the communication system 112 may correspond to data processing functionality for interacting with the plural computing devices via wireless communication.
- the communication system 112 may correspond to one or more server computers, one or more data stores, routing functionality, and so on.
- the communication system 112 may be administered by a communication operator.
- the environment 100 can provide plural communication systems that are optionally administered by plural respective communication operators.
- the communication system 112 can provide its services in conjunction with communication infrastructure 114 .
- the communication infrastructure 114 can include a plurality of cell towers provided at different geographic locations, a plurality of base stations, one or more central switching stations, and so on.
- the communication infrastructure 114 can include satellite communication functionality.
- Each of the computing devices can comprise any type of processing device that includes the ability to engage in wireless communication with the communication system 112 .
- Many of the computing devices may correspond to handheld or otherwise mobile computing devices.
- Such computing devices include, without limitation, laptop-type devices of various sizes and features sets, personal digital assistance (PDA) devices, book reader devices, tablet-type devices, handheld game devices, media player devices, medical equipment devices, and so on.
- PDA personal digital assistance
- the computing devices can include traditionally stationary devices, such as personal computing devices, workstation devices, game console devices, set-top box devices, and so on.
- the communication system 112 has, in advance, designated one of the computing devices as a master device (based on any criterion or criteria to be described below).
- the communication system 112 has designated the computing device 102 as the master device.
- the computing device 102 will be referred to as the master device 102 .
- the communication system 112 may treat the master device 102 in a privileged manner, allowing it to interact with the communication system 112 based on the terms specified in the master account, regardless of the location of the master device 102 (so long as the master device 102 is physically able to communicate with the communication system 112 via wireless communication).
- this rule can be varied in different ways, to be described below.
- the communication system 112 After designating the master device 102 , the communication system 112 then performs analysis to determine whether any other computing device is permitted to interact with the communication system 112 using the master account. For purposes of explanation, each computing device that is a candidate for such communication is referred to as a candidate device. More specifically, the communication system 112 seeks to determine whether each of candidate devices X ( 106 ), Y ( 108 ), Z ( 104 ), and W ( 110 ) are permitted to interact the communication system 112 at a particular instance of time.
- the communication system 112 To determine if the candidate device Z 104 is permitted to communicate with the communication system 112 , the communication system 112 first receives condition information.
- the condition information describes a prescribed relation of the candidate device Z 104 to the master device 102 .
- the communication system 112 can receive an indication of the distance (d 1 ) of the candidate device Z from the master device 102 .
- the communication system 112 determines, based on the condition information, whether a communication-enabling condition is met. For example, the communication system 112 determines whether the distance d 1 between the candidate device Z 104 and the master device 102 is less than a prescribed threshold distance (d thresh ).
- the communication system 112 enables the candidate device Z ( 104 ) to directly communicate with the communication system 112 under the terms of the master account.
- FIG. 1 illustrates this communication by the wireless communication symbol 116 .
- candidate device X ( 106 ) and candidate device Y ( 108 ) are also within the prescribed threshold distance from the master device 102 . Therefore, in one implementation, the communication system 112 permits these devices to also directly interact with the communication system 112 .
- candidate device W ( 110 ).
- This candidate device is separated from the master device 102 by more than the threshold distance (d thresh ).
- the communication system 112 may preclude this candidate device from directly interacting with the communication system 112 using the master account.
- FIG. 1 illustrates this disabled communication by the wireless communication symbol 118 .
- the functionality which enables the environment 100 to operate in the manner described above is embodied in the communication system 112 .
- any “off-the-shelf” computing device can participate in the account-sharing approach shown in FIG. 1 , without modification.
- the communication system 112 can maintain control over use of its communication resources by plural computing devices associated with a master account, and thereby potentially lower the risk of unauthorized use of the communication resources.
- FIG. 2 shows one illustrative implementation of the communication system 112 of FIG. 1 .
- the functionality shown in FIG. 2 can be implemented by one or more server computers (or other processing functionality), in conjunction with one or more data stores, routing functionality, etc.
- FIG. 2 indicates that the communication system 112 is in potential communication with plural computing devices 202 , which may correspond to any of the computing devices ( 102 , 104 , 106 , 108 , 110 ) shown in FIG. 1 .
- the communication system 112 can include a configuration module 204 .
- the configuration module 204 sets up the communication system 112 to provide service to the plural computing devices 202 using a single master account.
- the configuration module 204 can receive configuration information that is manually supplied.
- the configuration module 204 can receive such configuration information from a human administrator associated with the communication system 112 and/or an end user.
- the configuration module 204 may provide a network-accessible configuration page that allows the administrator or end user to enter the configuration information, and to later modify the configuration information.
- the configuration information may specify the members of a collection of devices that are permitted to use the master account.
- the configuration information may also optionally identify the computing device that is to serve the role of the master device (e.g., the master device 102 shown in FIG. 1 ). For example, consider the user who owns a mobile telephone device, an ebook reader device, and a wireless modem for use with a laptop computer. The user may access the configuration module 204 to identify these three devices as members of a group that are permitted to use the same master account. That user may also designate the mobile telephone device as the master device. The user can select the master device based on any consideration or combination of considerations.
- the user may designate the mobile telephone device as the master device because that is the device which she carries and uses most often; the other devices may serve more of a peripheral role in her daily routine.
- the configuration module 204 may allow the user to subsequently change the designation of the master device. However, in one implementation, the configuration module 204 may enforce rules which restrict how often the user is allowed to modify the configuration information. In addition, the configuration module 204 may enforce rules which limit the user's choice of the master device based on any consideration(s).
- the configuration module 204 can automatically select or recommend a master device based on an assessment of suitability of the master device, based, in turn, on any criterion or criteria. For example, each computing device can forward condition information to the configuration module 204 which describes its capabilities. For example, each computing device can describe the type of resources which it provides, including its wireless communication functionality, memory resources, processing resources, power source(s), etc.
- the configuration module 204 also has independent access to usage information which indicates the manner in which the end user has used a computing device on past occasions. Based on all or some of these factors, the configuration module 204 can then select a computing device which is deemed a suitable candidate for performing the functions of the master device.
- the configuration module 204 can select a computing device that has the greatest power capacity, or the most advanced wireless communication resources, or the most memory, etc., or any combination of these factors. Alternatively, or in addition, the configuration module 204 can select the computing device which the user seems to use most often.
- the configuration module 204 can select plural master devices.
- the configuration module 204 can select these master devices based on manual selections made by a user and/or based on analysis of condition information in the manner described above.
- the communication system 112 can also include a communication enabler module 206 .
- the communication enabler module 206 performs analysis to determine whether each particular computing device, at each particular time instance, is permitted to interact with the communication system 112 using the master account. According to one implementation, the communication enabler module 206 allows the master device to interact with the communication system 112 without restriction, or with reduced restrictions compared to the candidate devices.
- the communication enabler module 206 performs per-device analysis to determine whether each candidate device is permitted to interact with the communication system 112 at each particular instance of time. To this end, the communication enabler module 206 can receive condition information from one or more environment sensing modules. Generally stated, the environment sensing modules determine the current relation of the candidate device under consideration to the master device.
- one such environment sensing module is a location determination module 208 .
- the location determination module 208 determines the location of the candidate device and the location of the master device.
- the communication enabler module 206 uses this location information to determine the distance between the candidate device and the master device, and to determine whether this distance is less than the threshold distance (d thresh ).
- the location determination module 208 can use any technique or combination of techniques to determine the location of a computing device. In one case, the location determination module 208 can use GPS functionality to determine the location. In another case, the location determination module 208 can use a cell tower triangulation functionality to determine the location of the computing device. In another case, the location determination module 208 can determine the location of the computing device based on its connection to (and hence, its proximity to) a Wi-Fi (IEEE 802.11) access point (or points), and so on. In one case, each user can be permitted to expressly opt in to (or opt out of) the collection of location information in the manner described above. Further, the communication system 112 can provide appropriate security provisions to maintain the collected location information in confidence.
- Wi-Fi IEEE 802.11
- the location determination module 208 can provide condition information which more directly indicates the location of the candidate device relative to the master device. For example, the location determination module 208 can determine that two computing devices are suitably close together if they are both using the same cell tower. In another case, the location determination module 208 can determine that two computing devices are close together if they can communicate with each other in any manner, e.g., using Wi-Fi (IEEE 802.11) signaling, Bluetooth (IEEE 802.15) signaling, etc. Or the location determination module 208 can determine that two computing devices are close together if one device can read an RFID tag provided by another device, and so on.
- Wi-Fi IEEE 802.11
- Bluetooth IEEE 802.15
- the communication enabler module 206 can base its communication-enabling decisions on other condition information (e.g., besides or in addition to the location information). For example, the communication enabler module 206 can apply usage-based conditional rules to determine whether a candidate device is permitted to interact with the communication system 112 . For example, the communication enabler module 206 can permit a candidate device to interact with the communication system 112 providing that the master device is not being used, or providing that the master device is consuming less than a threshold amount of bandwidth, or providing that the candidate device is expected to consume less than a threshold amount of bandwidth, or providing that all operational computing devices are expected to consume less than a total threshold amount of bandwidth, and so on.
- other condition information e.g., besides or in addition to the location information.
- the communication enabler module 206 can apply usage-based conditional rules to determine whether a candidate device is permitted to interact with the communication system 112 .
- the communication enabler module 206 can permit a candidate device to interact with the communication system 112 providing that the master device is not
- FIG. 2 also shows a module 210 with the caption “other location determination module(s),” with a dashed-line border.
- any functionality that is outside the domain of the communication system 112 can also supply location information to the communication enabler module 206 .
- any computing device can make a determination of its absolute or relative location, and forward that location information to the communication enabler module 206 .
- third-part functionality (such as GPS functionality) can forward location information to the communication enabler module 206 .
- any condition information that is used by the communication enabler module 206 can originate from any source, including local source(s) and/or remote source(s) (with respect to the communication system 112 ).
- the communication enabler module 206 permits one or more candidate devices to interact with the communication system 112 . If so, a communication module 212 can proceed to interact with the enabled device(s) via wireless communication. In doing so, the candidate device(s) consume communication resources 214 .
- the communication resources 214 can corresponds to any processing resources, bandwidth resources, storage resources, etc. used by the communication system 112 to provide its services.
- the usage of communication resources 214 can be quantified in any manner.
- the usage of communication resources 214 can be measured and expressed in terms of time (e.g., the amount of time during which communication resources are consumed), in terms of data volume (e.g., the amount of data that is exchanged in a given time), in terms of bandwidth or connection speed (e.g., the rate at which information is transferred), and so on.
- the term usage data refers to any information that describes the usage of communication resources 214 .
- An account management module 216 compiles the usage data into billing information on an account-by-account basis. The account management module 216 then forwards the billing information to an account holder, requesting the account holder to pay for the resources that have been consumed.
- FIGS. 3-6 describe the operation of the environment 100 of FIG. 1 and the communication system 112 of FIG. 2 in the form of flowcharts. Since the principles underpinning the environment 100 have already been described, certain features of the flowcharts will be described in summary fashion below.
- this figure shows a procedure 300 that summarizes one manner of operation of the communication system 112 of FIG. 1 .
- the communication system 112 selects a master device according to any manual and/or automatic technique described above.
- the communication system 112 receives condition information regarding an operating environment associated with a candidate device, such as candidate device Z 104 .
- the condition information defines a current relation between the candidate device and the master device, such as a distance between these two devices.
- the communication system 304 determines, based on the condition information, whether the candidate device satisfies a communication-enabling condition.
- the communication system 112 enables the candidate device to engage in wireless communication with the communication system 112 if the candidate device satisfies the communication- enabling condition.
- the communication system 112 interacts with the enabled candidate device, utilizing communication resources in the process.
- the communication system 112 receives usage data pertaining to communication resources consumed by the candidate device in the course of said communicating. The communication system 112 then associates the usage data with a master account that applies to all of the plural computing devices.
- FIG. 4 shows a procedure 400 whereby the communication system 112 determines whether or not to allow a candidate device to interact with the communication system 112 .
- the communication system 112 determines location information that specifies the locations of the candidate device and the master device. More specifically, the communication system 112 can determine the absolute locations of these devices and/or the location of the candidate device relative to the location of the master device.
- the communication system 112 can determine the distance between the candidate device and the master device based on the location information collected in block 402 . The communication system 112 can use this distance to determine whether the candidate device is permitted to interact with the communication system 112 .
- location information is one among many factors that the communication system 112 can use it making its communication-enablement decisions.
- FIG. 5 shows a procedure 500 that describes one manner in which a user may interact with the environment 100 shown in FIG. 1 .
- the user can place a candidate device within a predetermined distance of a master device. For example, suppose that the user (or some other entity) has designated the master device as the user's mobile telephone device. To enable a book reader device to use the same master account as the mobile telephone device, the user may physically move the book reader device to within the threshold distance (d thresh ) of the mobile telephone device. In block 504 , the user can then use the candidate device to interact with the communication system 112 , using the master account.
- d thresh threshold distance
- the user can receive an indication that communication is now disabled (with respect to the master account). In one case, this indication may simply result from the user's observation that the candidate device is no longer connected to the communication system 112 .
- a single user owns or otherwise controls the plural computing devices that share the same master account.
- a group of users can own or otherwise control the plural computing devices.
- a parent of a household can provide configuration information which establishes a sharing relationship among computing devices used by members of her family.
- a single user owns or otherwise controls the plural computing devices.
- the communication system 112 can define different types of rules that govern the use of its communication resources by a user (or group of users). In one case, the communication system 112 may only permit one computing device to communicate at one time. In another case, the communication system 112 can permit two or more computing devices to communicate at the same type.
- the terms of the master account can place usage-based restrictions on the singular or joint use of communication resources by one or more computing devices.
- the master account can place a quota on the amount of resources that can be consumed, quantified and expressed in any manner.
- the communication system 112 can enforce these limits.
- the communication system 112 can place restrictions on the total amount of communication resources that can be consumed in a billing cycle. Such restrictions can be expressed in any manner, e.g., in terms of time, and/or volume of data, and so on.
- the communication system 112 can specify restrictions on the total amount of communication resources that can be consumed in any time instance.
- the communication system 112 can express the per-instance consumption of these resources in any manner, e.g., in terms of consumed bandwidth.
- any computing device that satisfies the communication-enabling condition(s) can communicate with the communication system 112 providing that such a use will not violate per-cycle usage limits and/or per-instance usage limits.
- the communication system 112 treats any use of the communication resources in a device-agnostic manner, providing that, as said, any device that uses the communication resources satisfies the communication-enabling condition.
- the communication system 112 can place constraints that are particular to individual computing devices. For example, the communication system 112 can allow the master device to consume a first prescribed amount of communication resources; if another candidate device is allowed to communicate at the same time, the communication system 112 can allow that candidate device to consume a second prescribed amount of communication resources (where the second amount may differ from the first amount).
- the communication system 112 can be configured in different ways based on any business-related and/or technical-related consideration(s).
- FIG. 6 shows a procedure 600 that sets forth one manner by which the communication system 112 can generate and supply billing information.
- the communication system 112 receives usage data for a particular account over the course of a billing period, such as a month.
- the communication system 112 generates billing information for the account based on the usage data.
- the communication system 112 sends the billing information to an account holder.
- FIG. 7 provides high-level information regarding illustrative billing information 702 .
- the billing information 702 can provide an indication of the total usage and cost of resources consumed by the plural computing devices.
- the billing information 702 can break down the usage and cost information on a per-device basis. This enables the recipient user to gain insight regarding his or her usage habits over the course of the billing period. Based on this information, the user may decide to modify his or her usage habits. Alternatively, or in addition, the user may decide to change the configuration information in any way, such as by increasing or decreasing the resource limits, changing the master device, and so on.
- the billing information 702 can express the resources that were consumed in any manner, e.g., by providing textual billing information and/or graphical billing information and/or some other form of billing information.
- the sharing of a master account by plural computing devices may afford one or more benefits. For example, the user may determine that it possible to save money by bundling the use of multiple devices into a single account. This is because the use of a single master account may reduce the number of administrative per-account charges.
- the use a single master account may allow a user to more effectively and flexibly use up allocated communication resources.
- the user may find that he or she is using only a fraction of the communication resources that he or she is asked to pay for on a periodic basis. This issue is particularly pronounced in those situations in which utilization of a computing device is uneven throughout a year or other time span. For example, consider the case in which the computer device is a camera that has wireless communication functionality. Further assume that a user primarily uses the camera while on vacation during the summer months. While the user may infrequently use the camera in the remainder of the year, in the per-device approach, the user will be asked to nevertheless pay a monthly fee to maintain the account in active status.
- setting up a single master account that is shared by multiple computing devices (including the camera in this case) will allow the user to infrequently use any computing device without wasting communication resources for which he or she will be charged.
- the above approach can also be used in combination with per-device accounts.
- the communication system 112 can be set up such that a candidate device is allowed to use a master account when the candidate device is within a predetermined distance of the master device. But that same candidate device may also be given the option of communicating using a separate account that is dedicated to that device. For example, the user may opt to use that per-device account when the candidate device is not in proximity to the master device.
- FIG. 8 shows an environment 800 that provides a second implementation of the account-sharing paradigm.
- This environment 800 again includes a plurality of computing devices (e.g., 802 , 804 , 806 ) which communicate with a communication system 808 , using associated communication infrastructure 810 .
- This functionality can be implemented using the same type of equipment described above in Section A for the first implementation.
- a candidate device 804 communicates with the communication system 808 by establishing a tethering relationship 812 with a master device 802 . After this relationship is established, the master device 802 handles the interaction with the communication system 808 , as indicated by communication symbol 814 . In this role, the candidate device 804 functions as a slave device, and is henceforth referred to as a slave device.
- FIG. 9 shows one implementation of the communication system 808 of FIG. 8 .
- the communication system 808 can interact with both the master device 802 and the slave device 804 .
- the communication system 808 can interact with additional computing devices.
- the communication system 808 can set up plural tethering relationships between the master device 802 and plural candidate devices.
- the communication system 808 can set up plural tethering relationships that involve plural master devices.
- the communication system 808 includes a configuration module 902 that serves the same basic role as the configuration module 204 of Section A.
- the configuration module 902 can receive configuration information which defines the membership of a group of computing devices that are permitted to share a master account.
- the configuration module 902 can also receive configuration information which defines the master device, e.g., based on a manual selection by any user or agent.
- the configuration module 902 can receive condition information from the computing devices, such as device capability information, power capacity information, etc. Based thereon, the configuration module 902 can automatically select the master device. For example, the configuration module 902 can assign the role of master to the computing device that has the most robust communication resources, and/or the most effective power supply, and so on. Alternatively, or in addition, the configuration module 902 can assign the role of master to the computing device that is used most often by a user (which can be determined based on past usage information).
- a tether management module 906 establishes a tethering relationship between two or more computing devices.
- the tether management module 906 determines whether it is appropriate to set up such a tethering relationship between a master device and a candidate device under consideration. It performs this function based on condition information that it receives from environment sensing module(s).
- the condition information can correspond to any information which indicates a current relation between the candidate device and the master device.
- the tether management module 906 can receive location information from a location determination module 910 (and/or an external location determination module 912 ).
- the location information describes, in either absolute or relative terms, the locations of the candidate device and the master device.
- the tether management module 906 can set up the tethering relationship if the candidate device is within a prescribed threshold distance (d thresh ) from the master device.
- the tethering management module 906 can consider yet other condition information in making its tethering decisions.
- the tether management module 906 sends set-up instructions to both the master device and the candidate (slave) device. (Alternatively, or in addition, the master device can send a set-up instruction to the slave device.) The slave device and the master device then proceed to set up the tethering relationship. According to one implementation, the devices set up this relationship without any involvement of the user, or without substantial involvement.
- a communication module 914 can interact with the slave device via the master device.
- the communication module 914 can also optionally conduct communication that is attributed to the master device per se.
- the communication system 808 consumes communication resources 916 .
- An account management module 918 receives usage data that indicates the resources consumed during a billing period. It then prepares and forwards billing information to the account holders as per the same procedure shown in FIG. 6 .
- the billing information itself can provide the itemized information described in connection with FIG. 7 .
- FIG. 10 shows illustrative functionality that can be provided by the master device 802 .
- the slave device 804 can include the same functionality (e.g., insofar as the slave device 804 may, at another time, function as a master device, and the master device 802 may function as a slave device).
- the master device 802 includes an optional device-side configuration module 1002 .
- This module may represent any functionality for interacting with the system-side configuration module 902 .
- the user may use the device-side configuration module 1002 to designate the master device 802 as the device which is to assume the role of master.
- the user can also provide other configuration information via the device-side configuration module 1002 .
- a device-side tether management module 1004 receives instructions from the system-side tether management module 906 . In response, the device-side tether management module 1004 establishes a tethering relationship with the slave device 804 . (A counterpart tether management module provided by a slave device establishes a tethering relationship with the master device 802 .)
- the tethering relationship can be established in any manner, such as by a wireless coupling mechanism (e.g., a Bluetooth or Wi-Fi mechanism, etc.), and/or a hardwired coupling mechanism (e.g., via a USB coupling mechanism, etc.).
- FIG. 10 shows that the master device 802 includes any type of tethering interface 1006 for establishing a tethering connection with a counterpart tethering interface module (not shown) of the slave device 804 .
- a device-side communication module 1008 communicates with the system-side communication module 914 once a tethering relationship has been established.
- FIGS. 11-14 set forth the manner of operation of the environment 800 of FIG. 8 in flowchart form. Since the principle of operation of this functionality has already been set forth above, certain features are described in summary form below.
- this figure shows a procedure 1100 that explains the operation of the communication system 808 of FIG. 9 .
- the communication system 808 selects the master device based on any criterion or criteria described above. More specifically, the communication system 808 can perform this task by querying the computing devices associated with a master account to collect condition information therefrom. Alternatively, or in addition, the computing devices can independently forward condition information to the communication system 808 . The communication system 808 selects the master device based on the condition information. Alternatively, the communication system 808 can choose the master device based on a manual selection.
- the communication system 808 may receive additional condition information.
- the condition information describes the relation of a candidate device with respect to the master device, such as the location of the candidate device relative to the master device.
- the communication system 808 defines a tethering relation between the candidate device and the master device if the condition information satisfies a communication-enabling condition.
- the communication system 808 sends instructions to the master device to set up the tethering relationship.
- the communication system 808 (and/or the master device) sends instructions to the candidate device to set up the tethering relation.
- the communication system 808 interacts with the candidate device via the master device using the tethering relationship.
- the communication system 112 receives usage data pertaining to the use of communication resources by the plural computing devices. The communication system 808 then prepares billing information and sends the billing information to an appropriate account holder.
- FIG. 12 shows a procedure 1200 that explains one manner of operation of the master device 802 .
- the master device 802 optionally provides condition information to the communication system 808 , such as location information, device capability information, and power capacity information, etc.
- the communication system 808 uses this information to: a) determine which computing device is most appropriate to use as a master device; and b) then determine whether it is appropriate to set up a tethering relationship between the master device and a candidate device.
- the master device 802 receives instructions to set up a tethering relationship with the slave device 804 , wherein the master device 802 is instructed to assume the role of master.
- the master device 802 establishes the tethering relationship as instructed.
- the master device 802 then interacts with the communication system 808 , at the direction of the slave device 804 .
- FIG. 13 shows a procedure 1300 that explains one manner of operation of the slave device 804 .
- the slave device 804 optionally provides condition information to the communication system 808 , such as location information, device capability information, and power capacity information. This information serves the same use as set forth above with respect to FIG. 12 .
- the slave device 804 receives instructions to set up a tethering relationship with the master device 802 , wherein the slave device 804 is instructed to assume the role of slave.
- the instructions can originate from either the communication system 808 or the master device (or both).
- the instructions request the slave device to shut down any independent wireless connection it may have established.
- the instruction may also provide configuration information which enables the slave device to establish a tethering relationship with the particular type of master device that is being used.
- the slave device 804 establishes a tethering relationship as instructed.
- the slave device 804 then interacts with the communication system 808 via the connection established by the master device 802 .
- FIG. 14 shows a procedure 1400 that sets forth one way in which a user may use the functionality shown in the environment 800 of FIG. 8 .
- the user may place a candidate device within a threshold distance (d thresh ) of the master device.
- the communication system 808 automatically senses the proximity of these two devices and automatically (or at least partially automatically) sets up the tethering relationship between the two devices. That is, the user is not asked to expressly set up this relationship.
- the user then uses the slave device to interact with the communication system 808 via the master device.
- the use assume that the use next moves the slave device beyond the threshold distance (d thresh ) from the master device.
- the user receives an indication that the tethering relationship is not longer established. In one case, the user may receive such an indication by simply noting that he or she is no longer able to interact with the communication system 808 .
- the use of the communication system 808 to set up the tethering relationship has one or more benefits in illustrative embodiments.
- this provision simplifies the configuration of the tethering relationship from the perspective of the user.
- the communications operator can maintain control of the tethering relationship, and thereby reduce the risk of undesirable use of communication resources by computing devices.
- a tethering relationship may be deemed desirable in some implementations in order to reduce the impact of the plural computing devices on a wireless network.
- the tethering relationship may reduce the expenditure of power by the slave devices.
- FIG. 15 sets forth illustrative electrical data processing functionality 1500 that can be used to implement any aspect of the functions described above.
- the electrical data processing functionality 1500 represents a physical and tangible machine.
- the processing functionality 1500 can be used to implement any aspect of the communication systems ( 112 , 808 ) of the implementations of Sections A and B, and/or any aspect of the computing devices of the implementations of Sections A and B.
- the processing functionality 1500 may correspond to any type of processing device that includes one or more processing devices.
- the processing functionality 1500 can include volatile and non-volatile memory, such as RAM 1502 and ROM 1504 , as well as one or more processing devices 1506 .
- the processing functionality 1500 also optionally includes various media devices 1508 , such as a hard disk module, an optical disk module, and so forth.
- the processing functionality 1500 can perform various operations identified above when the processing device(s) 1506 executes instructions that are maintained by memory (e.g., RAM 1502 , ROM 1504 , or elsewhere).
- instructions and other information can be stored on any computer readable medium 1510 , including, but not limited to, static memory storage devices, magnetic storage devices, optical storage devices, and so on.
- the term computer readable medium also encompasses plural storage devices. In all cases, the computer readable medium 1510 represents some form of physical and tangible mechanism.
- the processing functionality 1500 also includes an input/output module 1512 for receiving various inputs from a user (via input modules 1514 ), and for providing various outputs to the user (via output modules).
- One particular output mechanism may include a presentation module 1516 and an associated graphical user interface (GUI) 1518 .
- the processing functionality 1500 can also include one or more network interfaces 1520 for exchanging data with other devices via one or more communication conduits 1522 .
- the network interfaces 1520 can encompass wireless communication functionality for communicating with wireless communication infrastructure.
- One or more communication buses 1524 communicatively couple the above-described components together.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
- Many computing devices now accommodate some form of wireless communication functionality. Common examples of such wireless-enabled devices include laptop-type computers of various sizes and feature sets, mobile telephones, personal digital assistant (PDA) devices, tablet-type computing devices, book reader devices, and so on. In view of the success of these wireless-enabled devices in the marketplace, the industry can be expected to offer additional types of wireless-enabled devices in the future.
- Some manufacturers have attempted to consolidate many different functions into a single wireless-enabled device. Yet, at present, many users own two or more distinct wireless-enabled devices. Furthermore, many users routinely carry and utilize plural wireless-enabled devices. For example, a user who departs for a business trip may bring along a mobile telephone, a tablet-type device, and a laptop computer. Each of these devices may fulfill a slightly different purpose over the course of the trip.
- A user who purchases a wireless-enabled device is typically expected to enter into a contractual obligation with a communications operator. For example, a user who owns a mobile telephone and a wireless modem card (for use, for example, in conjunction with a laptop computer) may sign up for two separate accounts with one or more communications operators. The account associated with the mobile telephone may entitle the user to talk for a prescribed number of minutes in a billing cycle. The account associated with the wireless modem card may allow the user to consume a prescribed volume of content during the billing cycle, and so forth. In addition, or alternatively, an account may allow the user to obtain information at a prescribed maximum bandwidth, and so on.
- The above-described arrangement is not fully satisfactory, for illustrative reasons set forth in greater detail herein.
- Functionality is described that allows plural computing devices to share a master account. The master account defines an amount of available communication resources that can be consumed by the plural computing devices. In a first implementation, the functionality allows any candidate device to directly communicate with a communication system using the master account, providing that the candidate device satisfies a prescribed condition with respect to a master device. For example, the functionality can allow the candidate device to communicate with the communication system if it is within a threshold distance of the master device.
- In a second implementation, functionality is described that again allows plural computing devices to share a master account. In this case, the functionality instructs the master device and the candidate device to set up a tethering relationship if these devices satisfy a prescribed condition. The functionality can then allow the candidate (slave) device to communicate with the communication system, via the master device, using the master account. In one implementation, the functionality can set up the tethering relationship without any involvement of the user (or users) who operate the master device and candidate device, or without substantial involvement.
- In either implementation, the functionality can prepare and forward billing information to an account holder which describes the utilization of communication resources by the plural computing devices.
- The above approach can be manifested in various types of systems, components, methods, computer readable media, data structures, articles of manufacture, and so on.
- This Summary is provided to introduce a selection of concepts in a simplified form; these concepts are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
-
FIG. 1 shows a first environment that allows plural computing devices to share a master account having a prescribed consumption quota associated therewith. -
FIG. 2 shows an illustrative communication system for use in the environment ofFIG. 1 -
FIG. 3 is a flowchart that describes one illustrative manner of operation of the communication system ofFIG. 2 . -
FIG. 4 is a flowchart that describes an illustrative manner of determining whether a prescribed condition is met, which enables a candidate device to use a master account. -
FIG. 5 is a flowchart that describes an illustrative manner of use of any computing device within the environment ofFIG. 1 . -
FIG. 6 is a flowchart that describes an illustrative manner of preparing and forwarding billing information using the communication system ofFIG. 2 . -
FIG. 7 shows illustrative billing information that can be prepared using the approach described inFIG. 6 . -
FIG. 8 shows a second environment that allows plural computing devices to share a master account; in this case, a candidate device uses the master account by establishing a tethering relationship with a master device. -
FIG. 9 shows an illustrative communication system for use in the environment ofFIG. 8 . -
FIG. 10 shows illustrative functionality provided by a computing device for use in the environment ofFIG. 8 . -
FIG. 11 is a flowchart that describes one illustrative manner of operation of the communication system ofFIG. 8 . -
FIG. 12 is a flowchart that describes one illustrative manner of operation of a master device in the environment ofFIG. 8 . -
FIG. 13 is a flowchart that describes one illustrative manner of operation of a candidate (slave) device in the environment ofFIG. 8 . -
FIG. 14 is a flowchart that describes an illustrative manner of use of any computing device within the environment ofFIG. 8 . -
FIG. 15 shows illustrative processing functionality that can be used to implement any aspect of the features shown in the foregoing drawings. - The same numbers are used throughout the disclosure and figures to reference like components and features.
Series 100 numbers refer to features originally found inFIG. 1 , series 200 numbers refer to features originally found inFIG. 2 ,series 300 numbers refer to features originally found inFIG. 3 , and so on. - This disclosure is organized as follows. Section A describes illustrative functionality that enables plural computing devices to share a master account according to a first implementation. In this case, any candidate device is permitted to directly interact with a communication system if it satisfies a prescribed condition with respect to a master device. Section B describes illustrative functionality that enables plural computing devices to share a master account according to a second implementation. Here, any candidate (slave) device is permitted to communicate with a communication system via a tethering relationship with a master device, providing that it satisfies a prescribed condition with respect to the master device. Section C describes illustrative processing functionality that can be used to implement any aspect of the features described in Sections A and B.
- As a preliminary matter, some of the figures describe concepts in the context of one or more structural components, variously referred to as functionality, modules, features, elements, etc. The various components shown in the figures can be implemented in any manner by any physical and tangible mechanisms. In one case, the illustrated separation of various components in the figures into distinct units may reflect the use of corresponding distinct physical and tangible components in an actual implementation. Alternatively, or in addition, any single component illustrated in the figures may be implemented by plural actual physical components. Alternatively, or in addition, the depiction of any two or more separate components in the figures may reflect different functions performed by a single actual physical component.
FIG. 15 , to be discussed in turn, provides additional details regarding one illustrative physical implementation of the functions shown in the figures. - Other figures describe the concepts in flowchart form. In this form, certain operations are described as constituting distinct blocks performed in a certain order. Such implementations are illustrative and non-limiting. Certain blocks described herein can be grouped together and performed in a single operation, certain blocks can be broken apart into plural component blocks, and certain blocks can be performed in an order that differs from that which is illustrated herein (including a parallel manner of performing the blocks). The blocks shown in the flowcharts can be implemented in any manner by any physical and tangible mechanisms.
- The following explanation may identify one or more features as “optional.” This type of statement is not to be interpreted as an exhaustive indication of features that may be considered optional; that is, other features can be considered as optional, although not expressly identified in the text. Similarly, the explanation may indicate that one or more features can be implemented in the plural (that is, by providing more than one of the features). This statement is not be interpreted as an exhaustive indication of features that can be duplicated. Finally, the terms “exemplary” or “illustrative” refer to one implementation among potentially many implementations.
- A. First Implementation
-
FIG. 1 shows anenvironment 100 in which plural computing devices (e.g.,computing devices communication system 112. That is, each computing device can interact with thecommunication system 112 based on terms specified in the master account. Among other conditions, the master account may specify a quota of communication resources that can be consumed by the pool of computing devices (102, 104, 106, 108, 110) within a billing cycle or other consumption period. As a result of this arrangement, a user who owns plural computing devices is not required to set up (and pay for) separate per-device accounts which govern interaction with thecommunication system 112. This section (Section A) sets forth a first approach for implementing shared account functionality. The next section (Section B) sets forth a second approach for implementing shared account functionality. - The
communication system 112 may correspond to data processing functionality for interacting with the plural computing devices via wireless communication. For example, thecommunication system 112 may correspond to one or more server computers, one or more data stores, routing functionality, and so on. In one case, thecommunication system 112 may be administered by a communication operator. Although not shown, in another case, theenvironment 100 can provide plural communication systems that are optionally administered by plural respective communication operators. - The
communication system 112 can provide its services in conjunction withcommunication infrastructure 114. For example, thecommunication infrastructure 114 can include a plurality of cell towers provided at different geographic locations, a plurality of base stations, one or more central switching stations, and so on. Alternatively, or in addition, thecommunication infrastructure 114 can include satellite communication functionality. - Each of the computing devices (e.g.,
computing devices communication system 112. Many of the computing devices may correspond to handheld or otherwise mobile computing devices. Such computing devices include, without limitation, laptop-type devices of various sizes and features sets, personal digital assistance (PDA) devices, book reader devices, tablet-type devices, handheld game devices, media player devices, medical equipment devices, and so on. In addition, the computing devices can include traditionally stationary devices, such as personal computing devices, workstation devices, game console devices, set-top box devices, and so on. - In example of
FIG. 1 , assume that thecommunication system 112 has, in advance, designated one of the computing devices as a master device (based on any criterion or criteria to be described below). In this particular example, thecommunication system 112 has designated thecomputing device 102 as the master device. Henceforth, for brevity, thecomputing device 102 will be referred to as themaster device 102. In one implementation, thecommunication system 112 may treat themaster device 102 in a privileged manner, allowing it to interact with thecommunication system 112 based on the terms specified in the master account, regardless of the location of the master device 102 (so long as themaster device 102 is physically able to communicate with thecommunication system 112 via wireless communication). However, this rule can be varied in different ways, to be described below. - After designating the
master device 102, thecommunication system 112 then performs analysis to determine whether any other computing device is permitted to interact with thecommunication system 112 using the master account. For purposes of explanation, each computing device that is a candidate for such communication is referred to as a candidate device. More specifically, thecommunication system 112 seeks to determine whether each of candidate devices X (106), Y (108), Z (104), and W (110) are permitted to interact thecommunication system 112 at a particular instance of time. - Consider the illustrative case of candidate device Z (104). To determine if the
candidate device Z 104 is permitted to communicate with thecommunication system 112, thecommunication system 112 first receives condition information. The condition information describes a prescribed relation of thecandidate device Z 104 to themaster device 102. For example, thecommunication system 112 can receive an indication of the distance (d1) of the candidate device Z from themaster device 102. Thecommunication system 112 then determines, based on the condition information, whether a communication-enabling condition is met. For example, thecommunication system 112 determines whether the distance d1 between thecandidate device Z 104 and themaster device 102 is less than a prescribed threshold distance (dthresh). If this condition is met, then thecommunication system 112 enables the candidate device Z (104) to directly communicate with thecommunication system 112 under the terms of the master account.FIG. 1 illustrates this communication by thewireless communication symbol 116. Note that candidate device X (106) and candidate device Y (108) are also within the prescribed threshold distance from themaster device 102. Therefore, in one implementation, thecommunication system 112 permits these devices to also directly interact with thecommunication system 112. - In contrast, consider the illustrative case of candidate device W (110). This candidate device is separated from the
master device 102 by more than the threshold distance (dthresh). Hence, thecommunication system 112 may preclude this candidate device from directly interacting with thecommunication system 112 using the master account.FIG. 1 illustrates this disabled communication by thewireless communication symbol 118. - According to one illustrative implementation, the functionality which enables the
environment 100 to operate in the manner described above is embodied in thecommunication system 112. Hence, in this implementation, any “off-the-shelf” computing device can participate in the account-sharing approach shown inFIG. 1 , without modification. As another potential benefit of this implementation, thecommunication system 112 can maintain control over use of its communication resources by plural computing devices associated with a master account, and thereby potentially lower the risk of unauthorized use of the communication resources. -
FIG. 2 shows one illustrative implementation of thecommunication system 112 ofFIG. 1 . The functionality shown inFIG. 2 can be implemented by one or more server computers (or other processing functionality), in conjunction with one or more data stores, routing functionality, etc.FIG. 2 indicates that thecommunication system 112 is in potential communication with plural computing devices 202, which may correspond to any of the computing devices (102, 104, 106, 108, 110) shown inFIG. 1 . - The
communication system 112 can include a configuration module 204. The configuration module 204 sets up thecommunication system 112 to provide service to the plural computing devices 202 using a single master account. In one case, the configuration module 204 can receive configuration information that is manually supplied. For example, the configuration module 204 can receive such configuration information from a human administrator associated with thecommunication system 112 and/or an end user. For example, the configuration module 204 may provide a network-accessible configuration page that allows the administrator or end user to enter the configuration information, and to later modify the configuration information. - The configuration information may specify the members of a collection of devices that are permitted to use the master account. The configuration information may also optionally identify the computing device that is to serve the role of the master device (e.g., the
master device 102 shown inFIG. 1 ). For example, consider the user who owns a mobile telephone device, an ebook reader device, and a wireless modem for use with a laptop computer. The user may access the configuration module 204 to identify these three devices as members of a group that are permitted to use the same master account. That user may also designate the mobile telephone device as the master device. The user can select the master device based on any consideration or combination of considerations. For example, the user may designate the mobile telephone device as the master device because that is the device which she carries and uses most often; the other devices may serve more of a peripheral role in her daily routine. The configuration module 204 may allow the user to subsequently change the designation of the master device. However, in one implementation, the configuration module 204 may enforce rules which restrict how often the user is allowed to modify the configuration information. In addition, the configuration module 204 may enforce rules which limit the user's choice of the master device based on any consideration(s). - Alternatively, or in addition, the configuration module 204 can automatically select or recommend a master device based on an assessment of suitability of the master device, based, in turn, on any criterion or criteria. For example, each computing device can forward condition information to the configuration module 204 which describes its capabilities. For example, each computing device can describe the type of resources which it provides, including its wireless communication functionality, memory resources, processing resources, power source(s), etc. The configuration module 204 also has independent access to usage information which indicates the manner in which the end user has used a computing device on past occasions. Based on all or some of these factors, the configuration module 204 can then select a computing device which is deemed a suitable candidate for performing the functions of the master device. For example, the configuration module 204 can select a computing device that has the greatest power capacity, or the most advanced wireless communication resources, or the most memory, etc., or any combination of these factors. Alternatively, or in addition, the configuration module 204 can select the computing device which the user seems to use most often.
- In another implementation, the configuration module 204 can select plural master devices. The configuration module 204 can select these master devices based on manual selections made by a user and/or based on analysis of condition information in the manner described above.
- The
communication system 112 can also include acommunication enabler module 206. Thecommunication enabler module 206 performs analysis to determine whether each particular computing device, at each particular time instance, is permitted to interact with thecommunication system 112 using the master account. According to one implementation, thecommunication enabler module 206 allows the master device to interact with thecommunication system 112 without restriction, or with reduced restrictions compared to the candidate devices. - On the other hand, the
communication enabler module 206 performs per-device analysis to determine whether each candidate device is permitted to interact with thecommunication system 112 at each particular instance of time. To this end, thecommunication enabler module 206 can receive condition information from one or more environment sensing modules. Generally stated, the environment sensing modules determine the current relation of the candidate device under consideration to the master device. - For example, one such environment sensing module is a
location determination module 208. Thelocation determination module 208 determines the location of the candidate device and the location of the master device. Thecommunication enabler module 206 uses this location information to determine the distance between the candidate device and the master device, and to determine whether this distance is less than the threshold distance (dthresh). - The
location determination module 208 can use any technique or combination of techniques to determine the location of a computing device. In one case, thelocation determination module 208 can use GPS functionality to determine the location. In another case, thelocation determination module 208 can use a cell tower triangulation functionality to determine the location of the computing device. In another case, thelocation determination module 208 can determine the location of the computing device based on its connection to (and hence, its proximity to) a Wi-Fi (IEEE 802.11) access point (or points), and so on. In one case, each user can be permitted to expressly opt in to (or opt out of) the collection of location information in the manner described above. Further, thecommunication system 112 can provide appropriate security provisions to maintain the collected location information in confidence. - Alternatively, or in addition, the
location determination module 208 can provide condition information which more directly indicates the location of the candidate device relative to the master device. For example, thelocation determination module 208 can determine that two computing devices are suitably close together if they are both using the same cell tower. In another case, thelocation determination module 208 can determine that two computing devices are close together if they can communicate with each other in any manner, e.g., using Wi-Fi (IEEE 802.11) signaling, Bluetooth (IEEE 802.15) signaling, etc. Or thelocation determination module 208 can determine that two computing devices are close together if one device can read an RFID tag provided by another device, and so on. - In addition, or alternatively, the
communication enabler module 206 can base its communication-enabling decisions on other condition information (e.g., besides or in addition to the location information). For example, thecommunication enabler module 206 can apply usage-based conditional rules to determine whether a candidate device is permitted to interact with thecommunication system 112. For example, thecommunication enabler module 206 can permit a candidate device to interact with thecommunication system 112 providing that the master device is not being used, or providing that the master device is consuming less than a threshold amount of bandwidth, or providing that the candidate device is expected to consume less than a threshold amount of bandwidth, or providing that all operational computing devices are expected to consume less than a total threshold amount of bandwidth, and so on. -
FIG. 2 also shows a module 210 with the caption “other location determination module(s),” with a dashed-line border. This indicates that any functionality that is outside the domain of thecommunication system 112 can also supply location information to thecommunication enabler module 206. For example, any computing device can make a determination of its absolute or relative location, and forward that location information to thecommunication enabler module 206. In addition, or alternatively, third-part functionality (such as GPS functionality) can forward location information to thecommunication enabler module 206. More generally stated, any condition information that is used by thecommunication enabler module 206 can originate from any source, including local source(s) and/or remote source(s) (with respect to the communication system 112). - Presume that the
communication enabler module 206 permits one or more candidate devices to interact with thecommunication system 112. If so, acommunication module 212 can proceed to interact with the enabled device(s) via wireless communication. In doing so, the candidate device(s) consumecommunication resources 214. Thecommunication resources 214 can corresponds to any processing resources, bandwidth resources, storage resources, etc. used by thecommunication system 112 to provide its services. - The usage of
communication resources 214 can be quantified in any manner. For example, the usage ofcommunication resources 214 can be measured and expressed in terms of time (e.g., the amount of time during which communication resources are consumed), in terms of data volume (e.g., the amount of data that is exchanged in a given time), in terms of bandwidth or connection speed (e.g., the rate at which information is transferred), and so on. As used herein, the term usage data refers to any information that describes the usage ofcommunication resources 214. - An
account management module 216 compiles the usage data into billing information on an account-by-account basis. Theaccount management module 216 then forwards the billing information to an account holder, requesting the account holder to pay for the resources that have been consumed. -
FIGS. 3-6 describe the operation of theenvironment 100 ofFIG. 1 and thecommunication system 112 ofFIG. 2 in the form of flowcharts. Since the principles underpinning theenvironment 100 have already been described, certain features of the flowcharts will be described in summary fashion below. - Starting with
FIG. 3 , this figure shows aprocedure 300 that summarizes one manner of operation of thecommunication system 112 ofFIG. 1 . Inblock 302, thecommunication system 112 selects a master device according to any manual and/or automatic technique described above. Inblock 304, thecommunication system 112 receives condition information regarding an operating environment associated with a candidate device, such ascandidate device Z 104. The condition information defines a current relation between the candidate device and the master device, such as a distance between these two devices. Inblock 306, thecommunication system 304 determines, based on the condition information, whether the candidate device satisfies a communication-enabling condition. Inblock 308, thecommunication system 112 enables the candidate device to engage in wireless communication with thecommunication system 112 if the candidate device satisfies the communication- enabling condition. Inblock 310, thecommunication system 112 interacts with the enabled candidate device, utilizing communication resources in the process. Inblock 312, thecommunication system 112 receives usage data pertaining to communication resources consumed by the candidate device in the course of said communicating. Thecommunication system 112 then associates the usage data with a master account that applies to all of the plural computing devices. -
FIG. 4 shows aprocedure 400 whereby thecommunication system 112 determines whether or not to allow a candidate device to interact with thecommunication system 112. Inblock 402, thecommunication system 112 determines location information that specifies the locations of the candidate device and the master device. More specifically, thecommunication system 112 can determine the absolute locations of these devices and/or the location of the candidate device relative to the location of the master device. Inblock 404, thecommunication system 112 can determine the distance between the candidate device and the master device based on the location information collected inblock 402. Thecommunication system 112 can use this distance to determine whether the candidate device is permitted to interact with thecommunication system 112. As noted above, location information is one among many factors that thecommunication system 112 can use it making its communication-enablement decisions. -
FIG. 5 shows aprocedure 500 that describes one manner in which a user may interact with theenvironment 100 shown inFIG. 1 . In one case, the user can place a candidate device within a predetermined distance of a master device. For example, suppose that the user (or some other entity) has designated the master device as the user's mobile telephone device. To enable a book reader device to use the same master account as the mobile telephone device, the user may physically move the book reader device to within the threshold distance (dthresh) of the mobile telephone device. Inblock 504, the user can then use the candidate device to interact with thecommunication system 112, using the master account. - In
block 506, presume that the user now moves the candidate computing device beyond the prescribed threshold distance (dthresh) from the master device. As a result, inblock 508, the user can receive an indication that communication is now disabled (with respect to the master account). In one case, this indication may simply result from the user's observation that the candidate device is no longer connected to thecommunication system 112. - In the above explanation, it is assumed that a single user owns or otherwise controls the plural computing devices that share the same master account. This indeed represents one implementation. In another case, a group of users can own or otherwise control the plural computing devices. For example, a parent of a household can provide configuration information which establishes a sharing relationship among computing devices used by members of her family. However, to facilitate explanation, it will henceforth be assumed that a single user owns or otherwise controls the plural computing devices.
- In any implementation, the
communication system 112 can define different types of rules that govern the use of its communication resources by a user (or group of users). In one case, thecommunication system 112 may only permit one computing device to communicate at one time. In another case, thecommunication system 112 can permit two or more computing devices to communicate at the same type. - In any scenario, the terms of the master account can place usage-based restrictions on the singular or joint use of communication resources by one or more computing devices. In other words, the master account can place a quota on the amount of resources that can be consumed, quantified and expressed in any manner. The
communication system 112 can enforce these limits. For example, thecommunication system 112 can place restrictions on the total amount of communication resources that can be consumed in a billing cycle. Such restrictions can be expressed in any manner, e.g., in terms of time, and/or volume of data, and so on. Alternatively, or in addition, thecommunication system 112 can specify restrictions on the total amount of communication resources that can be consumed in any time instance. Thecommunication system 112 can express the per-instance consumption of these resources in any manner, e.g., in terms of consumed bandwidth. In these scenarios, any computing device that satisfies the communication-enabling condition(s) can communicate with thecommunication system 112 providing that such a use will not violate per-cycle usage limits and/or per-instance usage limits. Essentially, thecommunication system 112 treats any use of the communication resources in a device-agnostic manner, providing that, as said, any device that uses the communication resources satisfies the communication-enabling condition. - Alternatively, or in addition, the
communication system 112 can place constraints that are particular to individual computing devices. For example, thecommunication system 112 can allow the master device to consume a first prescribed amount of communication resources; if another candidate device is allowed to communicate at the same time, thecommunication system 112 can allow that candidate device to consume a second prescribed amount of communication resources (where the second amount may differ from the first amount). In brief, thecommunication system 112 can be configured in different ways based on any business-related and/or technical-related consideration(s). -
FIG. 6 shows aprocedure 600 that sets forth one manner by which thecommunication system 112 can generate and supply billing information. Inblock 602, thecommunication system 112 receives usage data for a particular account over the course of a billing period, such as a month. Inblock 604, thecommunication system 112 generates billing information for the account based on the usage data. Inblock 606, thecommunication system 112 sends the billing information to an account holder. -
FIG. 7 provides high-level information regardingillustrative billing information 702. For example, thebilling information 702 can provide an indication of the total usage and cost of resources consumed by the plural computing devices. In addition, thebilling information 702 can break down the usage and cost information on a per-device basis. This enables the recipient user to gain insight regarding his or her usage habits over the course of the billing period. Based on this information, the user may decide to modify his or her usage habits. Alternatively, or in addition, the user may decide to change the configuration information in any way, such as by increasing or decreasing the resource limits, changing the master device, and so on. Thebilling information 702 can express the resources that were consumed in any manner, e.g., by providing textual billing information and/or graphical billing information and/or some other form of billing information. - Overall, the sharing of a master account by plural computing devices may afford one or more benefits. For example, the user may determine that it possible to save money by bundling the use of multiple devices into a single account. This is because the use of a single master account may reduce the number of administrative per-account charges.
- In addition, the use a single master account may allow a user to more effectively and flexibly use up allocated communication resources. By contrast, with a per-device approach, the user may find that he or she is using only a fraction of the communication resources that he or she is asked to pay for on a periodic basis. This issue is particularly pronounced in those situations in which utilization of a computing device is uneven throughout a year or other time span. For example, consider the case in which the computer device is a camera that has wireless communication functionality. Further assume that a user primarily uses the camera while on vacation during the summer months. While the user may infrequently use the camera in the remainder of the year, in the per-device approach, the user will be asked to nevertheless pay a monthly fee to maintain the account in active status. By contrast, setting up a single master account that is shared by multiple computing devices (including the camera in this case) will allow the user to infrequently use any computing device without wasting communication resources for which he or she will be charged.
- While the above approach enables the user to eliminate per-device accounts, the above approach can also be used in combination with per-device accounts. For example, the
communication system 112 can be set up such that a candidate device is allowed to use a master account when the candidate device is within a predetermined distance of the master device. But that same candidate device may also be given the option of communicating using a separate account that is dedicated to that device. For example, the user may opt to use that per-device account when the candidate device is not in proximity to the master device. - B. Second Implementation
-
FIG. 8 shows anenvironment 800 that provides a second implementation of the account-sharing paradigm. Thisenvironment 800 again includes a plurality of computing devices (e.g., 802, 804, 806) which communicate with acommunication system 808, using associatedcommunication infrastructure 810. This functionality can be implemented using the same type of equipment described above in Section A for the first implementation. - In this implementation, however, a
candidate device 804 communicates with thecommunication system 808 by establishing atethering relationship 812 with amaster device 802. After this relationship is established, themaster device 802 handles the interaction with thecommunication system 808, as indicated bycommunication symbol 814. In this role, thecandidate device 804 functions as a slave device, and is henceforth referred to as a slave device. -
FIG. 9 shows one implementation of thecommunication system 808 ofFIG. 8 . As indicated, thecommunication system 808 can interact with both themaster device 802 and theslave device 804. Although not shown, thecommunication system 808 can interact with additional computing devices. For example, thecommunication system 808 can set up plural tethering relationships between themaster device 802 and plural candidate devices. Alternatively, or in addition, thecommunication system 808 can set up plural tethering relationships that involve plural master devices. - The
communication system 808 includes aconfiguration module 902 that serves the same basic role as the configuration module 204 of Section A. Namely, theconfiguration module 902 can receive configuration information which defines the membership of a group of computing devices that are permitted to share a master account. Theconfiguration module 902 can also receive configuration information which defines the master device, e.g., based on a manual selection by any user or agent. In addition, or alternatively, theconfiguration module 902 can receive condition information from the computing devices, such as device capability information, power capacity information, etc. Based thereon, theconfiguration module 902 can automatically select the master device. For example, theconfiguration module 902 can assign the role of master to the computing device that has the most robust communication resources, and/or the most effective power supply, and so on. Alternatively, or in addition, theconfiguration module 902 can assign the role of master to the computing device that is used most often by a user (which can be determined based on past usage information). - A
tether management module 906 establishes a tethering relationship between two or more computing devices. As a first function, thetether management module 906 determines whether it is appropriate to set up such a tethering relationship between a master device and a candidate device under consideration. It performs this function based on condition information that it receives from environment sensing module(s). As in the first implementation, the condition information can correspond to any information which indicates a current relation between the candidate device and the master device. For example, thetether management module 906 can receive location information from a location determination module 910 (and/or an external location determination module 912). The location information describes, in either absolute or relative terms, the locations of the candidate device and the master device. Thetether management module 906 can set up the tethering relationship if the candidate device is within a prescribed threshold distance (dthresh) from the master device. Thetethering management module 906 can consider yet other condition information in making its tethering decisions. - Having determined that it is appropriate to set up a tethering relationship, the
tether management module 906 sends set-up instructions to both the master device and the candidate (slave) device. (Alternatively, or in addition, the master device can send a set-up instruction to the slave device.) The slave device and the master device then proceed to set up the tethering relationship. According to one implementation, the devices set up this relationship without any involvement of the user, or without substantial involvement. - Once the tethering relationship has been set up, a
communication module 914 can interact with the slave device via the master device. Thecommunication module 914 can also optionally conduct communication that is attributed to the master device per se. In performing communication, thecommunication system 808 consumescommunication resources 916. - An
account management module 918 receives usage data that indicates the resources consumed during a billing period. It then prepares and forwards billing information to the account holders as per the same procedure shown inFIG. 6 . The billing information itself can provide the itemized information described in connection withFIG. 7 . -
FIG. 10 shows illustrative functionality that can be provided by themaster device 802. Although not shown, theslave device 804 can include the same functionality (e.g., insofar as theslave device 804 may, at another time, function as a master device, and themaster device 802 may function as a slave device). - The
master device 802 includes an optional device-side configuration module 1002. This module may represent any functionality for interacting with the system-side configuration module 902. For example, the user may use the device-side configuration module 1002 to designate themaster device 802 as the device which is to assume the role of master. The user can also provide other configuration information via the device-side configuration module 1002. - A device-side tether management module 1004 receives instructions from the system-side
tether management module 906. In response, the device-side tether management module 1004 establishes a tethering relationship with theslave device 804. (A counterpart tether management module provided by a slave device establishes a tethering relationship with themaster device 802.) The tethering relationship can be established in any manner, such as by a wireless coupling mechanism (e.g., a Bluetooth or Wi-Fi mechanism, etc.), and/or a hardwired coupling mechanism (e.g., via a USB coupling mechanism, etc.).FIG. 10 shows that themaster device 802 includes any type oftethering interface 1006 for establishing a tethering connection with a counterpart tethering interface module (not shown) of theslave device 804. - Finally, a device-
side communication module 1008 communicates with the system-side communication module 914 once a tethering relationship has been established. -
FIGS. 11-14 set forth the manner of operation of theenvironment 800 ofFIG. 8 in flowchart form. Since the principle of operation of this functionality has already been set forth above, certain features are described in summary form below. - Starting with
FIG. 11 , this figure shows aprocedure 1100 that explains the operation of thecommunication system 808 ofFIG. 9 . Inblock 1102, thecommunication system 808 selects the master device based on any criterion or criteria described above. More specifically, thecommunication system 808 can perform this task by querying the computing devices associated with a master account to collect condition information therefrom. Alternatively, or in addition, the computing devices can independently forward condition information to thecommunication system 808. Thecommunication system 808 selects the master device based on the condition information. Alternatively, thecommunication system 808 can choose the master device based on a manual selection. - In
block 1104, thecommunication system 808 may receive additional condition information. The condition information describes the relation of a candidate device with respect to the master device, such as the location of the candidate device relative to the master device. Inblock 1106, thecommunication system 808 defines a tethering relation between the candidate device and the master device if the condition information satisfies a communication-enabling condition. Inblock 1108, thecommunication system 808 sends instructions to the master device to set up the tethering relationship. Inblock 1110, the communication system 808 (and/or the master device) sends instructions to the candidate device to set up the tethering relation. Inblock 1112, thecommunication system 808 interacts with the candidate device via the master device using the tethering relationship. Inblock 1114, thecommunication system 112 receives usage data pertaining to the use of communication resources by the plural computing devices. Thecommunication system 808 then prepares billing information and sends the billing information to an appropriate account holder. -
FIG. 12 shows aprocedure 1200 that explains one manner of operation of themaster device 802. In block 1202, themaster device 802 optionally provides condition information to thecommunication system 808, such as location information, device capability information, and power capacity information, etc. Thecommunication system 808 uses this information to: a) determine which computing device is most appropriate to use as a master device; and b) then determine whether it is appropriate to set up a tethering relationship between the master device and a candidate device. Inblock 1204, themaster device 802 receives instructions to set up a tethering relationship with theslave device 804, wherein themaster device 802 is instructed to assume the role of master. Inblock 1206, themaster device 802 establishes the tethering relationship as instructed. Themaster device 802 then interacts with thecommunication system 808, at the direction of theslave device 804. -
FIG. 13 shows aprocedure 1300 that explains one manner of operation of theslave device 804. Inblock 1302, theslave device 804 optionally provides condition information to thecommunication system 808, such as location information, device capability information, and power capacity information. This information serves the same use as set forth above with respect toFIG. 12 . Inblock 1304, theslave device 804 receives instructions to set up a tethering relationship with themaster device 802, wherein theslave device 804 is instructed to assume the role of slave. The instructions can originate from either thecommunication system 808 or the master device (or both). The instructions request the slave device to shut down any independent wireless connection it may have established. The instruction may also provide configuration information which enables the slave device to establish a tethering relationship with the particular type of master device that is being used. Inblock 1306, theslave device 804 establishes a tethering relationship as instructed. Theslave device 804 then interacts with thecommunication system 808 via the connection established by themaster device 802. -
FIG. 14 shows aprocedure 1400 that sets forth one way in which a user may use the functionality shown in theenvironment 800 ofFIG. 8 . Inblock 1402, the user may place a candidate device within a threshold distance (dthresh) of the master device. At this point, thecommunication system 808 automatically senses the proximity of these two devices and automatically (or at least partially automatically) sets up the tethering relationship between the two devices. That is, the user is not asked to expressly set up this relationship. Inblock 1404, the user then uses the slave device to interact with thecommunication system 808 via the master device. Inblock 1406, assume that the use next moves the slave device beyond the threshold distance (dthresh) from the master device. Inblock 1408, the user receives an indication that the tethering relationship is not longer established. In one case, the user may receive such an indication by simply noting that he or she is no longer able to interact with thecommunication system 808. - The use of the
communication system 808 to set up the tethering relationship has one or more benefits in illustrative embodiments. First, this provision simplifies the configuration of the tethering relationship from the perspective of the user. Second, by virtue of this provision, the communications operator can maintain control of the tethering relationship, and thereby reduce the risk of undesirable use of communication resources by computing devices. - More generally, the use of a tethering relationship may be deemed desirable in some implementations in order to reduce the impact of the plural computing devices on a wireless network. In addition, the tethering relationship may reduce the expenditure of power by the slave devices.
- C. Representative Processing Functionality
-
FIG. 15 sets forth illustrative electricaldata processing functionality 1500 that can be used to implement any aspect of the functions described above. The electricaldata processing functionality 1500 represents a physical and tangible machine. For example, theprocessing functionality 1500 can be used to implement any aspect of the communication systems (112, 808) of the implementations of Sections A and B, and/or any aspect of the computing devices of the implementations of Sections A and B. In one case, theprocessing functionality 1500 may correspond to any type of processing device that includes one or more processing devices. - The
processing functionality 1500 can include volatile and non-volatile memory, such asRAM 1502 andROM 1504, as well as one ormore processing devices 1506. Theprocessing functionality 1500 also optionally includesvarious media devices 1508, such as a hard disk module, an optical disk module, and so forth. Theprocessing functionality 1500 can perform various operations identified above when the processing device(s) 1506 executes instructions that are maintained by memory (e.g.,RAM 1502,ROM 1504, or elsewhere). - More generally, instructions and other information can be stored on any computer readable medium 1510, including, but not limited to, static memory storage devices, magnetic storage devices, optical storage devices, and so on. The term computer readable medium also encompasses plural storage devices. In all cases, the computer readable medium 1510 represents some form of physical and tangible mechanism.
- The
processing functionality 1500 also includes an input/output module 1512 for receiving various inputs from a user (via input modules 1514), and for providing various outputs to the user (via output modules). One particular output mechanism may include apresentation module 1516 and an associated graphical user interface (GUI) 1518. Theprocessing functionality 1500 can also include one or more network interfaces 1520 for exchanging data with other devices via one ormore communication conduits 1522. The network interfaces 1520 can encompass wireless communication functionality for communicating with wireless communication infrastructure. One ormore communication buses 1524 communicatively couple the above-described components together. - Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
Claims (20)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/958,426 US8621056B2 (en) | 2010-12-02 | 2010-12-02 | Enabling plural computing devices to communicate using a master account |
CN201110395052.XA CN102740264B (en) | 2010-12-02 | 2011-12-02 | Enabling plural computing devices to communicate using a master account |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/958,426 US8621056B2 (en) | 2010-12-02 | 2010-12-02 | Enabling plural computing devices to communicate using a master account |
Publications (2)
Publication Number | Publication Date |
---|---|
US20120143978A1 true US20120143978A1 (en) | 2012-06-07 |
US8621056B2 US8621056B2 (en) | 2013-12-31 |
Family
ID=46163280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/958,426 Active 2031-07-01 US8621056B2 (en) | 2010-12-02 | 2010-12-02 | Enabling plural computing devices to communicate using a master account |
Country Status (2)
Country | Link |
---|---|
US (1) | US8621056B2 (en) |
CN (1) | CN102740264B (en) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120311673A1 (en) * | 2011-06-01 | 2012-12-06 | Comcast Cable Communications, Llc | Media usage monitoring and control |
US20130171964A1 (en) * | 2011-12-29 | 2013-07-04 | United States Cellular Corporation | System And Method For Network Assisted Control And Monetization Of Tethering To Mobile Wireless Devices |
US20140101270A1 (en) * | 2012-10-08 | 2014-04-10 | Samsung Electronics Co., Ltd. | Electronic apparatus, server, and control method of system |
WO2014070433A1 (en) * | 2012-11-02 | 2014-05-08 | Google Inc. | Seamless tethering setup between phone and laptop using peer-to-peer mechanisms |
EP2760179A1 (en) * | 2013-01-29 | 2014-07-30 | Synchronoss Technologies, Inc. | Tethering enforcement device controller and methods thereof |
US20140222941A1 (en) * | 2013-02-07 | 2014-08-07 | Google Inc. | Ad-hoc device sharing over a network |
US20140379797A1 (en) * | 2013-06-20 | 2014-12-25 | Empire Technology Development Llc | Schemes for providing wireless network |
US20150188762A1 (en) * | 2013-12-27 | 2015-07-02 | Samsung Electronics Co., Ltd. | Method and system for registering control devices in server |
US20150189043A1 (en) * | 2013-12-27 | 2015-07-02 | Samsung Electronics Co., Ltd. | Method and apparatus for sharing data quota |
EP2974512A4 (en) * | 2013-03-11 | 2016-12-14 | Intel Corp | Tethering of mobile wireless devices |
US9560047B1 (en) * | 2012-05-25 | 2017-01-31 | Sprint Communications Company L.P. | Multi-device authorization to access wireless network communications based on shared event times |
US20180139578A1 (en) * | 2012-02-20 | 2018-05-17 | Huawei Technologies Co., Ltd. | Network positioning method and related equipment |
US9980304B2 (en) | 2015-04-03 | 2018-05-22 | Google Llc | Adaptive on-demand tethering |
WO2018226148A1 (en) * | 2017-06-09 | 2018-12-13 | Terranet Ab | Methods and systems for controlled distribution of data transfer capacity between mobile devices |
US11399412B2 (en) * | 2018-02-27 | 2022-07-26 | Sang Joon Ahn | Data capacity sharing server, method and system for sharing data capacity donated by terminal |
US11611471B2 (en) | 2015-04-10 | 2023-03-21 | Comcast Cable Communications, Llc | Virtual gateway control and management |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8626115B2 (en) | 2009-01-28 | 2014-01-07 | Headwater Partners I Llc | Wireless network service interfaces |
US8589541B2 (en) | 2009-01-28 | 2013-11-19 | Headwater Partners I Llc | Device-assisted services for protecting network capacity |
US8832777B2 (en) | 2009-03-02 | 2014-09-09 | Headwater Partners I Llc | Adapting network policies based on device service processor configuration |
US8635335B2 (en) | 2009-01-28 | 2014-01-21 | Headwater Partners I Llc | System and method for wireless network offloading |
US8839388B2 (en) | 2009-01-28 | 2014-09-16 | Headwater Partners I Llc | Automated device provisioning and activation |
US9392462B2 (en) | 2009-01-28 | 2016-07-12 | Headwater Partners I Llc | Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy |
US10057775B2 (en) | 2009-01-28 | 2018-08-21 | Headwater Research Llc | Virtualized policy and charging system |
US10200541B2 (en) | 2009-01-28 | 2019-02-05 | Headwater Research Llc | Wireless end-user device with divided user space/kernel space traffic policy system |
US8793758B2 (en) | 2009-01-28 | 2014-07-29 | Headwater Partners I Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US10715342B2 (en) | 2009-01-28 | 2020-07-14 | Headwater Research Llc | Managing service user discovery and service launch object placement on a device |
US9557889B2 (en) | 2009-01-28 | 2017-01-31 | Headwater Partners I Llc | Service plan design, user interfaces, application programming interfaces, and device management |
US8745191B2 (en) | 2009-01-28 | 2014-06-03 | Headwater Partners I Llc | System and method for providing user notifications |
US9980146B2 (en) | 2009-01-28 | 2018-05-22 | Headwater Research Llc | Communications device with secure data path processing agents |
US12166596B2 (en) | 2009-01-28 | 2024-12-10 | Disney Enterprises, Inc. | Device-assisted services for protecting network capacity |
US10798252B2 (en) | 2009-01-28 | 2020-10-06 | Headwater Research Llc | System and method for providing user notifications |
US10248996B2 (en) | 2009-01-28 | 2019-04-02 | Headwater Research Llc | Method for operating a wireless end-user device mobile payment agent |
US9955332B2 (en) | 2009-01-28 | 2018-04-24 | Headwater Research Llc | Method for child wireless device activation to subscriber account of a master wireless device |
US9351193B2 (en) | 2009-01-28 | 2016-05-24 | Headwater Partners I Llc | Intermediate networking devices |
US11985155B2 (en) | 2009-01-28 | 2024-05-14 | Headwater Research Llc | Communications device with secure data path processing agents |
US10841839B2 (en) | 2009-01-28 | 2020-11-17 | Headwater Research Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US9572019B2 (en) | 2009-01-28 | 2017-02-14 | Headwater Partners LLC | Service selection set published to device agent with on-device service selection |
US10492102B2 (en) | 2009-01-28 | 2019-11-26 | Headwater Research Llc | Intermediate networking devices |
US10326800B2 (en) | 2009-01-28 | 2019-06-18 | Headwater Research Llc | Wireless network service interfaces |
US9609510B2 (en) | 2009-01-28 | 2017-03-28 | Headwater Research Llc | Automated credential porting for mobile devices |
US9571559B2 (en) | 2009-01-28 | 2017-02-14 | Headwater Partners I Llc | Enhanced curfew and protection associated with a device group |
US11218854B2 (en) | 2009-01-28 | 2022-01-04 | Headwater Research Llc | Service plan design, user interfaces, application programming interfaces, and device management |
US9578182B2 (en) * | 2009-01-28 | 2017-02-21 | Headwater Partners I Llc | Mobile device and service management |
US10237757B2 (en) | 2009-01-28 | 2019-03-19 | Headwater Research Llc | System and method for wireless network offloading |
US10783581B2 (en) | 2009-01-28 | 2020-09-22 | Headwater Research Llc | Wireless end-user device providing ambient or sponsored services |
US10264138B2 (en) | 2009-01-28 | 2019-04-16 | Headwater Research Llc | Mobile device and service management |
US9954975B2 (en) | 2009-01-28 | 2018-04-24 | Headwater Research Llc | Enhanced curfew and protection associated with a device group |
US9270559B2 (en) | 2009-01-28 | 2016-02-23 | Headwater Partners I Llc | Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow |
US9706061B2 (en) | 2009-01-28 | 2017-07-11 | Headwater Partners I Llc | Service design center for device assisted services |
US9647918B2 (en) | 2009-01-28 | 2017-05-09 | Headwater Research Llc | Mobile device and method attributing media services network usage to requesting application |
US10064055B2 (en) | 2009-01-28 | 2018-08-28 | Headwater Research Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US9755842B2 (en) | 2009-01-28 | 2017-09-05 | Headwater Research Llc | Managing service user discovery and service launch object placement on a device |
US11973804B2 (en) | 2009-01-28 | 2024-04-30 | Headwater Research Llc | Network service plan design |
US9858559B2 (en) | 2009-01-28 | 2018-01-02 | Headwater Research Llc | Network service plan design |
US9565707B2 (en) | 2009-01-28 | 2017-02-07 | Headwater Partners I Llc | Wireless end-user device with wireless data attribution to multiple personas |
US10356721B1 (en) * | 2017-06-19 | 2019-07-16 | Amazon Technologies, Inc. | Communication-hub selection techniques |
CN110312211A (en) * | 2019-07-31 | 2019-10-08 | 联想(北京)有限公司 | A kind of information processing method and electronic equipment |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040205244A1 (en) * | 2003-02-14 | 2004-10-14 | Marsico Robert G. | Network device management |
US20070141988A1 (en) * | 2005-12-20 | 2007-06-21 | Microsoft Corporation | Mechanism to convey discovery information in a wireless network |
US20070264991A1 (en) * | 2006-05-15 | 2007-11-15 | Microsoft Corporation | Services near me: discovering and connecting to available wireless services utilizing proximity discovery |
US7430217B2 (en) * | 2001-03-29 | 2008-09-30 | Spyder Navigations L.L.C. | Method and apparatus of prioritising the usage of slotted links by single network devices in a wireless network |
US7516168B2 (en) * | 1999-06-25 | 2009-04-07 | Emc Corporation | Program for monitoring update activity in a data storage facility |
US20090240781A1 (en) * | 2005-11-28 | 2009-09-24 | Canon Kabushiki Kaisha | Communication apparatus, control method for communication apparatus, and communication system |
US20090299788A1 (en) * | 2008-05-13 | 2009-12-03 | At&T Mobility Ii Llc | Commerce and services in a femtocell network |
US20100052857A1 (en) * | 2008-09-04 | 2010-03-04 | Ncr Corporation | Methods and Apparatus for Distance Determination for Radiofrequency Identification Devices |
US20100077094A1 (en) * | 2008-09-24 | 2010-03-25 | Embarq Holdings Company, Llc | System and method for updating vehicle media content |
US7787381B2 (en) * | 2006-12-13 | 2010-08-31 | At&T Intellectual Property I, L.P. | Methods and apparatus to manage network transport paths in accordance with network policies |
US20100296446A1 (en) * | 2009-05-19 | 2010-11-25 | Qualcomm Incorporated | Dynamic switching between mimo and dc hsdp |
US20110009122A1 (en) * | 2004-08-30 | 2011-01-13 | Tatara Systems | Mobile services control platform providing a converged voice service |
US20110286437A1 (en) * | 2010-05-20 | 2011-11-24 | At&T Mobility Ii Llc | Wi-Fi Intelligent Selection Engine |
US20120030727A1 (en) * | 2010-08-02 | 2012-02-02 | At&T Intellectual Property I, L.P. | Apparatus and method for providing media content |
US20120025975A1 (en) * | 2010-07-30 | 2012-02-02 | Luke Richey | Augmented reality and location determination methods and apparatus |
US20120025974A1 (en) * | 2010-07-30 | 2012-02-02 | Luke Richey | Augmented reality and location determination methods and apparatus |
US20120025976A1 (en) * | 2010-07-30 | 2012-02-02 | Luke Richey | Augmented reality and location determination methods and apparatus |
US20120096121A1 (en) * | 2010-10-13 | 2012-04-19 | Verizon Patent And Licensing, Inc. | Home network video peer-to-peer for mobile devices |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI109749B (en) | 1999-07-19 | 2002-09-30 | Nokia Corp | Procedure for billing subscribers in a data communication network |
CN1330164C (en) * | 2002-03-13 | 2007-08-01 | 华为技术有限公司 | Hand set charging and fee-deducting method |
US7295540B2 (en) | 2002-08-23 | 2007-11-13 | Telefonaktiebolaget L M Ericsson (Publ) | Signaling wireless wide area network mechanism for a terminal located in a wireless local area network |
US7061385B2 (en) | 2003-09-06 | 2006-06-13 | Fong Gordon D | Method and apparatus for a wireless tether system |
US7505756B2 (en) | 2003-10-15 | 2009-03-17 | Microsoft Corporation | Dynamic online subscription for wireless wide-area networks |
US7733822B2 (en) | 2004-11-30 | 2010-06-08 | Sanjay M. Gidwani | Distributed disparate wireless switching network |
CN1842116A (en) * | 2005-03-28 | 2006-10-04 | 华为技术有限公司 | Pre-paying common account realizing method |
US7672678B2 (en) * | 2006-03-29 | 2010-03-02 | Qualcomm Incorporated | Location-based communication system |
US20090093248A1 (en) | 2007-10-03 | 2009-04-09 | Microsoft Corporation | WWAN device provisioning using signaling channel |
US8520589B2 (en) | 2008-05-19 | 2013-08-27 | Motorola Mobility Llc | Mobile device and method for intelligently communicating data generated thereby over short-range, unlicensed wireless networks and wide area wireless networks |
CN101741556B (en) * | 2008-11-26 | 2013-01-16 | 中国电信股份有限公司 | Method and system for accessing Internet |
US8804517B2 (en) * | 2010-05-31 | 2014-08-12 | Blackberry Limited | Management of mobile hotspot connections |
US9107040B2 (en) * | 2010-09-29 | 2015-08-11 | Apple Inc. | Systems, methods, and computer readable media for sharing awareness information |
-
2010
- 2010-12-02 US US12/958,426 patent/US8621056B2/en active Active
-
2011
- 2011-12-02 CN CN201110395052.XA patent/CN102740264B/en active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7516168B2 (en) * | 1999-06-25 | 2009-04-07 | Emc Corporation | Program for monitoring update activity in a data storage facility |
US7430217B2 (en) * | 2001-03-29 | 2008-09-30 | Spyder Navigations L.L.C. | Method and apparatus of prioritising the usage of slotted links by single network devices in a wireless network |
US20080307501A1 (en) * | 2003-02-14 | 2008-12-11 | Marsico Robert G | Network Device Management |
US20040205244A1 (en) * | 2003-02-14 | 2004-10-14 | Marsico Robert G. | Network device management |
US20110009122A1 (en) * | 2004-08-30 | 2011-01-13 | Tatara Systems | Mobile services control platform providing a converged voice service |
US20090240781A1 (en) * | 2005-11-28 | 2009-09-24 | Canon Kabushiki Kaisha | Communication apparatus, control method for communication apparatus, and communication system |
US20070141988A1 (en) * | 2005-12-20 | 2007-06-21 | Microsoft Corporation | Mechanism to convey discovery information in a wireless network |
US20070264991A1 (en) * | 2006-05-15 | 2007-11-15 | Microsoft Corporation | Services near me: discovering and connecting to available wireless services utilizing proximity discovery |
US7787381B2 (en) * | 2006-12-13 | 2010-08-31 | At&T Intellectual Property I, L.P. | Methods and apparatus to manage network transport paths in accordance with network policies |
US20090299788A1 (en) * | 2008-05-13 | 2009-12-03 | At&T Mobility Ii Llc | Commerce and services in a femtocell network |
US20100052857A1 (en) * | 2008-09-04 | 2010-03-04 | Ncr Corporation | Methods and Apparatus for Distance Determination for Radiofrequency Identification Devices |
US20100077094A1 (en) * | 2008-09-24 | 2010-03-25 | Embarq Holdings Company, Llc | System and method for updating vehicle media content |
US20100296446A1 (en) * | 2009-05-19 | 2010-11-25 | Qualcomm Incorporated | Dynamic switching between mimo and dc hsdp |
US20110286437A1 (en) * | 2010-05-20 | 2011-11-24 | At&T Mobility Ii Llc | Wi-Fi Intelligent Selection Engine |
US20120025975A1 (en) * | 2010-07-30 | 2012-02-02 | Luke Richey | Augmented reality and location determination methods and apparatus |
US20120025974A1 (en) * | 2010-07-30 | 2012-02-02 | Luke Richey | Augmented reality and location determination methods and apparatus |
US20120025976A1 (en) * | 2010-07-30 | 2012-02-02 | Luke Richey | Augmented reality and location determination methods and apparatus |
US20120030727A1 (en) * | 2010-08-02 | 2012-02-02 | At&T Intellectual Property I, L.P. | Apparatus and method for providing media content |
US20120096121A1 (en) * | 2010-10-13 | 2012-04-19 | Verizon Patent And Licensing, Inc. | Home network video peer-to-peer for mobile devices |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120311673A1 (en) * | 2011-06-01 | 2012-12-06 | Comcast Cable Communications, Llc | Media usage monitoring and control |
US8971849B2 (en) * | 2011-12-29 | 2015-03-03 | United States Cellular Corporation | System and method for network assisted control and monetization of tethering to mobile wireless devices |
US20130171964A1 (en) * | 2011-12-29 | 2013-07-04 | United States Cellular Corporation | System And Method For Network Assisted Control And Monetization Of Tethering To Mobile Wireless Devices |
US20180139578A1 (en) * | 2012-02-20 | 2018-05-17 | Huawei Technologies Co., Ltd. | Network positioning method and related equipment |
US10667084B2 (en) * | 2012-02-20 | 2020-05-26 | Huawei Technologies Co., Ltd. | Network positioning method and related equipment |
US11178510B2 (en) | 2012-02-20 | 2021-11-16 | Huawei Technologies Co., Ltd. | Network positioning method and related equipment |
US9560047B1 (en) * | 2012-05-25 | 2017-01-31 | Sprint Communications Company L.P. | Multi-device authorization to access wireless network communications based on shared event times |
US9992140B2 (en) * | 2012-10-08 | 2018-06-05 | Samsung Electronics Co., Ltd. | Electronic apparatus, server, and control method of system |
KR20140045242A (en) * | 2012-10-08 | 2014-04-16 | 삼성전자주식회사 | Electronic apparatus, server, and control method of system |
US20140101270A1 (en) * | 2012-10-08 | 2014-04-10 | Samsung Electronics Co., Ltd. | Electronic apparatus, server, and control method of system |
KR102001103B1 (en) * | 2012-10-08 | 2019-10-01 | 삼성전자 주식회사 | Electronic apparatus, server, and control method of system |
US9634726B2 (en) | 2012-11-02 | 2017-04-25 | Google Inc. | Seamless tethering setup between phone and laptop using peer-to-peer mechanisms |
WO2014070433A1 (en) * | 2012-11-02 | 2014-05-08 | Google Inc. | Seamless tethering setup between phone and laptop using peer-to-peer mechanisms |
US20170187425A1 (en) * | 2012-11-02 | 2017-06-29 | Google Inc. | Seamless tethering setup between phone and laptop using peer-to-peer mechanisms |
US10009068B2 (en) * | 2012-11-02 | 2018-06-26 | Google Llc | Seamless tethering setup between phone and laptop using peer-to-peer mechanisms |
US9276936B2 (en) | 2013-01-29 | 2016-03-01 | Synchronoss Technologies, Inc. | Tethering enforcement device controller and methods thereof |
EP2760179A1 (en) * | 2013-01-29 | 2014-07-30 | Synchronoss Technologies, Inc. | Tethering enforcement device controller and methods thereof |
US20140222941A1 (en) * | 2013-02-07 | 2014-08-07 | Google Inc. | Ad-hoc device sharing over a network |
AU2014215584B2 (en) * | 2013-02-07 | 2017-05-25 | Google Llc | Ad-hoc device sharing over a network |
EP2974512A4 (en) * | 2013-03-11 | 2016-12-14 | Intel Corp | Tethering of mobile wireless devices |
US9591691B2 (en) * | 2013-06-20 | 2017-03-07 | Empire Technology Development Llc | Schemes for providing wireless network |
US20140379797A1 (en) * | 2013-06-20 | 2014-12-25 | Empire Technology Development Llc | Schemes for providing wireless network |
US10412742B2 (en) | 2013-06-20 | 2019-09-10 | Empire Technology Development Llc | Schemes for providing wireless network |
US20150188762A1 (en) * | 2013-12-27 | 2015-07-02 | Samsung Electronics Co., Ltd. | Method and system for registering control devices in server |
KR102195693B1 (en) * | 2013-12-27 | 2020-12-28 | 삼성전자 주식회사 | Method and apparatus for communicating a data of electronic device |
US20150189043A1 (en) * | 2013-12-27 | 2015-07-02 | Samsung Electronics Co., Ltd. | Method and apparatus for sharing data quota |
KR20150076518A (en) * | 2013-12-27 | 2015-07-07 | 삼성전자주식회사 | Method and apparatus for communicating a data of electronic device |
US10389816B2 (en) * | 2013-12-27 | 2019-08-20 | Samsung Electronics Co., Ltd. | Method and system for registering control devices in server |
EP3087765A4 (en) * | 2013-12-27 | 2017-06-07 | Samsung Electronics Co., Ltd. | Method and apparatus for sharing data quota |
CN105850162A (en) * | 2013-12-27 | 2016-08-10 | 三星电子株式会社 | Method and apparatus for sharing data quota |
US10567545B2 (en) * | 2013-12-27 | 2020-02-18 | Samsung Electronics Co., Ltd. | Method and apparatus for sharing data quota |
US9980304B2 (en) | 2015-04-03 | 2018-05-22 | Google Llc | Adaptive on-demand tethering |
US11089643B2 (en) | 2015-04-03 | 2021-08-10 | Google Llc | Adaptive on-demand tethering |
US11611471B2 (en) | 2015-04-10 | 2023-03-21 | Comcast Cable Communications, Llc | Virtual gateway control and management |
US10516785B2 (en) * | 2017-06-09 | 2019-12-24 | Terranet Ab | Methods and systems for controlled distribution of data transfer capacity between mobile devices |
US10182162B2 (en) | 2017-06-09 | 2019-01-15 | Terranet Ab | Methods and systems for controlled distribution of data transfer capacity between mobile devices |
WO2018226148A1 (en) * | 2017-06-09 | 2018-12-13 | Terranet Ab | Methods and systems for controlled distribution of data transfer capacity between mobile devices |
US11399412B2 (en) * | 2018-02-27 | 2022-07-26 | Sang Joon Ahn | Data capacity sharing server, method and system for sharing data capacity donated by terminal |
Also Published As
Publication number | Publication date |
---|---|
CN102740264B (en) | 2015-02-25 |
CN102740264A (en) | 2012-10-17 |
US8621056B2 (en) | 2013-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8621056B2 (en) | Enabling plural computing devices to communicate using a master account | |
CN101902681B (en) | Method for processing M2M (Machine to Machine) platform service and M2M platform | |
CN101777008A (en) | Method and device for realizing mobile terminal system thread pool | |
KR101271785B1 (en) | Parking Car Move Request System and Method Using Mobile Phone | |
Zhang et al. | Offloading in software defined network at edge with information asymmetry: A contract theoretical approach | |
CN201910087U (en) | Number calling device and queuing system for bank outlets | |
CN103260142A (en) | Method and system for detecting network resource matching of user corresponding to mobile phone terminal | |
Tran et al. | Joint pricing and load balancing for cognitive spectrum access: Non-cooperation versus cooperation | |
CN105337804A (en) | Hot spot sharing method based on mobile terminal | |
CN103209449B (en) | A kind of by the method and apparatus that ANDSF is user's switching and network access | |
JP7151705B2 (en) | Radio resource management method, management device, and radio communication system | |
CN105813133A (en) | Network load balance control method and system and load balance control device | |
JP2021039684A (en) | Energy trading support systems, methods and programs | |
US9930510B2 (en) | Hybrid liability model | |
CN103369013A (en) | Data transmission method, data transmission apparatus and electronic device | |
van den Broek et al. | Securing the information infrastructure for EV charging | |
CN102364889A (en) | A shared pool resource charging method and device | |
CN105657711A (en) | Network connection method and electronic device | |
CN102611708B (en) | A kind of Internet access method and equipment | |
CN102413067A (en) | Techniques to support large numbers of subscribers to a real-time event | |
TW201520782A (en) | Electricity load management device and electricity load management method thereof | |
CN103281784A (en) | Method, device and base station for distributing resources on basis of RRU shared cell | |
JP5382966B1 (en) | Notification system | |
KR102539560B1 (en) | Method for managing license of third-party application and cloud server for executing the same | |
CN203012834U (en) | Bank queuing information processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:COUSSEMAEKER, DIDIER M;WHEELER, GRAHAM A;MAI, NICOLAS;REEL/FRAME:025436/0160 Effective date: 20101129 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034544/0001 Effective date: 20141014 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |