# US 2014/0153924 A1 · Method and Apparatus for Connectivity Control in a Data Center Network

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0153924 A1
- Document ID: US20140153924A1
- Status: Published application
- Kind: A1
- Application number: 14/096,497
- Filed: 2013-12-04
- Published: 2014-06-05
- Earliest claimed: 2012-12-04
- Assignees: Plexxi Inc.
- Applicants: Plexxi Inc
- Inventors: Denis H. deRuijter
- Web page: https://patentgrep.com/patent/US20140153924A1

## CPC

- H04B 10/0773: {Network aspects, e.g. central monitoring of transmission parameters}
- H04B 10/275: Ring-type networks
- H04L 12/437: Ring fault isolation or reconfiguration {(for SDH/SONET ring networks H04J3/085)}
- H04B: TRANSMISSION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A data center network that employs an optical network having optical nodes arranged in a ring topology uses a method of topography discovery and maintenance so that connectivity can be maintained and node failures, link failures, end stations being discovered on the network, etc., can be handled without impacting network performance.

## Claims

### Claim 1

A computer-implemented method of maintaining connectivity of nodes in a network, the method comprising:
receiving, at a first node in the network, a first message directed in a first direction along a supervisor channel from a source node, the first message comprising an ordered list of active nodes and a first field;
determining, at the first node, if the first field is set to a first value or a second value;
if the first field is set to the first value then forwarding the first message from the first node in the first direction along the supervisor channel;
if the first field is set to the second value then:
determining, at the first node, whether the source node immediately precedes the first node in the ordered list of active nodes and if so, forwarding the first message from the first node in the first direction along the supervisor channel, otherwise:
sending, from the first node, an update message in a second direction, opposite the first direction, along the supervisor channel to the source node;
modifying, at the first node, the first message by changing the first field to the first value and forwarding, from the first node, the modified first message in the first direction along the supervisor channel,
wherein the update message indicates that the ordered list of active nodes is incorrect.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the first message further comprises a list of excluded nodes, the method further comprising:
determining, at the first node, whether the first node is in the list of excluded nodes and, if so, setting an operating mode of the first node in accordance with the exclusion determination.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein the first message further comprises a list of excluded nodes, the method further comprising:
determining, at the first node, that a second node should be excluded;
determining, at the first node, whether the second node is in the list of excluded nodes and if not in the list, sending a message in the second direction, from the first node to the source node, indicating that the second node should be excluded.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the network comprises a plurality of nodes arranged in a ring topology.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the first message is a multicast message sent in the first direction.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5, wherein the first message is a multicast message configured to be directed from each node to a next node.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the ordered list of active nodes corresponds to a sequence in which the active nodes are arranged along the first direction of the supervisor channel.

### Claim 8 (depends on 7)

The computer-implemented method of claim 7, wherein the first message further comprises a check value calculated as a function of information corresponding to the ordered list of active nodes.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8, further comprising calculating the check value as a checksum of the MAC address values corresponding to the active nodes in the list and in the order in which the nodes are listed.

### Claim 10 (depends on 9)

The computer-implemented method of claim 9, further comprising calculating the checksum by starting at the node with the lowest MAC address value and looping to the start of the active list until all nodes have been included.

### Claim 11

A computer-implemented method of confirming the successful transmission of information from an originating node, in a ring network of nodes, to all other active nodes in the network, the method comprising:
obtaining a list of the active nodes, and a corresponding topography of the active nodes, in the ring network;
calculating a first check value as a function of the topography of the active nodes from the originating node around the ring network in a first direction; and
calculating a second check value as a function of the topography of the active nodes from the originating node around the ring network in a second direction;
sending, from the originating node, first and second source messages in the first and second directions, respectively;
receiving, from a last active node on the ring network, first and second return messages in response to the first and second source messages, respectively;
comparing a payload in the first return message to the calculated first check value;
comparing a payload in the second return message to the calculated second check value; and
determining that the information was successfully transmitted to all active nodes in the ring network upon determining that the payloads of the first and second return messages each comprises the first and second check values, respectively.

### Claim 12 (depends on 11)

The computer-implemented method of claim 11, wherein comparing the payload in the first return message to the calculated first check values comprises:
comparing an entry in the payload of the first return message corresponding to the calculated first check value.

### Claim 13 (depends on 11)

The computer-implemented method of claim 11, wherein determining that the information was successfully transmitted further comprises:
measuring a time duration from when the first and second messages were transmitted by the originating node to when the last of the first and second return messages was received at the originating node;
comparing the measured time duration to a predetermined threshold value; and
determining that the information was successfully transmitted to all active nodes in the ring network upon determining that the measured time duration is not greater than the predetermined threshold value.

### Claim 14 (depends on 11)

The computer-implemented method of claim 11, wherein the first and second check values are calculated as a function of the MAC address values of the respective active nodes.

### Claim 15 (depends on 14)

The computer-implemented method of claim 14, wherein the first and second check values are calculated as a CRC function of the MAC address values of the respective active nodes.

### Claim 16 (depends on 11)

The computer-implemented method of claim 11, further comprising:
sending each of the first and second source messages as a multicast addressed message.

### Claim 17 (depends on 16)

The computer-implemented method of claim 16, further comprising:
sending each of the first and second source messages as a next-hop multicast addressed message.

### Claim 18 (depends on 17)

The computer-implemented method of claim 17, further comprising:
setting a first destination address value of the first source message to a first predetermined value identifying the first source message as a next-hop multicast addressed message sent in the first direction; and
setting a second destination address value of the second source message to a second predetermined value identifying the second source message as a next-hop multicast addressed message sent in the second direction.

### Claim 19

In an active node on a ring network of nodes, a computer-implemented method of confirming the successful transmission of information from an originating node to all other active nodes in the network, the method comprising:
at the active node in the ring network:
receiving a first source message in a first direction from an originating node in the network;
calculating a first value as a function of the topography of the active nodes located between the originating node and the respective active node in the first direction from the originating node to the respective active node;
modifying the first source message by inserting the calculated first value in a payload of the first source message; and
sending the modified first source message in the first direction to a next active node in the ring network.

### Claim 20 (depends on 19)

The computer-implemented method of claim 19, further comprising:
at the active node in the ring network:
receiving a second source message in a second direction from an originating node in the network;
calculating a second value as a function of the topography of the active nodes located between the originating node and the respective active node in the second direction from the originating node to the respective active node;
modifying the second source message by inserting the calculated second value in a payload of the second source message; and
sending the modified second source message in the second direction to a next active node in the ring network.

### Claim 21 (depends on 19)

The computer-implemented method of claim 19, further comprising:
at the active node in the ring network:
comparing a first destination address value in the received first source message to a first predetermined address value corresponding to the first direction; and
if the first destination address value is equal to the first predetermined address value then identifying the received first source message as a next-hop multicast addressed message.

### Claim 22 (depends on 19)

The computer-implemented method of claim 19, wherein the first value is calculated as a function of the MAC addresses of the active nodes located on the ring network between the originating node and the respective active node and the MAC address value of the respective active node.

### Claim 23 (depends on 22)

The computer-implemented method of claim 22, wherein the first value is calculated as a CRC function of the MAC address values.
