Patents by Inventor Karthick Jayaraman

Karthick Jayaraman 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: 20250141777
    Abstract: Ghost routing is a network verification technique that uses a portion of a production network itself to verify the impact of potential network changes. Ghost routing logically partitions the production network into a main network and a ghost network. The main network handles live traffic while the ghost network handles traffic generated for diagnostic purposes. The ghost network may have a network topology identical to the production network and may use the same hardware and software as the production network. An operator may implement a network configuration change on the ghost network and then use verification tools to verify that the network configuration change on the ghost network does not result in bugs. Verifying on the ghost network may not affect the main network. If the network operator verifies the network configuration change on the ghost network, the network operator may implement the network configuration change on the main network.
    Type: Application
    Filed: January 6, 2025
    Publication date: May 1, 2025
    Inventors: Jitendra PADHYE, Karthick JAYARAMAN, Wei BAI, Rachee SINGH, Ryan Andrew BECKETT, Sarah Elisabeth MCCLURE, Neha Milind RAJE, Steven Jeffrey BENALOH, Christopher Scott JOHNSTON
  • Patent number: 12199863
    Abstract: Ghost routing is a network verification technique that uses a portion of a production network itself to verify the impact of potential network changes. Ghost routing logically partitions the production network into a main network and a ghost network. The main network handles live traffic while the ghost network handles traffic generated for diagnostic purposes. The ghost network may have a network topology identical to the production network and may use the same hardware and software as the production network. An operator may implement a network configuration change on the ghost network and then use verification tools to verify that the network configuration change on the ghost network does not result in bugs. Verifying on the ghost network may not affect the main network. If the network operator verifies the network configuration change on the ghost network, the network operator may implement the network configuration change on the main network.
    Type: Grant
    Filed: March 28, 2023
    Date of Patent: January 14, 2025
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jitendra Padhye, Karthick Jayaraman, Wei Bai, Rachee Singh, Ryan Andrew Beckett, Sarah Elisabeth McClure, Neha Milind Raje, Steven Jeffrey Benaloh, Christopher Scott Johnston
  • Publication number: 20240015072
    Abstract: Techniques of network configuration verification are disclosed herein. One example process includes, upon receiving a query to determine whether a packet from a first endpoint is reachable to a second endpoint in a virtual network, identifying a network path between the first endpoint to the second endpoint in a network graph. The network graph has nodes representing corresponding enforcement points of network policies in the virtual network and edges connecting pairs of the nodes. The example process can also include generating compound function representing conjoined individual constraints of the network policies at each of the nodes in the network graph along the identified network path, compiling the generated compound function into a Boolean formula, and solving the compiled Boolean formula to determine whether an assignment of values to packet fields of the packet exists such that all the conjoined individual constraints of the compound function can be satisfied.
    Type: Application
    Filed: September 20, 2023
    Publication date: January 11, 2024
    Inventors: Karthick JAYARAMAN, Ryan Andrew BECKETT, Nikolaj Skallerud BJORNER
  • Patent number: 11824727
    Abstract: Techniques of network configuration verification are disclosed herein. One example process includes, upon receiving a query to determine whether a packet from a first endpoint is reachable to a second endpoint in a virtual network, identifying a network path between the first endpoint to the second endpoint in a network graph. The network graph has nodes representing corresponding enforcement points of network policies in the virtual network and edges connecting pairs of the nodes. The example process can also include generating compound function representing conjoined individual constraints of the network policies at each of the nodes in the network graph along the identified network path, compiling the generated compound function into a Boolean formula, and solving the compiled Boolean formula to determine whether an assignment of values to packet fields of the packet exists such that all the conjoined individual constraints of the compound function can be satisfied.
    Type: Grant
    Filed: October 31, 2022
    Date of Patent: November 21, 2023
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Karthick Jayaraman, Ryan Andrew Beckett, Nikolaj Skallerud Bjorner
  • Publication number: 20230300053
    Abstract: A network verification system uses general-purpose programming language to create network verification tests. A test orchestrator builds a model of the network only using data from the network verification test. An optimization testing manager creates symbolic packets for verification tests using assertions based on a packet library embedded into the testing manager and the general-purpose programming language.
    Type: Application
    Filed: April 30, 2021
    Publication date: September 21, 2023
    Inventors: Ryan Andrew BECKETT, Karthick JAYARAMAN, Neha Milind RAJE, Jitendra PADHYE, Christopher Scott JOHNSTON, Steven Jeffrey BENALOH, Nikolaj BJORNER, Andrey Aleksandrovic RYBALCHENKO, Nuno CERQUEIRA AFONSO, Nuno CLAUDINO PEREIRA LOPES, Sharad AGARWAL, Hang Kwong LEE, Aniruddha PARKHI, Maik RIECHERT
  • Publication number: 20230231806
    Abstract: Ghost routing is a network verification technique that uses a portion of a production network itself to verify the impact of potential network changes. Ghost routing logically partitions the production network into a main network and a ghost network. The main network handles live traffic while the ghost network handles traffic generated for diagnostic purposes. The ghost network may have a network topology identical to the production network and may use the same hardware and software as the production network. An operator may implement a network configuration change on the ghost network and then use verification tools to verify that the network configuration change on the ghost network does not result in bugs. Verifying on the ghost network may not affect the main network. If the network operator verifies the network configuration change on the ghost network, the network operator may implement the network configuration change on the main network.
    Type: Application
    Filed: March 28, 2023
    Publication date: July 20, 2023
    Inventors: Jitendra PADHYE, Karthick JAYARAMAN, Wei BAI, Rachee SINGH, Ryan Andrew BECKETT, Sarah Elisabeth MCCLURE, Neha Milind RAJE, Steven Jeffrey BENALOH, Christopher Scott JOHNSTON
  • Patent number: 11652742
    Abstract: Ghost routing is a network verification technique that uses a portion of a production network itself to verify the impact of potential network changes. Ghost routing logically partitions the production network into a main network and a ghost network. The main network handles live traffic while the ghost network handles traffic generated for diagnostic purposes. The ghost network may have a network topology identical to the production network and may use the same hardware and software as the production network. An operator may implement a network configuration change on the ghost network and then use verification tools to verify that the network configuration change on the ghost network does not result in bugs. Verifying on the ghost network may not affect the main network. If the network operator verifies the network configuration change on the ghost network, the network operator may implement the network configuration change on the main network.
    Type: Grant
    Filed: October 16, 2020
    Date of Patent: May 16, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jitendra Padhye, Karthick Jayaraman, Wei Bai, Rachee Singh, Ryan Andrew Beckett, Sarah Elisabeth McClure, Neha Milind Raje, Steven Jeffrey Benaloh, Christopher Scott Johnston
  • Publication number: 20230134981
    Abstract: Techniques of network configuration verification are disclosed herein. One example process includes, upon receiving a query to determine whether a packet from a first endpoint is reachable to a second endpoint in a virtual network, identifying a network path between the first endpoint to the second endpoint in a network graph. The network graph has nodes representing corresponding enforcement points of network policies in the virtual network and edges connecting pairs of the nodes. The example process can also include generating compound function representing conjoined individual constraints of the network policies at each of the nodes in the network graph along the identified network path, compiling the generated compound function into a Boolean formula, and solving the compiled Boolean formula to determine whether an assignment of values to packet fields of the packet exists such that all the conjoined individual constraints of the compound function can be satisfied.
    Type: Application
    Filed: October 31, 2022
    Publication date: May 4, 2023
    Inventors: Karthick JAYARAMAN, Ryan Andrew BECKETT, Nikolaj Skallerud BJORNER
  • Patent number: 11516088
    Abstract: Techniques of network configuration verification are disclosed herein. One example process includes, upon receiving a query to determine whether a packet from a first endpoint is reachable to a second endpoint in a virtual network, identifying a network path between the first endpoint to the second endpoint in a network graph. The network graph has nodes representing corresponding enforcement points of network policies in the virtual network and edges connecting pairs of the nodes. The example process can also include generating compound function representing conjoined individual constraints of the network policies at each of the nodes in the network graph along the identified network path, compiling the generated compound function into a Boolean formula, and solving the compiled Boolean formula to determine whether an assignment of values to packet fields of the packet exists such that all the conjoined individual constraints of the compound function can be satisfied.
    Type: Grant
    Filed: December 3, 2021
    Date of Patent: November 29, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Karthick Jayaraman, Ryan Andrew Beckett, Nikolaj Skallerud Bjorner
  • Publication number: 20220124031
    Abstract: Ghost routing is a network verification technique that uses a portion of a production network itself to verify the impact of potential network changes. Ghost routing logically partitions the production network into a main network and a ghost network. The main network handles live traffic while the ghost network handles traffic generated for diagnostic purposes. The ghost network may have a network topology identical to the production network and may use the same hardware and software as the production network. An operator may implement a network configuration change on the ghost network and then use verification tools to verify that the network configuration change on the ghost network does not result in bugs. Verifying on the ghost network may not affect the main network. If the network operator verifies the network configuration change on the ghost network, the network operator may implement the network configuration change on the main network.
    Type: Application
    Filed: October 16, 2020
    Publication date: April 21, 2022
    Inventors: Jitendra PADHYE, Karthick JAYARAMAN, Wei BAI, Rachee SINGH, Ryan Andrew BECKETT, Sarah Elisabeth MCCLURE, Neha Milind RAJE, Steven Jeffrey BENALOH, Christopher Scott JOHNSTON
  • Patent number: 11121934
    Abstract: A network verification system uses general-purpose programming language to create network verification tests. A test orchestrator builds a model of the network only using data from the network verification test. An optimization testing manager creates symbolic packets for verification tests using assertions based on a packet library embedded into the testing manager and the general-purpose programming language.
    Type: Grant
    Filed: December 8, 2020
    Date of Patent: September 14, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ryan Andrew Beckett, Karthick Jayaraman, Neha Milind Raje, Jitendra Padhye, Christopher Scott Johnston, Steven Jeffrey Benaloh, Nikolaj Bjorner, Andrey Aleksandrovic Rybalchenko, Nuno Cerqueira Afonso, Nuno Claudino Pereira Lopes, Sharad Agarwal, Hang Kwong Lee, Aniruddha Parkhi, Maik Riechert
  • Publication number: 20210021471
    Abstract: Examples described herein generally relate to determining a current network state of the set of virtual networks, detecting, based at least in part on obtaining at least a portion of a high-level virtual network policy, an indicated change to the current network state, compiling, based on detecting the indicated change, at least a portion of the high-level virtual network policy to generate a set of low-level intermediate representation instructions to implement the indicated change to the high-level virtual network policy, and applying the set of low-level intermediate representation instructions in a network configuration for managing the set of virtual networks.
    Type: Application
    Filed: July 15, 2019
    Publication date: January 21, 2021
    Inventors: Karthick JAYARAMAN, Parag SHARMA, Ashish BHARGAVA, Ryan BECKETT
  • Patent number: 10333794
    Abstract: 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: Grant
    Filed: February 17, 2018
    Date of Patent: June 25, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Nikolaj Skallerud Bjorner, Karthick Jayaraman, Geoffrey Hugh Outhred
  • Publication number: 20180176094
    Abstract: 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: Application
    Filed: February 17, 2018
    Publication date: June 21, 2018
    Inventors: Nikolaj Skallerud BJORNER, Karthick JAYARAMAN, Geoffrey Hugh OUTHRED
  • Patent number: 9900222
    Abstract: 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: Grant
    Filed: October 26, 2015
    Date of Patent: February 20, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Nikolaj Skallerud Bjorner, Karthick Jayaraman, Geoffrey Hugh Outhred
  • Publication number: 20170118083
    Abstract: 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: Application
    Filed: October 26, 2015
    Publication date: April 27, 2017
    Inventors: Nikolaj Skallerud Bjorner, Karthick Jayaraman, Geoffrey Hugh Outhred
  • Patent number: 9467473
    Abstract: A system is described that analyzes and validates network security policies associated with network devices. The system includes a compiler and a security policy analysis and validation tool. The compiler encodes a security policy associated with a network device into a predicate expressed in bit-vector logic and generates a bit-vector formula based on the predicate. The tool receives the bit-vector formula and applies a Satisfiability Modulo Theories (SMT) solver thereto to identify and enumerate solutions to the bit-vector formula. The enumerated solutions provide information about the validity of the first security policy. The solutions may be compactly enumerated in a as product of intervals or a product of unions of intervals.
    Type: Grant
    Filed: September 19, 2013
    Date of Patent: October 11, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Karthick Jayaraman, Charles W. Kaufman, Nikolaj S. Bjorner
  • Publication number: 20150082370
    Abstract: A system is described that analyzes and validates network security policies associated with network devices. The system includes a compiler and a security policy analysis and validation tool. The compiler encodes a security policy associated with a network device into a predicate expressed in bit-vector logic and generates a bit-vector formula based on the predicate. The tool receives the bit-vector formula and applies a Satisfiability Modulo Theories (SMT) solver thereto to identify and enumerate solutions to the bit-vector formula. The enumerated solutions provide information about the validity of the first security policy. The solutions may be compactly enumerated in a as product of intervals or a product of unions of intervals.
    Type: Application
    Filed: September 19, 2013
    Publication date: March 19, 2015
    Applicant: Microsoft Corporation
    Inventors: Karthick Jayaraman, Charles W. Kaufman, Nikolaj S. Bjorner