Are We Ready for SDN? Implementation Challenges for Software-Defined Networks

  • Name of article:Are We Ready for SDN?  Implementation Challenges for  Software-Defined Networks
  • Origin of the article:Sezer S , Scott-Hayward S , Chouhan P , et al. Are we ready for SDN? Implementation challenges for software-defined networks[J]. IEEE Communications Magazine, 2013, 51(7):36-43.

ABSTRACT:

Cloud services are exploding, and organizations  are converging their data centers in order  to take advantage of the predictability, continuity,  and quality of service delivered by virtualization  technologies(利用虚拟化技术提供的可预测性、连续性和服务质量). In parallel(并行的、同时), energy-efficient(能源有效、节能)  and high-security networking is of increasing  importance. Network operators, and service and  product providers require a new network solution  to efficiently tackle the increasing demands  of this changing network landscape(环境). Softwaredefined  networking has emerged as an efficient  network technology capable of supporting the  dynamic nature of future network functions and  intelligent applications(支持未来网络功能和智能应用的动态特性) while lowering operating  costs through simplified hardware, software, and  management. In this article, the question of how  to achieve a successful carrier grade network(载波级网络)  with software-defined networking is raised. Specific  focus is placed on the challenges of network  performance, scalability, security, and interoperability  with the proposal of potential solution  directions(潜在问题的解决方案).

Cloud services are exploding 随着云服务增长

converging their data centers 数据中心聚合

the predictability, continuity,  and quality of service delivered by virtualization  technologies 为了利用虚拟化技术提供可预测性、连续性和服务质量

energy-efficient  and high-security networking 节能、高安全的网络变得重要

a new network solution 因此需要一种新的网络解决方案。

1.INTRODUCTION: WHAT IS  SOFTWARE-DEFINED NETWORKING?

Network configuration and installation requires  highly skilled personnel adept at configuration of  many network elements. Where interactions  between network nodes (switches, routers, etc.)  are complex, a more systems-based approach  encompassing elements of simulation(包含模拟元素的方法) is required.  With the current programming interfaces on  much of today’s networking equipment, this is  difficult to achieve.

In addition, operational costs(运营成本) involved in provisioning  and managing large multivendor networks  covering multiple technologies have been  increasing over recent years, while the predominant  trend in revenue for operations has been  decreasing. Coupled with increasing scarcity(缺乏) of  human resources and increasing costs of real  estate, this “perfect storm” for service providers  is leading to renewed interest in solutions that  can unify network management and provisioning  across multiple domains(跨多个域统一网络管理和资源调配). A new network model  is required to support this.

The term software-defined networking (SDN)  has been coined in recent years. However, the  concept behind SDN has been evolving(提出) since  1996, driven by the desire to provide user-controlled  management of forwarding in network  nodes. Implementations by research and industry  groups include Ipsilon (proposed General Switch  Management protocol, 1996), The Tempest (a  framework for safe, resource-assured, programmable  networks, 1998) and Internet Engineering  Task Force (IETF) Forwarding and  Control Element Separation, 2000, and Path  Computation Element, 2004. Most recently,  Ethane (2007) and OpenFlow (2008) have  brought the implementation of SDN closer to  reality. Ethane is a security management architecture  combining simple flow-based switches  with a central controller managing admittance  and routing of flows. OpenFlow enables entries  in the Flow Table to be defined by a server  external to the switch. SDN is not, however, limited  to any one of these implementations, but is  a general term for the platform.

For clarity(为了更明确), SDN is described in this article  with the Open Networking Foundation (ONF)  [1] definition: “In the SDN architecture, the control  and data planes are decoupled, network intelligence  and state are logically centralized, and the  underlying network infrastructure(基础设施) is abstracted  from the applications

SDN focuses on four key features:

  • Separation of the control plane from the  data plane
  • A centralized controller and view of the  network
  • Open interfaces between the devices in the  control plane (controllers) and those in the  data plane
  • Programmability of the network by external  applications

Network configuration and installation 网络的安装配置需要

highly skilled personnel 高级技术人员

interactions  between network nodes 如果网络结点之间的交互很复杂(交换机、路由器)

A more systems-based approach  encompassing elements of simulation  那么就需要一个包含模拟元素的更基于系统的方法

operational costs 近年来运营成本不断增加

unify network management and provisioning  across multiple domains 人们对跨多个域统一网络管理和资源调配的解决方案重新有了兴趣

new Network Model 这就需要有一个新的网络模型支持

the  concept behind SDN has been evolving 虽然SDN是近年来才出现的词汇,但是SDN背后的概念一直在发展

 provide user-controlled  management of forwarding in network  nodes 其驱动力是提供用户控制的网络节点转发管理

SDN focuses on four key features:

  • Separation of the control plane from the  data plane  控制、数据分离
  • A centralized controller and view of the  network  逻辑集中
  • Open interfaces between the devices in the  control plane (controllers) and those in the  data plane 开放接口
  • Programmability of the network by external  applications 可编程

 Our vision of the future SDN architecture is  described in Fig. 1

Are We Ready for SDN? Implementation Challenges for Software-Defined Networks_第1张图片

Our vision of the future SDN architecture is described in Fig. 1. This architecture encompasses(包含) the complete network platform.

The bottom tier of Fig. 1 involves the physical network equipment including Ethernet switches and routers. This forms(组成) the data plane

The central tier consists of the controllers  that facilitate(促进) setting up and tearing down(删除) flows  and paths in the network. The controllers use  information about capacity and demand obtained  from the networking equipment through which  the traffic flows. The central tier links with the  bottom tier via an application programming  interface (API) referred to as the southbound  API. Connections between controllers operate  with east and westbound APIs. The controllerapplication  interface is referred to as the northbound  API.

Functional applications such as energy-efficient networking, security monitoring, and access control for operation and management of the network are represented at the top of Fig. 1 highlighting(突出了) the user control/management separation from the data plane. An application in this article refers to a service provided by the network operator. Detailed insight(了解) into every element of the architecture in Fig. 1 is beyond the scope(范围) of this article. Instead, the transition from the traditional network to the state of the art in SDN today is presented(被取代).

A key challenge in SDN relates to(涉及到) separation  of the control and data planes, and maintaining  carrier grade service within this framework(框架). The  architecture requirements to meet operational  expectations in carrier grade networks are scalability,  reliability, quality of service (QoS), and  service management [2]. Four specific questions  arising from the control-data plane separation  challenge are discussed later in this article. A  series of solutions to these identified issues are  then studied, and the article concludes with the  outline(概述) of our vision for the future of SDN

physical network equipment 图一的底层涉及许多物理网络设备,形成了数据平面

facilitate setting up and tearing down flows  and paths in the network 中间的控制层有助于在网络中设置和删除流和路径

application programming  interface 中心层通过一个称为南向API的应用程序编程接口(API)与底层连接

east and westbound APIs 控制器之间用东、西向API连接

northbound  API 上方应用层与控制器之间用北向API连接

2. BACKGROUND: WHY SDN?

The fundamental purpose of the communication  network is to transfer information from one  point to another. Within the network the data  travels across multiple nodes, and efficient(高效) and  effective(有效) data transfer (forwarding) is supported  by the control provided by network applications/services.

NETWORKING THE OLD WAY

In traditional networks, as shown in Fig. 2, the  control and data planes are combined(组合) in a network  node.  The control plane is responsible for configuration  of the node and programming the paths  to be used for data flows. Once these paths have  been determined(被确定), they are pushed down to the  data plane. Data forwarding at the hardware  level is based on this control information.  In this traditional approach, once the flow  management (forwarding policy) has been defined,  the only way to make an adjustment to the policy  is via changes to the configuration of the devices.  This has proven restrictive(有限制的) for network operators  who are keen to scale their networks in response  to changing traffic demands, increasing use of  mobile devices, and the impact of “big data.”

control and data planes are combined 传统网络中,控制平面和数据平面组合在网络节点中

configuration  of the node and programming the paths 控制平面负责配置节点并编程用于数据流的路径。一旦确定了这些路径,它们就被下推到数据平面

flow  management 传统的方法中,一旦定义了流管理(转发策略)

changes to the configuration of the devices 对策略进行调整的唯一方法是通过更改设备的配置

NETWORKING THE SDN WAY

From these service-focused requirements, SDN  has emerged. Control is moved out of the individual(单独的)  network nodes and into the separate, centralized controller. SDN switches are controlled  by a network operating system (NOS) that collects  information using the API shown in Fig. 2a  and manipulates(操纵) their forwarding plane, providing  an abstract model of the network topology to  the SDN controller hosting(承载) the applications

Are We Ready for SDN? Implementation Challenges for Software-Defined Networks_第2张图片

The controller can therefore exploit(利用) complete  knowledge of the network to optimize(优化) flow management  and support service-user requirements  of scalability and flexibility. For example, bandwidth(带宽)  can be dynamically(动态地) allocated(分配) into the data  plane from the application

In Fig. 3, once the first packet of a new flow  arrives at the switch from the sender (step 1), the  switch checks for a flow rule for this packet in  the SDN cache (step 2). If a matching entry(匹配项) is  found, the instructions associated with the specific  flow entry are executed (e.g., update counter,  packet/match fields, action set, metadata). Packets  are then forwarded to the receiver (step 5).

If no match is found in the flow table, the  packet may be forwarded to the controller over  a secure channel (step 3). Using the southbound  API (e.g., OpenFlow, ForCES, PCEP), the controller  can add, update, and delete flow entries,  both reactively (in response to packets) and  proactively. The controller executes the routing  algorithm, and adds a new forwarding entry to  the flow table in the switch and to each of the  relevant switches along the flow path (step 4).  The switch then forwards the packet to the  appropriate port to send the packet to the receiver  (step 5).

network operating system SDN交换机由网络操作系统(NOS)控制

manipulates their forwarding plane 网络操作系统使用图2所示的API收集信息并操纵其转发平面

abstract model of the network topology 向承载应用的sdn控制器提供网络拓扑的抽象模型

matching entry 交换机在SDN缓存中检查该分组的流规则,如果找到匹配项,则执行与特定流项相关联的指令,然后将包转发到接收器

a secure channel 如果在流表中未找到匹配项,则可以通过安全信道将包转发到控制器

reactively and  proactively 使用南向API,控制器可以添加、更新和删除流条目,既可以是被动的(响应数据包),也可以是主动的

3.WHERE DOES SDN TAKE US?

SDN implementation opens up a means for new  innovation and new applications. Dynamic topology  control (i.e., adjusting switch usage depending  on load and traffic mapping(流量映射)) becomes  possible with the global network view. This  introduces scope for network-wide access control,  power management, and home networking,  for which the network view is not beneficial but  absolutely necessary

Furthermore, the network programmability  possible in SDN allows seamless communication(无缝通信)  at all levels, from hardware to software and ultimately  to end users (network operators). Programmability  makes applications aware of the  network and the network aware of applications.  This enables greatly improved use of resources  and opens up the potential for new applications  with the associated potential for revenue(收入、财政的) generation  (e.g., flow metering) in which cost plans can  be defined based on a level of service provision.

SDN的实施为新的创新和新的应用开辟了途径

the global network view 使用全局网络视图可以实现动态拓扑控制

seamless communication  at all levels 此外,SDN中的网络可编程性允许从硬件到软件并最终到最终用户(网络运营商)的所有级别的无缝通信

可编程性使应用程序了解网络,使网络了解应用程序,这使得资源的利用大大提高,并为新的应用开发了潜力,同时也带来了相关的创收潜力

4.KEY CHALLENGES

SDN holds great promise in terms of simplifying  network deployment and operation along with  lowering the total cost of managing enterprise  and carrier networks by providing programmable  network services. However, a number of challenges  remain to be addressed.

This section  focuses on four specific questions arising from  the challenges of SDN.

  • (1)PERFORMANCE VS. FLEXIBILITY: HOW CAN THE PROGRAMMABLE SWITCH BE ACHIEVED?

One fundamental challenge of SDN is how to  handle high-touch high-security high-performance  packet processing flows in an efficient  manner. There are two elements to consider:  performance and programmability/flexibility.  In this section, performance refers specifically  to the processing speed of the network node  considering both throughput(吞吐量) and latency(延迟). Programmability  means the capability to change  and/or accept a new set of instructions in order  to alter functional behavior. Flexibility is the  ability to adapt systems to support new unforeseen  features (e.g., applications, protocols, security  measures).  There are a number of initiatives [3, 4] underway  to allow programmability of existing network  technologies in a manner conformant with  the goals of SDN. Beyond these, the SDN programmability and performance problem remains  a challenge to achieve node bandwidth beyond  100 Gb/s

Figure 4 outlines(概述) the main technologies used for network processing(网络处理) in terms of their relationship (trade-off(权衡)) between programmability/flexibility and performance

Are We Ready for SDN? Implementation Challenges for Software-Defined Networks_第3张图片

 

Taking into account the programmability/performance  trade-off of data processing technologies,  it is evident that only a hybrid approach(混合方法) will  provide an effective technology solution for  SDN. Main SDN node functions can be decomposed(分解)  into clusters(集群) of subfunctions(子功能) such that feature-specific  technologies (within or across  nodes) are used to satisfy the best performance  vs. programmability trade-off in terms of power  dissipation(能耗), cost, and scalability

One goal of SDN is to develop networks built  on general-purpose hardware. The combination  of technologies as described in the hybrid architecture  supports this goal. With a programmable  interface built on standard hardware, a multivendor(多供应商)  equipped network becomes a possibility

handle high-touch high-security high-performance SDN的一个基本挑战是如何高效地处理高接触、高安全、高性能的分组处理流

performance and programmability/flexibility 需要考虑两个因素:性能和可编程性/灵活性

throughput and latency 性能具体指考虑吞吐量和延迟的网络节点的处理速度

accept a new set of instructions可编程性是指为了改变功能行为而改变和/或接受一组新指令的能力

adapt systems to support new unforeseen  features 灵活性是指调整系统以支持新的不可预见功能(如应用程序、协议、安全措施)的能力

a hybrid approach 考虑到数据处理技术的可编程性/性能权衡,很明显,只有混合方法才能为SDN提供有效的技术解决方案

decomposed  into clusters of subfunctions SDN的主要节点功能可以分解为子功能的集群,以便使用特定于特征的技术(在节点内或跨节点)来满足最佳性能

general-purpose hardware SDN的目标之一是开发基于通用硬件的网络,混合架构中描述的技术组合支持这一目标

a multivendor  equipped network 通过在标准硬件上构建可编程接口,一个多供应商配备的网络成为可能

  • (2)SCALABILITY: HOW CAN THE CONTROLLER  BE ENABLED TO PROVIDE A  GLOBAL NETWORK VIEW?

Assuming that the performance requirements  can be achieved within the hybrid programmable  architecture, a further issue that has seen some  discussion but limited solution is scalability in  SDN

The issue can loosely(大致地) be split into(分为) controller scalability and network node scalability. The focus here is on controller scalability in which three specific challenges are identified. The first is the latency introduced by exchanging network information between multiple nodes and a single controller. The second is how SDN controllers communicate with other controllers using the east and westbound APIs. The third challenge is the size and operation of the controller back-end database.

Considering the first issue, a distributed or  peer-to-peer controller(分布式或对等控制器基础设施) infrastructure would share  the communication burden of the controller.  However, this approach does not eliminate(消除) the  second challenge of controller-to-controller interactions,  for which an overall network view(整体的网络视图) is  required.

Traditional packet networks lend themselves  to scalable solutions because they do not require  extensive state to be held between system units(系统单元).  Each network node is autonomous(自治的), requiring  only limited knowledge of its neighbors. Routing  protocols have been designed to control traffic  with this in mind. In order to create resilient(弹性的)  networks, alternative(备用) paths and secondary(辅助) equipment  are required. It may then be necessary to  hold some state between systems to ensure that  should a failure occur, there is little or no interruption(中断)  in service. Typical systems that require  this functionality include network elements such  as load balancers(负载平衡器) and firewalls.

Within a pure SDN environment, a single  controller or group of controllers would provide  control plane services for a wider number of  data forwarding nodes, thus allowing a systemwide  view of network resources. Other approaches that match(匹配) the goals of  SDN with existing routing protocols involve  addition of an orchestration layer(编排层) exposing an  API that application elements may use to request  desired performance from the transport layer

controller scalability and network node scalability 这个问题可以大致分为控制器可伸缩性和网络节点可伸缩性,这里的重点是控制器的可伸缩性,其中确定了三个具体的挑战。

the latency introduced

multiple nodes and a single  controller 第一个是通过在多个节点和单个控制器之间交换网络信息而引入的延迟

using the  east and westbound APIs 第二个是sdn控制器如何使用东向和西向API与其他控制器通信

controller back-end  database 第三个挑战是控制器后端数据库的大小和操作

  • (3)SECURITY: HOW CAN THE SOFTWARE-DEFINED NETWORK BE PROTECTED FROM

MALICIOUS ATTACK?

There has been limited industry and research  community discussion to date on the security  issues associated with SDN. A greater focus on  security is therefore required if SDN is going to  be acceptable in broader deployment. Indeed, a  security working group has been set up within  Open Networking Foundation (ONF) with this in mind. A number of issues are highlighted here  that underscore(强调) the need for further study and  development of security solutions.

Potential security vulnerabilities exist across  the SDN platform. At the controller-application  level, questions have been raised around authentication(认证)  and authorization(授权) mechanisms to enable  multiple organizations to access network  resources while providing the appropriate protection  of these resources [12]. Not all applications  require the same network privileges(特权), and a  security model must be put in place to isolate(隔离)  applications and support network protection

 One potential solution is role-based authorization

On the plus side, the SDN architecture supports  a highly reactive security monitoring, analysis,  and response system. From the security  perspective(角度) SDN can support:

  1. Network forensics: facilitate quick and  straightforward, adaptive threat identification  and management through a cycle of  harvesting intelligence from the network,  analyzing it, updating policy, and then  reprogramming to optimize from network  experience
  2. Security policy alteration(更改): allow you to define a security policy and have it pushed out to all the infrastructure elements, reducing the frequency of misconfiguration and conflicting policies across the infrastructure
  3. Security service insertion(插入): facilitate(促进) security service insertion where applications like firewalls and intrusion(入侵) detection systems (IDSs) can be applied to specified traffic according to the organization’s policies

However, the security of SDN will only be as good as the defined security policy. Implementation of existing authentication and authorization mechanisms can resolve some aspects of the security challenge. Meanwhile, threat detection and protection techniques will continue to evolve. The key, though, is for individual organizations to effectively and comprehensively define their security policies in order to exploit(利用) the full extent of available network protection

the security  issues 迄今为止,业界和研究界对与SDN相关的安全问题的讨论有限

Potential security vulnerabilities SDN平台上存在潜在的安全漏洞

authentication  and authorization mechanisms 在控制器应用层,围绕认证和授权机制提出了一些问题,以使多个组织能够访问网络资源,同时对这些资源提供适当的保护

network privileges 并非所有应用程序都需要相同的网络权限

isolate  applications and support network protection 必须建立安全模型来隔离应用程序并支持网络保护

role-based authorization 一个潜在的解决方案是基于角色的授权

a highly reactive security monitoring, analysis,  and response system 另一方面,SDN体系结构支持高度反应性的安全监视、分析和响应系统

从安全角度来看,SDN可以支持:

Network forensics 网络取证——通过从网络中获取情报、分析情报、更新策略的循环,促进快速、直接、自适应的威胁识别和管理,然后重新编程以优化网络体验

Security policy alteration 安全策略更改——允许您定义安全策略并将其推送到所有基础结构元素,减少整个基础结构中的错误配置和冲突策略的频率

Security service insertion 安全服务插入:促进安全服务插入,其中防火墙和入侵检测系统(IDSS)等应用程序可以根据组织的策略应用于指定的流量

the defined security policy SDN的安全性仅与定义的安全策略一样好,关键是各个组织要有效和全面地定义其安全策略,以便充分利用可用的网络保护

  • (4)INTEROPERABILITY: HOW CAN SDN SOLUTIONS  BE INTEGRATED INTO EXISTING NETWORKS?

To answer this question requires consideration of interoperability and standardization to support the transition from the traditional network model to SDN

It would be straightforward to deploy a completely  new infrastructure based on SDN technology.  For this, all elements and devices in the  network would be SDN-enabled. However, there  is a vast(庞大的) installed base of networks supporting  vital(重要的) systems and businesses today. To simply  “swap out” these networks for new infrastructure  is not going to be possible, and is only well suited  for closed environments such as data centers  and campus networks(校园网).

The transition to SDN therefore requires simultaneous(同时的) support of SDN and legacy(遗留的) equipment.

interoperability and standardization 需要考虑互操作性和标准化,以支持从传统网络模型向SDN的过渡

be SDN-enabled 网络中的所有元素和设备都将启用SDN

closed environments 简单地将网络“交换”成新的基础设施是不可能的,即使可以也只能适用于数据中心和校园网等封闭环境

simultaneous support 因此,向SDN的过渡需要SDN和遗留设备的同时支持

CONCLUSION

SDN has emerged as a means to improve programmability within the network to support the dynamic nature of future network functions. As bandwidth demand escalates, the provision of additional capabilities and processing power with support for multiple 100GE channels will be seamless through an SDN-based update and/or upgrade. SDN promises flexibility, centralized control, and open interfaces between nodes, enabling an efficient, adaptive network

In order to achieve this goal, a number of  outstanding(明显的) challenges must be resolved. In this  article we have presented a discussion of a number  of challenges in the area of performance,  scalability, security, and interoperability. Existing  research and industry solutions(行业解决方案) could resolve  some of these problems, and a number of working  groups are also discussing potential solutions. In addition to these, the hybrid programmable architecture could be a means to counter(抵消、解决) performance and scalability issues introduced by SDN. The objective(目标) of the model is to optimize flow processing in the network

However, significant issues  must be addressed in order to meet expectations(达到预期).  Indeed, consideration of the potential for  application-driven networks(应用驱动网络) might lead us to  wonder whether SDN as currently envisioned is  even sufficient. Nevertheless, it is certain that  SDN is here to stay as an evolutionary(进化的) step,  paving the way toward a highly optimized ubiquitous(无处不在的)  service architecture

a means to improve programmability SDN已经成为一种提高网络内可编程性的手段

dynamic nature of future network functions  用于支持未来网络功能的动态特性

flexibility, centralized  control, and open interfaces between nodes SDN保证了灵活性、集中控制和节点间的开放接口,从而实现了一个高效、自适应的网络

this vision of future  communications SDN将有助于实现未来通信的愿景,为了达到预期,必须解决重大问题

the potential for  application-driven networks 事实上,考虑到应用驱动网络的潜力,我们可能会怀疑目前设想的SDN是否足够。

an evolutionary step 然而可以肯定的是,SDN将作为一个进化的步骤留在这里

 highly optimized ubiquitous  service architecture 为高度优化的无处不在的服务架构铺平道路。

 

你可能感兴趣的:(Are We Ready for SDN? Implementation Challenges for Software-Defined Networks)