Wireless data plans allow mobile subscribers to access data (e.g., content, applications, etc.) through mobile devices. Data usage for a particular mobile device is typically charged to an account associated with the mobile subscriber who owns/leases the mobile device. The subscriber account may have a periodic limit on total data usage, for example on wireless networks (e.g., a 2 Gigabyte per month data plan). Mobile subscribers of networks that have periodic limits for data usage often arrange their data usage behavior to avoid overages associated with exceeding periodic limits on data usage.
The following detailed description refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements.
According to an implementation described herein, systems and/or methods may register a mobile device to use mobile data with a service provider network and create a default account for the mobile device. The systems and/or methods may receive, via the mobile device, user credentials to activate a portable data service for the mobile device, and may determine that the user credentials correspond to an existing account that is different than the default account for the mobile device. The systems and/or methods may assign, to the existing account, a temporary mobile directory number (MDN); may map the temporary MDN to a unique identifier for the mobile device; and may log mobile data use, by the mobile device, using the temporary MDN. The systems and/or methods may detect a signal to deactivate the portable data service for the mobile device; and may create a billing record, which is charged to the existing account, based on the logging.
In conventional data plans for mobile devices, data use on a mobile device is locked to one account. According to implementations described herein, portable data may allow users to access their own mobile data allotment via any mobile device that is registered with the same service provider network. Thus, use of data on a mobile device may be associated with any one of multiple subscriber accounts.
Users 105 may be users of mobile devices 110. In one implementation, users 105 may include subscribers of services provided by service provider network 120, such as subscribers of wireless data plans. In another implementation, users 105 may not be subscribers of service provider network 120, such a user seeking temporary access to services from service provider network 120.
Mobile device 110 may include any type of device that is able to transmit and receive data, such as text data, video data, image data, audio data, multi-media data, etc., over a cellular network. For example, mobile device 110 may include a mobile terminal (e.g., a smart phone, smart watch, or the like), some type of computer (e.g., as a personal computer (PC), a tablet computer, a laptop computer, a wearable computer, etc.), a personal digital assistant (PDA), a web-based appliance, etc. Mobile devices 110 may also include a telephone, such as an Internet-protocol (IP) based phone, a wireless telephone, a vehicular infotainment system that includes telephone capabilities, etc., used to make and receive telephone calls. Mobile device 110 may be a subscriber to mobile telephony services and/or mobile data services provided in association with service provider network 120. Mobile data services may include any activity that consumes data over a cellular broadband network and may be implemented, for example, in conjunction with or as a consequence of, mobile device 110 sending or receiving data from accessing websites, applications, etc.
Each mobile device 110 may be dynamically associated with one or more particular customer accounts of the service provider that operates network 120. Each mobile device 110 may be initially registered with service provider network 120, associated with a default account. According to an implementation described herein, mobile device 110 may be equipped with a client application that allows user 105 to assign mobile data charges pertaining to a particular user session to a different account than the default account. A “user session” (also referred to herein as a “portable data session”) may include a continuous period of mobile device 110 use in which mobile data is charged to a particular user account.
Service provider network 120 (or simply “network 120”) may include one or more wired, wireless and/or optical networks that are capable of receiving and transmitting data, voice and/or video signals, including multi-media signals that may include voice, data and video information. For example, network 120 may include one or more access networks, IP multimedia subsystem (IMS) networks, evolved packet core (EPC) networks, or other networks. The access network may include one or more wireless networks and may include a number of transmission towers for receiving wireless signals and forwarding the wireless signals toward the intended destinations. The access network may include a wireless communications network that connects subscribers (e.g., mobile devices 110) to other portions of service provider network (e.g., the EPC network). In one example, the access network may include a long-term evolution (LTE) network. In other implementations, the access network may employ other cellular broadband network standards such as 3rd Generation Partnership Project (3GPP) 3G, 4G, and future standards. Network 120 may further include one or more satellite networks, one or more packet switched networks, such as an IP-based network, a local area network (LAN), a wide area network (WAN), a personal area network (PAN) (e.g., a wireless PAN), a wireless local area network (WLAN), an intranet, the Internet, or another type of network that is capable of transmitting data.
Service provider network 120 may provide, among other services, access to digital content, such as web pages, downloads, or streaming media available to mobile devices 110. In an exemplary implementation, service provider network 110 may represent a network associated with a service provider that provides various services, such as Internet-protocol (IP) related services, value added services, etc.
Service provider network 120 may monitor data consumption by mobile devices 110 over all or portions of service provider network 120. In some instances, service provider network 120 may manage accounts with limited data quotas over some or all of network 120. For example, a single mobile device 110 may be registered with a mobile data plan that includes a one (1) GB per month limit, with charges incurred by the user for additional data use over the monthly limit. As another example, a group mobile data plan may be accessible by multiple mobile devices 110 and may include a cumulative 100 GB data limit per month, with charges incurred for additional data use over the monthly limit.
Portable data platform 125 may allow users 105 to access their own mobile data allotment, or a shared mobile data allotment, via any mobile device 110 that is registered with service provider network 120. According to implementations described herein, mobile data may be credited toward a user's monthly data plan without accruing data use charges associated with a default account for mobile device 110. Functions of portable data platform 125 are described further in connection with
ENodeB 210 may include one or more computation and/or communication devices that receive voice and/or data from MME 220 and/or SGW 230 and wirelessly transmit that voice and/or data to mobile device 110. ENodeB 210 may also include one or more devices that wirelessly receive voice and/or data from mobile device 110 and transmit that voice and/or data to one of MME 220 and/or SGW 230 or to other mobile device 110. ENodeB 210 may combine the functionalities of a base station and a radio network controller (RNC) provided in 2G or 3G radio access networks.
MME 220 may include one or more computation and/or communication devices that may be responsible for idle mode tracking and paging procedures (e.g., including retransmissions) for mobile device 110. MME 130 may be involved in a bearer activation/deactivation process (e.g., for mobile device 110) and may choose a SGW (e.g., SGW 230) for wireless terminal 110 at an initial attach and at a time of intra-LTE handover. MME 220 may provide a control plane function for mobility between access networks.
SGW 230 may include one or more data transfer devices (or network devices), such as a gateway, a router, a switch, a firewall, a network interface card (NIC), a hub, a bridge, a proxy server, an optical add-drop multiplexer (OADM), or some other type of device that processes and/or transfers data. In one example implementation, SGW 230 may route and forward user data packets, may act as a mobility anchor for a user plane during inter-eNodeB handovers, and may act as an anchor for mobility between LTE and other 3GPP (3rd Generation Partnership Project) technologies. SGW 230 may include a local resource timer to manage network resources. SGW 230 may manage and store contexts associated with wireless terminal 110 (e.g., parameters of an IP bearer service, network internal routing information, etc.).
PGW 240 may include one or more data transfer devices (or network devices), such as a gateway, a router, a switch, a firewall, a NIC, a hub, a bridge, a proxy server, an OADM, or some other type of device that processes and/or transfers data. In one exemplary implementation, PGW 240 may provide connectivity of mobile device 110 to external PDNs (e.g., in IP network 270) by being a traffic exit/entry point for mobile device 110. Mobile device 110 may simultaneously connect to more than one PGW 240 for accessing multiple PDNs. PGW 240 may perform policy enforcement, packet filtering for each user, charging support, lawful intercept, and packet screening. PGW 240 may also act as an anchor for mobility between 3GPP and non-3GPP technologies.
HSS 250 may include one or more devices that function as a HSS for an access network of network 120 and/or that act as an authentication, authorization and accounting (AAA) server for an access network of network 120. For example, HSS 250 may store information associated with a subscriber, services that the subscriber has requested or been assigned and settings (e.g., mobile data allotments, quality of service, service priority, authorized service category, admission control level for authorized service category, charging and policy rules, etc.) associated with the services, and/or a current location of the user 105. Furthermore, HSS 250 may verify a subscriber's identity, authenticate and/or authorize mobile device 110 using a device identification number (e.g., by performing IMSI or MAC authentication), authorize a particular service, and/or track consumption of network resources for a particular user 105. HSS 250 may provide to MME 220 the user information, including the authorized services service categories, and/or admission control level, during a device authentication and authorization process when mobile device 110 requests initial network attachment. In one implementation, HSS 250 may interface with mobile device 110, SGW 230, PGW 240, and/or billing system 260 to assign mobile data charges for mobile device 110 to a particular account.
Billing system 260 may include one or more computing devices to manage charging users 105 for mobile data services provided via network 120. Billing system 260 may perform credit card checks (e.g., for new subscriptions and/or trial subscriptions, etc.), assign charges to subscriber accounts, and/or process payments for subscriptions or purchases with network 120. For existing subscribers, billing system 260 may also request and receive payments from the external billing entity (e.g., for monthly subscription fees, etc. associated with an account).
IP network 270 may include one or more networks (e.g., a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), an IP Multimedia Subsystem (IMS) network, the Internet, private or public wireless or landline network, etc.) capable of communicating with mobile device 110. Mobile device 110 may communicate to another mobile device 110 via IP network 270 as well as an application or a server that resides inside or outside of IP network 270 to send/receive data from mobile device 110.
In
Bus 310 may permit communication among the components of device 300. Processor 320 may include one or more processors or microprocessors that interpret and execute instructions. In other implementations, processor 320 may be implemented as or include one or more application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or the like.
Memory 330 may include a random access memory (RAM) or another type of dynamic storage device that stores information and instructions for execution by processor 320, a read only memory (ROM) or another type of static storage device that stores static information and instructions for the processor 320, and/or some other type of magnetic or optical recording medium and its corresponding drive for storing information and/or instructions.
Input device 340 may include a device that permits an operator to input information to device 300, such as a keyboard, a keypad, a mouse, a pen, a microphone, a remote control, one or more biometric mechanisms, and the like. Output device 350 may include a device that outputs information to the operator, such as a display, a speaker, etc. Input device 340 and output device 350 may, in some implementations, be implemented as a user interface (UI) that displays UI information and which receives user input via the UI.
Communication interface 360 may include a transceiver that enables device 300 to communicate with other devices and/or systems. For example, communication interface 360 may include mechanisms for communicating with other devices, such as other devices in network environment 200. Each of such other devices of network environment 200 may include its respective communication interface 360 to achieve such communication.
As described herein, device 300 may perform certain operations in response to processor 320 executing software instructions contained in a computer-readable medium, such as memory 330. A computer-readable medium may include a tangible, non-transitory memory device. A memory device may include space within a single physical memory device or spread across multiple physical memory devices. The software instructions may be read into memory 330 from another computer-readable medium or from another device via communication interface 360. The software instructions contained in memory 330 may cause processor 320 to perform processes described herein. Alternatively, hardwired circuitry may be used in place of or in combination with software instructions to implement processes described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
Although
Client application 400 may include hardware and software components. The software components may be downloaded, for example, from an application server when mobile device 110 contacts network 120 to register for portable data service. In other implementations, client application 400 may be provided as part of a webpage, a browser, an operating system, or operating system update.
Registration module 410 may register mobile device 110 for access to portable data services offered by service provider network 120 (e.g., services to log, assign, and charge mobile data among different users 105 of mobile device 110). For example, registration module 410 may provide a user interface to enable an owner (e.g., one of users 105 or another entity) of mobile device 110 to authorize an International Mobile Equipment Identity (IMEI) of mobile device 110 to be associated with portable data requests. Registration module 410 may solicit user credentials (e.g., a client ID and password) for the owner's wireless network account. In one aspect, registration module 410 may also solicit an owner's email or messaging address to facilitate off-line notifications. Upon receipt of the owner's credentials, registration module 410 may activate client application 400 to promote portable data services.
Login interface 420 may include an interactive client interface that allows a user 105 to provide account credentials, such as a username/password combination or an authentication certificate, for an account associated with service provider network 120. The account may include, for example, a user's wireless account (e.g., with a monthly mobile data allotment) or a group account, such as a corporate mobile data account that can be shared among employees. Upon receiving user credentials, client application 400 may forward the user credentials to service provider network 120 (e.g., portable data platform 125) for authentication and authorization.
Although
Referring to
Client application 400 may forward the user credentials (e.g., the username/password combination and/or QR code scan results) to one of the devices in portable data platform 125. Assuming the user credentials are approved by portable data platform 125 for access to a particular data plan, login interface 420 may present screen 520 of
In one implementation, registration module 610 allows owners of mobile devices 110 or other subscribers to register a particular mobile device 110 for use with portable data. For example, registration module 610 may provide a secure web site or be accessed through other user account settings to configure and authorize use of portable data on a particular mobile device 110. In one implementation, registration module 610 may permit/cause mobile device 110 to download client application 400.
In another implementation, registration module 610 may allow subscribers to create mobile data accounts for access by other users 105. Registration module 610 may register an account with a periodic data limit (e.g., 10 GB per month, 100 GB per month, etc.), which is designated to be accessible to particulars user or a particular group of users. In one implementation, registration module 610 may be accessed as part of a wireless services portal where a subscriber (e.g., a representative of a corporate entity) may create an account (or modify an existing account with the service provider), register particular users or access credentials, set periodic (e.g., monthly) data amounts, and define access parameters (e.g., to limit data use for individual users, add filters, block particular content, etc.). In one implementation, a user may create a shared data account for a limited period and define a duration of availability for the account, identify types of data to be accessible through the account, limit an amount of data that can be used by any single mobile device 110, define locations (e.g., cell towers, regions, etc.) where the mobile data can be used, and/or limit bandwidth per mobile device 110 using the shared data account.
Mapping engine 620 may include a pool 625 of temporary MDNs (or another unique identifier) that may be used to log data use for portable data sessions. In one implementation, mapping engine 620 and MDN pool 625 may be incorporated within HSS 250. Mapping engine 620 may assign a temporary MDN for a portable data session and associate the MDN with a subscriber's mobile data account, a shared data account, or direct payment account. Mapping engine 620 may further associate the temporary MDN with the IMEI of the mobile device 110 that is using portable data (e.g., using a wireless data plan that is not the default plan of the particular mobile device 110). When a portable data session is over, mapping engine 620 may release the temporary MDN back into MDN pool 625 for future use.
Tracking module 630 may monitor data consumption for particular portable data sessions. For example, tracking module 630 may log data use for a particular portable data session using data packet time stamps for a data flow to/from mobile device 110 (e.g., as indicated by the temporary MDN). In one implementation, tracking module 630 may perform packet header inspections to associate data with a particular portable data account. Tracking module 630 may receive instructions and/or information from registration module 610 indicating an account (e.g., associated with a user 105 or group account) to which charges for data consumed on mobile device 110 are to be applied during a particular time period. In one implementation, tracking module 630 may associate data consumption retroactively from the time of a session login for a portable data user. For example, data use for an initial request from client application 400 (e.g., login interface 420) to access a portable data account may be retroactively charged to the user's portable data account. Data consumption on mobile device 110 may continue to be charged to the same portable data account until the portable data session is deactivated (e.g., due to selection of button 532 to end the portable data session, a time limit for the portable data session, a data consumption limit of the portable data session, etc.).
In one implementation, tracking module 630 may insert a unique user identifier (e.g., a temporary MDN) into TCP/IP packets to represent the mobile identity of a mobile user associated with mobile device 110. In some implementations, the user identifier may be inserted into an existing packet header or included in a new packet header. The user identifier may be used, for example, to log data consumption by individual users on mobile device 110.
Notification module 640 may provides notifications to mobile device 110 to enable a user to identify an active account for data use charges on mobile device 110. The notifications from notification module 640 may be provided to mobile device 110 and presented, for example, as on-screen indications of particular account usage on mobile device 110. Notifications may include, for example, information that may be presented as status icon 530 or a widget on mobile device 110. Other notifications formats, such as color codes or audible tones on mobile device 110, may also be used.
Application server 650 may provide a backend support system for mobile applications residing on mobile devices 110. For example, application server 650 may perform authentication processes for user 105 and client application 400. Application server 650 may prompt mobile device 110 or user 105 to provide credentials when accessing portable data platform 125. Application server 650 may also provide server authentication tokens when required in communicating with other platforms. Application server 650 may permit mobile device 110 to download client application 400 to permit other users to use portable data on mobile device 110. In one implementation, the interactions between application server 650 and mobile device 110 may be performed using hypertext transfer protocol (HTTP) or secure HTTP (HTTPS).
Billing module 660 may provide billing services for charging portable data use to a user account, a shared corporate (or group) account, or a direct payment that is mapped to the temporary MDN by mapping engine 625. Direct payments may include, for example, a credit card payment or an online payment account (e.g., a PayPal account). In one implementation, some services of billing module 660 may be performed by servers external to network 120 (e.g., billing servers for a partner entity or third party entity) or other conventional billing systems (e.g., on-line charging system (OCS), off-line charging system (OFCS), etc.). Billing module 660 may receive data usage information from tracking module 630 and subsequently bill the portable data use based on, for example, a predetermined arrangement between user 105 and service provider network 120. The predetermined arrangement may include, for example, a fixed fee for a block of data, crediting the portable data use against an existing account, etc.
Although
Process 700 may include registering a mobile device with a service provider network (block 705) and receiving credentials to obtain portable data services with the service provider network (block 710). For example, mobile device 110 may be purchased/leased by an individual and registered for use of mobile data services with a particular service provider network (e.g., service provider network 120). Mobile device 110 may be configured to access a login option for use of portable data services. The login option may be part of a native experience of the mobile device (e.g., requiring a login at startup, wake-up, or whenever mobile device 110 initiates a mobile data session), may be included in a client application, or may be accessed when opening a browser. Using one of the login options, a user 105 may submit credentials to service provider network 120 as one of an existing subscriber with service provider network 120, a group/corporate data account user, or a new user.
Process 700 may also include determining if a user has an existing account with the service provider network (block 715). For example, based on user login information, service provider network 120 may determine if the user credentials indicate an existing account with service provider network 120. An existing account may include an account that is already registered in the service provider network 120 to which data use may be charged. An existing account may include, for example, a mobile data account associated with another mobile device 110, another type of service account (e.g., internet, television services, a landline phone service, etc.), or a group/corporate data account with service provider network 120.
If the user does not have an existing account with the service provider network (block 715—No), process 700 may include creating a user account with an online payment method (block 720). For example, service provider network 120 may create a user account for a new user and request billing information, such as a credit card number or PayPal account. In creating the user account, service provider network 120 may identify billing rates (e.g., an amount per GB or portions thereof) for mobile data use on mobile device 110.
After creating a new user account (block 720) or if the user has an existing account with the service provider network (block 715—Yes), process 700 may include assigning a temporary MDN to the user account (block 725), mapping the temporary MDN to the mobile device for the portable data session (block 730), and tracking data use by the mobile device using the temporary MDN (block 735). For example, service provider network 120 may select an available MDN from a pool of temporary MDNs to associate with the new or existing account. Service provider network 120 may also map a mobile device identifier, such as an IMEI of mobile device 110, to the temporary MDN used for the portable data session. Service provider network 120 (e.g., tracking module 630) may log data use for a particular portable data session using data packet time stamps for a data flow to/from mobile device 110 (e.g., as indicated by the temporary MDN).
Process 700 may further include detecting a logout signal and detaching the temporary MDN from the mobile device and user account (block 740), and creating a billing record of portable data use on the mobile device linked to the user account (block 745). For example, service provider network 120 may receive a logout signal indicating an end of a portable data session. The logout signal may include, for example, an indication from a user of mobile device 110 (e.g., selecting deactivate button 532 of
In the preceding specification, various preferred embodiments have been described with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the invention as set forth in the claims that follow. The specification and drawings are accordingly to be regarded in an illustrative rather than restrictive sense. For example, although network environment 200 includes a distributed portable data platform 125, according to other embodiments, portable data platform 125 may be combined in one or any combination of devices within network environment 200. An another example, while series of blocks have been described with respect to
It will be apparent that different aspects of the description provided above may be implemented in many different forms of software, firmware, and hardware in the implementations illustrated in the figures. The actual software code or specialized control hardware used to implement these aspects is not limiting of the invention. Thus, the operation and behavior of these aspects were described without reference to the specific software code-it being understood that software and control hardware can be designed to implement these aspects based on the description herein.
Further, certain portions of the invention may be implemented as a “component” or “system” that performs one or more functions. These components/systems may include hardware, such as a processor, an ASIC, or a FPGA, or a combination of hardware and software.
No element, act, or instruction used in the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” and “one of” is intended to include one or more items. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise. The term “exemplary,” as used herein means “serving as an example.” Any embodiment or implementation described as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments or implementations.
To the extent the aforementioned embodiments collect, store or employ personal information provided by individuals, it should be understood that such information shall be used in accordance with all applicable laws concerning protection of personal information. Additionally, the collection, storage and use of such information may be subject to consent of the individual to such activity, for example, through well known “opt-in” or “opt-out” processes as may be appropriate for the situation and type of information. Storage and use of personal information may be in an appropriately secure manner reflective of the type of information, for example, through various encryption and anonymization techniques for particularly sensitive information.
This application is a continuation of U.S. patent application Ser. No. 14/918,936, filed on Oct. 21, 2015, the disclosure of which is hereby incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | 14918936 | Oct 2015 | US |
Child | 15375500 | US |