物联网中边缘辅助的流量工程和应用
本文为SIGCOMM 2018 Workshop (Mobile Edge Communications, MECOMM)论文。
笔者翻译了该论文。由于时间仓促,且笔者英文能力有限,错误之处在所难免;欢迎读者批评指正。
本文及翻译版本仅用于学习使用。如果有任何不当,请联系笔者删除。
本文作者包含3位,Nikos Fotiou, Dimitrios Mendrinos, George C. Polyzos@Mobile Multimedia Laboratory, Athens University of Economics and Business
ABSTRACT (摘要)
Software-Defned Networking (SDN) promises novel traffic engineering capabilities transforming every network from a mere packet forwarding fabric into an intelligent distribution medium. We extend the functionality of the core SDN component, the SDN controller, to perform path computations over “annotated” topologies. Specifcally, we exploit the use of tags, which describe network node properties and capabilities, enabling a new type of network control applications and thus connecting user applications and traffic ?ows with network decisions and management. Tags can be set and modifed in a number of di?erent ways, supporting context awareness and cognition in the network in a lightweight and loosely integrated way. Intelligent applications running at edge nodes may request unicast, anycast, or multicast paths among nodes with specifc tags or tag properties, realizing efficiently traffic engineering goals and supporting network slicing, virtualization, finer resource control, and easier management. We illustrate this new capability in the IoT domain by demonstrating how CoAP group communication can be implemented in a seamless, lightweight, and effucient way, releasing the constrained endpoints from the requirement to support IP multicast.
软件定义网络(SDN)给新型流量工程功能(将每个网络从单纯的数据包转发结构转变为智能分发介质)带来希望。我们扩展了核心SDN组件(SDN控制器)的功能,以通过“带注释的”拓扑执行路径计算。具体而言,我们利用标签来描述网络节点的属性和功能,实现新型网络控制应用,从而将用户应用和流量与网络决策和管理相连接。标签可以通过多种不同的方式进行设置和修改,以轻量级和松散集成的方式支持网络中的上下文感知和认知。在边缘节点上运行的智能应用程序可以在具有特定标签或标签属性的节点之间请求单播,任播或多播路径,实现有效的流量工程目标并支持网络切片、虚拟化、更精细的资源控制和更容易的管理。我们通过演示如何以无缝、轻量和高效的方式实现CoAP组通信来说明IoT领域内的这种新功能,从支持IP多播的需求中释放受限端点。
1 INTRODUCTION (引言)
Nowadays, it is evident that the Internet has evolved from a facility that interconnects static end-hosts, into a dynamic ecosystem which extends to our physical world. Smartphones, Things and home appliance with interconnection capabilities, portable computing devices, powerful personal workstations, all compose a powerful toolset that o?ers to end-users endless possibilities. Application providers create novel services that can be accessed through multiple devices, expand to multiple network locations, and generate vast amounts of traffic. Struggling to cope with this vivid environment, network operators seek to transform the traditionally static networks into an elastic, intelligent platform, that will not merely transfer packets from the “dump” edge to the “smart” core, but it will also provide in-network functions and services, making end-user experience even richer. A critical technology allowing the realization of this goal is SoftwareDefned Networking (SDN) [11].
如今,互联网显然已从一个互连静态终端主机的设施发展成一个延伸到我们物理世界的动态生态系统。 具有互连功能的事物和家用电器,便携式计算设备,功能强大的个人工作站,都构成了一个功能强大的工具集,可为最终用户提供无限可能。 应用程序提供商创建可以通过多个设备访问,扩展到多个网络位置并生成大量流量的新颖服务。 为了应对这种生动的环境,网络运营商试图将传统的静态网络转变为一个弹性的智能平台,不仅可以将数据包从“转储”边缘转移到“智能”核心,而且还可以提供 网内功能和服务,使最终用户体验更加丰富。 软件定义网络(SDN)[11]是实现这一目标的关键技术。
SDN allows the use of centrally managed switches, enabling network operators to leverage the full capabilities of their network. These switches are programmable in the sense that using a specialized protocol (such as OpenFlow), they can be confgured with rules to forward data “?ows” towards their destinations through specifc node and link paths, facilitating in this way load-balancing, service di?erentiation, in-network functions, and providing novel network services [5]. At the heart of an SDN-based network is an SDN controller, which is responsible for dynamically setting up switch ?ow tables based on confgurations–usually expressed using a scripting or programming language–that capture the requirements and the business processes of the network operator.
SDN允许使用集中化管理的交换机,使网络运营商能够充分利用其网络的全部功能。 这些交换机在使用专用协议(例如OpenFlow)的意义上是可编程的,它们可以通过规则配置,通过特定的节点和链路路径将数据“流”转发到它们的目的地,从而以这种方式促进负载平衡、服务差异化 、网络内功能,并提供新颖的网络服务[5]。 基于SDN的网络的核心是SDN控制器,它负责根据配置动态设置交换机流表(通常使用脚本或编程语言表示 )捕获网络运营商的要求和业务流程。
In this paper, we propose an enhanced SDN-based architecture that extends traditional approaches in the following way: (i) network nodes are annotated with “tags” describing their properties and capabilities, (ii) SDN controllers act as “path computation elements” and are capable of calculating on-demand paths among or composed of nodes with specifc tags or tag properties, (iii) intelligent applications, running on edge nodes, are able to request paths from the SDN controller, as well as to set/delete their own application-specifc tags. These enhancements are supported by a Bloom flterbased forwarding technique that achieves seamless multicast communication. This technique requires minimum and fxed state in the switches, which can be installed during the bootstrap. Despite that the path requesting applications and the path computation process can be application aware and act based on the requirements of a specifc application, or even based on the context of a specifc user, our approach does not require from the SDN components to perform deep packet inspection (as for example in [3]), neither requires modifcations to already established standards (as for example in [6]). As a matter of fact, our proof of concept implementation is based on readily available software switches and the OpenFlow 1.2 standard. We argue that the extensions proposed in this paper, combined with the Bloom flter-based forwarding, although simple, create many opportunities for novel services. In particular, our approach facilitates group/anycast communication paradigms, supports service chaining and composition, improves network management, and facilitates new services and applications. In order to demonstrate the efficiency of our approach, we present how a group communication protocol designed for the Internet of Things (IoT), i.e., the Constrained Application Protocol (CoAP) extension for group communication, can be efciently implemented over an SDN network that supports tag-based path computation. Traditional CoAP group communication requires from CoAP endpoints to support the IP multicast protocol. Moreover, CoAP group related information is maintained by the endpoints, hence, the number of groups increases and managing them becomes hard. With our implementation, constrained endpoints can beneft from group communication using vanilla CoAP without the extensions, without modifcations, and without the need to support IP multicast. Moreover, the creation of a new group becomes easier and the management of existing groups becomes more efcient. Finally, using our approach, service providers can easily leverage existing IoT deployments and o?er new, group communication-based services.
在本文中,我们提出了一种增强的基于SDN的体系结构,它以下列方式扩展了传统方法:(i)网络节点注释了描述其属性和功能的“标签”,(ii)SDN控制器充当“路径计算元素”并且能够计算具有特定标签或标签属性的节点之间或由其组成的按需路径,(iii)在边缘节点上运行的智能应用程序能够从SDN控制器请求路径,以及设置/删除它们的应用程序特定标签。 Bloom基于flom的转发技术支持这些增强,实现无缝多播通信。此技术需要交换机中的最小和固定状态,可以在引导期间安装。尽管请求应用程序和路径计算过程的路径可以是应用程序感知的并且基于特定应用程序的要求或甚至基于特定用户的上下文来行动,但是我们的方法不需要来自SDN组件来执行深度分组检查(例如在[3]中),既不需要对已经建立的标准进行修改(例如在[6]中)。事实上,我们的概念验证实施基于现成的软件开关和OpenFlow 1.2标准。我们认为本文提出的扩展与基于Bloom flter的转发相结合,虽然简单,但却为新颖的服务创造了许多机会。特别是,我们的方法促进了组/任播通信范例,支持服务链和组合,改进了网络管理,并促进了新的服务和应用。为了证明我们的方法的效率,我们介绍了如何通过SDN网络有效地实现为物联网(IoT)设计的群组通信协议,即用于群组通信的约束应用协议(CoAP)扩展。支持基于标签的路径计算。传统CoAP组通信需要CoAP端点支持IP多播协议。此外,CoAP组相关信息由端点维护,因此,组的数量增加并且管理它们变得困难。通过我们的实现,受约束的端点可以使用没有扩展的vanilla CoAP进行组通信,无需修改,也无需支持IP多播。此外,新组的创建变得更加容易,现有组的管理变得更加有效。最后,使用我们的方法,服务提供商可以轻松利用现有的物联网部署和新的基于群组通信的服务。
Edge-assisted Tra?ic Engineering and applications in the IoT