Software-Defined Networking A Comprehensive Survey --阅读_day1

The Internet has led to the creation of a digital society, where (almost) everything is connected and is accessible from anywhere. However, despite their widespread adoption, traditional IP networks are complex and very hard to manage. It is both difficult to configure the network according to predefined policies, and to reconfigure it to respond to faults, load, and changes. To make matters even more difficult, current networks are also vertically integrated: the control and data planes are bundled together. Software-defined networking (SDN) is an emerging paradigm that promises to change this state of affairs, by breaking vertical integration, separating the network’s control logic from the underlying routers and switches, promoting (logical) centralization of network control, and introducing the ability to program the network. The separation of concerns, introduced between the definition of network policies, their implementation in switching hardware, and the forwarding of traffic, is key to the desired flexibility: by breaking the network control problem into tractable pieces, SDNmakes it easier to create and introduce new abstractions in networking, simplifying network management and facilitating network evolution. In this paper, we present a comprehensive survey on SDN. We start by introducing the motivation for SDN, explain its main concepts and how it differs from traditional networking, its roots, and the standardization activities regarding this novel paradigm. Next, we present the key building blocks of an SDN infrastructure using a bottom-up, layered approach. We provide an in-depth analysis of the hardware infrastructure, southbound and northbound application programming interfaces (APIs), network virtualization layers, network operating systems (SDN controllers), network programming languages, and network applications. We also look at cross-layer problems such as debugging and troubleshooting. In an effort to anticipate the future evolution of this new paradigm, we discuss the main ongoing research efforts and challenges of SDN. In particular, we address the design of switches and control platformsVwith a focus on aspects such as resiliency, scalability, performance, security, and dependabilityVas well as new opportunities for carrier transport networks and cloud providers. Last but not least, we analyze the position of SDN as a key enabler of a software-defined environment.

View Abstract

摘要(abstract)

本文作者在摘要中主要列举了一些传统IP网络的缺点:复杂而且难以管理,最重要的一点就是它的控制面和数据面在同一台设备中,紧密耦合。而SDN就是要改变这种状况,它要求转发面与控制面分离。其次介绍了本文的大体内容:1.什么是SDN?它与传统网络有什么不同. 2. SDN:自下而上. 3. 正在进行的研究工作和挑战.

The distributed control and transport network protocols running inside the routers and switches are the key technologies that allow information, in the form of digital packets, to travel around the world. Despite their widespread adoption, traditional IP networks are complex and hard to manage [1]. To express the desired high-level network policies, network operators need to configure each individual network device separately using low-level and often vendor-specific commands. In addition to the configuration complexity, network environments have to endure the dynamics of faults and adapt to load changes. Automatic reconfiguration and response mechanisms are virtually nonexistent in current IP networks. Enforcing the required policies in such a dynamic environment is therefore highly challenging.
To make it even more complicated, current networks are also vertically integrated. The control plane (that decides how to handle network traffic) and the data plane (that forwards traffic according to the decisions made by the control plane) are bundled inside the networking devices, reducing flexibility and hindering innovation and evolution of the networking infrastructure. The transition from IPv4 to IPv6, started more than a decade ago and still largely incomplete, bears witness to this challenge, while in fact IPv6 represented merely a protocol update. Due to the inertia of current IP networks, a new routing protocol can take five to ten years to be fully designed, evaluated, and deployed. Likewise, a clean-slate approach to change the Internet architecture (e.g., replacing IP) is regarded as a daunting taskVsimply not feasible in practice [2], [3]. Ultimately, this situation has inflated the capital and operational expenses of running an IP network.
Software-defined networking (SDN) is an emerging networking paradigm that gives hope to change the limitations of current network infrastructures. First, it breaks the vertical integration by separating the network’s control logic (the control plane) from the underlying routers and switches that forward the traffic (the data plane). Second, with the separation of the control and data planes, network switches become simple forwarding devices and the control logic is implemented in a logically centralized controller (or network operating system1), simplifying policy enforcement and network (re)configuration and evolution. A simplified view of this architecture is shown in Fig. 1. It is important to emphasize that a logically centralized programmatic model does not postulate a physically centralized system [7]. In fact, the need to guarantee adequate levels of performance, scalability, and reliability would preclude such a solution. Instead, production-level SDN network designs resort to physically distributed control planes.
The separation of the control plane and the data plane can be realized by means of a well-defined programming interface between the switches and the SDN controller. The controller exercises direct control over the state in the data plane elements via this well-defined application programming interface (API), as depicted in Fig. 1. The most notable example of such an API is OpenFlow. An OpenFlow switch has one or more tables of packethandling rules (flow table). Each rule matches a subset of the traffic and performs certain actions (dropping, forwarding, modifying, etc.) on the traffic. Depending on the rules installed by a controller application, an OpenFlow switch canVinstructed by the controllerVbehave like a router, switch, firewall, or perform other roles (e.g., load balancer, traffic shaper, and in general those of a middlebox).
An important consequence of the SDN principles is the separation of concerns introduced between the definition of network policies, their implementation in switching hardware, and the forwarding of traffic. This separation is key to the desired flexibility, breaking the network control problem into tractable pieces, and making it easier to create and introduce new abstractions in networking, simplifying network management and facilitating network evolution and innovation.
Although SDN and OpenFlow started as academic experiments [9], they gained significant traction in the industry over the past few years. Most vendors of commercial switches now include support of the OpenFlow API in their equipment. The SDN momentum was strong
enough to make Google, Facebook, Yahoo, Microsoft,
Verizon, and Deutsche Telekom fund Open Networking
Foundation (ONF) [10] with the main goal of promotion
and adoption of SDN through open standards development.
As the initial concerns with SDN scalability were
addressed [11]Vin particular the myth that logical centralization
implied a physically centralized controller, an
issue we will return to later onVSDN ideas have matured
and evolved from an academic exercise to a commercial
success. Google, for example, has deployed an SDN to
interconnect its data centers across the globe. This production
network has been in deployment for three years,
helping the company to improve operational efficiency
and significantly reduce costs [8]. VMware’s network
virtualization platform, NSX [12], is another example.
NSX is a commercial solution that delivers a fully functional
network in software, provisioned independent of the
underlying networking devices, entirely based around
SDN principles. As a final example, the world’s largest IT
companies (from carriers and equipment manufacturers to
cloud providers and financial services companies) have
recently joined SDN consortia such as the ONF and the
OpenDaylight initiative [13], another indication of the
importance of SDN from an industrial perspective.
A few recent papers have surveyed specific architectural
aspects of SDN [14]–[16]. An overview of OpenFlow
and a short literature review can be found in [14] and [15].
These OpenFlow-oriented surveys present a relatively
simplified three-layer stack composed of high-level network
services, controllers, and the controller/switch interface.
In [16], Jarraya et al. go a step further by proposing a
taxonomy for SDN. However, similarly to the previous
works, the survey is limited in terms of scope, and it does
not provide an in-depth treatment of fundamental aspects
of SDN. In essence, existing surveys lack a thorough discussion
of the essential building blocks of an SDN such as
the network operating systems (NOSs), programming languages,
and interfaces. They also fall short on the analysis
of cross-layer issues such as scalability, security, and dependability.
A more complete overview of ongoing research
efforts, challenges, and related standardization
activities is also missing.
In this paper, we present, to the best of our knowledge,
the most comprehensive literature survey on SDN to date.
We organize this survey as depicted in Fig. 2. We start, in
the next two sections, by explaining the context, introducing
the motivation for SDN and explaining the main
concepts of this new paradigm and how it differs from
traditional networking. Our aim in the early part of the
survey is also to explain that SDN is not as novel as a
technological advance. Indeed, its existence is rooted at
the intersection of a series of ‘‘old’’ ideas, technology drivers,
and current and future needs. The concepts underlying
SDNVthe separation of the control and data planes,
the flow abstraction upon which forwarding decisions are
made, the (logical) centralization of network control, and
the ability to program the networkVare not novel by
themselves [17]. However, the integration of already tested
concepts with recent trends in networkingVnamely the
availability of merchant switch silicon and the huge interest in feasible forms of network virtualizationVare
leading to this paradigm shift in networking. As a result of
the high industry interest and the potential to change the
status quo of networking from multiple perspectives, a
number of standardization efforts around SDN are ongoing,
as we also discuss in Section III.
Section IV is the core of this survey, presenting an
extensive and comprehensive analysis of the building
blocks of an SDN infrastructure using a bottom-up, layered
approach. The option for a layered approach is grounded
on the fact that SDN allows thinking of networking along
two fundamental concepts, which are common in other
disciplines of computer science: separation of concerns
(leveraging the concept of abstraction) and recursion. Our
layered, bottom-up approach divides the networking problem
into eight parts: 1) hardware infrastructure; 2) southbound
interfaces; 3) network virtualization (hypervisor
layer between the forwarding devices and the NOSs);
4) NOSs (SDN controllers and control platforms);
5) northbound interfaces (to offer a common programming
abstraction to the upper layers, mainly the network applications);
6) virtualization using slicing techniques provided
by special purpose libraries or programming languages
and compilers; 7) network programming languages; and
finally 8) network applications. In addition, we also look at
cross-layer problems such as debugging and troubleshooting
mechanisms. The discussion in Section V on ongoing
research efforts, challenges, future work, and opportunities
concludes this paper.

View Introduction

引言(introduction)
传统网络的缺点:(1) 复杂且难以管理;
(2) 控制面和数据面在同一台设备中,紧密耦合

SDN优点:(1) 控制面与转发面分离
(2) 简化了策略的执行和网络(Re)的配置和演化。

最著名的南向接口标准:openflow

介绍接下来的内容.

Computer networks can be divided in three planes of functionality:
the data, control, and management planes (see
Fig. 3). The data plane corresponds to the networking devices,
which are responsible for (efficiently) forwarding
data. The control plane represents the protocols used to
populate the forwarding tables of the data plane elements.
The management plane includes the software services,
such as simple network management protocol (SNMP)-
based tools [18], used to remotely monitor and configure the
control functionality. Network policy is defined in the management
plane, the control plane enforces the policy, and
the data plane executes it by forwarding data accordingly.
In traditional IP networks, the control and data planes
are tightly coupled, embedded in the same networking
devices, and the whole structure is highly decentralized.
This was considered important for the design of the Internet
in the early days: it seemed the best way to guarantee
network resilience, which was a crucial design goal. In
fact, this approach has been quite effective in terms of
network performance, with a rapid increase of line rate
and port densities.
However, the outcome is a very complex and relatively
static architecture, as has been often reported in the networking
literature (e.g., [1]–[3], [6], and [19]). It is also
the fundamental reason why traditional networks are rigid,
and complex to manage and control. These two characteristics
are largely responsible for a vertically integrated industry
where innovation is difficult.
Network misconfigurations and related errors are extremely
common in today’s networks. For instance, more
than 1000 configuration errors have been observed in
border gateway protocol (BGP) routers [20]. From a single
misconfigured device, very undesired network behavior
may result (including, among others, packet losses, forwarding
loops, setting up of unintended paths, or service
contract violations). Indeed, while rare, a single misconfigured
router is able to compromise the correct operation
of the whole Internet for hours [21], [22].
To support network management, a small number of
vendors offer proprietary solutions of specialized hardware,
operating systems, and control programs (network
applications). Network operators have to acquire and
maintain different management solutions and the corresponding
specialized teams. The capital and operational
cost of building and maintaining a networking infrastructure
is significant, with long return on investment cycles,
which hamper innovation and addition of new features and
services (for instance, access control, load balancing,
energy efficiency, traffic engineering). To alleviate the lack
of in-path functionalities within the network, a myriad of
specialized components and middleboxes, such as firewalls,
intrusion detection systems, and deep packet inspection
engines, proliferate in current networks. A recent
survey of 57 enterprise networks shows that the number of
middleboxes is already on par with the number of routers
in current networks [23]. Despite helping in-path functionalities,
the net effect of middleboxes has increased
complexity of network design and its operation.

View STATUS QUO in Networking

网络化现状(STATUS QUO in networking)

计算机网络可以分为三个功能层面:数据面、控制面和管理面。

在传统的IP网络中,控制面和数据面是紧密耦合的,嵌入在同一个网络设备中,这在早期的互联网设计中被认为是重要的。然而,其结果是一个非常复杂和相对静态的体系结构,这也是传统网络僵化、管理和控制复杂的根本原因。

原文地址:https://www.cnblogs.com/YD2018/p/9265817.html

时间: 2024-11-13 08:56:19

Software-Defined Networking A Comprehensive Survey --阅读_day1的相关文章

Method of Seamless Integration and Independent Evolution of Information-Centric Networking via Software Defined Networking

A method of transferring data between a software defined network (SDN) and an information-centric network (ICN), wherein the method comprises receiving a request from an SDN node for a specific named content stored on an ICN, wherein the request is e

Improving Network Management with Software Defined Networking

Name of article:Improving Network Management with  Software Defined Networking Origin of the article:Kim H , Feamster N . Improving network management with software defined networking[J]. IEEE Communications Magazine, 2013, 51(2):114-119. ABSTRACT: N

A Survey of Machine Learning Techniques Applied to Software Defined Networking (SDN): Research Issues and Challenges

将机器学习用到SDN中的综述:研究的问题和挑战 从流量分类.路由优化.服务质量(Qos)/体验质量(QoE)预测.资源管理和安全性的角度,回顾了机器学习算法如何应用于SDN领域. 相关知识 在SDN中应用机器学习是合适的原因: 图形处理单元GPU和张量处理单元TPU等技术为机器学习提供了很好的机会: 集中式SDN控制器具有全局网络视图,能够收集各种网络数据,便于机器学习算法的应用. 基于实时和历史网络数据,机器学习技术可以通过执行数据分析,网络优化和网络服务的自动提供来为SDN控制器提供智能化.

阅读Deep Packet Inspection based Application-Aware Traffic Control for Software Defined Networks

Deep Packet Inspection based Application-Aware Traffic Control for Software Defined Networks Globlecomm2016 核心:细化测量粒度,弥补Openflow不足,提升处理性能.丰富服务的提供: 问题:SDN中存在测量粒度不够细的问题:只测得网络状态而不能获得流量行为,OpenFlow中只能提供少量的信息,不能提供更丰富的测量信息,流分类不够细导致服务质量不够高. 所做工作:为此将DPI引入控制平面

软件定义网络(Software Defined Network, SDN)

软件定义网络(Software Defined Network, SDN)在InfoWorld于2011年11月公布的将影响未来10年的十项新技术中排名第二.2012年7月,SDN代表厂商Nicira被VMware以12.6亿美元收购,随后Google宣布成功在其全球10个IDC网络中部署SDN,这促使SDN引起业界的强烈关注.到底SDN与传统网络架构有何区别?其带来哪些颠覆性创新? 现有网络中,对流量的控制和转发都依赖于网络设备实现,且设备中集成了与业务特性紧耦合的操作系统和专用硬件,这些操作

文献:Technology-related Disasters:A Survey toward Disaster-resilient Software Defined Networks

DISASTER的定义和影响(本文中) 定义范围: 自然灾害,比如洪水.地震等造成一定范围类的节点故障: 恶意攻击,DDOS攻击或者电磁脉冲攻击造成节点故障: 技术相关的问题,配置错误或者误操作等: 影响: 断电: 硬件问题: 某个节点宕机后导致的级联问题: 级联故障:在一个网络中,由于其中网络节点宕机,导致数据分流到其他节点进而导致其他节点负载加大,甚至出现故障. SDN相关的故障: DOS导致的节点瘫痪,包括控制平面的节点: 恶意应用: Control-Switch的通讯不可靠(由于灾害等原

可软件定义的存储逻辑——Efficient and agile storage management in software defined environments

        note:写这个也许算是翻译,又或算是对这个论文[1]的理解,又或者只是我的看法.         这篇论文和IOFlow相比较,更加地注重软件定义存储的框架(我觉得是利用已有的框架来创建新的框架,然后使用已有的协议),而不是像IOFlow那样注重通信的协议.并且,这个框架还是软件定义环境的框架,而不仅仅是存储的框架,不过全文注重说了存储(更有挑战性).特别地,关于可软件定义的存储逻辑,从这里可以管中窥豹. SDE软件定义环境 数据中心的环境包括Compute.Network和S

IOFlow——从微软的角度看Software Defined Storage

         note:网上有很多关于软件定义存储的负面消息.有人说,在存储发展的历史中,存储早就不仅仅是硬件了,软件在存储中有一个核心的地位:还有人觉得应该做软件隐藏的存储,因为软件这个事让存储的管理变得很难,这些软件包括:重复数据删除,自动精简配置等:也有些人说,我们并不需要更多的软件,我们需要看到的是更少的软件:也有人说,存储本来就是软件定义的,所有的存储都需要软件:尤其是当存储成为分享资源时(大数据和数据中心的存储),往往会被复杂而神秘的软件包围.很多人说,每次更新系统时,就会增加越

综述:Recent Advances in Features Extraction and Description Algorithms: A Comprehensive Survey

翻译 特征提取与描述算法的最新进展:综述 摘要 - 计算机视觉是当今信息技术中最活跃的研究领域之一.让机器和机器人能够以视线的速度看到和理解周围的世界,创造出无穷无尽的潜在应用和机会.特征检测和描述算法确实可以被认为是这种机器和机器人眼睛的视网膜.然而,这些算法通常是计算密集型的,这使得它们无法实现视觉实时性能的速度.此外,它们的能力不同,有些人可能会因为特定类型的输入而与其他人相比更有利于工作.因此,必须紧凑地报告其利弊,以及他们的表现和最近的进展.本文致力于全面概述特征检测和描述算法的最新进