Patents by Inventor RICARDO KOLLER
RICARDO KOLLER 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: 10412015Abstract: The congestion notification system of some embodiments sends congestion notification messages from lower layer (e.g., closer to a network) components to higher layer (e.g., closer to a packet sender) components. When the higher layer components receive the congestion notification messages, the higher layer components reduce the sending rate of packets (in some cases the rate is reduced to zero) to allow the lower layer components to lower congestion (i.e., create more space in their queues by sending more data packets along the series of components). In some embodiments, the higher layer components resume full speed sending of packets after a threshold time elapses without further notification of congestion. In other embodiments, the higher layer components resume full speed sending of packets after receiving a message indicating reduced congestion in the lower layers.Type: GrantFiled: January 31, 2017Date of Patent: September 10, 2019Assignee: VMware, Inc.Inventors: Santhosh Sundararaman, Nithin B. Raju, Akshay K. Sreeramoju, Ricardo Koller
-
Patent number: 10073721Abstract: Techniques and systems are disclosed for implementing non-blocking writes to eliminate the fetch-before-write requirement by creating an in-memory patch for the updated page and unblocking the calling process. Non-blocking writes eliminate such blocking by buffering the written data elsewhere in memory and unblocking the writing process immediately. Subsequent reads to the updated page locations are also made non-blocking and, in some cases, can be eliminated when the read request can be serviced from in-memory patches. Implementation scenarios can include an operating system (OS) enhancement, revision to an existing OS component (e.g., the OS kernel), special OS component, or enhancement to the software or firmware of the controller software or microcontroller of a storage device or array of storage devices.Type: GrantFiled: August 17, 2015Date of Patent: September 11, 2018Assignee: The Florida International University Board of TrusteesInventors: Raju Rangaswami, Daniel Campello, Luis Useche, Hector Lopez, Ricardo Koller
-
Patent number: 9886303Abstract: Application code is obtained at a compiler toolchain, which accesses a package manager that tracks dependencies for a set of software components including application-level components represented as application-level packages, hypervisor interface-level components represented as hypervisor interface-level packages, and hypervisor-level components represented as hypervisor-level packages. A dependency solver is employed to select a sub-set of the set of packages that satisfy the dependencies.Type: GrantFiled: June 15, 2016Date of Patent: February 6, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ricardo A. Koller Jemio, Daniel J. Williams
-
Publication number: 20170364377Abstract: Application code is obtained at a compiler toolchain, which accesses a package manager that tracks dependencies for a set of software components including application-level components represented as application-level packages, hypervisor interface-level components represented as hypervisor interface-level packages, and hypervisor-level components represented as hypervisor-level packages. A dependency solver is employed to select a sub-set of the set of packages that satisfy the dependencies.Type: ApplicationFiled: June 15, 2016Publication date: December 21, 2017Inventors: Ricardo A. Koller Jemio, Daniel J. Williams
-
Patent number: 9794184Abstract: Some embodiments provide a method for reducing congestion in a network stack that includes a series of components that send data packets through the network stack to a network. At a first component of the network stack, the method receives a data packet from a second component of the network stack. The method identifies a usage indicator value for a flow to which the data packet belongs. The usage indicator value is based on a comparison of a size of the flow to a size of a queue for a third component of the network stack. The method determines whether to send the data packet based on a comparison of the usage indicator value to a threshold usage value. The method sends the data packet to a next component of the network stack only when the usage indicator value is less than the threshold usage value.Type: GrantFiled: January 3, 2017Date of Patent: October 17, 2017Assignee: NICIRA, INC.Inventors: Akshay K. Sreeramoju, Madhusudhan Ravi, Ricardo Koller
-
Publication number: 20170142020Abstract: The congestion notification system of some embodiments sends congestion notification messages from lower layer (e.g., closer to a network) components to higher layer (e.g., closer to a packet sender) components. When the higher layer components receive the congestion notification messages, the higher layer components reduce the sending rate of packets (in some cases the rate is reduced to zero) to allow the lower layer components to lower congestion (i.e., create more space in their queues by sending more data packets along the series of components). In some embodiments, the higher layer components resume full speed sending of packets after a threshold time elapses without further notification of congestion. In other embodiments, the higher layer components resume full speed sending of packets after receiving a message indicating reduced congestion in the lower layers.Type: ApplicationFiled: January 31, 2017Publication date: May 18, 2017Inventors: Santhosh Sundararaman, Nithin B. Raju, Akshay K. Sreeramoju, Ricardo Koller
-
Publication number: 20170118130Abstract: Some embodiments provide a method for reducing congestion in a network stack that includes a series of components that send data packets through the network stack to a network. At a first component of the network stack, the method receives a data packet from a second component of the network stack. The method identifies a usage indicator value for a flow to which the data packet belongs. The usage indicator value is based on a comparison of a size of the flow to a size of a queue for a third component of the network stack. The method determines whether to send the data packet based on a comparison of the usage indicator value to a threshold usage value. The method sends the data packet to a next component of the network stack only when the usage indicator value is less than the threshold usage value.Type: ApplicationFiled: January 3, 2017Publication date: April 27, 2017Inventors: Akshay K. Sreeramoju, Madhusudhan Ravi, Ricardo Koller
-
Patent number: 9621471Abstract: The congestion notification system of some embodiments sends congestion notification messages from lower layer (e.g., closer to a network) components to higher layer (e.g., closer to a packet sender) components. When the higher layer components receive the congestion notification messages, the higher layer components reduce the sending rate of packets (in some cases the rate is reduced to zero) to allow the lower layer components to lower congestion (i.e., create more space in their queues by sending more data packets along the series of components). In some embodiments, the higher layer components resume full speed sending of packets after a threshold time elapses without further notification of congestion. In other embodiments, the higher layer components resume full speed sending of packets after receiving a message indicating reduced congestion in the lower layers.Type: GrantFiled: June 30, 2014Date of Patent: April 11, 2017Assignee: VMware, Inc.Inventors: Santhosh Sundararaman, Nithin B. Raju, Akshay K. Sreeramoju, Ricardo Koller
-
Patent number: 9544238Abstract: Some embodiments provide a method for reducing congestion in a network stack that includes a series of components that send data packets through the network stack to a network. At a first component of the network stack, the method receives a data packet from a second component of the network stack. The method identifies a usage indicator value for a flow to which the data packet belongs. The usage indicator value is based on a comparison of a size of the flow to a size of a queue for a third component of the network stack. The method determines whether to send the data packet based on a comparison of the usage indicator value to a threshold usage value. The method sends the data packet to a next component of the network stack only when the usage indicator value is less than the threshold usage value.Type: GrantFiled: March 11, 2015Date of Patent: January 10, 2017Assignee: NICIRA, INC.Inventors: Akshay K. Sreeramoju, Madhusudhan Ravi, Ricardo Koller
-
Publication number: 20160269305Abstract: Some embodiments provide a method for reducing congestion in a network stack that includes a series of components that send data packets through the network stack to a network. At a first component of the network stack, the method receives a data packet from a second component of the network stack. The method identifies a usage indicator value for a flow to which the data packet belongs. The usage indicator value is based on a comparison of a size of the flow to a size of a queue for a third component of the network stack. The method determines whether to send the data packet based on a comparison of the usage indicator value to a threshold usage value. The method sends the data packet to a next component of the network stack only when the usage indicator value is less than the threshold usage value.Type: ApplicationFiled: March 11, 2015Publication date: September 15, 2016Inventors: Akshay K. Sreeramoju, Madhusudhan Ravi, Ricardo Koller
-
Patent number: 9329896Abstract: Exemplary methods, apparatuses, and systems receive a first request for a storage address at a first access time. Entries are added to first and second data structures. Each entry includes the storage address and the first access time. The first data structure is sorted in an order of storage addresses. The second data structure is sorted in an order of access times. A second request for the storage address is received at a second access time. The first access time is determined by looking up the entry in first data structure using the storage address received in the second request. The entry in the second data structure is looked up using the determined first access time. A number of entries in second data structure that were subsequent to the second entry is determined. A hit count for a reuse distance corresponding to the determined number of entries is incremented.Type: GrantFiled: June 13, 2014Date of Patent: May 3, 2016Assignee: VMware, Inc.Inventors: Sachin Manpathak, Mustafa Uysal, Puneet Zaroo, Ricardo Koller, Luis Useche
-
Publication number: 20160055084Abstract: Techniques and systems are disclosed for implementing non-blocking writes to eliminate the fetch-before-write requirement by creating an in-memory patch for the updated page and unblocking the calling process. Non-blocking writes eliminate such blocking by buffering the written data elsewhere in memory and unblocking the writing process immediately. Subsequent reads to the updated page locations are also made non-blocking and, in some cases, can be eliminated when the read request can be serviced from in-memory patches. Implementation scenarios can include an operating system (OS) enhancement, revision to an existing OS component (e.g., the OS kernel), special OS component, or enhancement to the software or firmware of the controller software or microcontroller of a storage device or array of storage devices.Type: ApplicationFiled: August 17, 2015Publication date: February 25, 2016Applicant: The Florida International University Board of TrusteesInventors: Raju RANGASWAMI, Daniel CAMPELLO, Luis USECHE, Hector LOPEZ, Ricardo KOLLER
-
Publication number: 20150381505Abstract: The congestion notification system of some embodiments sends congestion notification messages from lower layer (e.g., closer to a network) components to higher layer (e.g., closer to a packet sender) components. When the higher layer components receive the congestion notification messages, the higher layer components reduce the sending rate of packets (in some cases the rate is reduced to zero) to allow the lower layer components to lower congestion (i.e., create more space in their queues by sending more data packets along the series of components). In some embodiments, the higher layer components resume full speed sending of packets after a threshold time elapses without further notification of congestion. In other embodiments, the higher layer components resume full speed sending of packets after receiving a message indicating reduced congestion in the lower layers.Type: ApplicationFiled: June 30, 2014Publication date: December 31, 2015Inventors: Santhosh Sundararaman, Nithin B. Raju, Akshay K. Sreeramoju, Ricardo Koller
-
Publication number: 20150363236Abstract: Exemplary methods, apparatuses, and systems receive a first request for a storage address at a first access time. Entries are added to first and second data structures. Each entry includes the storage address and the first access time. The first data structure is sorted in an order of storage addresses. The second data structure is sorted in an order of access times. A second request for the storage address is received at a second access time. The first access time is determined by looking up the entry in first data structure using the storage address received in the second request. The entry in the second data structure is looked up using the determined first access time. A number of entries in second data structure that were subsequent to the second entry is determined. A hit count for a reuse distance corresponding to the determined number of entries is incremented.Type: ApplicationFiled: June 13, 2014Publication date: December 17, 2015Inventors: SACHIN MANPATHAK, MUSTAFA UYSAL, PUNEET ZAROO, RICARDO KOLLER, LUIS USECHE