Attribution of mobile device data traffic to end-user application based on socket flows

US9705771B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9705771-B2
Application numberUS-201414339110-A
CountryUS
Kind codeB2
Filing dateJul 23, 2014
Priority dateJan 28, 2009
Publication dateJul 11, 2017
Grant dateJul 11, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method performed by a network system communicatively coupled to a device over a wireless access network, the method comprising transmitting a traffic flow to, or receiving the traffic flow from, a software application on the device, the traffic flow comprising one or more related data transfers over the wireless access network, the traffic flow being routed between the software application and the network system through an assisting element comprising a control application or a proxy agent on the device, wherein the traffic flow has a characteristic associating the traffic flow with the first software application, the characteristic preserving the association between the traffic flow and the software application when the traffic flow is routed by the one or more assisting elements; identifying the characteristic; and implementing at least a portion of a control, accounting, or notification service policy based on the identified characteristic.

First claim

Opening claim text (preview).

We claim: 1. A mobile device, comprising: at least one processor; a user interface; a non-transitory memory to store applications executable on the at least one processor, each application to be selectively launched via the user interface, and a system service callable by multiple ones of the applications via a call indicating a network resource indicator for which the system service is to manage a download of one or more files and/or a data streams from a network element on behalf of the calling application; circuitry to exchange packets wirelessly between the mobile device and a wireless network; and wherein the at least one processor is configured to store in a set of one or more tables an identifier for each respective one of the applications for which the system service has opened a given network socket in order to manage a download, to identify the respective one of the applications with the given opened network socket, store in the set of one or more tables an indication of traffic volume, respective to each opened network socket, dependent on a data usage measurement by the mobile device for packets wirelessly exchanged with the wireless network, and which are attributable to the opened network socket, and attribute each indication of traffic volume to a respective one of the applications on behalf of which the system service manages a download, based on the stored identification between a given network socket and a respective application. 2. The mobile device of claim 1 , wherein: the applications include a first application; the mobile device further comprises a control application registered to handle at least one specific file and/or stream type, wherein the system service passes a downloaded file and/or stream of the handled type to the control application. 3. The mobile device of claim 2 , wherein the downloaded file and/or stream comprises a media file and/or stream and wherein the control application comprises an application configured to decode the media file and/or stream according to a specific coding standard. 4. The mobile device of claim 2 , wherein the downloaded file and/or stream comprises a textual document file, wherein the control application comprises a text editor registered to open the textual document file, and wherein following download, the textual document file is to be passed to the text editor for opening. 5. The mobile device of claim 2 , wherein the system service is adapted to receive a call from the control application to download a file and/or stream, and where the at least one system service is to responsively attribute traffic to the first application. 6. The mobile device of claim 1 , wherein: the mobile device is to register a thread for each call by one of the applications to the system service; the at least one processor is configured to associate each opening of a network socket by the system service with a registered thread; and the at least one processor is configured to store in the set of one or more tables an identifier unique to each thread, and is to store in the set of one or more tables an indication of traffic volume unique to each thread. 7. The mobile device of claim 1 , wherein the mobile device further comprises a kernel function to cause the at least one processor to create the data usage measurement and to store the indication of traffic volume in the set of one or more tables. 8. The mobile device of claim 7 , wherein the unique identifier comprises an Android UID parameter, and wherein the kernel function is to cause the at least one processor to store the indication of traffic volume in a manner that is dependent on the Android UID parameter. 9. The mobile device of claim 1 , wherein the mobile device is further to: classify data flows associated with a call of the system service by a given one of the applications; add a tag respective to each of the data flows to the identifier for the given one of the applications; store each tag in the set of one or more tables in association with the identifier for the given one of the applications; and use each tag and the identifier for the given one to separately account for each data flow. 10. The mobile device of claim 1 , wherein the at least one processor is further configured to implement a firewall, the firewall to access the set of one or more tables to associate intended traffic with a first one of the applications; and filter the intended traffic in dependence on a policy associated with the first one of the applications, to thereby limit the exchange of packets by the circuitry which are associated with the first one of the applications. 11. The mobile device of claim 10 , wherein the at least one processor is further configured to generate the data usage measurements. 12. The mobile device of claim 10 , wherein the policy reflects a quality of service to be associated with the first one of the applications, and wherein the firewall is to regulate the exchange of packets by the circuitry, so as to implement the quality of service for the first one of the applications relative to at least one other one of the applications. 13. The mobile device of claim 10 , wherein the policy is dependent on whether the first one of the applications is running as a foreground application or a background application. 14. The mobile device of claim 13 , wherein the filter is adapted to block traffic exchange with the wireless network and associated with the first one of the applications when the first one of the applications is running as a background application. 15. The mobile device of claim 10 , wherein the policy is defined independent from the first one of the applications, such that the first one of the applications is not aware of restrictions presented to traffic flow attributable to the first one of the applications which are represented by the policy. 16. The mobile device of claim 1 , wherein the at least one processor is further configured to display to a user via the interface a service usage associated with a first one of the applications, dependent on traffic volume respective to the first one of the applications.

Assignees

Inventors

Classifications

  • Tariff-related aspects · CPC title

  • Throughput · CPC title

  • Ensuring fulfilment of SLA · CPC title

  • Testing, {supervising or monitoring} using real traffic · CPC title

  • Broadcast or multicast traffic · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9705771B2 cover?
A method performed by a network system communicatively coupled to a device over a wireless access network, the method comprising transmitting a traffic flow to, or receiving the traffic flow from, a software application on the device, the traffic flow comprising one or more related data transfers over the wireless access network, the traffic flow being routed between the software application an…
Who is the assignee on this patent?
Headwater Partners I Llc
What technology area does this patent fall under?
Primary CPC classification H04L43/0876. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jul 11 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).