IP Library Granted Patent US 10,819,621
Granted Patent B2
US 10,819,621 · App. 15/050,480 · Granted Oct 27, 2020

Unicast forwarding of adaptive-routing notifications

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,819,621
App. No.
15/050,480
Granted
Oct 27, 2020
Kind
B2
Abstract

A method for communication includes, in a first network switch that is part of a communication network having a topology, detecting a compromised ability to forward a flow of packets originating from a source endpoint to a destination endpoint. In response to detecting the compromised ability, the first network switch identifies, based on the topology, a second network switch that lies on a current route of the flow, and also lies on one or more alternative routes from the source endpoint to the destination endpoint that do not traverse the first network switch. A notification, which is addressed individually to the second network switch and requests the second network switch to reroute the flow, is sent from the first network switch.

Claims (25)

1. A method for communication in a communication network that includes network switches arranged in multiple levels, the method comprising:

detecting, in a first network switch, a compromised ability of the first network switch to forward a flow of packets originating from a source endpoint to a destination endpoint over a route of network switches;

in response to detecting the compromised ability, selecting, by the first network switch, a second network switch in the route, which is not an immediately previous hop in the route; and

sending from the first network switch to the second network switch, a unicast notification addressed only to the second network switch, requesting the second network switch to reroute the flow.

2. The method according to claim 1 , and comprising receiving the unicast notification by the second network switch, and, in response to the unicast notification, rerouting the flow to an alternative route.

3. The method according to claim 1 , wherein sending the unicast notification comprises routing the unicast notification over a second route that differs from a reverse of the route.

4. The method according to claim 1 , wherein the communication network has a Fat-Tree (FT) topology, wherein the multiple levels comprise at least a leaf level and a spine level, and wherein each route initially traverses a respective upwards segment that begins at the leaf level and traverses increasing levels, and then traverses a respective downwards segment that traverses decreasing levels and ends at the leaf level.

5. The method according to claim 1 , wherein sending the unicast notification comprises holding in the first network switch a data structure that records, per endpoint, a respective address of a network switch that (i) is in the level that is one level below the first network switch and (ii) lies on the upwards segment of a route from that endpoint to the first network switch, querying the data structure for an address of the network switch associated with the source endpoint, and addressing the unicast notification to the queried address.

6. The method according to claim 5 , wherein the data structure is also used for routing packets from the first network switch to destination endpoints.

7. A network switch in a communication network that includes network switches arranged in multiple levels, the network switch comprising:

multiple ports, configured to exchange packets with the communication network; and

packet processing circuitry, configured to:

detect a compromised ability of the network switch to forward a flow of packets originating from a source endpoint to a destination endpoint over a route of network switches; and

in response to detecting the compromised ability, select a second network switch in the route, which is not an immediately previous hop in the route, and send via one of the ports a unicast notification addressed only to the second network switch, requesting the second network switch to reroute the flow.

8. The network switch according to claim 7 , wherein the packet processing circuitry is configured to send the unicast notification over a second route that differs from a reverse of the route of the flow.

9. The network switch according to claim 7 , wherein the communication network has a Fat-Tree (FT) topology, wherein the multiple levels comprise at least a leaf level and a spine level, and wherein each route initially traverses a respective upwards segment that begins at the leaf level and traverses increasing levels, and then traverses a respective downwards segment that traverses decreasing levels and ends at the leaf level.

10. The network switch according to claim 7 , wherein the packet processing circuitry is configured to hold in a data structure that records, per endpoint, a respective address of a network switch that (i) is in the level that is one level below the first network switch and (ii) lies on the upwards segment of a route from that endpoint to the first network switch, to query the data structure for an address of the network switch associated with the source endpoint, and to address the unicast notification to the queried address.

11. The network switch according to claim 10 , wherein the packet processing circuitry is configured to use the data structure for routing packets from the network switch to destination endpoints.

12. A computer software product, the product comprising a tangible non-transitory computer-readable medium in which program instructions are stored, which instructions, when read by a processor in a first network switch that is part of a communication network including network switches arranged in multiple levels, cause the processor to:

detect a compromised ability of the first network switch to forward a flow of packets originating from a source endpoint to a destination endpoint over a route of network switches; and

in response to detecting the compromised ability, select a second network switch in the route, which is not an immediately previous hop in the route, and send a unicast notification addressed only to the second network switch, requesting the second network switch to reroute the flow.

13. The method according to claim 4 , wherein the first network switch is located on the downwards segment of the route and wherein selecting the second network switch comprises selecting a network switch on an upwards segment of the route.

14. The method according to claim 4 , wherein selecting the second network switch comprises selecting a network switch which belongs to a level of the communication network that is exactly one level below the first network switch.

15. The method according to claim 1 , wherein selecting the second network switch comprises querying a database in the first network switch with an address of the source endpoint to receive an identity of the second network switch.

16. The method according to claim 1 , wherein selecting the second network switch comprises querying a forwarding table in the first network switch.

Assignments (4)
MERGER Recorded Dec 15, 2021
From: MELLANOX TECHNOLOGIES TLV LTD.
To: MELLANOX TECHNOLOGIES, LTD.
Reel/Frame 058517/0564 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 42962/0859 Recorded Jul 13, 2018
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MELLANOX TECHNOLOGIES, LTD.; MELLANOX TECHNOLOGIES TLV LTD.; MELLANOX TECHNOLOGIES SILICON PHOTONICS INC.
Reel/Frame 046551/0459 →
SECURITY INTEREST Recorded Jun 23, 2017
From: MELLANOX TECHNOLOGIES, LTD.; MELLANOX TECHNOLOGIES TLV LTD.; MELLANOX TECHNOLOGIES SILICON PHOTONICS INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 042962/0859 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2016
From: LEVY, GIL; SHPINER, ALEX; KOREN, BENNY
To: MELLANOX TECHNOLOGIES TLV LTD.
Reel/Frame 037792/0047 →