Abstract:
In general, techniques are described for communicating state information in distribute operating system. A network device comprises a first hardware node and a second hardware node. The first hardware node may execute a first instance of a distributed operating system, and maintain a first data structure that stores a plurality of objects defining a portion of state information. The second hardware node may execute a second instance of the distributed operating system, and maintain a second data structure that stores synchronized versions of the plurality of objects. The first hardware node may further receive updated state information, update the first data structure to include the updated state information, and synchronize the updated first data structure with the second data structure. The second hardware node may synchronize the second data structure with the updated first data structure.
Abstract:
In general, techniques are described for communicating state information in distribute operating system. A network device comprises a first hardware node and a second hardware node. The first hardware node may execute a first instance of a distributed operating system, and maintain a first data structure that stores a plurality of objects defining a portion of state information. The second hardware node may execute a second instance of the distributed operating system, and maintain a second data structure that stores synchronized versions of the plurality of objects. The first hardware node may further receive updated state information, update the first data structure to include the updated state information, and synchronize the updated first data structure with the second data structure. The second hardware node may synchronize the second data structure with the updated first data structure.
Abstract:
In general, techniques are described for maintaining coherency in distributed operating systems for network devices. A network device comprising hardware computing nodes may be configured to perform the techniques. The hardware computing nodes may execute a distributed operating system. At least one the hardware computing nodes may determine whether one or more of the plurality of hardware computing nodes has failed and is no longer supporting execution of the distributed operating system, and determine whether remaining ones of the plurality of hardware computing nodes exceeds a quorum threshold. The at least one of the hardware computing nodes may further restart, when the remaining ones of the plurality of hardware computing nodes is less than the quorum threshold, the distributed operating system.
Abstract:
An enhanced, flooding-based link state routing protocol is described that provides pruning of link state data and, when needed, rate-controlled refresh of the pruned link state data from other routers of the flooding domain. A routing device comprises a network interface to send and receive packets over a layer-two (L2) communication medium. The routing device includes a control unit coupled to the network interface, and a flooding-based link state routing protocol executing on a processor of the control unit. The link-state routing protocol establishes an adjacency with a peer router. A database of the routing device includes entries that store a plurality of link state messages for a flooding domain of the link state routing protocol, wherein at least one of the entries in the database stores a partial link state message having a header portion and a payload having pruned link state data.
Abstract:
A first system manager operating on a first node of a distributed routing system, receives data indicating a current state of the distributed routing system. The first system manager may determine, based at least in part on the current state of the distributed routing system and a set of rules for an application, an updated state of the distributed routing system. Furthermore, the first node may send the updated state of the distributed routing system to a second node of the distributed routing system. Responsive to receiving the updated state of the distributed routing system, a second system manager on the second node may modify a state of the second node. Modifying the state of the second node may comprise at least one of: starting the application on the second node, stopping the application on the second node, or modifying a state of the application on the second node.
Abstract:
In general, techniques are described for organizing execution of distributed operating systems for network devices. A device comprising hardware computing nodes may be configured to perform the techniques. The hardware computing nodes may execute a protocol by which to discover a topology of the plurality of hardware computing nodes, and determine, based on the topology, a subset of the plurality of hardware computing nodes to manage execution of a distributed operating system. The determined subset of the plurality of hardware computing nodes may execute a communication bus by which to synchronize operating system state information between the subset of the plurality of hardware computing nodes. The hardware computing nodes may further execute, based on the operating system state information, the distributed operating system to provide an execution environment in which one or more applications execute.
Abstract:
A first system manager operating on a first node of a distributed computing system, receives data indicating a current state of the distributed computing system. The first system manager may determine, based at least in part on the current state of the distributed computing system and a set of rules for an application, an updated state of the distributed computing system. Furthermore, the first node may send the updated state of the distributed computing system to a second node of the distributed computing system. Responsive to receiving the updated state of the distributed computing system, a second system manager on the second node may modify a state of the second node. Modifying the state of the second node may comprise at least one of: starting the application on the second node, stopping the application on the second node, or modifying a state of the application on the second node.
Abstract:
An access network is described in which a centralized controller provides seamless end-to-end service from a core-facing edge of a service provider network through aggregation and access infrastructure out to access nodes located proximate to the subscriber devices. The controller operates to provide a central configuration point for configuring aggregation nodes (AGs) of a network of the service provider so as to provide transport services to transport traffic between access nodes (AXs) and edge routers on opposite borders of the network.