首页> 外文学位 >Simple distributed programming for scalable software-defined networks.
【24h】

Simple distributed programming for scalable software-defined networks.

机译:用于可扩展软件定义网络的简单分布式编程。

获取原文
获取原文并翻译 | 示例

摘要

Software Defined Networking (SDN) aims at simplifying the process of network programming, by decoupling the control and data planes. This is often exemplified by implementing a complicated control logic as a simple control application deployed on a centralized controller. In practice, for scalability and resilience, such simple control applications are implemented as complex distributed applications, that demand significant efforts to develop, measure, and optimize. Such complexities obviate the benefits of SDN.;In this thesis, we present two distributed control platforms, Kandoo and Beehive, that are straightforward to program. Kandoo is a two-layer control plane: (i) the bottom layer is a colony of controllers with only local state, and (ii) the top layer is a logically centralized controller that maintains the network-wide state. Controllers at the bottom layer run only local control applications (i.e., applications that can function using the state of a single switch) near datapath. These controllers handle frequent events and shield the top layer. Using Kandoo, programmers flag their applications as either local or non-local, and the offloading process is seamlessly handled by the platform. Our evaluations show that a network controlled by Kandoo has an order of magnitude lower control channel consumption compared to centralized controllers. We demonstrate that Kandoo can be used to adapt and optimize Transform Control Protocol (TCP) in a large-scale High-Performance Computing (HPC) datacenter with a low network overhead.;Beehive is a more generic proposal built around a programming model that is similar to centralized controllers, yet enables the platform to automatically infer how applications maintain their state and depend on one another. Using this programming model, the platform automatically generates the distributed version of each control application. With runtime instrumentation, the platform dynamically and seamlessly migrates applications among controllers aiming to optimize the control plane. Beehive also provides feedback to identify design bottlenecks in control applications, helping developers enhance the performance of the control plane. Implementing a distributed controller and a simple routing algorithm using Beehive, we demonstrate that Beehive is as simple to use as centralized controllers and can scale on par with existing distributed controllers. Moreover, we demonstrate that Beehive automatically improves control plane's latency by optimizing the placement of control applications without any intervention by network operators.
机译:软件定义网络(SDN)旨在通过将控制平面和数据平面分离来简化网络编程过程。这通常通过将复杂的控制逻辑实现为部署在集中式控制器上的简单控制应用程序来举例说明。实际上,为了实现可伸缩性和灵活性,此类简单的控制应用程序被实现为复杂的分布式应用程序,需要大量的精力进行开发,测量和优化。这种复杂性消除了SDN的好处。在本文中,我们提出了两个易于编程的分布式控制平台Kandoo和Beehive。 Kandoo是两层的控制平面:(i)底层是仅具有本地状态的控制器集群,并且(ii)顶层是维护网络范围状态的逻辑集中式控制器。底层的控制器仅在数据路径附近运行本地控制应用程序(即可以使用单个开关的状态运行的应用程序)。这些控制器处理频繁的事件并屏蔽顶层。使用Kandoo,程序员可以将其应用程序标记为本地或非本地,并且卸载过程由平台无缝处理。我们的评估表明,与集中式控制器相比,由Kandoo控制的网络的控制通道消耗降低了一个数量级。我们证明了Kandoo可用于以较低的网络开销来适应和优化大型高性能计算(HPC)数据中心中的变换控制协议(TCP)。;蜂箱是围绕编程模型构建的更通用的建议与集中式控制器类似,但使该平台能够自动推断应用程序如何维持其状态并相互依赖。使用此编程模型,平台将自动生成每个控制应用程序的分布式版本。借助运行时检测,该平台可在控制器之间动态无缝地迁移应用程序,以优化控制平面。 Beehive还提供反馈信息,以识别控制应用程序中的设计瓶颈,从而帮助开发人员提高控制平面的性能。使用Beehive实现分布式控制器和简单的路由算法,我们证明Beehive与集中式控制器一样简单,并且可以与现有的分布式控制器相提并论。此外,我们证明Beehive可以通过优化控制应用程序的放置来自动改善控制平面的延迟,而无需网络运营商的任何干预。

著录项

  • 作者

    Yeganeh, Soheil Hassas.;

  • 作者单位

    University of Toronto (Canada).;

  • 授予单位 University of Toronto (Canada).;
  • 学科 Computer science.
  • 学位 Ph.D.
  • 年度 2015
  • 页码 148 p.
  • 总页数 148
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号