IP Library Granted Patent US 10,284,431
Granted Patent B2
US 10,284,431 · App. 15/132,201 · Granted May 7, 2019

Distributed operating system for network devices

Inventor: Sunay Tripathi (Palo Alto, CA)
Assignee: Pluribus Networks, Inc.
H04L41/12H04L12/4641H04L12/6418H04L45/02H04L47/196H04L47/35H04L49/25H04L61/6022H04L45/66
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,284,431
App. No.
15/132,201
Granted
May 7, 2019
Kind
B2
Abstract

Methods, systems, and computer programs are presented for managing a global network topology. One method includes an operation for generating, by a network device, a local topology identifying which network entities are connected to each external port of the network device. The network device is configured to execute a network device operation system (ndOS), and the network device is configured to share information associated with the local topology with other ndOS network devices that execute ndOS. Further, the method includes an operation for receiving one or more remote local topologies from respective one or more ndOS network devices. The network device generates a global topology based on the local topology and the one or more remote local topologies, where the global topology is shared by the network device and the ndOS network devices executing ndOS, and the global topology identifies which entities are connected to one or more of the ndOS network devices.

Claims (41)

1. A method, comprising:

generating, by a network device, a local topology that identifies which network entities are connected to each external port of the network device, wherein the network device is configured to execute a network device operation system (ndOS), wherein the network device is configured to share information associated with the local topology with other ndOS network devices that execute the ndOS;

receiving one or more remote local topologies from respective one or more ndOS network devices; and

generating a global topology based on the local topology and the one or more remote local topologies, wherein the global topology is shared by the network device and the ndOS network devices executing ndOS, wherein the global topology identifies which entities are connected to one or more of the ndOS network devices, and

receiving a packet with a destination media access control (MAC) address; determining that the destination MAC address is not in the local topology; and sending, by the network device, a discovery packet through a first external port to a second ndOS network device implementing ndOS, the discovery packet including a first device ID of the network device and a port ID of the first external port in the network device.

2. The method as recited in claim 1 , further including:

transmitting, from the network device, the local topology to one or more of the ndOS network devices.

3. The method as recited in claim 1 , further including:

transmitting, from the network device, information of the global topology to one or more of the ndOS network devices.

4. The method as recited in claim 1 , further including:

receiving, at a first ingress port of the network device, a second discovery packet having a sending device ED and an egress port ED; and

adding an entry to the local topology, the entry including the network device ED, a first ingress port ED; the sending device ED, and the egress port ED.

5. The method as recited in claim 1 , wherein the discovery packet further includes a discovery media access control (MAC) address utilized by all ndOS network devices for exchanging discovery packets.

6. The method as recited in claim 5 , wherein the ndOS of the network device is configured to create a discovery classification rule specifying that any received packet with the discovery MAC address is to be processed by the ndOS.

7. The method as recited in claim 1 , further including:

updating the local topology based on the received one or more remote local topologies.

8. The method as recited in claim 7 , further including:

sending the updated local topology to one or more of the ndOS network devices.

9. The method as recited in claim 1 , wherein each ndOS network device is configure to store topology information for other ndOS network devices, wherein an entry in the global topology includes a receiving device ID, an ingress port ID of the receiving device ID, a sending device ID, and an egress port ID of the sending device ID.

10. A network device, comprising:

a switch fabric including a switch fabric classifier, a plurality of external ports and a plurality of internal ports, the switch fabric being configured for switching incoming packets received at the external ports; and

a control processor configured to execute a network device operation system (ndOS), wherein network devices executing the ndOS are defined to switch layer 2 packets and to share network information with other network devices executing ndOS, wherein the control processor is configured to generate a local topology that identifies which network entities are connected to each of the plurality of external ports, wherein the control processor is configured to share information associated with the local topology with other ndOS network devices that execute the ndOS;

wherein the control processor is configured to receive one or more remote local topologies from respective one or more ndOS network devices;

wherein the control processor generates a global topology based on the local topology and the one or more remote local topologies, wherein the global topology is shared by the network device and the ndOS network devices executing ndOS, wherein the global topology identifies which entities are connected to one or more of the ndOS network devices, and

receive a packet with a destination media access control (MAC) address; determine that the destination MAC address is not in the local topology; and send a discovery packet through a first external port to a second ndOS network device implementing ndOS, the discovery packet including a first device ID of the network device and a port ID of the first external port in the network device.

11. The network device as recited in claim 10 , wherein the control processor transmits the local topology to one or more of the ndOS network devices.

12. The network device as recited in claim 10 , wherein when the control processor receives, at a first ingress port, a second discovery packet having a sending device ID and an egress port ID, the control processor adds an entry to the local topology, the entry including the network device ID, a first ingress port ID, the sending device ED, and the egress port ID.

13. The network device as recited in claim 10 , wherein the control processor updates the local topology based on the received one or more remote local topologies.

14. The network device as recited in claim 10 , wherein ndOS network devices are configured to obtain topology information from directly connected and from indirectly connected ndOS network devices.

15. A non-transitory computer-readable storage medium storing a computer program, comprising program instructions which, when executed by a network device, cause the network to:

generate a local topology that identifies which network entities are connected to each external port of the network device, wherein the network device is configured to execute a network device operation system (ndOS), wherein the network device is configured to share information associated with the local topology with other ndOS network devices that execute the ndOS;

receive one or more remote local topologies from respective one or more ndOS network devices; and

generate a global topology based on the local topology and the one or more remote local topologies, wherein the global topology is shared by the network device and the ndOS network devices executing ndOS, wherein the global topology identifies which entities are connected to one or more of the ndOS network devices, and

receive, a packet with a destination media access control (MAC) address;

determine, that the destination MAC address is not in the local topology; and

send, by the network device, a discovery packet through a first external port to a second ndOS network device implementing ndOS, the discovery packet including a first device ID of the network device and a port ID of the first external port in the network device.

16. The storage medium as recited in claim 15 , further including program instructions which, when executed by a network device, causes the network to:

transmit, from the network device, the local topology to one or more of the ndOS network devices.

17. The storage medium as recited in claim 15 , further including program instructions which, when executed by a network device, causes the network to:

receive, at a first ingress port of the network device, a second discovery packet having a sending device ID and an egress port ID; and

add an entry to the local topology, the entry including the network device ID, a first ingress port ID, the sending device ID, and the egress port ID.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2024
From: PLURIBUS NETWORKS, INC.
To: ARISTA NETWORKS, INC.
Reel/Frame 066347/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2022
From: TRIPATHI, SUNAY
To: PLURIBUS NETWORKS, INC.
Reel/Frame 060774/0222 →
RELEASE OF SECURITY INTEREST Recorded Jun 14, 2022
From: NH EXPANSION CREDIT FUND HOLDINGS LP
To: PLURIBUS NETWORKS, INC.
Reel/Frame 060200/0252 →
SECURITY INTEREST Recorded Sep 10, 2021
From: PLURIBUS NETWORKS, INC.
To: NH EXPANSION CREDIT FUND HOLDINGS LP
Reel/Frame 057440/0011 →
Continuity (3)
Continuation 13313837 · Dec 7, 2011
Provisional Application 61420526 · Dec 7, 2010
Related Publication 20160277254A1 · Sep 22, 2016