Many large science projects rely on remote clusters for (near) real-time data processing, thus they demand reliable wide-area data transfer performance for smooth end-to-end workflow executions. However, data transfers are often exposed to performance variations due to the changing network (e.g., background traffic) and dataset (e.g., average file size) conditions, necessitating adaptive solutions to meet stringent performance requirements of delay-sensitive streaming workflows. In this article, we propose <i>FStream++</i> to provide reliable transfer performance for large streaming science applications by dynamically adjusting transfer settings to adapt to changing transfer conditions. <i>FStream++</i> combines three optimization methods as <i>dynamic tuning</i> , <i>online profiling</i> , and <i>historical analysis</i> to swiftly and accurately discover optimal transfer settings that can meet workflow requirements. Dynamic tuning uses a heuristic model to predict the values of transfer parameters based on dataset characteristics and network settings. Since heuristic models fall short to incorporate many important factors such as I/O throughput and resource interference, we complement it with online profiling to execute a real-time search for a subset of transfer settings. Finally, historical analysis takes advantage of the long-running nature of streaming workflows by storing and analyzing previous performance observations to shorten the execution time of online profiling. We evaluate the performance of <i>FStream++</i> by transferring several synthetic and real-world workloads in high-performance production networks and show that it offers up to <inline-formula><tex-math notation="LaTeX">$3.6x$</tex-math></inline-formula> performance improvement over legacy transfer applications and up to 24% over our previous work <i>FStream</i> .
Read full abstract