Maximal flow scheduling for a stream processing system
First Claim
1. A method on an upstream processing node for processing data packets, the method comprising:
- receiving an allocation for at least one computing resource;
receiving at least one data packet at one or more upstream processing elements in an upstream processing node;
determining if at least one output queue of the upstream processing elements includes available space for processing of the data packet;
processing the data packet in response to the output queue including available space to form a resulting data packet;
determining that an input queue of at least one downstream processing element of a plurality of downstream processing elements includes available space for receiving the resulting data packet; and
transmitting, in response to the determining, the resulting data packet from the upstream processing element to the downstream processing element.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a method, upstream processing node, and computer readable medium for processing data packets. The method includes receiving an allocation for at least one computing resource. At least one data packet at one or more upstream processing elements in an upstream processing node is received. The method also includes determining if at least one output queue of the upstream processing elements includes available space for processing of the data packet. The data packet is processed in response to the output queue including available space to form a resulting data packet. The method further includes determining that an input queue of at least one downstream processing element of a plurality of downstream processing elements includes available space for receiving the resulting data packet In response to the determining, the resulting data packet is transmitted from the upstream processing element to the downstream processing element.
-
Citations
18 Claims
-
1. A method on an upstream processing node for processing data packets, the method comprising:
-
receiving an allocation for at least one computing resource; receiving at least one data packet at one or more upstream processing elements in an upstream processing node; determining if at least one output queue of the upstream processing elements includes available space for processing of the data packet; processing the data packet in response to the output queue including available space to form a resulting data packet; determining that an input queue of at least one downstream processing element of a plurality of downstream processing elements includes available space for receiving the resulting data packet; and transmitting, in response to the determining, the resulting data packet from the upstream processing element to the downstream processing element. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An upstream processing node for processing data streams, the process node comprising:
-
a memory; at least one upstream processing element communicatively coupled to the memory, wherein the processing element receives at least one data packet and forms a processed data packet therefrom; a scheduler including; a meta-scheduler communicatively coupled to the memory and the upstream processing element, the meta scheduler for allocating computing resources to the upstream processing element; and a CPU scheduler communicatively coupled to the meta-scheduler and the upstream processing element for determining that an output queue of the upstream processing element includes available space for processing of the data packet and for determining that an input queue of at least one downstream processing element of a plurality of downstream processing elements includes available space for receiving the processed data packet; and an output queue communicatively coupled to the upstream processing element for transmitting the processed data packet from the upstream processing element to the downstream processing element. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer readable medium for processing data packets, the computer readable medium comprising instructions for:
-
receiving an allocation for at least one computing resource; receiving at least one data packet at one or more upstream processing elements in an upstream processing node; determining if at least one output queue of the upstream processing elements includes available space for processing of the data packet; processing the data packet in response to the output queue including available space to form a resulting data packet; determining that an input queue of at least one downstream processing element of a plurality of downstream processing elements includes available space for receiving the resulting data packet; and transmitting, in response to the determining, the resulting data packet from the upstream processing element to the downstream processing element. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification