Full system "end-to-end" measurements in physical testbeds are the gold standard for evaluation of network systems but are fraught with challenges. Adequate testbeds are often not available, as projects target next generation devices, propose new hardware, or require larger scale. Further, evaluations in testbeds limit what we can observe without affecting system behavior, are frequently hard to reproduce, and are only available to groups with sufficient funding. Yet, we lack an accepted alternative, leaving us with ad-hoc non-end-to-end evaluations that do not form a solid basis for future work. We argue that full system simulations enable comparable end-to-end evaluation and are the next best alternative when a physical testbed is not available. To this end, we present SimBricks, a modular full system simulation framework for network systems. SimBricks combines multiple existing simulators for individual components, including processor and memory, NIC, and network, into full virtual testbeds running unmodified software. The architecture combines well-defined component interfaces for extensibility with new simulators, efficient communication channels for local and distributed simulators, and a novel efficient synchronization protocol for accurate timing across different simulators. We demonstrate that SimBricks simulations reproduce key findings from prior work in congestion control, NIC architecture, and in-network computing, and show scalability to 1000 simulated hosts.
翻译:物理测试床的全系统“ 端到端” 测量是评价网络系统的黄金标准,但充满了挑战。 充分的测试床往往不具备, 因为项目针对下一代设备, 提议新的硬件, 或需要更大的规模。 此外, 测试床的评价限制了我们可以在不影响系统行为的情况下观察到的系统模拟框架, 通常很难复制, 并且只能提供给资金充足的群体。 然而, 我们缺乏一个可以接受的替代办法, 留给我们的非端到端的自动测试床, 不构成未来工作的坚实基础。 我们认为, 完全的系统模拟可以进行可比的端到端评价, 并且当物理测试床没有时, 也是下一个最佳的替代方法。 为此, 我们介绍SimBricks, 一个模块完整的网络系统模拟框架。 Simbricks将单个组件的多个现有模拟器, 包括处理器和记忆、 ICC和网络, 合并成一个完整的虚拟测试台, 运行不完善的软件。 架构将定义明确的组件接口与新的模拟器、 高效的通信渠道, 用于本地和分布式的服务器的模拟模拟模拟, 和新式的模拟模拟的模拟, 模拟的模拟模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟的模拟。