Inspecting operations of a machine to detect elephant flows
First Claim
1. A method of inspecting the operations of a first machine, that operates on a physical host, to detect an elephant flow, the method comprising:
- receiving, at a detector operating on the physical host and outside of the first machine, an indication from an agent operating within the first machine of a new data flow, wherein the new data flow is one of (i) an outbound data flow from the first machine to a second machine with the first machine as the source of the data flow and (ii) an inbound data flow from the second machine to the first machine with the first machine as the destination of the data flow;
receiving, from the agent operating within the first machine, an indicator of an amount of data being transferred by the first machine in the data flow;
at the detector operating on the physical host and outside of the first machine, determining whether the data flow is an elephant flow based on the indicated amount of data being transferred in the data flow; and
if the detector determines that the data flow is an elephant flow, reporting that the data flow is an elephant flow, wherein a managed forwarding element processes the data associated with the detected elephant flow differently from other flows not detected as elephant flows based on the report.
1 Assignment
0 Petitions
Accused Products
Abstract
Some embodiments provide a system that detects whether a data flow is an elephant flow; and if so, the system treats it differently than a mouse flow. The system of some embodiments detects an elephant flow by examining, among other items, the operations of a machine. In detecting, the system identifies an initiation of a new data flow associated with the machine. The new data flow can be an outbound data flow or an inbound data flow. The system then determines, based on the amount of data being sent or received, if the data flow is an elephant flow. The system of some embodiments identifies the initiation of a new data flow by intercepting a socket call or request to transfer a file.
245 Citations
17 Claims
-
1. A method of inspecting the operations of a first machine, that operates on a physical host, to detect an elephant flow, the method comprising:
-
receiving, at a detector operating on the physical host and outside of the first machine, an indication from an agent operating within the first machine of a new data flow, wherein the new data flow is one of (i) an outbound data flow from the first machine to a second machine with the first machine as the source of the data flow and (ii) an inbound data flow from the second machine to the first machine with the first machine as the destination of the data flow; receiving, from the agent operating within the first machine, an indicator of an amount of data being transferred by the first machine in the data flow; at the detector operating on the physical host and outside of the first machine, determining whether the data flow is an elephant flow based on the indicated amount of data being transferred in the data flow; and if the detector determines that the data flow is an elephant flow, reporting that the data flow is an elephant flow, wherein a managed forwarding element processes the data associated with the detected elephant flow differently from other flows not detected as elephant flows based on the report. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A physical host device comprising:
-
a set of processing units; a set of non-transitory machine readable media storing; a first machine which when executed by the set of processing units sends and receives packets belonging to data flows; a data flow interception agent which when executed by the set of processing units operates on the first machine to detect an initiation of a new data flow and to identify amounts of the data being transferred by the machine in the data flow, wherein the new data flow is one of (i) an outbound data flow from the first machine to a second machine with the first machine as the source of the data flow and (ii) an inbound data flow from the second machine to the first machine with the first machine as the destination of the data flow; and an elephant detector, which when executed by the set of processing units, operates outside of the first machine to determine whether the amount of data transferred in the data flow is over a threshold size and, if the amount of data transferred is over the threshold size, that the data flow is an elephant flow, based on information received from the data flow interception agent; and a forwarding element, which when executed by the set of processing units, receives a report regarding the detected elephant flow and processes the data associated with the detected elephant flow differently from other flows not detected as elephant flows. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A non-transitory machine readable medium storing a program that when executed by at least one processing unit inspects the operations of a first machine, that operates on a physical host, to detect an elephant flow, the program comprising sets of instructions for:
-
receiving, at a detector operating on the physical host and outside of the first machine, an indication from an agent operating within the first machine of a new data flow, wherein the new data flow is one of (i) an outbound data flow from the first machine to a second machine with the first machine as the source of the data flow and (ii) an inbound data flow from the second machine to the first machine with the first machine as the destination of the data flow; receiving, from the agent operating within the first machine, an indicator of an amount of data being transferred by the first machine in the data flow; at the detector operating on the physical host and outside of the first machine, determining whether the data flow is an elephant flow based on the indicated amount of data being transferred in the data flow; and if the detector determines that the data flow is an elephant flow, reporting that the data flow is an elephant flow, wherein a managed forwarding element processes the data associated with detected elephant flow differently from other flows not detected as elephant flows based on the report. - View Dependent Claims (14, 15, 16, 17)
-
Specification