Patents by Inventor Jeffrey Clifford Mogul

Jeffrey Clifford Mogul 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: 10728171
    Abstract: Disclosed herein are a system, non-transitory computer readable medium, and method for governing communications of a bare metal guest in a cloud network. A network interface handles packets of data in accordance with commands by a control agent.
    Type: Grant
    Filed: April 30, 2013
    Date of Patent: July 28, 2020
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Jeffrey Clifford Mogul, Jose Renato G. Santos, Yoshio Turner, Kevin T. Lim
  • Patent number: 10469404
    Abstract: The present application describes a system and method for rate limiting traffic of network users, such as virtual machines (VMs). In accordance with the disclosure, transmission queues for the VMs may be assigned to two levels of rate limiting. The first-level rate limit may be an individual rate limit for a particular transmission queue, while the second-level rate limit may be a group rate limit that is applied to a group of transmission queues. The first-level rate limit for some transmission queues may be performed using software rate limiting, while for other transmission queues the first-level rate limit may be performed using hardware rate limiting. The second-level rate limit may be applied to a group of transmission queues that contains both software first-level rate limited transmission queues and hardware first-level rate limited transmission queues.
    Type: Grant
    Filed: February 26, 2015
    Date of Patent: November 5, 2019
    Assignee: Google LLC
    Inventors: Yuhong Mao, Richard Lee Sites, Jeffrey Clifford Mogul
  • Patent number: 10009285
    Abstract: An example method for allocating resources in accordance with aspects of the present disclosure includes collecting proposals from a plurality of modules, the proposals assigning the resources to the plurality of modules and resulting in topology changes in a computer network environment, identifying a set of proposals in the proposals, the set of proposals complying with policies associated with the plurality of modules, instructing the plurality of modules to evaluate the set of proposals, selecting a proposal from the set of proposals, and instructing at least one module associated with the selected proposal to instantiate the selected proposal.
    Type: Grant
    Filed: July 30, 2013
    Date of Patent: June 26, 2018
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Jeffrey Clifford Mogul, Alvin Auyoung, Sujata Banerjee, Jung Gun Lee, Jean Tourrilhes, Michael Schlansker, Puneet Sharma, Lucian Popa
  • Patent number: 9813328
    Abstract: Selected ones of multiple groups of network entities are assigned to corresponding routing structures, where each of the routing structures defines a set of paths through a network among network entities of a corresponding one of the groups. The assigning considers available multicast resources in communication nodes in the network, and a criterion relating to reducing overall cost in the assignment of the selected groups to the corresponding routing structures.
    Type: Grant
    Filed: April 12, 2012
    Date of Patent: November 7, 2017
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Praveen Yalagandula, Jayaram Mudigonda, Jeffrey Clifford Mogul
  • Patent number: 9772958
    Abstract: Example methods, apparatus, and articles of manufacture to control generation of memory access requests in processor systems are disclosed. A disclosed example method involves determining at a memory controller whether a memory access queue depth for a memory reference is greater than a first threshold. When the memory access queue depth for the memory reference is greater than the first threshold, an indication is sent to control generation of memory access requests corresponding to the memory reference.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: September 26, 2017
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Jeffrey Clifford Mogul, Jayaram Mudigonda
  • Patent number: 9762502
    Abstract: The present application describes a system and method for a virtual machine to classify a packet. Once the virtual machine (VM) classifies the packet, it bypasses a hypervisor to enqueue the packet directly on a hardware transmission queue. The NIC will then verify that the VM classified and enqueued the packet correctly. If the packet was classified properly, it is transmitted over the wire to its destination. In this regard, the system and method provides a technique for verifying that the VM is enqueuing packets properly, while improving performance by allowing high-rate flows to bypass the hypervisor.
    Type: Grant
    Filed: February 26, 2015
    Date of Patent: September 12, 2017
    Assignee: Google Inc.
    Inventors: Jeffrey Clifford Mogul, Jakov Seizovic, Yuhong Mao, Benjamin Charles Serebrin
  • Patent number: 9755978
    Abstract: The present application describes a system and method for rate limiting traffic of a virtual machine (VM). In this regard, a VM bypasses a hypervisor and enqueues a packet on an assigned transmission queue. Based on information contained in the packet, the NIC determines whether the packet is to be delayed or transmitted immediately. If the NIC determines that the packet is to be transmitted immediately, the packet is moved to one of a plurality of primary output queues to be transmitted to the external network. If the packet is to be delayed, the packet is moved to one of a plurality of rate limited secondary output queues. In this regard, the NIC classifies the packets, thereby improving performance by allowing high-rate flows to bypass the hypervisor.
    Type: Grant
    Filed: February 26, 2015
    Date of Patent: September 5, 2017
    Assignee: Google Inc.
    Inventors: Jeffrey Clifford Mogul, Jakov Seizovic, Benjamin Charles Serebrin
  • Patent number: 9652419
    Abstract: A system, method, and non-transitory computer-readable medium for filtering flow table entries is described. A trusted device may send a table read request to a network interface controller (NIC) that includes predicate logic. The NIC will use the received predicate logic to filter flow table entries. The entries that satisfy the criteria specified by the trusted software are moved to a Direct Memory Access (DMA) buffer on the NIC to create a subset of entries. Once some or all of the flow table has been scanned, the subset of entries may be transferred from the DMA buffer on the NIC to a memory of the trusted host via a DMA transfer to be further processed by the trusted host.
    Type: Grant
    Filed: October 10, 2014
    Date of Patent: May 16, 2017
    Assignee: Google Inc.
    Inventors: Jeffrey Clifford Mogul, Yuhong Mao
  • Patent number: 9614939
    Abstract: A system and method is provided for generating network timeouts by utilizing intentionally delayed message transmissions sent internal to a network controller. For example, according to this system and method a network controller transmits a data message externally over a network and the data message invokes a response network message. The network controller also transmits a timeout message corresponding to the data message; however, the timeout message is intentionally delayed for a predetermined duration of time prior to being internally transmitted. controller host device receives at least one of the response message and the timeout message and determines which is received first. If the timeout message is received, a request associated with the transmitted data message is treated as having timed out.
    Type: Grant
    Filed: June 2, 2014
    Date of Patent: April 4, 2017
    Assignee: Google Inc.
    Inventor: Jeffrey Clifford Mogul
  • Patent number: 9590909
    Abstract: A network switch for reducing TCP timeouts due to incast collapse is disclosed. The network switch has a plurality of buffers for storing network packets for at least one sender server. An incast buffer management component in the network switch allocates a buffer in the plurality of buffers to store an incast notification packet, the incast notification packet indicating one or more network packets that have been dropped by the network switch. The network switch also includes an incast notification component for forwarding the incast notification packet to a destination server with an incast notification packet specific header.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: March 7, 2017
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Jeffrey Clifford Mogul, Paul T Congdon, Jayaram Mudigonda, Lucian Popa
  • Patent number: 9385922
    Abstract: A method of generating a plurality of potential generalized fat tree network (GFT) topologies is provided herein. The method includes receiving parameters that specify a number of servers, a number of switches, and a number of ports in the switches. The parameters are for configuring an GFT topology. The method also includes generating a plurality of potential GFT topologies based on heuristics that favor higher bandwidth and lower latency. Generating the plurality of potential GFT topologies includes generating each level of the potential GFT topologies, recursively, and from a bottom level of a potential GFT topology to a top level.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: July 5, 2016
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Jayaram Mudigonda, Praveen Yalagandula, Jeffrey Clifford Mogul
  • Publication number: 20160173403
    Abstract: An example method for allocating resources in accordance with aspects of the present disclosure includes collecting proposals from a plurality of modules, the proposals assigning the resources to the plurality of modules and resulting in topology changes in a computer network environment, identifying a set of proposals in the proposals, the set of proposals complying with policies associated with the plurality of modules, instructing the plurality of modules to evaluate the set of proposals, selecting a proposal from the set of proposals, and instructing at least one module associated with the selected proposal to instantiate the selected proposal.
    Type: Application
    Filed: July 30, 2013
    Publication date: June 16, 2016
    Inventors: Jeffrey Clifford Mogul, Alvin AUYOUNG, Sujata BANERJEE, Jung Gun LEE, Jean TOURRILHES, Michael SCHLANSKER, Puneet SHARMA, Lucian POPA
  • Patent number: 9304798
    Abstract: A scalable, multi-tenant network architecture for a virtualized datacenter is provided. The network architecture includes a network having a plurality of servers connected to a plurality of switches. The plurality of servers hosts a plurality of virtual interfaces for a plurality of tenants. A configuration repository is connected to the network and each server in the plurality of servers has a network agent hosted therein. The network agent encapsulates packets for transmission across the network from a source virtual interface to a destination virtual interface in the plurality of virtual interfaces for a tenant in the plurality of tenants. The packets are encapsulated with information identifying and locating the destination virtual interface, and the information is interpreted by switches connected to the source virtual interface and the destination virtual interface.
    Type: Grant
    Filed: June 7, 2011
    Date of Patent: April 5, 2016
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Jayaram Mudigonda, Praveen Yalagandula, Jeffrey Clifford Mogul, Bryan Stiekes, Anna Fischer
  • Publication number: 20160080287
    Abstract: Disclosed herein are a system, non-transitory computer readable medium, and method for governing communications of a bare metal guest in a cloud network. A network interface handles packets of data in accordance with commands by a control agent.
    Type: Application
    Filed: April 30, 2013
    Publication date: March 17, 2016
    Inventors: Jeffrey Clifford MOGUL, Jose Renato G. SANTOS, Yoshio TURNER, Kevin T. LIM
  • Publication number: 20150334024
    Abstract: A controller receives information from congestion detectors in a network, the information indicating that points in the network are congested due to data flows in the network. The controller controls data rates of the data flows based on the information.
    Type: Application
    Filed: April 20, 2012
    Publication date: November 19, 2015
    Inventors: Jeffrey Clifford Mogul, Puneet Sharma, Sujata Banerjee, Kevin Christpher Webb, Praveen Yalagandula
  • Publication number: 20150333968
    Abstract: A method of generating a plurality of potential network topologies is provided herein. The method includes receiving parameters that specify a number of servers, a number of switches, and a number of ports in the switches. The parameters are for configuring a network topology. The method also includes generating one or more potential network topologies comprising the set of potential network topologies, for each of a number of dimensions. The number of dimensions is based on the number of switches. The method further includes determining that the set of potential network topologies is structurally feasible. Additionally, the method includes determining an optimal link aggregation (LAG) factor in each dimension of each of the set of potential network topologies.
    Type: Application
    Filed: July 22, 2015
    Publication date: November 19, 2015
    Inventors: Jayaram Mudigonda, Praveen Yalagandula, Jeffrey Clifford Mogul
  • Publication number: 20150326698
    Abstract: A system and method is provided for generating network timeouts by utilizing intentionally delayed message transmissions sent internal to a network controller. For example, according to this system and method a network controller transmits a data message externally over a network and the data message invokes a response network message. The network controller also transmits a timeout message corresponding to the data message; however, the timeout message is intentionally delayed for a predetermined duration of time prior to being internally transmitted. controller host device receives at least one of the response message and the timeout message and determines which is received first. If the timeout message is received, a request associated with the transmitted data message is treated as having timed out.
    Type: Application
    Filed: June 2, 2014
    Publication date: November 12, 2015
    Applicant: GOOGLE INC.
    Inventor: Jeffrey Clifford Mogul
  • Patent number: 9164250
    Abstract: Connectors of a first removable modular optical connection assembly, having a first predefined arrangement of optical signal conduits, are connected to respective connectors on a support structure that are optically connected to corresponding devices. The first modular optical connection assembly is replaceable with a second modular optical connection assembly having a second, different predefined arrangement of optical signal conduits, to change a topology of a network.
    Type: Grant
    Filed: March 14, 2012
    Date of Patent: October 20, 2015
    Assignee: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
    Inventors: Jeffrey Clifford Mogul, Dwight L. Barron, Kevin B. Leigh, Jayaram Mudigonda, Praveen Yalagandula, Guodong Zhang, Terrel Morris
  • Patent number: 9146867
    Abstract: Example methods, apparatus, and articles of manufacture to access memory are disclosed. A disclosed example method involves receiving at least one runtime characteristic associated with accesses to contents of a memory page and dynamically adjusting a memory fetch width for accessing the memory page based on the at least one runtime characteristic.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: September 29, 2015
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jeffrey Clifford Mogul, Naveen Muralimanohar, Mehul A. Shah, Eric A. Anderson
  • Patent number: 9148348
    Abstract: A method of generating a plurality of potential network topologies is provided herein. The method includes receiving parameters that specify a number of servers, a number of switches, and a number of ports in the switches. The parameters are for configuring a network topology. The method also includes generating one or more potential network topologies comprising the set of potential network topologies, for each of a number of dimensions. The number of dimensions is based on the number of switches. The method further includes determining that the set of potential network topologies is structurally feasible. Additionally, the method includes determining an optimal link aggregation (LAG) factor in each dimension of each of the set of potential network topologies.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: September 29, 2015
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jayaram Mudigonda, Praveen Yalagandula, Jeffrey Clifford Mogul