Patents by Inventor Jaihari V. Loganathan

Jaihari V. Loganathan 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: 11909632
    Abstract: In general, various aspects of the techniques are described in this disclosure for distributed label assignment for labeled routes. In one example, a method includes obtaining, by a first thread of a plurality of execution threads for at least one routing protocol process executing on processing circuitry of a network device, an allocation of first labels drawn from a label space for a network service; adding, by the first thread, the first labels to a first local label pool for the first thread; generating, by the first thread, after obtaining the allocation of the first labels, a labeled route comprising a route for the network service and a label assigned by the first thread from the first local label pool; and outputting, by the network device, the labeled route.
    Type: Grant
    Filed: November 11, 2022
    Date of Patent: February 20, 2024
    Assignee: Juniper Networks, Inc.
    Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
  • Patent number: 11902365
    Abstract: A network device, associated with peer network devices, may receive policy information for a protocol; and compute a first update message based on information regarding a route associated with the policy information. The network device may determine that an upper utilization threshold for one or more of peer queues, associated with the peer network devices, is not satisfied; and write the first update message to the peer queues based on determining that the upper utilization threshold is not satisfied. The network device may compute a second update message based on the information regarding the route; determine that the upper utilization threshold for one or more of the peer queues is satisfied; and pause writing the second update message to the peer queues based on the upper utilization threshold being satisfied. The network device may permit the peer network devices to obtain data from corresponding ones of the peer queues.
    Type: Grant
    Filed: October 4, 2022
    Date of Patent: February 13, 2024
    Assignee: Juniper Networks, Inc.
    Inventors: Ashutosh K. Grewal, Jaihari V. Loganathan, Kevin Wang, Sanjay Khanna
  • Publication number: 20230077138
    Abstract: In general, various aspects of the techniques are described in this disclosure for distributed label assignment for labeled routes. In one example, a method includes obtaining, by a first thread of a plurality of execution threads for at least one routing protocol process executing on processing circuitry of a network device, an allocation of first labels drawn from a label space for a network service; adding, by the first thread, the first labels to a first local label pool for the first thread; generating, by the first thread, after obtaining the allocation of the first labels, a labeled route comprising a route for the network service and a label assigned by the first thread from the first local label pool; and outputting, by the network device, the labeled route.
    Type: Application
    Filed: November 11, 2022
    Publication date: March 9, 2023
    Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
  • Publication number: 20230027376
    Abstract: A network device, associated with peer network devices, may receive policy information for a protocol; and compute a first update message based on information regarding a route associated with the policy information. The network device may determine that an upper utilization threshold for one or more of peer queues, associated with the peer network devices, is not satisfied; and write the first update message to the peer queues based on determining that the upper utilization threshold is not satisfied. The network device may compute a second update message based on the information regarding the route; determine that the upper utilization threshold for one or more of the peer queues is satisfied; and pause writing the second update message to the peer queues based on the upper utilization threshold being satisfied. The network device may permit the peer network devices to obtain data from corresponding ones of the peer queues.
    Type: Application
    Filed: October 4, 2022
    Publication date: January 26, 2023
    Inventors: Ashutosh K. GREWAL, Jaihari V. LOGANATHAN, Kevin WANG, Sanjay KHANNA
  • Patent number: 11561823
    Abstract: In general, the disclosure describes techniques for lockless management of immutable objects by multi-threaded processes. A device comprising a processor may implement the techniques, where the processor execute a multi-threaded process including a producer thread and a consumer thread. The producer thread may instantiate an immutable object, and provide, to the consumer thread, a reference to the immutable object. The producer thread may also increment a reference counter to indicate that the reference has been provided to the consumer thread, where the reference counter is local to the producer thread and inaccessible to the at least two consumer threads. The producer thread may receive, from the consumer thread, a notification that the consumer thread has finished processing the immutable object, and decrement, responsive to receiving the notification, the reference counter. The producer thread may then delete, based on the reference counter, the immutable object.
    Type: Grant
    Filed: May 12, 2020
    Date of Patent: January 24, 2023
    Assignee: Juniper Networks, Inc.
    Inventors: Jaihari V. Loganathan, Ashutosh K. Grewal, Sanjay Khanna
  • Patent number: 11502946
    Abstract: In general, various aspects of the techniques are described in this disclosure for distributed label assignment for labeled routes. In one example, a method includes obtaining, by a first thread of a plurality of execution threads for at least one routing protocol process executing on processing circuitry of a network device, an allocation of first labels drawn from a label space for a network service; adding, by the first thread, the first labels to a first local label pool for the first thread; generating, by the first thread, after obtaining the allocation of the first labels, a labeled route comprising a route for the network service and a label assigned by the first thread from the first local label pool; and outputting, by the network device, the labeled route.
    Type: Grant
    Filed: March 10, 2020
    Date of Patent: November 15, 2022
    Assignee: Juniper Networks, Inc.
    Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
  • Patent number: 11496559
    Abstract: A network device, associated with peer network devices, may receive policy information for a protocol; and compute a first update message based on information regarding a route associated with the policy information. The network device may determine that an upper utilization threshold for one or more of peer queues, associated with the peer network devices, is not satisfied; and write the first update message to the peer queues based on determining that the upper utilization threshold is not satisfied. The network device may compute a second update message based on the information regarding the route; determine that the upper utilization threshold for one or more of the peer queues is satisfied; and pause writing the second update message to the peer queues based on the upper utilization threshold being satisfied. The network device may permit the peer network devices to obtain data from corresponding ones of the peer queues.
    Type: Grant
    Filed: June 12, 2020
    Date of Patent: November 8, 2022
    Assignee: Juniper Networks, Inc.
    Inventors: Ashutosh K. Grewal, Jaihari V. Loganathan, Kevin Wang, Sanjay Khanna
  • Patent number: 11356369
    Abstract: In general, the disclosure describes techniques for distributing processing of routes among multiple execution threads of a network device. In some examples, a method includes partitioning a routing information base (RIB) into a plurality of RIB partitions, assigning a route processing thread to each RIB partition, processing BGP routing protocol messages at each of the route processing threads, and receiving, at a BGP update thread serving a BGP peer group, from two or more of the route processing threads, route update information for routes to be advertised. The route update information includes a BGP route tuple having a network prefix value and a pointer to an outgoing attribute. The method further includes collecting, based on the BGP route tuples, route update information for routes having the same outgoing attribute and constructing a BGP update message from the collected route update information.
    Type: Grant
    Filed: March 31, 2020
    Date of Patent: June 7, 2022
    Assignee: Juniper Networks, Inc.
    Inventors: Jaihari V. Loganathan, Ashutosh K. Grewal, Sanjay Khanna
  • Publication number: 20210288906
    Abstract: In general, various aspects of the techniques are described in this disclosure for distributed label assignment for labeled routes. In one example, a method includes obtaining, by a first thread of a plurality of execution threads for at least one routing protocol process executing on processing circuitry of a network device, an allocation of first labels drawn from a label space for a network service; adding, by the first thread, the first labels to a first local label pool for the first thread; generating, by the first thread, after obtaining the allocation of the first labels, a labeled route comprising a route for the network service and a label assigned by the first thread from the first local label pool; and outputting, by the network device, the labeled route.
    Type: Application
    Filed: March 10, 2020
    Publication date: September 16, 2021
    Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
  • Patent number: 10715440
    Abstract: A system for resolving next hops in a distributed manner includes a plurality of next hop resolution subsystems, each of the plurality of next hop resolution subsystems including (1) a next hop registry, (2) a partial-view tree storing a local instance of next hop resolution information, and (3) a full-view tree storing a local instance of next hop resolution information. The system (1) receives a request to resolve a next hop; (2) obtains a plurality of partial results using the partial-view trees of the next hop resolution subsystems; (3) select a best one of the plurality of partial results; and 4) replies to the request using the selected best one of the plurality of partial results. The full-view trees are updated such that their contents tend to converge.
    Type: Grant
    Filed: July 2, 2018
    Date of Patent: July 14, 2020
    Assignee: Juniper Networks, Inc.
    Inventors: Jaihari V. Loganathan, Sanjay Khanna
  • Patent number: 10642650
    Abstract: In general, the disclosure describes techniques for distributing processing of routes among multiple execution threads of a network device. In some examples, a method includes identifying, with a thread of a plurality of execution threads, a first route processing thread of the execution threads to process a first route of a routing protocol, the first route received by the network device; identifying, with the thread, a second route processing thread of the execution threads to process a second route of a routing protocol, the second route received by the network device; processing, by the first route processing thread executing on a first core of the plurality of processing cores, the first route; and processing, by the second route processing thread executing on a second core at least partially concurrently with the first route processing thread executing on the first core of the plurality of processing cores, the second route.
    Type: Grant
    Filed: December 13, 2017
    Date of Patent: May 5, 2020
    Assignee: Juniper Networks, Inc.
    Inventors: Kevin F. Wang, Jaihari V. Loganathan, Sanjay Khanna
  • Publication number: 20190179668
    Abstract: In general, the disclosure describes techniques for distributing processing of routes among multiple execution threads of a network device. In some examples, a method includes identifying, with a thread of a plurality of execution threads, a first route processing thread of the execution threads to process a first route of a routing protocol, the first route received by the network device; identifying, with the thread, a second route processing thread of the execution threads to process a second route of a routing protocol, the second route received by the network device; processing, by the first route processing thread executing on a first core of the plurality of processing cores, the first route; and processing, by the second route processing thread executing on a second core at least partially concurrently with the first route processing thread executing on the first core of the plurality of processing cores, the second route.
    Type: Application
    Filed: December 13, 2017
    Publication date: June 13, 2019
    Inventors: Kevin F. Wang, Jaihari V. Loganathan, Sanjay Khanna
  • Patent number: 9531622
    Abstract: In some embodiments, an apparatus includes a first network control entity within a control plane of a switch fabric system. The first network control entity is configured to receive a first test signal including a test instruction to be implemented within the switch fabric system. The first network control entity is configured to send a second test signal including the test instruction to a second network control entity such that the second network control entity implements the test instruction for a predetermined amount of time.
    Type: Grant
    Filed: May 21, 2015
    Date of Patent: December 27, 2016
    Assignee: Juniper Networks, Inc.
    Inventors: Jaihari V. Loganathan, Srinivasan Jagannadhan
  • Patent number: 9042402
    Abstract: In some embodiments, an apparatus includes a first network control entity within a control plane of a switch fabric system. The first network control entity is configured to receive a first test signal including a test instruction to be implemented within the switch fabric system. The first network control entity is configured to send a second test signal including the test instruction to a second network control entity such that the second network control entity implements the test instruction for a predetermined amount of time.
    Type: Grant
    Filed: May 10, 2011
    Date of Patent: May 26, 2015
    Assignee: Juniper Networks, Inc.
    Inventors: Jaihari V. Loganathan, Srinivasan Jagannadhan