US 12,261,767 B2
Best path computation offload in a network computing environment
Nalinaksh Pai, San Ramon, CA (US); Feng Xu, San Jose, CA (US); Ebben Aries, Highlands Ranch, CO (US); Arthi Ayyangar, Los Altos, CA (US); and Keyur Patel, San Jose, CA (US)
Assigned to Arrcus Inc., San Jose, CA (US)
Filed by Arrcus Inc., San Jose, CA (US)
Filed on Aug. 12, 2021, as Appl. No. 17/400,929.
Application 17/400,929 is a continuation of application No. 16/672,964, filed on Nov. 4, 2019, granted, now 11,121,963.
Prior Publication US 2021/0377158 A1, Dec. 2, 2021
Int. Cl. H04L 45/24 (2022.01); H04L 45/00 (2022.01); H04L 45/122 (2022.01); H04L 45/42 (2022.01); H04L 45/58 (2022.01)
CPC H04L 45/24 (2013.01) [H04L 45/122 (2013.01); H04L 45/42 (2013.01); H04L 45/58 (2013.01); H04L 45/70 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method comprising:
storing in memory, by a best path controller, a listing of a plurality of paths learnt by a device, wherein each of the plurality of paths is a route for transmitting data from the device to a destination device;
receiving, by a border gateway protocol (BGP) instance executing on a device, a Network Layer Reachability Information (NLRI) message from a neighbor of the device;
holding, by the BGP instance, the NLRI message in a queue;
while holding the NLRI message in a queue, forwarding the NLRI message to the best path controller;
receiving, by the best path controller, the NLRI message from the device;
processing, by the best path controller, a best path computation to identify one or more best paths based on the NLRI message such that processing of the best path computation is offloaded from the device to the best path controller;
sending, by the best path controller, the one or more best paths to the device;
in response to receiving the one or more best paths, dequeuing by the BGP instance, the NLRI message; and
in response to receiving the one or more best paths, moving, by the BGP instance, the NLRI message to a routing information base (RIB) queue;
wherein the best path controller comprises a single software package for optimizing the best path computation for either of a switch or a router.