When managing wide-area networks, network architects must decide how to balance multiple conflicting metrics, and ensure fair allocations to competing traffic while prioritizing critical traffic. The state of practice poses challenges since architects must precisely encode their (somewhat fuzzy) intent into formal optimization models using abstract notions such as utility functions, and ad-hoc manually tuned knobs. In this paper, we present the first effort to synthesize network designs with indeterminate objectives using an interactive program-synthesis-based approach. We make three contributions. First, we present a novel framework in which a user's design objective, and the synthesis of a program (network design) that optimizes that objective are done in tandem. Second, we develop a novel algorithm for our framework in which a voting-guided learner makes two kinds of queries (Propose and Compare) to the user, with the aim of minimizing the number of queries. We present theoretical analysis of the convergence rate of the algorithm. Third, we implemented Net10Q, a system based on our approach, and demonstrate its effectiveness on four real-world network case studies using black-box oracles and simulation experiments, as well as a pilot user study comprising network researchers and practitioners. Both theoretical and experimental results show the promise of our approach.
翻译:在管理广域网络时,网络设计师必须决定如何平衡多种相互矛盾的计量标准,并确保公平分配给相互竞争的交通,同时确定关键交通的优先次序。实践状况带来了挑战,因为设计师必须精确地将其(一些模糊的)意图编码成正式优化模式,使用诸如公用事业功能等抽象概念和手动手动调控 knobs 。在本文中,我们首次努力利用互动式程序合成方法,将网络设计与不确定的目标结合起来。我们做出了三项贡献。首先,我们提出了一个新的框架,其中用户的设计目标以及一个方案(网络设计)的合成,以优化同步完成目标。第二,我们为我们的框架开发了一种新的算法,其中投票制导的学习员向用户提出两种询问(定位和比较),目的是尽量减少查询的次数。我们用互动式程序合成方法对算法的趋同率进行了理论分析。第三,我们实施了Net10Q,一个基于我们的方法的系统,并展示了它对于四个真实世界的案例研究(网络设计设计设计设计)的有效性,一个方案(网络设计)的合成,这个方案(网络设计)是同步完成目标的。第二,我们为我们的黑箱或手法实验性研究人员和实验性实验,展示了我们的实验结果。