Delphi: A Software Controller for Mobile Network Selection

Delphi: A Software Controller for Mobile Network Selection
复制标题

Delphi:用于移动网络选择的软件控制器

DOI:
--
复制
发表时间:
2016
期刊:
影响因子:
--
通讯作者:
H. Balakrishnan
H. Balakrishnan
中科院分区:
--
文献类型:
--
作者:
Shuo Deng;Anirudh Sivaraman;H. Balakrishnan

文献摘要

被引文献

相似文献

本文介绍了 Delphi,这是一种移动软件控制器,可帮助应用程序在数据传输的可用选项中选择最佳网络。 Delphi 优化指定的目标,例如传输完成时间、传输的每字节能量或传输的货币成本。它有四个组件:一个使用网络监视器收集的特征的性能预测器,以及一个在传输开始时估计传输大小的流量分析器,所有这些都输入到一个网络选择器中,该选择器使用预测和传输大小估计来优化目标。对于每次传输,Delphi 要么推荐使用“最佳”单一网络,要么推荐多路径 TCP (MPTCP),但至关重要的是为 MPTCP 的“主要子流”选择网络。主子流的选择对传输完成时间有很大影响,特别是对于短传输。我们在 Linux 上设计并实现了 Delphi。它不需要修改应用程序。我们的评估表明,与 Android 在可用时始终使用 Wi-Fi 的默认策略相比,Delphi 将 Web 浏览的应用程序网络传输时间缩短了 46%,视频流传输的应用程序网络传输时间缩短了 49%。 Delphi 还可以配置为实现高吞吐量,同时保持电池效率:在此配置中,它的吞吐量是 Android 默认策略的 1.9 倍,而能耗仅增加 6%。
This paper presents Delphi, a mobile software controller that helps applications select the best network among available choices for their data transfers. Delphi optimizes a specified objective such as transfer completion time, or energy per byte transferred, or the monetary cost of a transfer. It has four components: a performance predictor that uses features gathered by a network monitor, and a traffic profiler to estimate transfer sizes near the start of a transfer, all fed into a network selector that uses the prediction and transfer size estimate to optimize an objective. For each transfer, Delphi either recommends the “best” single network to use, or recommends Multi-Path TCP (MPTCP), but crucially selects the network for MPTCP’s “primary subflow”. The choice of primary subflow has a strong impact on the transfer completion time, especially for short transfers. We designed and implemented Delphi in Linux. It requires no application modifications. Our evaluation shows that Delphi reduces application network transfer time by 46% for Web browsing and by 49% for video streaming, compared with Android’s default policy of always using Wi-Fi when it is available. Delphi can also be configured to achieve high throughput while being battery-efficient: in this configuration, it achieves 1.9x the throughput of Android’s default policy while only consuming 6% more energy.