Adaptive performance control of multi-stream data transfer from a source system to a target system

US9509612B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9509612-B1
Application numberUS-201514755292-A
CountryUS
Kind codeB1
Filing dateJun 30, 2015
Priority dateJun 30, 2015
Publication dateNov 29, 2016
Grant dateNov 29, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

According to one embodiment, in response to a request to transfer a data set from a source system to a target system over a network, an adaptive performance control (APC) controller allocates a plurality of data streams for transferring the data set. The APC controller activates one or more data streams from the allocated data streams to transfer the data set from the source system to the target system. The APC controller monitors an overall throughput of the activated data streams assigned to transfer the data set from the source system to the target system. The APC controller dynamically adjusts a number of the activated data streams based on the monitored overall throughput of the activated data streams, such that a maximum overall throughput of the activated data streams is reached while maintaining a minimum number of the activated data streams.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for managing data streams for data transfer operations, the method comprising: in response to a request to transfer a data set from a source system to a target system over a network, allocating, by an adaptive performance control (APC) controller executed by a processor, a predetermined number of data streams that, when activated, actively transfer at least a portion of the data set from the source system to the target system; activating by the APC controller a primary data stream and at least one secondary data stream from the allocated data streams to transfer the data set from the source system to the target system, wherein the primary data stream remains activated during the transfer of the data set, and a secondary data stream is activated, deactivated, or reactivated during the transfer of the data set; monitoring by the APC controller an overall throughput of the activated data streams assigned to transfer the data set from the source system to the target system; activating another secondary data stream of the allocated data streams; monitoring the overall throughput of the activated data streams for a first predetermined period of time; and dynamically adjusting by the APC controller a number of the activated data streams based on the monitored overall throughput of the activated data streams, such that a maximum overall throughput of the activated data streams is reached while maintaining a minimum number of the activated data streams, wherein dynamically adjusting, by the APC, the number of activated data streams further comprises: monitoring the overall throughput of the activated data streams for a second predetermined period of time; deactivating a secondary data stream from the activated data streams if the overall throughput drops below a second predetermined threshold over the second predetermined period of time; determining whether all allocated data streams have been activated if the overall throughput does not drop below the second predetermined threshold; iteratively performing monitoring the overall throughput for the second predetermined period of time and deactivating a secondary data stream, in response to determining that all allocated data streams have been activated; suspending operation of the APC for a third predetermined period of time in response to determining that the throughput drop is not greater than the second predetermined threshold and there is at least one allocated data stream that has been previously deactivated; and reactivating a fourth data stream that has been previously deactivated after the third predetermined period of time. 2. The method of claim 1 , wherein dynamically adjusting, by the APC, the number of activated data streams comprises: deactivating a secondary data stream from the activated data streams, in response to determining that the overall throughput has gained less than the first predetermined threshold by the activating of the another secondary data stream. 3. The method of claim 1 , wherein dynamically adjusting, by the APC, the number of activated streams further comprises: iteratively performing activating another secondary data stream and monitoring the overall throughput for the first predetermined period of time, if the overall throughput has gained more than or equal to the first predetermined threshold. 4. The method of claim 3 , wherein dynamically adjusting, by the APC, the number of activated streams further comprises: determining whether all allocated data streams have been activated, wherein iteratively performing activating another secondary data stream and monitoring the overall throughput for the first predetermined period of time is performed only if there is at least one allocated data stream that has not been activated. 5. A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations of managing data streams for data transfer operations, the operations comprising: in response to a request to transfer a data set from a source system to a target system over a network, allocating a predetermined number of data streams the data set; activating a primary data stream and at least one secondary data stream from the allocated data streams to transfer the data set from the source system to the target system, wherein the primary data stream remains activated during the transfer of the data set, and a secondary stream is activated, deactivated, or reactivated, during the transfer of the data set; monitoring an overall throughput of the activated data streams assigned to transfer the data set from the source system to the target system; activating another secondary data stream of the allocated data streams; monitoring the overall throughput of the activated data streams for a first predetermined period of time; and dynamically adjusting a number of the activated data streams based on the monitored overall throughput of the activated data streams, such that a maximum overall throughput of the activated data streams is reached while maintaining a minimum number of the activated data streams, wherein dynamically adjusting, by the APC, the number of activated data streams further comprises: monitoring the overall throughput of the activated data streams for a second predetermined period of time; deactivating a secondary data stream from the activated data streams if the overall throughput drops below a second predetermined threshold over the second predetermined period of time; determining whether all allocated data streams have been activated if the overall throughput does not drop below the second predetermined threshold; iteratively performing monitoring the overall throughput for the second predetermined period of time and deactivating a secondary data stream, in response to determining that all allocated data streams have been activated; suspending operation of the APC for a third predetermined period of time in response to determining that the throughput drop is not greater than the second predetermined threshold and there is at least one allocated data stream that has been previously deactivated; and reactivating a fourth data stream that has been previously deactivated after the third predetermined period of time. 6. The non-transitory machine-readable medium of claim 5 , wherein dynamically adjusting the number of activated data streams comprises: deactivating a secondary data stream from the activated data streams, in response to determining that the overall throughput has gained less than the first predetermined threshold by the activating of the another secondary data stream. 7. The non-transitory machine-readable medium of claim 5 , wherein dynamically adjusting the number of activated streams further comprises: iteratively performing activating another secondary data stream and monitoring the overall throughput for the first predetermined period of time, if the overall throughput has gained more than or equal to the first predetermined threshold. 8. The non-transitory machine-readable medium of claim 7 , wherein dynamically adjusting the number of activated data streams further comprises: determining whether all allocated data streams have been activated, wherein iteratively performing activating another secondary data stream and monitoring the overall throughput for the first predetermined period of time is performed only if there is at least one allocated data stream that has not been activated. 9. A data processing system operating as a source system, comprising: a processor; and a memory storing instructions, which when executed by the processor, cause the processor to perf

Assignees

Inventors

Classifications

  • H04L47/12Primary

    Avoiding congestion; Recovering from congestion · CPC title

  • Throughput · CPC title

  • by acting on aggregated flows or links · CPC title

  • Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9509612B1 cover?
According to one embodiment, in response to a request to transfer a data set from a source system to a target system over a network, an adaptive performance control (APC) controller allocates a plurality of data streams for transferring the data set. The APC controller activates one or more data streams from the allocated data streams to transfer the data set from the source system to the targe…
Who is the assignee on this patent?
Emc Corp
What technology area does this patent fall under?
Primary CPC classification H04L47/12. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 29 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).