裴海旭,陈鸿文
(四川大学计算机学院,成都 610064)
基于SDN的IPv6过渡技术研究
裴海旭1,陈鸿文2
(四川大学计算机学院,成都610064)
随着互联网的迅猛发展,IPv4地址已濒于匮乏。IPv6能够从根本上解决IPv4地址不足的问题。然而,IPv4向IPv6过渡不是一朝一夕就能完成的。由于IPv4与IPv6内在的不同,必须采用过渡技术才能完成IPv4到IPv6的转换。目前主流的IPv4/IPv6互通技术有双栈、隧道和地址转换3类,这类过渡技术一般都面临用户迁移、网络设备的改造等难题。作为一种创新的网络架构,SDN技术能够促进IPv6平稳过渡部署,并极大地降低过渡部署时的开销和复杂性。
IPv4;IPv6;SDN;OpenFlow;过渡
自 1990年代初以来,IETF就已经开始研究用IPv6协议来替代IPv4,目前IPv6协议已经变得足够成熟来取代IPv4[5]。过渡到IPv6预计要完成三个阶段:第一阶段,在以IPv4为主导的网络上部署IPv6;第二阶段,IPv4和IPv6共存;第三阶段,IPv6主导网络,IPv4逐渐退出。
然而,由于大部分网络设备和主机设备不支持IPv6,导致IPv6的普及十分缓慢[15]。一方面,IPv6缺乏特定的应用程序,几乎没有应用程序支持IPv6,因此用户不愿意过渡到IPv6;另一方面,一个稳定和大型IPv6用户组是互联网服务提供商,以及大规模的IPv6网络部署的基础。在用户等待IPv6服务、应用程序的同时,服务提供商也在等待IPv6的用户[16]。考虑到网络运营商提供网络连接终端用户和服务,我们相信打破僵局的关键在于网络运营商应该在建设和发展中采取主动IPv6-friendly基础设施[12],从而提供基于IPv6服务访问功能。在本文中,我们探讨分析利用软件定义方法灵活解决IPv6过渡遇到的问题。
目前的解决方案主要有三种:双栈技术(Dual Stack)、隧道技术(Tunnel)和地址转换技术(NAT)。
1.1双协议栈技术
双协议栈是指同一个节点既支持IPv6又支持IPv4协议,具有一个IPv4栈和一个IPv6栈。在源节点向目的节点发送分组时,首先应确定使用的是网络层哪个版本的协议,若使用的是IPv4或IPv6协议,源节点向DNS查询,若DNS返回IPv4地址,则发送IPv4分组,反之亦可。可以相信,双协议栈的部署是网络服务商将网络升级到IPv6的基础。
1.2隧道技术
隧道技术(Tunneling)是指把不同协议的数据包封装后通过网络传递数据的方式。隧道(Tunnel)是指一种协议封装到另外一种协议中的技术。利用隧道技术可以让目前因特网中的“IPv6孤岛”连接起来[6],可以把IPv4数据嵌套在IPv6数据包中传送,或反之,实现同协议两端应用穿过不同协议的IPv4或IPv6网络。
1.3地址转换技术
地址转换技术(Network Address Translation)是用于将一个地址域(如:专用Intranet)映射到另一个地址域(如:Internet)的标准方法。NAT技术有三种转换方式[7]:静态、动态转换以及端口多路复用技术。静态转换技术是指一对一对应,即一个私有IP地址转换成一个固定的共有IP地址;动态转换是指在共有IP地址的数目满足在某一时刻用户全部需求时实现私有IP地址和共有IP地址之间的动态转换;为了最大限度地节约IP地址资源[7],端口多路复用技术可以使内部网络的所有主机共享一个外部IP地址,不同之处在于所使用的端口不同。表1从技术特点、定位以及部署要求对几种过渡技术进行了对比分析。
表1 主要过渡技术对比
当前有许多IPv6过渡机制的提案,而这些提案一般都需要部署独立协议的硬件[8,19]。此外,网络提供商管理时的兼容性和互操作性也是个问题。这两个因素最有可能导致明显成本上升等资本支出。解决上述问题的首选方法是找到一个轻量级的、灵活的、可以快速部署在现有硬件基础上的机制[10],而软件定义网络(SDN)的出现让我们看到了实现这一目标的希望。
2.1SDN和OpenFlow
在过去几十年里数据和控制平面是紧密耦合的,而软件定义网络的出现(SDN)分离了数据平面和控制平面。数据和控制平面的解耦给网络带来了未有的灵活性和可编程性[1]。SDN起源于2006年斯坦福大学的CleanSlate研究课题,SDN技术可以极大地降低网络设备的负载,降低整体运营成本,使得网络管理者更方便灵活地控制基础设施[11,15]。在控制平面,更加集中和可编程的控制器,能过实时掌握全网动态[13],使新协议的部署以及网络的管理配置变得更加便利。SDN的主要特征包括以下几点:控制与转发分离;集中控制;开放接口;网络虚拟化。SDN架构最先由ONF组织提出,并已经成为学术界和产业界普遍认可的架构 (如图1)。传统网络架构被分拆成应用、控制、转发三层分离的架构[6],控制功能被转移到了控制器上,上层应用、底层转发设施被抽象成多个逻辑实体。目前在底层转发与控制层面主要利用OpenFlow协议进行通信。
图1 SDN架构
OpenFlow技术最早由斯坦福大学提出,OpenFlow协议是用来描述控制器和交换机之间交互所用信息的标准,以及控制器和交换机的接口标准。OpenFlow的核心思想很简单,就是将原本完全由交换机/路由器控制的数据包转发过程,转化为由OpenFlow交换机和控制服务器分别完成的独立过程。OpenFlow主要由交换机、控制器两部分组成[2](如图2)。
2.2基于SDN的IPv6过渡技术
SDN被视为下一代互联网核心技术[3],未来将部署在网络中关键环节,因此研究基于SDN实现IPv6迁移的技术具有现实的意义。
(1)在网络运营商的应用
网络运营商需要一个快速、低开销的接入用户的IPv6网络方案,来加快IPv6网络的部署进程。文献[10]提出了一个方法让运营商通过OpenFlow来快速链接到用户的IPv6网络中。(如图3)这是一种基于Open-Flow的IPv6隧道机制,介于客户边缘路由器(CE)和边界路由器(BR)之间。OpenvSwitch内置控制代理模块,用于转发面与控制面的协议交互。转发面主要实现通用IPv6过渡技术的模块化操作。控制器主要实现流表/规则的下发与控制以及过渡期地址资源的管理。OpenFlow可以降低运营商在引入新的网路服务或改变拓扑时的成本花销。标准化的控制接口和可编程的转发策略,使得运营商可以实现流量监控、流量管理和保护网络的安全等服务。
图2 OpenFlow模型
图3 系统架构图
(2)在网络边缘的应用
现有IPv6转换机制带来一些新的挑战,包括需要昂贵的端到端网络升级,管理大量包含过渡协议的设备,因此一个统一的,灵活的方法是IPv6过渡所必须的。文章[14]提出,基于SDN的隧道技术(tunneling)实现IPv6迁移的方法(如图4)。该方法提出,将Open-Flow交换机部署在网络边缘,IPv6转换服务模块(ITSM)作为一个插件运行在控制器上,并且控制器可以支持多个不同的服务插件。为了应对IPv6的数据包,对交换机进行了扩展以支持IP-in-IP隧道,这一简单的扩展可直接降低成本。
图4 基于SDN的体系架构
(3)在数据中心的应用
经过近些年的升级改造,接入网、城域网以及运营商网络已达到IPv6过渡要求。如何将运行在IPv4网络的应用迁移到IPv6网络,使得IPv6用户能够享受到IPv4应用的服务,文献[3]提出了一种基于OpenFlow SDN实现IPv4/IPv6协议转换的方法(如图5),当IPv6用户想要访问IPv4应用时,首先通过查询DNS得到对应的IPv6地址,数据包经由IPv6网络到达数据中心网关,然后进入OpenFlow网络。控制器计算出最优转发路径,然后把流表发送到 OpenFlow交换机,交换机根据流表把数据包转发到目标服务器,服务器收到数据包后,进行相应的处理。处理结果返回给协议转换模块,该模块根据存储的会话状态,将IPv4数据包转换成IPv6数据包,再返回给IPv6用户。
图5 软件定义IPv4/IPv6协议转换流程
本文首先梳理了IPv6网络过渡的主要技术,并对各技术进行了分析与对比[5]。在IPv6部署过程中,要结合实际情况以及自身特点对过渡技术要进行认真筛选[8],包括使用场景、易于部署程度、安全性能、地址格式、可扩展性、控制层面以及数据层面等问题。
SDN技术是一个新兴的、迅速发展的网络技术,IPv6过渡设备会在SDN技术完全成熟前进行部署[4],所以应采用分阶段的部署策略。
第一阶段[4],部分IPv6过渡设备已部署在网络中,此时可以首先在网络侧新增设备实现过渡。在过渡技术的选择上,尽量保持与正在使用的过渡技术保持一致。至于控制器的部署方案,可考虑在同一城域网内集中部署模式,为实现与当前设备的互通,可在控制器上增加协议接口适配模块,可以指定一些新业务在特定的设备和路径予以实现。
第二阶段,将SDN技术逐步引入家庭网关,从而可以尽快发展新业务。在升级现网中的硬件设备后,控制器就能够实现对整个网络资源的控制分配,并可以完成与编程层的协同和配合,同时可根据实际体验情况,对当前选择的过渡技术进行调整,以及对网络资源、部署位置进行灵活调配。
第三阶段,逐渐把SDN技术推广到整个网络中,同时将虚拟化、网络智能化等技术引入SDN技术中,以更好地支持云计算(Cloud Computing)、移动互联网(Mobile Internet)、物联网(Internet of things)等应用的发展。
在实际应用中,过渡技术的采用需要考虑到过渡阶段特点及运营商自身情况[17],不同种类的过渡技术的应用往往也是相互关联的;另外,尚未成熟的过渡技术在部署过程中还要考虑很多现实问题。
[1]左青云,陈鸣,赵广松.基于OpenFlow的SDN技术研究.软件学报,2013(5):1078-1097
[2]张朝昆,崔勇,唐翯祎.软件定义网络(SDN)研究进展.软件学报,2015,26(1):62-8
[3]黄志兰,樊勇兵,陈楠.基于OpenFlow SDN的IPv4/IPv6协议转换.China Academic Journal Electronic Publishing House,Z2.014.2014
[4]孙琼,解冲锋,赵慧玲.基于SDN架构的IPv6过渡技术设计与实现.电信科学,30(4)2014
[5]葛敬国,弭伟,吴雨磊.IPv6过渡机制:研究综述、评价指标与部署考虑.软件学报,2014,25(4):896-912
[6]王俊,陈志辉,田永春.软件定义网络技术在战术通信网中的应用研究.通信技术,vol.47 No12 Dec.2014
[7]牛凯廷.IPv4向IPv6过渡技术分析.计算机与网络,2015,41(8)
[8]周力军.基于IPv6技术的网络接入技术研究.网络安全技术与应用,2014(9)
[9]聂维.高校校园网IPv4到IPv6过渡技术研究.http://www.cnki.net/kcms/detail/10.1108.TP.20160408.0847.006.html
[10]Kuo-Cheng Yang,Hsiang-Ting Fang,Quincy Wu.OpenFlow-based IPv6 Rapid Deployment Mechanism。IEEE,978-1-4799-2/14,2014
[11]Wen-feng Xia,Yong-gang Wen.A Survey on Software-Defined Networking.IEEE Communication Surveys&Tutorials,Vol.17,No. 1,First Quarter 2015
[12]Peng Wu,Yong Cui,Jian-ping Wu,Jiang-chuan Liu.Transition from IPv4 to IPv6:A State-of-the-Art Survey.IEEE Communications Surveys&Tutorials,Ol.15,No.3,Third Quarter 2013
[13]McKeown N.Software-Defined Networking.INFOCOM Keynote talk,2009,17(2):30-32
[14]Wenfeng Xia,Tina Tsou.A Software Defined Approach To Unified IPv6 Transition.IETF,RFC 5551,2012
[15]Yong Cui,Yu-chi Chen,Jiang-chuan Liu,Yiu-leung Lee.State Management in IPv4 to IPv6 Transition.IEEE Network November/ December 2015
[16]Mehdi Nikkhah and Roch Guérin,Migrating the Internet to IPv6:An Exploration of the When and Why.IEEE,1063-6692 2015
[17]Kannan Govindarajan,Sharipah Setapa,Kong Chee Meng.Interoperability Issue between IPv4 and IPv6 in OpenFlow Enabled Network.978-1-4799-4575-7/14/$31.00 2014 IEEE
[18]Chia-Wei Tseng,Yao-Tsung Yang,Li-Der Chou.An IPv6-Enabled Software-Defined Networking Architecture.IEICE 2013
[19]Sun Xiao-ling,Chen Hai-hong.Research on IPv6 Routing Technology.978-0-7695-5004-6/13$26.00 2013 IEEE
IPv4;IPv6;SDN;OpenFlow;Transition
Survey on SDN Based IPv6 Transition
PEI Hai-xu1,CHEN Hong-wen
(College of Computer Science,Sichuan University,Chengdu 610064)
With the rapid development of Internet,IPv4 address resources being exhausted,IPv6 can fundamentally solve the problem of the shortage of IPv4 address.However,IPv4 to IPv6 transition cannot be achieved overnight.Due to IPv4 and IPv6 is not compatible,IPv6 transition technology must be used to achieve the conversion of IPv4 to IPv6.The current mainstream IPv4/IPv6 intercommunication technology has three,dual stack,tunnel and translation involves equipment upgrades,user migration,address pool planning management,and other complex problems.SDN as a new type of network architecture,can promote IPv6 deployment of a smooth transition,and greatly reduces the cost and complexity to transition deployment.
1007-1423(2016)29-0056-05
10.3969/j.issn.1007-1423.2016.29.013
裴海旭(1986-),男,甘肃敦煌人,硕士研究生,研究方向为计算机网络与SDN陈鸿文(1991-5),男,四川阆中人,硕士研究生,研究方向为SDN与云计算
2016-07-15修改日期:2016-10-10