Utilizing packet headers to monitor network traffic in association with a client device
First Claim
1. A method for monitoring network traffic, the method comprising:
- obtaining a packet being communicated to or from an application running on a mobile device, the packet having a packet header including network data and non-network data, wherein the network data indicates network performance associated with the application running on the mobile device;
at the mobile device, reading the packet header of the obtained packet to identify whether at least a portion of the network data corresponds with a predetermined set of types of network data, whereinwhen identified that the at least the portion of network data corresponds with each of the predetermined set of types of network data in the packet header of the obtained packet, discontinue reading a remainder of the obtained packet, andwhen identified that the at least the portion of network data does not correspond with each of the predetermined set of types of network data in the packet header of the obtained packet, reading a payload of the obtained packet to identify at least one network data corresponding with each type of network data not in the packet header of the obtained packet; and
providing the network data that corresponds with the predetermined set of types of network data to a remote server for use in analyzing performance of the application running on the mobile device.
1 Assignment
0 Petitions
Accused Products
Abstract
Various methods and systems for facilitating network traffic monitoring in association with an application running on a client device are provided. In this regard, aspects of the invention facilitate monitoring network traffic being transmitted to and/or from a client device, such as a mobile device, so that network performance can be analyzed. In various implementations, packet headers of data packets are read to obtain or extract desired network metrics that indicate network performance. Packet headers are generally read to the extent necessary to identify various network data. As such, by avoiding examination of a packet payload and, in some cases, examination of the entire header, the efficiency of monitoring network traffic at a client device is improved.
119 Citations
22 Claims
-
1. A method for monitoring network traffic, the method comprising:
-
obtaining a packet being communicated to or from an application running on a mobile device, the packet having a packet header including network data and non-network data, wherein the network data indicates network performance associated with the application running on the mobile device; at the mobile device, reading the packet header of the obtained packet to identify whether at least a portion of the network data corresponds with a predetermined set of types of network data, wherein when identified that the at least the portion of network data corresponds with each of the predetermined set of types of network data in the packet header of the obtained packet, discontinue reading a remainder of the obtained packet, and when identified that the at least the portion of network data does not correspond with each of the predetermined set of types of network data in the packet header of the obtained packet, reading a payload of the obtained packet to identify at least one network data corresponding with each type of network data not in the packet header of the obtained packet; and providing the network data that corresponds with the predetermined set of types of network data to a remote server for use in analyzing performance of the application running on the mobile device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for monitoring network traffic, the system comprising:
-
one or more data processors; and one or more computer-readable storage media containing instructions which when executed on the one or more data processors, cause the one or more processors to perform operations including; obtaining a packet being communicated to or from an application running on a mobile device, the packet having a packet header including network data and non-network data, wherein the network data indicates network performance associated with the application running on the mobile device; at the mobile device, reading the packet header of the obtained packet to identify whether at least a portion of the network data corresponds with a predetermined set of types of network data, wherein when identified that the at least the portion of network data corresponds with each of the predetermined set of types of network data in the packet header of the obtained packet, discontinue reading a remainder of the obtained packet, and when identified that the at least the portion of network data does not correspond with each of the predetermined set of types of network data in the packet header of the obtained packet, reading a payload of the packet to identify at least one network data corresponding with each type of network data not in the packet header of the obtained packet; and providing the network data that corresponds with the predetermined set of types of network data to a remote server for use in analyzing performance of the application running on the mobile device. - View Dependent Claims (20, 21)
-
-
22. One or more non-transitory computer-storage media storing computer-executable instructions that, when executed by a computing device, perform a method for monitoring network traffic, the method comprising:
-
obtaining a packet being communicated to or from an application running on a mobile device, the packet having a packet header including network data and non-network data, wherein the network data indicates network performance associated with the application running on the mobile device; at the mobile device, reading the packet header of the obtained packet to identify whether at least a portion of the network data corresponds with a predetermined set of types of network data, wherein when identified that the at least the portion of network data corresponds with each of the predetermined set of types of network data in the packet header of the obtained packet, discontinue reading a remainder of the packet, and when identified that the at least the portion of network data does not correspond with each of the predetermined set of types of network data in the packet header of the obtained packet, reading a payload of the obtained packet to identify at least one network data corresponding with each type of network data not in the packet header of the obtained packet; and providing the network data that corresponds with the predetermined set of types of network to a emote server for use in analyzing performance of the application running on the mobile device.
-
Specification