A Virtual Time System for Linux-container-based Emulation of Software-defined Networks

Jiaqi Yan, Dong Jin
{"title":"A Virtual Time System for Linux-container-based Emulation of Software-defined Networks","authors":"Jiaqi Yan, Dong Jin","doi":"10.1145/2769458.2769480","DOIUrl":null,"url":null,"abstract":"Realistic and scalable testing systems are critical to evaluate network applications and protocols to ensure successful real system deployments. Container-based network emulation is attractive because of the combination of many desired features of network simulators and physical testbeds. The success of Mininet, a popular software-defined networking (SDN) emulation testbed, demonstrates the value of such approach that we can execute unmodified binary code on a large-scale emulated network with lightweight OS-level virtualization techniques. However, an ordinary network emulator uses the system clock across all the containers even if a container is not being scheduled to run. This leads to the issue of temporal fidelity, especially with high workloads. Virtual time sheds the light on the issue of preserving temporal fidelity for large-scale emulation. The key insight is to trade time with system resources via precisely scaling the time of interactions between containers and physical devices by a factor of n, hence, making an emulated network appear to be n times faster from the viewpoints of applications in the container. In this paper, we develop a lightweight Linux-container-based virtual time system and integrate the system to Mininet for fidelity and scalability enhancement. We also design an adaptive time dilation scheduling module for balancing speed and accuracy. Experimental results demonstrate that (1) with virtual time, Mininet is able to accurately emulate a network n times larger in scale, where n is the scaling factor, with the system behaviors closely match data obtained from a physical testbed; and (2) with the adaptive time dilation scheduling, we reduce the running time by 46% with little accuracy loss. Finally, we present a case study using the virtual-time-enabled Mininet to evaluate the limitations of equal-cost multi-path (ECMP) routing in a data center network.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"43 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2769458.2769480","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8

Abstract

Realistic and scalable testing systems are critical to evaluate network applications and protocols to ensure successful real system deployments. Container-based network emulation is attractive because of the combination of many desired features of network simulators and physical testbeds. The success of Mininet, a popular software-defined networking (SDN) emulation testbed, demonstrates the value of such approach that we can execute unmodified binary code on a large-scale emulated network with lightweight OS-level virtualization techniques. However, an ordinary network emulator uses the system clock across all the containers even if a container is not being scheduled to run. This leads to the issue of temporal fidelity, especially with high workloads. Virtual time sheds the light on the issue of preserving temporal fidelity for large-scale emulation. The key insight is to trade time with system resources via precisely scaling the time of interactions between containers and physical devices by a factor of n, hence, making an emulated network appear to be n times faster from the viewpoints of applications in the container. In this paper, we develop a lightweight Linux-container-based virtual time system and integrate the system to Mininet for fidelity and scalability enhancement. We also design an adaptive time dilation scheduling module for balancing speed and accuracy. Experimental results demonstrate that (1) with virtual time, Mininet is able to accurately emulate a network n times larger in scale, where n is the scaling factor, with the system behaviors closely match data obtained from a physical testbed; and (2) with the adaptive time dilation scheduling, we reduce the running time by 46% with little accuracy loss. Finally, we present a case study using the virtual-time-enabled Mininet to evaluate the limitations of equal-cost multi-path (ECMP) routing in a data center network.
基于linux容器的软件定义网络仿真虚拟时间系统
现实和可扩展的测试系统对于评估网络应用和协议至关重要,以确保成功的实际系统部署。基于容器的网络仿真很有吸引力,因为它结合了网络模拟器和物理测试平台的许多特性。Mininet是一种流行的软件定义网络(SDN)仿真测试平台,它的成功证明了这种方法的价值,即我们可以使用轻量级的操作系统级虚拟化技术在大规模仿真网络上执行未经修改的二进制代码。但是,普通的网络模拟器会跨所有容器使用系统时钟,即使没有计划运行容器也是如此。这导致了时间保真度的问题,特别是在高工作负载的情况下。虚拟时间揭示了在大规模仿真中保持时间保真度的问题。关键的见解是通过将容器和物理设备之间的交互时间精确地按n倍缩放,从而将时间与系统资源进行交换,因此,从容器中的应用程序的角度来看,使模拟网络看起来快了n倍。在本文中,我们开发了一个轻量级的基于linux容器的虚拟时间系统,并将该系统集成到Mininet中以增强保真度和可扩展性。我们还设计了一个自适应时间扩张调度模块,以平衡速度和精度。实验结果表明:(1)在虚拟时间下,Mininet能够准确模拟规模为n倍的网络,其中n为比例因子,系统行为与物理试验台获得的数据非常匹配;(2)采用自适应时间膨胀调度,在精度损失较小的情况下,运行时间缩短46%。最后,我们提出了一个使用启用虚拟时间的Mininet的案例研究,以评估数据中心网络中等价多路径(ECMP)路由的局限性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信