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: 11909632Abstract: 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: GrantFiled: November 11, 2022Date of Patent: February 20, 2024Assignee: Juniper Networks, Inc.Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
-
Patent number: 11902365Abstract: 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: GrantFiled: October 4, 2022Date of Patent: February 13, 2024Assignee: Juniper Networks, Inc.Inventors: Ashutosh K. Grewal, Jaihari V. Loganathan, Kevin Wang, Sanjay Khanna
-
Publication number: 20230077138Abstract: 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: ApplicationFiled: November 11, 2022Publication date: March 9, 2023Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
-
Publication number: 20230027376Abstract: 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: ApplicationFiled: October 4, 2022Publication date: January 26, 2023Inventors: Ashutosh K. GREWAL, Jaihari V. LOGANATHAN, Kevin WANG, Sanjay KHANNA
-
Patent number: 11561823Abstract: 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: GrantFiled: May 12, 2020Date of Patent: January 24, 2023Assignee: Juniper Networks, Inc.Inventors: Jaihari V. Loganathan, Ashutosh K. Grewal, Sanjay Khanna
-
Patent number: 11502946Abstract: 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: GrantFiled: March 10, 2020Date of Patent: November 15, 2022Assignee: Juniper Networks, Inc.Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
-
Patent number: 11496559Abstract: 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: GrantFiled: June 12, 2020Date of Patent: November 8, 2022Assignee: Juniper Networks, Inc.Inventors: Ashutosh K. Grewal, Jaihari V. Loganathan, Kevin Wang, Sanjay Khanna
-
Patent number: 11356369Abstract: 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: GrantFiled: March 31, 2020Date of Patent: June 7, 2022Assignee: Juniper Networks, Inc.Inventors: Jaihari V. Loganathan, Ashutosh K. Grewal, Sanjay Khanna
-
Publication number: 20210288906Abstract: 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: ApplicationFiled: March 10, 2020Publication date: September 16, 2021Inventors: Kevin Wang, Jaihari V. Loganathan, Jeffrey Haas, Sanjay Khanna
-
Patent number: 10715440Abstract: 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: GrantFiled: July 2, 2018Date of Patent: July 14, 2020Assignee: Juniper Networks, Inc.Inventors: Jaihari V. Loganathan, Sanjay Khanna
-
Patent number: 10642650Abstract: 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: GrantFiled: December 13, 2017Date of Patent: May 5, 2020Assignee: Juniper Networks, Inc.Inventors: Kevin F. Wang, Jaihari V. Loganathan, Sanjay Khanna
-
Publication number: 20190179668Abstract: 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: ApplicationFiled: December 13, 2017Publication date: June 13, 2019Inventors: Kevin F. Wang, Jaihari V. Loganathan, Sanjay Khanna
-
Patent number: 9531622Abstract: 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: GrantFiled: May 21, 2015Date of Patent: December 27, 2016Assignee: Juniper Networks, Inc.Inventors: Jaihari V. Loganathan, Srinivasan Jagannadhan
-
Patent number: 9042402Abstract: 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: GrantFiled: May 10, 2011Date of Patent: May 26, 2015Assignee: Juniper Networks, Inc.Inventors: Jaihari V. Loganathan, Srinivasan Jagannadhan