SDN交换机及其星载交换的实现方案初探

2017-10-20 06:00徐展琦冯淼淼
无线电通信技术 2017年6期
关键词:卫星网络交换机处理器

陈 果,徐展琦,杨 帆,冯淼淼

(西安电子科技大学 综合业务网理论及关键技术国家重点实验室,陕西 西安 710071)

SDN交换机及其星载交换的实现方案初探

陈 果,徐展琦,杨 帆,冯淼淼

(西安电子科技大学 综合业务网理论及关键技术国家重点实验室,陕西 西安 710071)

随着互联网技术和应用的不断发展,网络中的新技术、新业务层出不穷,网络的复杂度越来越高。传统的卫星网络已难以满足高吞吐量、灵活多变的业务需求。针对传统卫星网络中的问题,业界提出在卫星网络引入SDN技术,实现软件定义卫星网络SDSN。对现有SDN交换机的实现方式进行归纳总结,针对卫星网络特殊环境分析卫星结点中SDN星载交换设备的系统功能,并提出一种基于OpenFlow协议的SDN星载交换机实现方案。

软件定义网络;OpenFlow交换机;卫星网络;星载交换机

0 引言

随着互联网业务的不断发展和网络规模的快速扩张,数据流量指数性的爆炸增长,传统网络架构逐渐难以实现提供新业务、引入新技术和易于网络管理等需求。为了显著提高通信服务质量,基于卫星网和地面网的星地融合网络[1-3]对卫星网提出灵活性、动态性等新要求。未来5G网络[4]也对移动卫星网络[5]提出高吞吐量、智能路由以及灵活的有效载荷等新要求,美军提出的分散与弹性体系架构更是将网络弹性、冗余性及可重构等方面作为未来网络的新挑战。

软件定义网络(Software Defined Network,SDN)[6]作为一种控制与转发分离的新型网络架构,凭借其高度的开放性、灵活性和可编程性在业界引起了广泛关注。为了更好地提升网络性能,国内外研究者提出在卫星网中引入SDN技术,实现软件定义卫星网络(Software Defined Satellite Network,SDSN)[7-9]以改变现有僵化的卫星网络体制,提升网络的动态性与可重构性,实现对卫星网络资源的灵活调度,以此适应迅速增长和动态变化的多租户业务需求,提供更好的网络服务质量。

1 地面网络SDN交换机实现方法及对比

目前基于OpenFlow实现的主流可编程SDN交换机[6]可分为硬件实现和软件实现2种:硬件方案包括传统专用集成电路ASIC、现场可编程逻辑阵列FPGA和多核网络处理器NPU等;软件方案即通过计算机加软件实现虚拟交换机。不同方案实现的SDN交换机存在交换性能差距,且在研发周期、投资成本和应用场景亦有较大的差异。本节详细介绍地面SDN网络中几种主流的OpenFlow交换机实现方式,并分析不同SDN交换机在交换性能和灵活性等方面的优劣。

1.1 基于专用集成电路的实现方案

专用集成电路(Application Specific Integrated Circuit,ASIC)是指应特定需要而设计制造的集成电路,在通信与网络芯片中得到广泛应用。它通过将指令或计算逻辑固化到芯片,并集成路由查询、协议处理和数据包转发等功能,以此提高网络设备的数据处理速度,实现极高的转发性能。但这种通过传统ASIC芯片实现的交换机功能固定,缺乏灵活性、通用性和可扩展性。

可编程的ASIC技术将一些固定的或低风险的设计功能用传统ASIC电路实现,而将高风险模块和需要现场可升级能力的功能置于可编程的电路中实现。这种方案既能实现类似ASIC的性能和功耗,又能提供类似FPGA的灵活性和可重构性,故成为高性能SDN交换机设计的首选。

国内盛科网络自行研发的专用OpenFlow芯片(如CTC6048芯片)和盛科V580系列SDN交换机均采用ASIC设计与实现。国外的Cisco和Juniper推出的可编程ASIC在无需重新设计芯片的情况下即可支持新的网络协议扩展,实现真正的软件定义网络。

1.2 基于FPGA的实现方案

FPGA作为ASIC领域中的半定制电路,可反复编程、擦除和使用,在灵活性与重构性方面表现突出,且在片上嵌入多核处理器形成SOC,还可保证网络数据包的转发性能。利用FPGA芯片研发交换机可采用硬件描述语言HDL编程、嵌入处理器方式软件编程或软硬件结合等方式灵活实现。用户可根据不同配置模式,采用不同编程方式,实现支持多种网络协议功能的SDN交换机。

斯坦福大学在研究OpenFlow项目时开发的开放性NetFPGA[10]平台,可以很好地支持模块化设计。通过将在该平台上开发的功能模块进行组合,便可完成复杂的硬件设计,实现网络功能的可重构。任何个人和科研组织都可以利用该平台上已有的软硬件资源,添加自己的模块和修改现有的系统来搭建自己的SDN硬件实验平台,因此在科研领域得到广泛使用。

1.3 基于多核网络处理器NPU的实现方案

网络处理器(Network Processing Unit,NPU)作为专门处理数据包而设计的可编程芯片,能够直接完成网络数据处理的一般性任务,其内部由若干个微码处理器和若干硬件协处理器组成。NPU既保留ASIC高性能处理数据的特性,又可通过众多并行运转的微码处理器进行微码编程以实现复杂的网络业务处理,例如,OSI模型第1~第7层的协议数据单元高速处理。因此,采用NPU芯片设计的SDN交换机在包处理能力和可编程方面均有较好的表现。

国内华为公司推出的S12700系列敏捷交换机中就采用自主研发的EPU网络处理器来实现交换机的可编程性,国外亦有设计用于SDN交换机中的网络处理器,如Intel公司的IXP2350接入NPU、Broadcom NPU等。

1.4 基于中央处理器CPU的实现方案

基于通用处理器实现的虚拟交换机以软件编程的方式实现对数据包的解析、查找和匹配等操作,并通过虚拟端口来模拟数据包的转发操作。由于此类交换机采用软件模拟实现数据包的转发,故具有较强的网络可编程性,可以和KVM、Xen等多种虚拟化平台相整合,使得同一套设备被多个虚拟机实例共享,为虚拟机提供灵活的网络互连能力。

运行于通用X86平台的软件交换机可以动态灵活地分配物理主机资源以满足网络虚拟化和数据中心中多租户的按需灵活组网需求,因此在数据中心和网络虚拟化技术中被认为是最有前景的交换机解决方案之一。目前业界已有的诸如Open vSwitch、Pica8、ofsoftswitch、OpenFlow Reference等OpenFlow交换机均基于此方案实现。

1.5 白牌交换机实现方案

白牌交换机的思想是解耦合硬件平台和软件操作系统,让用户自由选择最佳软硬件平台。交换机中的硬件芯片仅完成最基本的数据包转发功能,实现网元设备的“去智能化”,而转发策略则交给灵活、可移植的网络操作系统(Network Operation System,NOS)完成。

这一思想可极大提高交换机的可配置性与可重构性,增强网络部署的灵活性。用户在一台白牌交换机上可灵活地选择NOS以应对变化的市场需求,从而降低投资成本。这些特性使得白牌交换机在基于OpenFlow的SDN交换机中得到广泛关注。

1.6 SDN交换机实现方案对比

通过上述几种主流的方案可以看出,不同方式实现的SDN交换机在性能、成本和灵活性上都各有优劣。表1给出几种基于OpenFlow的SDN交换机实方案的优缺点对比。

表1 SDN交换机实现方案优缺点对比

转发形式优缺点基于专用集成电路ASIC性能极高,适合商用;开发周期长,成本高,扩展性差FPGA可扩展性强,灵活度高,复用性好;成本较高,本身处理能力有限基于多核网络处理器并行/多处理器方式,网络处理能力强,微码编程易于业务扩展,灵活可编程;处理性能对硬件要求高,芯片复杂度高,研制周期长软件虚拟转发实现简单,功能易扩展,网络互连能力灵活,可实现资源共享;性能一般,过度依赖于寄宿平台的CPU运算功能白牌交换机解耦合硬件平台和软件操作系统,成本低,开发周期短,网络操作系统可移植;性能一般,难以实现复杂的配置管理

2 SDN化星载交换设备实现形式初探

2.1 SDN星载交换机系统功能

SDN技术强调网络的灵活性与可编程性,故SDN星载交换机[11]实现方案的设计应首先考虑交换模块的可重构性,以方便对网络资源进行灵活、动态的调度。另外,星载交换机与地面网络结点不同,时刻面临着复杂的空间环境以及恶劣的高能粒子干扰,故在设计时需考虑以下几点:

① 实现交换机对外接口、交换体制的可编程性,以实现未来新型传输接口与交换体制的引入;

② 有容错模块以保障系统的可靠性;

③ 选择合适的元器件来应对太空中的空间高能粒子辐射,以提高星载交换机的稳定性;

④ 在保证一定交换性能的前提下尽可能减少功耗。

依据以上提出的几点设计要求,并通过比较几种SDN交换机实现方案的优缺点,本文选取FPGA作为星载SDN交换设备实现方案。

2.2 SDN星载交换机的体系结构

SDN星载交换机的体系结构与传统星载交换机[12]相比,基本模块的划分是相似的。但在基于OpenFlow协议的SDN星载交换机[13]中,作为可编程的交换模块,其设计必须遵循OpenFlow协议,以便流表的匹配与转发,实现网络数据的传输。

图1给出SDN星载交换机的模块实现框图。

图1 SDN星载交换机结构

该平台共分为5个模块,模块之间以总线或接口的形式进行交互通信,各模块功能如下:

① 主控模块:完成地面控制器对交换机的远程管理和配置,也用于配置、查询和管理系统各模块,并提供OpenFlow协议规定的消息解析和响应等控制处理;

② 交换模块:从输入端口接收数据,遵循OpenFlow协议完成包解析,根据流表匹配结果执行对应动作,再从对应端口输出;

③ 通信模块:将卫星上行链路信号通过接收处理,发送到交换模块和主控模块;将准备发送输出的报文转换为特定的帧结构,发送到下行链路;

④ 容错模块:负责监视整个系统的工作状态,对出错的模块进行隔离或复位,并为主控模块提供全局状态信息;

⑤ 电源模块:用来提供整个系统的能量,当系统其他模块发生功能性异常时,可以控制电源模块对其进行重启操作。

2.3 星载交换机元器件选择

主控模块:目前应用范围较广的处理器有ARM、X86、Power PC和MIPS,其中Power PC和ARM系列的CPU最符合低成本、低功耗的设计思想,故主控模块的CPU可从二者中选取。

交换模块:FPGA作为可编程器件已广泛应用于航天通信设备中,而基于FPGA实现的SDN交换机相较于其他方案在可编程和交换性能方面都有一定的优势,故星载交换机中交换模块应优选FPGA芯片。

容错模块:容错模块是系统可靠性的保障中心,它自身的可靠性必须得到保证,应该采用ASIC电路或者使用一次性可编程(One-Time Programmable,OTP)芯片。

2.4 星载交换机的OpenFlow协议扩展

在SDSN[7]网络中,作为具有星上交换能力的SDN星载交换机,不仅要支持IP交换、ATM交换、电路交换,而且还应支持光纤交换和光波长交换。但目前的OpenFlow协议仅支持以太网中的IP分组交换,并不支持其他粒度的交换,因此需要对OpenFlow协议中的多流表匹配机制进行扩展,以完成对ATM交换、电路交换、波长交换等多种粒度交换的支持。

为了使地面控制器可以从SDN星载交换结点中收集卫星运行的状态信息[8](如剩余缓存与链路带宽、功率、有效载荷状态以及端口监测状态等信息),以便对卫星网络资源实现灵活、动态的调度,需要对OpenFlow消息进行扩展,以便对卫星状态参数进行收集。

3 结束语

为了实现卫星网络资源的灵活、动态调度,在卫星网络中引入SDN技术已成为当前的热门研究课题。利用SDN集中控制的优势可以实时地收集卫星网络的状态参数,动态地对卫星结点进行监测,实现对拓扑动态变化的卫星网络的有效管控。本文总结地面网络中几种主流的SDN交换机实现方案,综合考虑太空中SDN卫星结点需满足的功能需求,对SDN星载交换设备的实现方案进行初探。经过对现有的几种主流SDN交换方案分析可知,采用FPGA实现的SDN交换机可满足性能需求,具有较强的可编程性,是构建灵活可重构SDN星载交换机的优选方案,并在此基础上提出一种基于OpenFlow的SDN星载交换机实现方案。

[2] Ferrús R,Koumaras H,Sallent O,et al.SDN/NFV-enabled Satellite Communications Networks:Opportunities,Scenarios and Challenges[J].Physical Communication,2016,18:95-112.

[3] Shi L,Lu Z,Qin P,et al.OpenFlow based Spatial Information Network Architecture[C]∥2015 International Conference on Wireless Communications & Signal Processing (WCSP).Nanjing,China,IEEE,2015:1-5.

[4] Evans B,Onireti O,Spathopoulos T,et al.The Role of Satellites in 5G[C]∥23rd European Signal Processing Conference (EUSIPCO).Nice,France,IEEE,2015:2756-2760.

[5] Rossi T,Sanctis M,Cianca E,et al.Future Space-based Communications Infrastructures based on High Throughput Satellites and Software Defined Networking[C]∥2015 IEEE International Symposium on Systems Engineering (ISSE).Rome,Italy,IEEE,2015:332-337.

[6] Open Networking Foundation.OpenFlow Switch Specification Version 1.5.1(Protocol version 0x06)[OL].[2015.03].https:∥www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow- switch-v1.5.1.pdf.

[7] Jammal M,Singh T,Shami A,et al.Software Defined Networking:State of the Art and Research Challenges[J].Computer Networks,2014,72(11):74-98.

[8] Tang Z,Zhao B,Yu W,et al.Software Defined Satellite Networks:Benefits and Challenges[C]∥2014 IEEE Computers,Communications and IT Applications Conference.Beijing,China,IEEE,2014:127-132.

[9] Bertaux L,Medjiah S,Berthou P,et al.Software Defined Networking and Virtualization for Broadband Satellite Networks[J].Communications Magazine.IEEE,2015,53(3):54-60.

[10] Naous J,Erickson D,Covington G A,et al.Implementing an OpenFlow Switch on the NetFPGA Platform[C]∥Proceedings of the 4th ACM/IEEE Symposium on Architectures for Networking and Communications Systems.California,USA,ACM,2008:1-9.

[11] Gopal R,Ravishankar C.Software Defined Satellite Networks[C]∥32nd AIAA International Communications Satellite Systems Conference (ICSSC).San Diego,CA,2014:4480.

[12] 袁建国.星载交换设备可靠性关键技术研究[D].长沙:国防科学技术大学,2008.

[13] Taira S,Takahashi T,Kawamura K,et al.A Study on an Onboard Switch for Mobile Satellite Communications[C]∥AIAA International Communications Satellite Systems Conference and Exhibition,2013,114:61-65.

ImplementationSchemeofSDNSwitchandSDN-basedOnboardSwitching

CHEN Guo,XU Zhan-qi,YANG Fan,FENG Miao-miao

(State Key Laboratory of Integrated Service Networks,Xidian University,Xi’an ShaanXi 710071,China)

With the development of Internet technology and applications,new technologies and new services are emerging and networks are becoming ever more complex,and it has been more difficult for traditional satellite networks to meet the high throughput and flexible service requirements.To solve the problems in traditional satellite networks,the researchers from both academia and industry propose to introduce SDN technology into satellite networks to realize software defined satellite networks.The paper summarizes the implementation methods of existing SDN switches and analyzes the system function of SDN onboard switching model in satellite nodes.In addition,a scheme of SDN onboard switch based on OpenFlow protocol is proposed.

Software Defined Networks (SDN);OpenFlow switch;satellite networks,onboard switch

TN 927

A

1003-3114(2017)06-12-4

10.3969/j.issn.1003-3114.2017.06.03

陈果,徐展琦,杨帆,等.SDN交换机及其星载交换的实现方案初探[J].无线电通信技术,2017,43(6):12-15.

[CHEN Guo,XU Zhanqi,YANG Fan,et al.Implementation Scheme of SDN Switch and SDN-based Onboard Switching[J].Radio Communications Technology,2017,43(6):12-15.]

2017-08-15

国家自然科学基金项目(61572391)

陈 果(1994―),男,硕士研究生,主要研究方向:卫星网络和软件定义网络。徐展琦(1962―),男,博士,教授,博士生导师,主要研究方向:光网络、宽带卫星、SDN/NFV。杨 帆(1973―),男,博士,副教授,主要研究方向:光网络与交换、数据中心。

猜你喜欢
卫星网络交换机处理器
全球低轨卫星网络最新态势研判
基于地铁交换机电源设计思考
修复损坏的交换机NOS
使用链路聚合进行交换机互联
卫星网络HTTP加速技术研究
基于NS2的多层卫星网络路由协议开发方案
卫星网络环境下TFRC与窗口协议的比较
ADI推出新一代SigmaDSP处理器
罗克韦尔自动化交换机Allen-Bradley ArmorStratix 5700
火线热讯