IP Library Granted Patent US 9,369,360
Granted Patent B1
US 9,369,360 · App. 14/275,230 · Granted Jun 14, 2016

Systems and methods for fault detection in large scale networks

Inventors: Michal Segalov (Haifa, IL); Eyal Soha (Tel-Aviv, IL); Dan Raz (Timrat, IL); Ido Feldman (Hod Hasharon, IL); Dotan Emanuel (Herzeliya, IL); Avinatan Hassidim (Petah Tikva, IL)
Assignee: Google Inc.
H04L43/0847
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 9,369,360
App. No.
14/275,230
Granted
Jun 14, 2016
Kind
B1
Abstract

Systems and methods for fault detection in large scale networks are provided. Probing instructions are generated by a probing controller associated with a network having a plurality of nodes. The probing instructions include a specified source node and a specified destination node. Each probing instruction is transmitted to a probing agent coupled to the specified source node and a data packet is transmitted from the probing agent to the specified destination node. A fault detection module is informed of probing instructions associated with failed transmissions, identifies a plurality of nodes having a likelihood of being in a network path associated with failed transmissions, and processes the plurality of nodes having a likelihood of being in the network paths associated with failed transmissions to identify of a set of likely failed nodes.

Claims (68)

1. A system for fault detection comprising:

a plurality of probing controllers associated with a network having a plurality of nodes, wherein each probing controller is configured to:

generate a plurality of probing instructions, each probing instruction including a respective source node address and a respective destination node address, the respective source node address identifying a respective source node in the network;

forward each of the plurality of probing instructions to the respective source nodes identified in the respective probing instructions;

receive, responsive to forwarding a first probing instruction to a first source node, data from the first source node indicative of a failure in transmitting a data packet to a destination node identified in the first probing instruction; and

inform, in response to receiving the data indicating the failure of the source node to transmit the data packet to the destination node identified in the first probing instruction, a fault detection module of the probing instruction associated with the failed transmission; and

the fault detection module, wherein the fault detection module is configured to:

receive, from a probing controller, identification of a plurality of probing instructions each associated with a corresponding failed transmission;

for each of the probing instructions received by the fault detection module, identify a plurality of nodes having a likelihood of being in a network path associated with the failed transmission corresponding to the respective probing instruction; and

identify a set of likely failed nodes by processing the identified plurality of nodes having a likelihood of being in a network path associated with at least one of the failed transmissions.

2. The system of claim 1 , wherein:

the network includes a plurality of zones, each zone including one or more nodes of the plurality of nodes in the network; and

each respective probing controller of the plurality probing controllers is respectively associated with at least one zone and configured to include, in probing instructions generated by the respective probing controller, source node addresses corresponding to nodes within the respectively associated zone.

3. The system of claim 1 , further comprising a reporting module configured to report the set of likely failed nodes identified by the fault detection module.

4. The system of claim 1 , wherein identifying the plurality of nodes having a likelihood of being in a network path associated with the failed transmission corresponding to the respective probing instruction includes:

identifying nodes on a network path from the source node specified in the probing instruction to the destination node specified in the probing instruction.

5. The system of claim 1 , wherein identifying the plurality of nodes having a likelihood of being in a network path associated with the failed transmission corresponding to the respective probing instruction includes:

identifying nodes on a network path from the destination node specified in the probing instruction to the source node specified in the probing instruction.

6. The system of claim 1 , further comprising:

a probing agent configured to:

receive a second probing instruction from a first probing controller in the plurality of probing controllers, the second probing instruction including a probe destination address;

transmit a probe packet to the probe destination address specified in the second probing instruction; and

inform the first probing controller of an outcome of transmitting the probe packet.

7. The system of claim 1 , wherein processing the identified plurality of nodes having a likelihood of being in a network path associated with the failed transmission to identify a set of likely failed nodes further comprises identifying a minimum set of failed nodes with a maximum likelihood of accounting for a maximum set of failed transmissions, as compared to one or more other sets of nodes.

8. The system of claim 1 , wherein generating the plurality of probing instructions further comprises selecting the respective source nodes identified in the probing instructions randomly.

9. The system of claim 1 , wherein each probing controller is further configured to inform the fault detection module of probing instructions associated with successful transmissions.

10. A method for fault detection comprising:

generating a plurality of probing instructions by a probing controller in a network having a plurality of nodes, each of the probing instructions including specification of a respective source node address and a respective destination node address, the respective source node address identifying a respective source node;

for each probing instruction in the plurality of probing instructions:

transmitting the probing instruction to a probing agent coupled to the respective source node identified in the probing instruction, and

transmitting a data packet from the probing agent to the respective specified destination node address;

informing a fault detection module of a probing instruction associated with a failed transmission, wherein the failed transmission is indicated by failure of a particular source node to transmit a probing data packet to a destination node identified in the probing instruction associated with the failed transmission;

identifying a plurality of nodes having a likelihood of being in a network path associated with the failed transmission; and

identifying a set of likely failed nodes by processing the plurality of nodes having a likelihood of being in the network paths associated with failed transmissions.

11. The method of claim 10 , wherein:

the network includes a plurality of zones, each zone including one or more nodes of the plurality of nodes in the network;

the probing controller is associated with a zone in the network; and

for each of the probing instructions generated by the probing controller, the respective source node address corresponds to a node within the zone.

12. The method of claim 10 , further comprising reporting the identified set of likely failed nodes.

13. The method of claim 10 , wherein identifying the plurality of nodes having a likelihood of being in a network path associated with failed transmissions further comprises:

for each probing instruction associated with a failed transmission:

identifying nodes on a network path from the source node specified in the probing instruction to the destination node specified in the probing instruction.

14. The method of claim 10 , wherein identifying the plurality of nodes having a likelihood of being in a network path associated with failed transmissions further comprises:

for each probing instruction associated with a failed transmission:

identifying nodes on a network path from the destination node specified in the probing instruction to the source node specified in the probing instruction.

15. The method of claim 10 , wherein processing the identified plurality of nodes having a likelihood of being in a network path associated with the failed transmission to identify a set of likely failed nodes further comprises identifying a minimum set of failed nodes with a maximum likelihood of accounting for a maximum set of failed transmissions, as compared to one or more other sets of nodes.

16. The method of claim 10 , wherein generating the plurality of probing instructions further comprises selecting the respective source nodes identified in the probing instructions randomly.

17. Non-transitory computer-readable media storing processor executable instructions that, when carried out by one or more processors, cause the processors to:

generate a plurality of probing instructions by a probing controller associated with a network having a plurality of nodes, each of the probing instructions including specification of a respective source node address and a respective destination node address, the respective source node address identifying a respective source node;

for each probing instruction in the plurality of probing instructions:

transmit the probing instruction to a probing agent coupled to the respective source node identified in the probing instruction, and

transmit a data packet from the probing agent to the respective specified destination node address;

inform a fault detection module of a probing instruction associated with a failed transmission, wherein the failed transmission is indicated by failure of a particular source node to transmit a probing data packet to a destination node identified in the probing instruction associated with the failed transmission;

identify portions of network paths associated with the failed transmission; and

process the identified portions of network paths associated with failed transmissions to identify of a set of likely failed nodes.

18. The computer readable media of claim 17 , wherein:

the network includes a plurality of zones, each zone including one or more nodes of the plurality of nodes in the network;

the probing controller is associated with a zone in the network; and

for each of the probing instructions generated by the probing controller, the respective source node address corresponds to a node within the zone.

19. The computer readable media of claim 17 , wherein identifying a plurality of nodes having a likelihood of being in a network path associated with failed transmissions further comprises:

for each probing instruction associated with a failed transmission:

identifying nodes on a network path from the source node specified in the probing instruction to the destination node specified in the probing instruction.

20. The computer readable media of claim 17 , wherein identifying a plurality of nodes having a likelihood of being in a network path associated with failed transmissions further comprises:

for each probing instruction associated with a failed transmission:

identifying nodes on a network path from the destination node specified in the probing instruction to the source node specified in the probing instruction.

21. The computer readable media of claim 17 , wherein processing the identified plurality of nodes to identify a set of likely failed nodes further comprises identifying a set of failed nodes with a maximum likelihood of accounting for a maximum set of failed transmissions, as compared to one or more other sets of nodes.

22. The computer readable media of claim 17 , wherein generating the plurality of probing instructions further comprises selecting the respective source nodes identified in the probing instructions randomly.

23. The computer readable media of claim 17 , further storing instructions for reporting the identified set of likely failed nodes.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044566/0657 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2014
From: SEGALOV, MICHAL; SOHA, EYAL; RAZ, DAN; FELDMAN, IDO; EMANUEL, DOTAN; HASSIDIM, AVINATAN
To: GOOGLE INC.
Reel/Frame 033741/0523 →