Patents by Inventor Anurag Agrawal
Anurag Agrawal has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20210203773Abstract: Methods, systems, and apparatus include computer programs encoded on a computer-readable storage medium for dynamic telephone number assignment. A method includes: providing a content item to a user device, the content item including a control for initiating a call to a content sponsor associated with the content item; assigning a telephone number from a pool to the content item; receiving a control interaction indication; facilitating a connection between the user and the content sponsor based on the interaction; storing an association between a user identifier, the telephone number, and a content sponsor identifier such that future calls from the user to the telephone number can be routed to the content sponsor, even after the telephone number has been returned to the pool; and linking a content item impression with the connection such that a report can be generated that shows an effectiveness of the content item impression.Type: ApplicationFiled: March 11, 2021Publication date: July 1, 2021Inventors: Anurag Agrawal, Anshul Kothari, Tao Huang, Girish Baliga, Seung Yi
-
Publication number: 20210176194Abstract: Some embodiments provide a network forwarding element with a data-plane forwarding circuit that has a parameter collecting circuit to store and distribute parameter values computed by several machines in a network. In some embodiments, the machines perform distributed computing operations, and the parameter values that compute are parameter values associated with the distributed computing operations. The parameter collecting circuit of the data-plane forwarding circuit (data plane) in some embodiments (1) stores a set of parameter values computed and sent by a first set of machines, and (2) distributes the collected parameter values to a second set of machines once it has collected the set of parameter values from all the machines in the first set. The first and second sets of machines are the same set of machines in some embodiments, while they are different sets of machines (e.g., one set has at least one machine that is not in the other set) in other embodiments.Type: ApplicationFiled: March 8, 2019Publication date: June 10, 2021Inventors: Masoud Moshref JAVADI, Changhoon KIM, Patrick BOSSHART, Anurag AGRAWAL
-
Publication number: 20210166062Abstract: Systems and methods for automatically extracting a plurality of contact information from a resource, calculating prominence scores of each contact information, and associating a selected contact information with a content item are provided. A content item and a uniform resource locator are received from a content provider. A resource identified by the uniform resource locator is loaded. A plurality of contact information is detected from the loaded resource. For each of the detected contact information, a prominence score is calculated. One of the plurality of contact information is selected based on the calculated prominence scores. The selected contact information is associated with the content item.Type: ApplicationFiled: February 16, 2021Publication date: June 3, 2021Inventors: Varun Soundararajan, Anshul Kothari, Anurag Agrawal
-
Patent number: 11019172Abstract: Some embodiments provide a method for a hardware forwarding element. Based on a set of characteristics of a packet, the method determines to copy a packet to a particular temporary storage of a set of temporary storages of the hardware forwarding element. Based on a property of the particular temporary storage, the method stores only a particular portion of the packet in the particular temporary storage. A same size portion of each packet copied to the particular temporary storage is stored in the particular temporary storage.Type: GrantFiled: August 14, 2020Date of Patent: May 25, 2021Assignee: Barefoot Networks, Inc.Inventors: Parag D. Bhide, Alain Loge, Chaitanya Kodeboyina, Anurag Agrawal
-
Publication number: 20210125582Abstract: Systems and methods for cropping media for a particular orientation using a computing device are described. In some implementations, a method may first comprise receiving by a video preprocessor of the device, a first frame of media in a first orientation. A first region comprising a first feature within the first frame may be identified, by an image analyzer. A cropping calculator of the device may generate a score for the first region based on a characteristic of the first feature and determine that the score for the first region exceeds a threshold. An image processor of the device may then crop the first frame of the video, responsive to the determination that the score for the first region exceeds the threshold, to include the first region within a predetermined display area comprising a subset of the first frame in a second orientation.Type: ApplicationFiled: January 4, 2021Publication date: April 29, 2021Applicant: GOOGLE LLCInventors: Anton Kast, Anurag Agrawal
-
Publication number: 20210119939Abstract: Some embodiments provide a method for an ingress packet processing pipeline of a network forwarding integrated circuit (IC). The ingress packet processing pipeline is for receiving packets from a port of the network forwarding IC and processing the packets to assign different packets to different queues of a traffic management unit of the network forwarding IC. The method receives state data from the traffic management unit. The method stores the state data in a stateful table. The method assigns a particular packet to a particular queue based on the state data received from the traffic management unit and stored in the stateful table.Type: ApplicationFiled: December 24, 2020Publication date: April 22, 2021Inventors: Yi LI, Michael FENG, Anurag AGRAWAL, Jeongkeun LEE, Changhoon KIM, Remy CHANG
-
Patent number: 10986224Abstract: Methods, systems, and apparatus include computer programs encoded on a computer-readable storage medium for dynamic telephone number assignment. A method includes: providing a content item to a user device, the content item including a control for initiating a call to a content sponsor associated with the content item; assigning a telephone number from a pool to the content item; receiving a control interaction indication; facilitating a connection between the user and the content sponsor based on the interaction; storing an association between a user identifier, the telephone number, and a content sponsor identifier such that future calls from the user to the telephone number can be routed to the content sponsor, even after the telephone number has been returned to the pool; and linking a content item impression with the connection such that a report can be generated that shows an effectiveness of the content item impression.Type: GrantFiled: March 9, 2016Date of Patent: April 20, 2021Assignee: Google LLCInventors: Anurag Agrawal, Anshul Kothari, Tao Huang, Girish Baliga, Seung Yi
-
Patent number: 10986042Abstract: Some embodiments provide a network forwarding element with a data-plane forwarding circuit that has a parameter collecting circuit to store and distribute parameter values computed by several machines in a network. In some embodiments, the machines perform distributed computing operations, and the parameter values that compute are parameter values associated with the distributed computing operations. The parameter collecting circuit of the data-plane forwarding circuit (data plane) in some embodiments (1) stores a set of parameter values computed and sent by a first set of machines, and (2) distributes the collected parameter values to a second set of machines once it has collected the set of parameter values from all the machines in the first set. The first and second sets of machines are the same set of machines in some embodiments, while they are different sets of machines (e.g., one set has at least one machine that is not in the other set) in other embodiments.Type: GrantFiled: September 30, 2018Date of Patent: April 20, 2021Assignee: Barefoot Networks, Inc.Inventors: Masoud Moshref Javadi, Changhoon Kim, Patrick W. Bosshart, Anurag Agrawal
-
Publication number: 20210105220Abstract: Some embodiments provide a method for a hardware forwarding element that includes multiple queues. The method receives a packet at a multi-stage processing pipeline of the hardware forwarding element. The method determines, at one of the stages of the processing pipeline, to modify a setting of a particular one of the queues. The method stores an identifier for the particular queue and instructions to modify the queue setting with data passed through the processing pipeline for the packet. The stored information is subsequently used by the hardware forwarding element to modify the queue setting.Type: ApplicationFiled: October 16, 2020Publication date: April 8, 2021Inventors: Jeongkeun LEE, Yi LI, Michael FENG, Srivathsa Dhruvanarayan, Anurag AGRAWAL
-
Patent number: 10955331Abstract: Imaging or measurement methods and systems including methods and systems for finding the three-dimensional orientation and position of multiple dipole-like particles and single molecules, methods and systems for generating helical beams and helical spread functions, and methods and systems for super-resolution and super-localization of dense arrays of emitters.Type: GrantFiled: June 24, 2013Date of Patent: March 23, 2021Assignee: The Regents of The University of Colorado, a body corporateInventors: Rafael Piestun, Anurag Agrawal, Sean Quirin, Anthony Barsic, Ginni Grover
-
Patent number: 10949199Abstract: Some embodiments provide a method for a network forwarding integrated circuit (IC). The method receives packet data with an instruction to copy a portion of the packet data to a temporary storage of the network forwarding IC. The portion is larger than a maximum entry size of the temporary storage. The method generates a header for each of multiple packet data sections for storage in entries of the temporary storage, with each packet data section including a sub-portion of the packet data portion. The method sends the packet data sections with the generated headers to the temporary storage for storage in multiple separate temporary storage entries.Type: GrantFiled: December 8, 2017Date of Patent: March 16, 2021Assignee: Barefoot Networks, Inc.Inventors: Xiaozhou Li, Jeongkeun Lee, Srivathsa Dhruvanarayan, Anurag Agrawal, Changhoon Kim, Alain Loge
-
Patent number: 10943144Abstract: Systems and methods for automatically extracting a plurality of contact information from a resource, calculating prominence scores of each contact information, and associating a selected contact information with a content item are provided. A content item and a uniform resource locator are received from a content provider. A resource identified by the uniform resource locator is loaded. A plurality of contact information is detected from the loaded resource. For each of the detected contact information, a prominence score is calculated. One of the plurality of contact information is selected based on the calculated prominence scores. The selected contact information is associated with the content item.Type: GrantFiled: June 29, 2017Date of Patent: March 9, 2021Assignee: GOOGLE LLCInventors: Varun Soundararajan, Anshul Kothari, Anurag Agrawal
-
Patent number: 10931591Abstract: In a method for allocating physical queues of a network forwarding element, a request is received at the network forwarding element, the network forwarding element including a plurality of physical queues, where each physical queue of the plurality of physical queues has a fixed bandwidth, the request identifying an allocation of a plurality of virtual queues at the network forwarding element. Based at least in part on the request, a configuration of the plurality of physical queues to the plurality of virtual queues is determined. The plurality of physical queues is configured according to the configuration, wherein the configuring includes allocating at least two physical queues to a virtual queue.Type: GrantFiled: May 13, 2019Date of Patent: February 23, 2021Assignee: Barefoot Networks, Inc.Inventors: Anurag Agrawal, Michael Feng, Robert Li, Yan Wang
-
Patent number: 10911377Abstract: Some embodiments provide a method for an ingress packet processing pipeline of a network forwarding integrated circuit (IC). The ingress packet processing pipeline is for receiving packets from a port of the network forwarding IC and processing the packets to assign different packets to different queues of a traffic management unit of the network forwarding IC. The method receives state data from the traffic management unit. The method stores the state data in a stateful table. The method assigns a particular packet to a particular queue based on the state data received from the traffic management unit and stored in the stateful table.Type: GrantFiled: December 7, 2017Date of Patent: February 2, 2021Assignee: Barefoot Networks, Inc.Inventors: Yi Li, Michael Feng, Anurag Agrawal, Jeongkeun Lee, Changhoon Kim, Remy Chang
-
Publication number: 20210021543Abstract: Some embodiments provide a network forwarding element with a data-plane forwarding circuit that has a parameter collecting circuit to store and distribute parameter values computed by several machines in a network. In some embodiments, the machines perform distributed computing operations, and the parameter values that compute are parameter values associated with the distributed computing operations. The parameter collecting circuit of the data-plane forwarding circuit (data plane) in some embodiments (1) stores a set of parameter values computed and sent by a first set of machines, and (2) distributes the collected parameter values to a second set of machines once it has collected the set of parameter values from all the machines in the first set. The first and second sets of machines are the same set of machines in some embodiments, while they are different sets of machines (e.g., one set has at least one machine that is not in the other set) in other embodiments.Type: ApplicationFiled: July 31, 2020Publication date: January 21, 2021Inventors: Masoud Moshref JAVADI, Changhoon KIM, Patrick W. Bosshart, Anurag AGRAWAL
-
Patent number: 10891649Abstract: Methods, systems, and apparatus include computer programs encoded on a computer-readable storage medium for dynamic contact information assignment. A method includes: identifying a pool of telephone numbers; assigning the telephone numbers to a pool manager; allocating by the pool manager, subsets of the telephone numbers to a plurality of allocators, each allocator responsible for allocating telephone numbers to an associated group of content sponsors; determining a first allocation of a first subset, the first allocation being distributed among the content sponsors associated with a first allocator, creating first pools each associated with a respective one of the content sponsors associated with the first allocator; reclaiming one or more telephone numbers from a pool of the first pools; and assigning ones of the reclaimed telephone numbers by the first allocator into either other pools of the first pools or back to the pool manager for allocation to other allocators.Type: GrantFiled: June 12, 2019Date of Patent: January 12, 2021Assignee: Google LLCInventors: Anurag Agrawal, Girish Baliga, Anshul Kothari, Seung Yi, Tao Huang
-
Publication number: 20210006638Abstract: Some embodiments provide a method for a hardware forwarding element. Based on a set of characteristics of a packet, the method determines to copy a packet to a particular temporary storage of a set of temporary storages of the hardware forwarding element. Based on a property of the particular temporary storage, the method stores only a particular portion of the packet in the particular temporary storage. A same size portion of each packet copied to the particular temporary storage is stored in the particular temporary storage.Type: ApplicationFiled: August 14, 2020Publication date: January 7, 2021Inventors: Parag D. Bhide, Alain LOGE, Chaitanya KODEBOYINA, Anurag AGRAWAL
-
Patent number: 10885879Abstract: Systems and methods for cropping media for a particular orientation using a computing device are described. In some implementations, a method may first comprise receiving by a video preprocessor of the device, a first frame of media in a first orientation. A first region comprising a first feature within the first frame may be identified, by an image analyzer. A cropping calculator of the device may generate a score for the first region based on a characteristic of the first feature and determine that the score for the first region exceeds a threshold. An image processor of the device may then crop the first frame of the video, responsive to the determination that the score for the first region exceeds the threshold, to include the first region within a predetermined display area comprising a subset of the first frame in a second orientation.Type: GrantFiled: November 16, 2017Date of Patent: January 5, 2021Assignee: Google LLCInventors: Anton Kast, Anurag Agrawal
-
Patent number: 10873532Abstract: Some embodiments provide a method for a traffic management circuit of a data plane forwarding circuit. The traffic management circuit receives data messages from a set of ingress pipelines and provides the data messages to a set of egress pipelines. The method identifies a flow control event. The method provides metadata regarding the flow control event to a message generation circuit of the data plane forwarding circuit via a bus between the traffic management circuit and the message generation circuit.Type: GrantFiled: August 22, 2018Date of Patent: December 22, 2020Assignee: Barefoot Networks, Inc.Inventors: Remy Chang, Anurag Agrawal, Yi Li, Michael Feng, Yan Wang
-
Patent number: 10873534Abstract: Some embodiments provide a data-plane forwarding circuit that can be configured to learn about a new message flow and to maintain metadata about the new message flow without first having a control plane first configure the data plane to maintain metadata about the flow. To perform its forwarding operations, the data plane includes several data message processing stages that are configured to process the data tuples associated with the data messages received by the data plane. In some embodiments, parts of the data plane message-processing stages are also configured to operate as a flow-tracking circuit that includes (1) a flow-identifying circuit to identify message flows received by the data plane, and (2) a first set of storages to store metadata about the identified flows.Type: GrantFiled: March 21, 2018Date of Patent: December 22, 2020Assignee: Barefoot Networks, Inc.Inventors: Michael Gregory Ferrara, Jay Evan Scott Peterson, Steven Licking, Jeongkeun Lee, Patrick Bosshart, Anurag Agrawal