Machine learning based end to end system for tcp optimization
AssigneeSalesforce, Inc.
InventorsTejaswini Ganapathi, Satish Raghunath, Shauli Gal
Life of this patent
Estimating the term…
Abstract
Bypass network traffic records are generated for a web application. Sufficient statistics of network optimization parameters are calculated for network performance categories. The bypass network traffic records are partitioned for the network performance categories into network traffic buckets. Sufficient statistics and the network traffic buckets are used to generate network quality mappings. The network quality mappings are used as training instances to train a machine learner for generating network optimization policies to be implemented by user devices.
Claims21
A computer-implemented method, comprising:
- receiving, by one or more computing devices, a plurality of bypass network traffic records for a web application that communicates with user devices from a plurality of different access networks in a time window, wherein the plurality of bypass network traffic records is generated from user traffic data devoid of information about network access technologies used by the user devices to access the web application;
- wherein the plurality of bypass network traffic records is clustered into a plurality of network performance categories, wherein each network performance category in the plurality of network performance categories comprises a respective subset of bypass network traffic records in the plurality of bypass network traffic records;
- calculating, by the one or more computing devices, a plurality of sets of sufficient statistics of one or more network optimization parameters for the plurality of network performance categories, wherein each set of sufficient statistics of the one or more network optimization parameters is calculated for a corresponding network performance category based on its respective subset of bypass network traffic records;
- partitioning, by the one or more computing devices, the respective subset of bypass network traffic records for the corresponding network performance category into one or more network traffic buckets, thereby generating a plurality of network traffic buckets for the plurality of network performance categories;
- generating, from the plurality of sets of sufficient statistics and the plurality of network traffic buckets, a plurality of network quality mappings;
- using the plurality of network quality mappings as training instances to train a machine learner for generating network optimization policies;
- and
- causing the one or more network optimization policies generated by the machine learner to be propagated to one or more user devices to be implemented by the one or more user devices in making network requests to the web application.
A non-transitory computer readable medium storing a program of instructions that is executable by a device to perform a method, the method comprising:
- receiving, by one or more computing devices, a plurality of bypass network traffic records for a web application that communicates with user devices from a plurality of different access networks in a time window, wherein the plurality of bypass network traffic records is generated from user traffic data devoid of information about network access technologies used by the user devices to access the web application;
- wherein the plurality of bypass network traffic records is clustered into a plurality of network performance categories, wherein each network performance category in the plurality of network performance categories comprises a respective subset of bypass network traffic records in the plurality of bypass network traffic records;
- calculating, by the one or more computing devices, a plurality of sets of sufficient statistics of one or more network optimization parameters for the plurality of network performance categories, wherein each set of sufficient statistics of the one or more network optimization parameters is calculated for a corresponding network performance category based on its respective subset of bypass network traffic records;
- partitioning, by the one or more computing devices, the respective subset of bypass network traffic records for the corresponding network performance category into one or more network traffic buckets, thereby generating a plurality of network traffic buckets for the plurality of network performance categories;
- generating, from the plurality of sets of sufficient statistics and the plurality of network traffic buckets, a plurality of network quality mappings;
- using the plurality of network quality mappings as training instances to train a machine learner for generating network optimization policies;
- and
- causing the one or more network optimization policies generated by the machine learner to be propagated to one or more user devices to be implemented by the one or more user devices in making network requests to the web application.
An apparatus, comprising:
- one or more computing devices;
- a non-transitory computer readable medium storing a program of instructions that is executable by the one or more computing devices to perform a method, the method comprising:
- receiving, by one or more computing devices, a plurality of bypass network traffic records for a web application that communicates with user devices from a plurality of different access networks in a time window, wherein the plurality of bypass network traffic records is generated from user traffic data devoid of information about network access technologies used by the user devices to access the web application;
- wherein the plurality of bypass network traffic records is clustered into a plurality of network performance categories, wherein each network performance category in the plurality of network performance categories comprises a respective subset of bypass network traffic records in the plurality of bypass network traffic records;
- calculating, by the one or more computing devices, a plurality of sets of sufficient statistics of one or more network optimization parameters for the plurality of network performance categories, wherein each set of sufficient statistics of the one or more network optimization parameters is calculated for a corresponding network performance category based on its respective subset of bypass network traffic records;
- partitioning, by the one or more computing devices, the respective subset of bypass network traffic records for the corresponding network performance category into one or more network traffic buckets, thereby generating a plurality of network traffic buckets for the plurality of network performance categories;
- generating, from the plurality of sets of sufficient statistics and the plurality of network traffic buckets, a plurality of network quality mappings;
- using the plurality of network quality mappings as training instances to train a machine learner for generating network optimization policies;
- and
- causing the one or more network optimization policies generated by the machine learner to be propagated to one or more user devices to be implemented by the one or more user devices in making network requests to the web application.
Dependencies are inferred from the claim text.