APP下载

基于SDN的IPv6移动性管理机制研究

2017-09-05秦华张泽

软件导刊 2017年7期

秦华+张泽

摘 要:SDN网络思想为解决传统网络中网络层移动性管理面临的问题提供了新的解决思路,而SDN中现有的移动性管理方案仍面临用户移动过程中网络开销大和切换时延长等问题。研究在SDN网络中支持IPv6网络层移动性管理机制,通过对移动感知和移动切换两个关键技术进行分析设计,并结合位置预测理论提出了一种SDN网络中支持预切换的IPv6移动性管理机制。该机制根据位置预测结果在移动发生前计算并下发切换路径流表,降低了移动节点在移动过程中的信令开销和切换时延。最后根据性能评估分析方法,与同样基于SDN实现的OPMIPv6-C方案在信令开销和切换时延两方面进行了比较。

关键词:SDN网络;移动性管理;移动感知;移动切换;切换时延;信令开销

DOIDOI:10.11907/rjdk.171302

中图分类号:TP393

文献标识码:A 文章编号:1672-7800(2017)007-0165-05

0 引言

移动性管理解决的主要问题是保证移动终端(MN, Mobile Node)在移动过程中通信业务不中断。在传统网络中已有不少网络层移动性管理方案,其中PMIPv6[1]是一种典型的基于网络侧的管理机制,该机制通过引入两个功能实体:移动接入网关(MAG,Mobile Access Gateway)和本地移动锚点(LMA,Local Mobility Anchor)来代替移动节点参与移动切换信令通知的过程,降低了MN的协议复杂性,并减少了对无线资源的占用,因而得到了广泛应用。但PMIPv6选用固定的路由器执行LMA功能,MN移动后,通过在LMA与新MAG之间建立隧道重新转发数据,因此PMIPv6方案仍面临着隧道开销大和路径非优问题,并且PMIPv6仍需要为MN维护两个IP地址。

SDN[2]网络由于其拥有全局网络视图和基于流表进行转发控制等特性,对于解决上述问题显现出了很大优势,主要体现在:①在SDN网络中,利用交换机及端口号标识节点位置信息,控制器存有全局网络下终端的位置绑定映射信息,MN移动过程中不再需要维护两个IP地址;②SDN网络拥有全局网络视图,在感知到节点移动后,可以根据全局视图重新计算转发路径,以流表重新下发的方式更新数据传输路径,省去了隧道建立开销并消除路径非优问题。

而目前基于SDN实现网络层移动性管理机制面临的主要挑战是如何在尽量少的信令开销下快速感知节点移动,并根据节点的最新接入位置对数据传输路径进行快速切换,从而降低切换过程中的切换时延,保证服务质量。因此,本文以降低切换过程中的切换时延和信令开销为目的,研究设计了利用SDN网络特点实现IPv6网络层移动性管理中的移动感知和移动切换机制,并结合位置预测模型设计提出了预切换机制。通过预测MN即将接入的下一个接入位置,在切换发生前下发切换路径流表,以降低移动过程中的信令开销和切换时延。

1 相关研究工作

针对如何利用SDN网络优势实现移动性管理机制,众多学者已经提出了不同解决方案。文献[4]将PMIPv6协议引入SDN网络,提出了OPMIPv6方案。扩展OpenFlow交换机使其支持MAG功能,并在控制器中实现LMA的逻辑功能。当带有MAG功能的交换机检测到MN附着后,利用PMIPv6协议的绑定更新消息通知控制器,控制器选择网关交换机作为实际的LMA转发实体,然后重新计算网关交换机到MAG之间的路径,并下发相应流表,完成路径切换。但该方案需要借助PMIPv6协议实现移动感知功能,在信令交互方面仍存在较大开销。本文在此基础上展开进一步研究,将MAG和LMA功能同时抽象到控制器中,提出OPMIPv6-C方案。该方案通过扩展OpenFlow协议的Port Status和Switch Configuration消息来通知控制器MN的最新位置。该方案不依赖于PMIPv6协议的绑定更新消息,通过扩展OpenFlow协议降低信令开销。

以上两种方案均利用控制器下发流表更改切换路径的优势来消除PMIPv6的隧道开销与路径非优问题。但选择固定的网关交换机作为LMA转发实体,在路径切换过程中需要先删除网关交换机到接入交换机之间的流表,然后重新下发移动后的流表,这种切换方式对切换时延会产生一定影响。当MN移动过程中同时与多个通信对端通信时,需要删除并重新下发更多流表,这将随着通信对端主机的增多而明显增加切换时延。

文献[5]、[6]提出,在路径切换前后的数据转发路径中存在重合的交换机,利用SDN全局网络视图的优势,动态选取网络中的交换机作为LMA转发实体,减少交换机流表的数目,从而降低切换时延,并减少控制平面与数据平面的交互。但该方案需要提前获取移动前的传输路径作为选择最佳转发交换机的依据,并且对于移动过程中存在多个通信对端主机的情况,可能不存在最佳转发交换机,使得移动切换机制失效。

文献[7]扩展OpenFlow協议的Expermenter message消息来通知控制器MN的最新位置。该方案还设计了一种针对SDN网络的三层网络拓扑结构,将MN首次接入的交换机作为其家乡代理,在MN发生移动后,控制器重新下发流表到MN家乡代理与新接入点之间的交换机,以此解决重新计算整条通信路径的问题。但这种路径切换方式仅适用于文中设计的拓扑结构,并不具有良好的可扩展性。

2 移动性管理机制

2.1 移动性管理框架

在SDN网络中实现IPv6网络层的移动性管理,利用SDN控制器对网络中的设备进行集中管理,并利用控制机制感知节点移动;利用OpenFlow协议向交换机下发数据转发规则机制实现移动节点通信的连续性。基于SDN的IPv6网络移动性管理框架如图1所示。

移动感知机制:在控制器上增加能够存储全局网络中移动节点的位置绑定映射信息,通过与OpenFlow交换机交互,获得移动节点的最新接入位置信息,从而感知节点移动,并更新位置绑定映射表。endprint

移动预测机制:负责从移动感知机制获得移动节点的当前接入位置信息,并根据设定的预测策略计算移动节点下一个最大可能接入的位置,并将预测结果返回给移动感知机制。

移动切换机制:通过与移动感知机制交互,获得预测到的节点移动的下一个接入交换机,控制器根据预测位置计算预测路径转发流表,并提前下发预测路径流表到相应交换机上。当移动发生后,根据确定的移动位置,进行转发路径优化,包括两种情况:一是节点按照预测结果进行移动,二是节点没有按照预测结果移动,系统需要根据不同情况作不同处理。

2.2 移动感知

根据移动节点的自身特点,当移动节点从某个接入点移动到另一个接入点时,会第一时间发送广播ICMPv6路由请求(RS)消息,消息的源IP地址为本机当前IP地址,目的地址为ff02::1的广播地址。在SDN网络下,MN的第一跳OF交换机收到RS消息后,由于没有匹配此消息的流表会默认将其封装成Packet-in的OpenFlow协议消息上传到控制器。上传的Packet-in消息中外层OF协议消息携带着交换机标识和请求包的入端口号,内层RS消息携带着请求包的MN标识。移动感知模块通过监听数据包上传事件,获取上传的包含RS消息的Packet-in消息,解析出MN标识的当前接入位置,根据移动感知机制中存储的位置绑定映射表查看MN的当前位置信息是否发生了变化,从而实现移动感知功能。

2.3 移动切换

在WiFi网络中,移动节点MN的移动体现在接入到不同的无线AP上,而每一个无线AP均连接到交换机的一个端口。因此,本文用二元组(switch-id,port)来标识移动节点MN的连接点位置。如图2所示,MN当前接入AP1,其连接点(SW3,2)即为MN当前的接入位置。

为了支持移动切换机制,本文对移动节点的位置绑定映射表作如下扩展:

(MN-ID , OSW-ID , OSW-Port , CSW-ID , CSW-Port , PSW-ID , PSW-Port , Port , Priority)

其中,MN-ID标识一个移动节点;OSW、CSW、PSW分别表示移动节点移动前所在的、当前连接的及预测的下一个要接入的交换机,映射表分别记录着MN接入这3个连接点的交换机ID和端口信息;Port记录当前接入点交换机CSW上通向预测出的下一个接入点交换机的端口;Priority记录移动切换机制下发的流表匹配优先值的最大值,其初始值为控制器默认初始值,移动切换机制每下发一次切换路径流表或路径优化流表,此优先值加1。

整个预切换机制主要包括3个阶段:根据预测策略,预测移动节点MN即将接入的下一个接入位置;控制器按照预测的移动接入位置计算并下发预测路径转发流表,实现预切换;移动结束后,实现路径优化。接下来将对每个阶段的机制分别进行研究与设计。

2.3.1 预测策略

文献[8]的研究结论表明,2阶Markov预测模型对无线校园网络用户移动位置有较好的预测效果;文献[9]在此基础上提出L-局部预测模型,解决了2阶Markov存在的状态空间膨胀问题,降低了搜索时间开销,并在一定程度上提高了预测准确度。因此,本文结合L-局部预测模型来预测节点移动的下一个接入位置信息。

预测机制考虑用户移动模式的变化和用户移动行为的时间局部性,因而不以移动用户的所有历史轨迹为依据进行预测,而是从历史轨迹中选取部分最新的历史接入位置作为预测依据。

定义1:历史轨迹序列HT(History Trajectory)。记录用户按时间先后顺序依次接入的位置标识序列,HT={AL1,AL2,AL3,AL4……}。其中,任一元素ALK表示一个历史接入位置,可以重复。

定义2:预测候选队列CQ(Candidate Queue)。HT中出现过的每一个接入位置ALK都有一个长度为L的队列CQ与之对应。队列CQ由历史轨迹序列中出现在当前接入位置ALK后下一个接入位置的標识组成,每个元素均为ALK的候选接入位置,并按时间先后记录着ALK后最近出现过的L个接入位置。

其中ALk∈HT,并且CQHT。例如,对于历史轨迹序列HT={AL1,AL2,AL1,AL2,AL1,AL4,AL2,AL4,AL5......},接入位置TP对应的预测队列CQ={AL2,AL3,AL4……}。

预测机制的预测策略主要包括3部分:①预测下一个接入位置;②更新维护相应的预测候选队列;③更新维护相应的历史轨迹序列。具体策略如下:

(1)输入当前接入位置ALcurr,预测下一个接入位置ALpre。根据MN当前接入位置标识ALcurr搜索其对应的预测队列CQ。如果不存在此队列,则初始化一个长度为L的队列,返回当前接入位置标识ALcurr;否则将该队列中出现频次最多的位置标识作为预测结果返回:①如果预测队列为空,则返回当前位置;②如果频次最多的只有一个结果,则直接将此结果作为预测结果返回;③如果有多个结果,则选取最后出现的结果作为预测结果返回。

(2)更新历史轨迹HT。将当前位置标识ALcurr插入历史轨迹序列,并按照步骤(3)更新插入前历史序列最后一个位置标识的预测候选队列CQ。

(3)更新位置标识ALK的预测候选队列。搜索位置标识ALK对应的队列CQ,如果不存在,则初始化一个长度为L的队列并执行以下操作:①如果位置标识ALK对应的队列长度小于L,则直接将当前接入位置标识ALcurr入队;②如果队列长度大于L,则采用先进先出(FIFO)的方式,删除队头位置标识,并在队尾插入最新接入的位置标识,从而保持ALcurr后最新的L个历史接入信息。

2.3.2 预切换

预切换机制以保证移动节点发生移动前不影响通信数据流转发为前提,按照预测结果提前下发切换路径流表,在节点接入预测的连接点后能快速按照提前设定的切换路径进行数据转发。为了尽可能少的修改交换机流表,并能适应多源通信对端的场景,本文选用移动前MN的接入交换机作为预切换转发起点。endprint

预切换机制的策略为:

(1)在发生移动前,控制器将当前MN的接入位置信息发送到预测机制来预测即将接入的下一个接入位置,并更新绑定映射表中的PSW-ID和PSW-Port字段。

(2)控制器根据预测结果,在移动发生前计算好当前接入位置(CSW-ID,CSW-Port)到下一个接入位置(PSW-ID,PSW-Port)之间的路径,并将CSW通向PSW的出端口更新到位置绑定映射表中的port字段,同时将绑定映射表中的priority值加1。

(3)向切换路径上除CSW之外的交换机下发只匹配目的IP和入端口的流表匹配规则,流表的优先值大小为绑定映射表中的priority值。为了在切换发生前不影响正常的数据转发,不向当前接入位置CSW下发流表规则。

(4)提前下发的流规则,由入端口号的匹配来控制移动前后数据流的不同匹配转发。

(5)当MN移动到预测的接入位置后,控制器向移动前的接入交换机发送流表修改指令,命令其从绑定映射表中的端口port转发数据流,完成整个切换过程。

(6)更新绑定映射表的OSW-ID和OSW-Port字段,并根据当前的接入位置进行下一轮位置预测。

如图2所示,MN当前接入位置为(SW3,2),并根据预测策略得到下一个接入位置(SW4,2),部分相关交换机上的流表变化如图3所示。

在移动前,数据流按照正常的流规则转发,并在SW2和SW4交换机上下发预切换路径,如实线方格内的流表项。由于端口匹配限制,移动前此流表项并不影响正常数据转发;当控制器检测到MN移动到SW4后,直接向交换机SW3发送切换指令,如SW3的虚线框中的流表项。由于切换路径上的流表已经提前下发,在切换时只需修改一个交换机的流表便可完成整个切换过程。

2.3.3 路径优化

移动完成后,控制器根据移动后的接入位置对路径进行优化。

当移动后的位置与预测位置相同,则移动后通信数据按照预下发的流表进行转发。但由于利用入端口号不同来区别匹配移动前的数据流和预切换的数据流,这种入端口严格匹配的限制,会导致移动完成后数据传输存在回返路径情况,即一个数据流经过两次同一交换机,如图3中的局部传输路径SW2→SW3→SW2→SW4。为了消除这种回返路径情况,在切换完成后,控制器向上一个交换机和当前交换机之间下发只匹配目的IP的转发规则流表,取消端口严格匹配的限制,从而消除路径回返情况。

当移动后的位置与预测位置不同,即MN接入到另一个接入连接点(NSW-ID,NSW-Port),控制器则采取反应切换方式,重新计算绑定映射表中上一个接入交换机OSW-ID到当前连接点(CSW-ID,CSW-Port)之间的路径,直接向切换路径上的所有交换机下发只匹配目的IP的转发规则流表,将所有发往MN的下行数据转发到MN当前的接入位置。同时将当前接入位置发送给预测机制,完成下一轮预测。

利用交换机按照流表优先值从大到小依次匹配流表转发机制,移动切换机制以优先值递增的方式下发预切换流表和路径优化流表,使交换机按照最新下发的流表进行匹配,从而保证在交换机只有匹配目的IP流表规则的前提下,仍能下发匹配目的IP和特定入端口号的预切换流表,解决流表下发冲突问题,从而实现完整的预切换机制。

3 性能分析

根据移动性管理性能评估模型及开销分析方法[10-15],基于SDN的OPMIPv6-C机制在移动开销和切换时延方面优于传统的PMIPv6机制[4]。在该部分,本文采用相同的评估分析方法比较OPMIPv6-C与本文机制的信令开销和切换时延。

3.1 信令开销分析

信令开销表示移动过程中所有的移动信令消息产生的开销,由移动信令消息的大小和消息经过的跳数乘积计算所得[13]。基于SDN的网络层移動性管理机制的信令开销主要由绑定更新通知开销和流表修改通知开销组成。在相同的网络拓扑下:

(1)在绑定更新通知开销方面,OPMIPv6-C通过扩展OpenFlow协议中的Port Status和Switch Configuration消息来实现绑定更新,而本文采用Openflow协议封装RS报文消息来实现。在经过相同跳数的情况下,通过减少信令消息的大小,从而降低绑定更新消息的开销。

(2)在流表修改通知开销方面,OPMIPv6-C需要先向网关交换机到接入交换机之间的交换机发送n个flow-del消息,然后再重新发送n个flow-add消息,其中n表示网关交换机到接入交换机之间交换机的个数。本文提出的方案在预测准确的情况下,切换过程中只需向上一个接入交换机发送一个flow-mod消息;如果预测失效,则只需向上一个接入交换机和当前接入交换机之间的交换机发送flow-add消息。

因此,整体上本机制在移动节点移动过程中产生的信令开销比OPMIPv6机制要少。

3.2 切换时延分析

切换时延指从移动节点开始不能接收到数据包到移动节点在新接入点收到第一个数据包之间的时间间隔。如表1所示为两种不同机制下切换过程中的切换时延组成。

其中TL2表示二层切换时延,TWRS表示发送RS前的随机时延,TRS表示构造并发送RS的时延。在这三方面,两种机制产生的时延认为是相同的。而在发送绑定更新消息时延TBU中,由于本文机制通过解析RS消息来感知节点移动,不必单独生成并发送绑定更新消息,所以在本方案中TBU为0。

TOF表示控制器重新计算路径并修改交换机流表的时延,主要受需要修改流表的交换机个数和交换机处理能力的影响。本方案机制通过提前下发切换路径流表,在发生移动后,只需定向修改上一个交换机流表,节省了重新计算路径时延的时间,并在一定程度上减少了流表处理时延。如果预测失效,才需重新计算路径并下发流表。endprint

TP表示发生移动后第一个数据包到达的传输时延。本文机制无论预测的接入位置与实际接入位置是否相同,第一个数据包都是从上一個接入交换机转发到当前接入交换机,而不是OPMIPv6-C机制中,从网关交换机到当前接入交换机。由于两个相邻接入交换机之间的平均距离相比网关交换机到接入交换机之间的距离近[11],使移动后第一个转发的数据包传输时延变短。

在TL2、TWRS和TRS时延相同的情况下,本机制TBU、TOF和TP的和小于OPMIPv6机制三者之和。因此,本机制相比于OPMIPv6方案,整体上降低了移动过程中的切换时延。

4 结语

本文利用SDN网络特点提出了一种基于SDN网络的IPv6网络层移动性管理机制。该机制利用SDN控制器对网络中的设备进行集中管理,并利用控制机制感知节点移动;结合L-局部预测模型并扩展节点位置绑定映射表,提出了预切换策略,通过预测节点的下一个接入位置,提前下发切换路径流表,从而降低移动过程中的信令开销和切换时延;之后根据移动节点的实际移动位置来优化切换路径,解决路径非优问题和预测失效问题;最后根据性能评估分析模型,与OPMIPv6方案进行比较,取得了预期效果。但本文只对单控制器下的SDN域内移动进行了设计,如何使本机制在多控制器下的SDN域间移动中得到更好的应用,是下一步研究的方向。

参考文献:

[1]S GUNDAVELLI, K LEUNG, V DEVARAPALLI, et al. RFC 5213 Proxy Mobile IPv6[S].2008.

[2]MCKEOWN N, ANDERSON T, BALAKRISHNAN H, et al. OpenFlow: enabling innovation in campus networks[J]. ACM SIGCOMM Computer Communication Review, 2008, 38(2): 69-74.

[3]RAZA SM, KIM DS , CHOO H. Leveraging PMIPv6 with SDN[C]. In: Proceedings of the 8th International Conference on Ubiquitous Information Management and Communication,ACM,2014.

[4]KIM S M, CHOI H Y, PARK P W, et al. OpenFlow-based proxy mobile IPv6 over software defined network (SDN)[C].2014 IEEE 11th Consumer Communications and Networking Conference (CCNC). Las Vegas, USA :IEEE, 2014.

[5]WANG Y, BI J. A solution for IP mobility support in software defined networks[C].2014 23rd International Conference on Computer Communication and Networks (ICCCN). Shanghai, China: IEEE, 2014.

[6]BRADAI A, BENSLIMANE A, SINGH K D. Dynamic anchor points selection for mobility management in software defined networks[J]. Journal of Network and Computer Applications, 2015, 57 (C):1-11.

[7]高志腾. SDN移动性管理方案的研究与实现[D].北京:北京邮电大学,2014.

[8]PARK P W, KIM S M, MIN S G. OpenFlow-based mobility management scheme and data structure for the mobility service at software defined networking[J]. International Journal of Distributed Sensor Networks, 2016:1-9.

[9]TIAN M, LIU Y H, XUE-GANG Y U, et al. Location predictor for WLAN based on partial information[J]. Journal of Computer Applications, 2006.

[10]LEE J H, ERNST T, CHUNG T M. Cost analysis of IP mobility management protocols for consumer mobile devices[J]. IEEE Transactions on Consumer Electronics, 2010, 56(2): 1010-1017.

[11]LEE J H, CHUNG T M, GUNDAVELLI S. A comparative signaling cost analysis of hierarchical mobile IPv6 and proxy mobile IPv6[C].2008 IEEE 19th International Symposium on Personal, Indoor and Mobile Radio Communications. IEEE, 2008: 1-6.

[12]LO S C, LEE G, CHEN W T, et al. Architecture for mobility and QoS support in all-IP wireless networks[J]. IEEE Journal on selected areas in communications, 2004, 22(4): 691-705.

[13]HAN Y H, HWANG S H. Care-of address provisioning for efficient IPv6 mobility support[J]. Computer Communications, 2006, 29(9): 1422-1432.

[14]LEE J H, KIM Y D, LEE D W. Enhanced handover process for proxy mobile IPv6[C].Multimedia and Ubiquitous Engineering (MUE), 2010 4th International Conference on. IEEE, 2010: 1-5.

[15]SONG L, KOTZ D, JAIN R, et al. Evaluating location predictors with extensive WiFi mobility data[C].INFOCOM,Twenty-third AnnualJoint Conference of the IEEE Computer and Communications Societies. IEEE, 2004: 1414-1424.endprint