Patents by Inventor Geoffrey Hugh Outhred
Geoffrey Hugh Outhred 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: 20230140555Abstract: The present disclosure relates to systems, methods, and computer-readable media for facilitating the transparent insertion of network virtual appliances into a cloud computing system. For example, a transparent network virtual appliance system can dynamically, seamlessly, and quickly add one or more network virtual appliances utilizing a chained gateway load balancer. In particular, the transparent network virtual appliance system can provide additional services to an application virtual network within a cloud computing system without disrupting or modifying the existing architecture of the cloud computing system.Type: ApplicationFiled: February 22, 2022Publication date: May 4, 2023Inventors: Geoffrey Hugh OUTHRED, Anavi Arun NAHAR, Shuo DONG, Xun FAN, Matthew Heeuk YANG, Plaban MOHANTY, Jinzhou JIANG, Yifeng HUANG, Nicole Antonette KISTER, Shekhar AGARWAL, Yanan SUN, Caleb Lee-Yen WYLLIE
-
Patent number: 10992582Abstract: A load balancer capable of instantiating a data plane within the load balancer, deleting the data plane from the load balancer, and/or enacting a change to the data plane. The load balancer instantiates a data plane for an identified tenant. The instantiated data plane is placed in a data path of network data transmitted from one or more sources to a plurality of tenant addresses that each corresponds to a different tenant or group of tenants. The instantiated data plane is also dedicated to the identified tenant such that the data plane isolates first network data destined to a first tenant address that corresponds to the identified tenant from second network data destined to one or more other tenant addresses. The load balancer also deletes the instantiated data plane from the load balancer, or enacts a change to the instantiated data plane.Type: GrantFiled: October 8, 2019Date of Patent: April 27, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Bansal, Geoffrey Hugh Outhred, Narasimhan Agrahara Venkataramaiah, Shekhar Agarwal
-
Publication number: 20200053008Abstract: A load balancer capable of instantiating a data plane within the load balancer, deleting the data plane from the load balancer, and/or enacting a change to the data plane. The load balancer instantiates a data plane for an identified tenant. The instantiated data plane is placed in a data path of network data transmitted from one or more sources to a plurality of tenant addresses that each corresponds to a different tenant or group of tenants. The instantiated data plane is also dedicated to the identified tenant such that the data plane isolates first network data destined to a first tenant address that corresponds to the identified tenant from second network data destined to one or more other tenant addresses. The load balancer also deletes the instantiated data plane from the load balancer, or enacts a change to the instantiated data plane.Type: ApplicationFiled: October 8, 2019Publication date: February 13, 2020Inventors: Deepak BANSAL, Geoffrey Hugh OUTHRED, Narasimhan Agrahara VENKATARAMAIAH, Shekhar AGARWAL
-
Patent number: 10447602Abstract: A load balancer capable of adjusting how network data is distributed to a tenant or group of tenants by manipulating the data plane. The load balancer is placed directly in the flow path of network data that is destined for a tenant or group of tenants having a tenant address. The load balancer includes a control plane and one or more data planes. Each data plane may contain one or more network traffic multiplexors. Further, each data plane may be dedicated to a tenant or group of tenants. Data planes may be added or deleted from the load balancer; additionally, multiplexors may be added or deleted from a data plane. Accordingly, network data directed towards one tenant is less likely to affect the performance of load balancing performed for another tenant.Type: GrantFiled: December 20, 2017Date of Patent: October 15, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Bansal, Geoffrey Hugh Outhred, Narasimhan Agrahara Venkataramaiah, Shekhar Agarwal
-
Patent number: 10333794Abstract: A system performed by a computing device for validating routing tables of routing devices is provided. The routing tables map destination addresses to a next hops of the routing device. The system accesses one or more contracts that specify the desired behavior of a routing table of a routing device by specifying destination addresses and permissible next hops. For each routing device, the system generates a violation predicate for each contract that is applicable to the routing device. When a violation predicate is evaluated for a target destination address and a target next hop of the routing device, the violation predicate indicates whether the routing table violates the contract. The system then solves the violation predicates for all possible combinations of a target destination address and target next hops to determine whether any routing table violates the desired behavior of its routing device as specified by a contract.Type: GrantFiled: February 17, 2018Date of Patent: June 25, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Nikolaj Skallerud Bjorner, Karthick Jayaraman, Geoffrey Hugh Outhred
-
Publication number: 20180183713Abstract: A load balancer capable of adjusting how network data is distributed to a tenant or group of tenants by manipulating the data plane. The load balancer is placed directly in the flow path of network data that is destined for a tenant or group of tenants having a tenant address. The load balancer includes a control plane and one or more data planes. Each data plane may contain one or more network traffic multiplexors. Further, each data plane may be dedicated to a tenant or group of tenants. Data planes may be added or deleted from the load balancer; additionally, multiplexors may be added or deleted from a data plane. Accordingly, network data directed towards one tenant is less likely to affect the performance of load balancing performed for another tenant.Type: ApplicationFiled: December 20, 2017Publication date: June 28, 2018Inventors: Deepak Bansal, Geoffrey Hugh Outhred, Narasimhan Agrahara Venkataramaiah, Shekhar Agarwal
-
Publication number: 20180176094Abstract: A system performed by a computing device for validating routing tables of routing devices is provided. The routing tables map destination addresses to a next hops of the routing device. The system accesses one or more contracts that specify the desired behavior of a routing table of a routing device by specifying destination addresses and permissible next hops. For each routing device, the system generates a violation predicate for each contract that is applicable to the routing device. When a violation predicate is evaluated for a target destination address and a target next hop of the routing device, the violation predicate indicates whether the routing table violates the contract. The system then solves the violation predicates for all possible combinations of a target destination address and target next hops to determine whether any routing table violates the desired behavior of its routing device as specified by a contract.Type: ApplicationFiled: February 17, 2018Publication date: June 21, 2018Inventors: Nikolaj Skallerud BJORNER, Karthick JAYARAMAN, Geoffrey Hugh OUTHRED
-
Patent number: 9900222Abstract: A system performed by a computing device for validating routing tables of routing devices is provided. The routing tables map destination addresses to a next hops of the routing device. The system accesses one or more contracts that specify the desired behavior of a routing table of a routing device by specifying destination addresses and permissible next hops. For each routing device, the system generates a violation predicate for each contract that is applicable to the routing device. When a violation predicate is evaluated for a target destination address and a target next hop of the routing device, the violation predicate indicates whether the routing table violates the contract. The system then solves the violation predicates for all possible combinations of a target destination address and target next hops to determine whether any routing table violates the desired behavior of its routing device as specified by a contract.Type: GrantFiled: October 26, 2015Date of Patent: February 20, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Nikolaj Skallerud Bjorner, Karthick Jayaraman, Geoffrey Hugh Outhred
-
Patent number: 9871731Abstract: A load balancer capable of adjusting how network data is distributed to a tenant or group of tenants by manipulating the data plane. The load balancer is placed directly in the flow path of network data that is destined for a tenant or group of tenants having a tenant address. The load balancer includes a control plane and one or more data planes. Each data plane may contain one or more network traffic multiplexors. Further, each data plane may be dedicated to a tenant or group of tenants. Data planes may be added or deleted from the load balancer; additionally, multiplexors may be added or deleted from a data plane. Accordingly, network data directed towards one tenant is less likely to affect the performance of load balancing performed for another tenant.Type: GrantFiled: September 30, 2015Date of Patent: January 16, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Bansal, Geoffrey Hugh Outhred, Narasimhan Agrahara Venkataramaiah, Shekhar Agarwal
-
Publication number: 20170118083Abstract: A system performed by a computing device for validating routing tables of routing devices is provided. The routing tables map destination addresses to a next hops of the routing device. The system accesses one or more contracts that specify the desired behavior of a routing table of a routing device by specifying destination addresses and permissible next hops. For each routing device, the system generates a violation predicate for each contract that is applicable to the routing device. When a violation predicate is evaluated for a target destination address and a target next hop of the routing device, the violation predicate indicates whether the routing table violates the contract. The system then solves the violation predicates for all possible combinations of a target destination address and target next hops to determine whether any routing table violates the desired behavior of its routing device as specified by a contract.Type: ApplicationFiled: October 26, 2015Publication date: April 27, 2017Inventors: Nikolaj Skallerud Bjorner, Karthick Jayaraman, Geoffrey Hugh Outhred
-
Publication number: 20170093724Abstract: A load balancer capable of adjusting how network data is distributed to a tenant or group of tenants by manipulating the data plane. The load balancer is placed directly in the flow path of network data that is destined for a tenant or group of tenants having a tenant address. The load balancer includes a control plane and one or more data planes. Each data plane may contain one or more network traffic multiplexors. Further, each data plane may be dedicated to a tenant or group of tenants. Data planes may be added or deleted from the load balancer; additionally, multiplexors may be added or deleted from a data plane. Accordingly, network data directed towards one tenant is less likely to affect the performance of load balancing performed for another tenant.Type: ApplicationFiled: September 30, 2015Publication date: March 30, 2017Inventors: Deepak Bansal, Geoffrey Hugh Outhred, Narasimhan Agrahara Venkataramaiah, Shekhar Agarwal