IP Library › Granted Patent US 7,872,989
Granted Patent B1
US 7,872,989 · App. 11/736,281 · Granted Jan 18, 2011

Full mesh optimization for spanning tree protocol

Assignee: Habanero Holdings, Inc.
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 7,872,989
App. No.
11/736,281
Granted
Jan 18, 2011
Kind
B1
Abstract

An optimized spanning tree protocol (OSTP) minimizes latency and provides high throughput in a full-mesh portion of a network, and is compatible with external networks where a standard spanning tree protocol is used. The OSTP enables traffic traversing the full-mesh portion to take a shortest path from source to destination through use of full-mesh connectivity. In some embodiments, a cluster includes a plurality of servers connected in a full mesh, and the OSTP is used on internal ports of the servers. In some embodiments, the OSTP is configured on a per-VLAN basis. In some embodiments, the servers exchange special messages enabling determination of full-mesh connectivity. In further embodiments, sending of the special messages is suppressed on certain port types, such as external ports. In some embodiments, determination of the full-mesh connectivity disables use of a standard spanning tree protocol and/or enables use of OSTP on the full-mesh portion.

Claims (34)

1. A system comprising:

a network comprising a plurality of nodes wherein forwarding is controlled, at least in part, by an optimized spanning tree protocol (OSTP) comprising a selective forwarding state;

a server cluster; and

wherein, in a full-mesh portion of the network, the OSTP

is aware of the full-mesh portion,

is enabled to provide, to the nodes connected by the full-mesh portion, an explicit indication of whether or not full mesh topology is considered established, and

is further enabled to forward packets in one hop between any two of the nodes connected by the full-mesh portion;

wherein the full mesh is a first full mesh;

wherein the server cluster comprises a plurality of servers, each one of a first subset of the servers comprises one or more of the nodes of the network, and a second subset of the first subset of the servers are connected in a second full mesh; and

wherein the second full mesh is identical to the first full mesh.

2. The system of claim 1 wherein a packet sent via any two distinct ones of the nodes of the full-mesh portion from a first one of the nodes outside of the full-mesh to a second one of the nodes outside of the full-mesh portion does not pass through any of the nodes of the full-mesh portion other than the two distinct nodes.

3. The system of claim 1 wherein ports forming connections between the nodes connected by the full-mesh portion use the selective forwarding state.

4. The system of claim 1 wherein the full-mesh portion comprises more than two of the nodes.

5. The system of claim 1 wherein the server cluster is an Enterprise Server (ES) cluster, and the servers are ES-based servers.

6. The system of claim 5 wherein at least some of the second subset of the servers comprise physical partitions of a physically-partitionable symmetric multiprocessor within an ES chassis.

7. The system of claim 1 wherein the second subset of the servers is at least three of the servers.

8. The system of claim 1 wherein each of the second subset of the servers comprises one or more respective ports; and

wherein the full mesh is instantiated among particular ones of the respective ports of the second subset of the servers.

9. The system of claim 8 wherein a type of each of the respective ports is selected from the group consisting of external, internal, regular, and STP edge.

10. The system of claim 8 wherein the particular ports are of the internal type.

11. The system of claim 8 wherein the particular ports exchange messages to, at least in part, establish presence of the full mesh.

12. The system of claim 11 wherein the messages comprise a set of neighbor IDs, each of the neighbor IDs identifying one of the servers.

13. The system of claim 12 wherein the neighbor IDs are MAC addresses.

14. The system of claim 11 wherein the messages are OSTP hello messages.

15. The system of claim 11 wherein the presence of the full mesh is, at least in part, established by a particular one of the second subset of the servers when a plurality of the messages received by the particular server indicate a set of neighbors of the particular server all have each one of the set of neighbors as a neighbor.

16. The system of claim 15 wherein the set of neighbors comprises at least three of the servers.

17. The system of claim 15 wherein subsequent to establishing the presence of the full mesh, each of the particular ports is enabled to use the optimized spanning tree protocol.

18. The system of claim 15 wherein subsequent to establishing the presence of the full mesh, each of the particular ports is enabled to be in the selective forwarding state.

19. The system of claim 18 wherein subsequent to establishing the presence of the full mesh, each of the particular ports is enabled to be in a delay state prior to being enabled to be in the selective forwarding state.

20. The system of claim 15 wherein the messages further comprise a state indicating the establishment of the presence of the full mesh, the state being in accordance with the explicit indication of whether or not full mesh topology is considered established, and subsequent to establishing the presence of the full mesh, a plurality of the messages sent by the particular server have the state indicating the establishment of the presence of the full mesh.

21. The system of claim 20 wherein the full mesh is determined to be valid by the particular server when, subsequent to establishing the presence of the full mesh, a plurality of the messages received by the particular server indicate that each one of the set of neighbors all have the state indicating the establishment of the presence of the full mesh.

22. The system of claim 21 wherein subsequent to determining validity of the full mesh, each of the particular ports is enabled to use the optimized spanning tree protocol.

23. The system of claim 21 wherein subsequent to determining validity of the full mesh, each of the particular ports is enabled to be in the selective forwarding state.

24. The system of claim 23 wherein subsequent to determining validity of the full mesh, each of the particular ports is enabled to be in a delay state prior to being enabled to be in the selective forwarding state.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2013
From: HABANERO HOLDINGS, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 029661/0587 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2009
From: FABRIC7 (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
To: HABANERO HOLDINGS, INC.
Reel/Frame 022745/0751 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2009
From: FABRIC7 SYSTEMS, INC.
To: FABRIC7 (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
Reel/Frame 022745/0460 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2007
From: TONG, XIAOMING; SARAIYA, NAKUL PRATAP
To: FABRIC7 SYSTEMS, INC.
Reel/Frame 019302/0673 →
Continuity (29)
Continuation In Part 1125666800 · Oct 22, 2005
Continuation In Part 1125664600 · Oct 22, 2005
Continuation In Part 1125664500 · Oct 22, 2005
Continuation In Part 1125668800 · Oct 22, 2005
Continuation In Part 1105712000 · Feb 12, 2005
Continuation In Part 1105704800 · Feb 12, 2005
Continuation In Part 1105711700 · Feb 12, 2005
Continuation In Part 1105703500 · Feb 12, 2005
Continuation In Part 1105703400 · Feb 12, 2005
Continuation In Part 1105711400 · Feb 12, 2005
Continuation In Part 1105704600 · Feb 12, 2005
Continuation In Part 1105711200 · Feb 12, 2005
Continuation In Part 1105711900 · Feb 12, 2005
Continuation In Part 1105703600 · Feb 12, 2005
Continuation In Part 1105703700 · Feb 12, 2005
Continuation In Part 1105712100 · Feb 12, 2005
Continuation In Part 1105703800 · Feb 12, 2005
Continuation In Part 1105711300 · Feb 12, 2005
Continuation In Part 1105711600 · Feb 12, 2005
Continuation In Part 1088946900 · Jul 12, 2004
Continuation In Part 1088946700 · Jul 12, 2004
Continuation In Part 1088946800 · Jul 12, 2004
Provisional Application 6090914100 · Mar 30, 2007
Provisional Application 6082730500 · Sep 28, 2006
Provisional Application 6071714700 · Sep 14, 2005
Provisional Application 6068454200 · May 25, 2005
Provisional Application 6065102600 · Feb 7, 2005
Provisional Application 6065102700 · Feb 7, 2005
Provisional Application 6065070700 · Feb 7, 2005