Patents by Inventor Prafulla Deuskar
Prafulla Deuskar 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).
-
Patent number: 9350667Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: GrantFiled: September 20, 2013Date of Patent: May 24, 2016Assignee: Intel CorporationInventors: John Ronciak, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 9311110Abstract: Examples are disclosed for remotely initializing or booting a client or host device. In some examples, a network (NW) input/output (I/O) device coupled to a host device connects to a remote server via a NW communication link. For these examples, modules of the network I/O device establishes a control path to a non-volatile memory express (NVMe) controller maintained at the remote server using a remote direct memory access (RDMA) protocol. Properties of a storage device controlled by the NVMe controller have an RDMA service tag (STag) to indicate accessible allocated portions of the storage device. A system basic I/O system (BIOS) is capable of using the RDMA STag to access the storage device and load an operating system (OS) kernel. Also, one or more device drivers can remotely boot the host device using the RDMA STag.Type: GrantFiled: July 8, 2013Date of Patent: April 12, 2016Assignee: INTEL CORPORATIONInventors: Eliezer Tamir, Prafulla Deuskar, Phil C. Cayton
-
Publication number: 20150012735Abstract: Examples are disclosed for remotely initializing or booting a client or host device. In some examples, a network (NW) input/output (I/O) device coupled to a host device may connect to a remote server via a NW communication link. For these examples, modules of the network I/O device may establish a control path to a non-volatile memory express (NVMe) controller maintained at the remote server using a remote direct memory access (RDMA) protocol. Properties of a storage device controlled by the NVMe controller as well has an RDMA service tag (STag) to indicate allocated portions of the storage device may be obtained. A system basic I/O system (BIOS) may be capable of using the RDMA STag to access the storage device and load an operating system (OS) kernel and one or more device drivers to remotely boot the host device. Other examples are described and claimed.Type: ApplicationFiled: July 8, 2013Publication date: January 8, 2015Inventors: Eliezer Tamir, Prafulla Deuskar, Phil C. Cayton
-
Publication number: 20140204751Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: ApplicationFiled: September 20, 2013Publication date: July 24, 2014Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 8547837Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: GrantFiled: April 5, 2011Date of Patent: October 1, 2013Assignee: Intel CorporationInventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Publication number: 20110182292Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: ApplicationFiled: April 5, 2011Publication date: July 28, 2011Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 7944828Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: GrantFiled: October 1, 2009Date of Patent: May 17, 2011Assignee: Intel CorporationInventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 7788391Abstract: In one embodiment, a method is provided. The method of this embodiment provides performing packet processing on a packet, and placing the packet in a placement queue; if no read buffer is available, determining if the size of the placement queue exceeds a threshold polling value; and if the size of the placement queue exceeds the threshold polling value: if there are one or more pending DMM (data movement module) requests, polling a DMM to determine if the DMM has completed the one or more pending DMM requests for data associated with an application; and if the DMM has completed the one or more pending DMM requests, then sending a completion notification to the application to receive the data.Type: GrantFiled: October 25, 2004Date of Patent: August 31, 2010Assignee: Intel CorporationInventors: Sujoy Sen, Anil Vasudevan, Linden Cornett, Prafulla Deuskar
-
Publication number: 20100091774Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: ApplicationFiled: October 1, 2009Publication date: April 15, 2010Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 7620046Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: GrantFiled: September 30, 2004Date of Patent: November 17, 2009Assignee: Intel CorporationInventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 7602798Abstract: Techniques for accelerating network receive side processing of packets. Packets may be associated into flow groupings and stored in flow buffers. Packet headers that are available for TCP/IP processing may be provided for processing. If a payload associated with a header is not available for processing then a descriptor associated with the header is tagged as indicating the payload is not available for processing.Type: GrantFiled: August 27, 2004Date of Patent: October 13, 2009Assignee: Intel CorporationInventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 7512684Abstract: In general, in one aspect, the disclosure describes a method that includes accessing a packet, determining a flow associated with the packet, and determining, based at least in part on the packet, whether to remove the flow from a list of flows to handle using page-flipping.Type: GrantFiled: September 30, 2004Date of Patent: March 31, 2009Assignee: Intel CorporationInventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Patent number: 7461173Abstract: A method of maintaining network protocol timers in data structures associated with different respective processors in a multi-processor system. The timers accessed by a respective one of the processors include timers of connections mapped to the processor.Type: GrantFiled: June 30, 2004Date of Patent: December 2, 2008Assignee: Intel CorporationInventors: Sujoy Sen, Linden Cornett, Prafulla Deuskar, David B Minturn
-
Publication number: 20060168400Abstract: Packet data received by a network controller is parsed and at least a portion of a received packet is stored by the network controller in both a host memory of a system and also in a cache memory of the central processing unit of the system. Other embodiments are described and claimed.Type: ApplicationFiled: December 30, 2004Publication date: July 27, 2006Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Publication number: 20060153215Abstract: In an embodiment, a method is provided. The method of this embodiment provides associating a receive packet with a selected one of a plurality of buckets in a table using a generated value based, at least in part, on the receive packet, and obtaining a connection context from the selected bucket. Other embodiments are disclosed and/or claimed.Type: ApplicationFiled: December 20, 2004Publication date: July 13, 2006Inventors: Linden Cornett, Prafulla Deuskar, David Minturn, Sujoy Sen, Anil Vasudevan
-
Publication number: 20060067228Abstract: In general, in one aspect, the disclosure describes a method that includes accessing a packet, determining a flow associated with the packet, and determining, based at least in part on the packet, whether to remove the flow from a list of flows to handle using page-flipping.Type: ApplicationFiled: September 30, 2004Publication date: March 30, 2006Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Publication number: 20060067349Abstract: In general, in one aspect, the disclosure describes a method includes accessing data of an egress packet belonging to a flow, storing data associating the flow with at least one queue based on a source of the data of the egress packet. The method also includes accessing an ingress packet belonging to the flow, performing a lookup of the at least one queue associated with the flow, and enqueueing data of the ingress packet to the at least one queue associated with the flow.Type: ApplicationFiled: September 30, 2004Publication date: March 30, 2006Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Publication number: 20060045090Abstract: Techniques for accelerating network receive side processing of packets. Packets may be associated into flow groupings and stored in flow buffers. Packet headers that are available for TCP/IP processing may be provided for processing. If a payload associated with a header is not available for processing then a descriptor associated with the header is tagged as indicating the payload is not available for processing.Type: ApplicationFiled: August 27, 2004Publication date: March 2, 2006Inventors: John Ronciak, Christopher Leech, Prafulla Deuskar, Jesse Brandeburg, Patrick Connor
-
Publication number: 20060031588Abstract: In general, in one aspect, the disclosure describes a method of maintaining network protocol timers in data structures associated with different respective processors in a multi-processor system. The timers accessed by a respective one of the processors include timers of connections mapped to the processor.Type: ApplicationFiled: June 30, 2004Publication date: February 9, 2006Inventors: Sujoy Sen, Linden Cornett, Prafulla Deuskar, David Minturn
-
Publication number: 20050223133Abstract: In one embodiment, a method is provided. The method of this embodiment provides performing packet processing on a packet, and placing the packet in a placement queue; if no read buffer is available, determining if the size of the placement queue exceeds a threshold polling value; and if the size of the placement queue exceeds the threshold polling value: if there are one or more pending DMM (data movement module) requests, polling a DMM to determine if the DMM has completed the one or more pending DMM requests for data associated with an application; and if the DMM has completed the one or more pending DMM requests, then sending a completion notification to the application to receive the data.Type: ApplicationFiled: October 25, 2004Publication date: October 6, 2005Inventors: Sujoy Sen, Anil Vasudevan, Linden Cornett, Prafulla Deuskar