软件定义网络中的分布式事务处理方法及装置的制造方法

文档序号:9931221阅读:699来源:国知局
软件定义网络中的分布式事务处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及传输领域,尤其涉及一种软件定义网络中的分布式事务处理方法及装置。
【背景技术】
[0002]软件定义网络(SDN,Software Defined Network)架构可分为多级网络架构应用程序、多层控制器和转发设备。SDN在目前的多级组网架构下,一个控制器需要同时响应来自多个应用程序或控制器的调用请求,一台转发设备也可能需要同时相应来自多个控制器的调用请求,同时一个完整的操作可能需要多个下级控制器共同配合才能完成,这是一种典型的分布式事务场景。
[0003]现有技术中,在所有事务能够成功执行的情况下,有效网元(需要执行命令的网元)在同一时刻仅能被一个事务所占用,在同时执行多个事务时,有效网元按照请求提交的先后顺序依次被占用,仅当先占用有效网元的事务释放该有效网元,并向上层网元反馈执行成功后,下一个事务才能使用该有效网元,即上层网元收到下层网元返回执行成功后才能下发下一个事务,增大了网络延时,降低了事务的处理效率。

【发明内容】

[0004]为了克服下层网元每执行成功一个事务都需要向上层网元返回执行结果,造成的网络延时。本发明提供了一种软件定义网络中的分布式事务处理方法及装置。
[0005]为了解决上述技术问题,本发明采用如下技术方案:
[0006]依据本发明的一个方面,提供了一种软件定义网络中的分布式事务处理方法,应用于一控制器,该分布式事务处理方法包括:获取需要由第一转发设备执行的第一事务;向一排序服务器请求所述第一事务的顺序号,并接收所述排序服务器下发的第一顺序号,其中,所述第一顺序号是排序服务器根据自身接收到所述第一转发设备的待执行事务的顺序,为所述第一事务分配的;将所述第一事务以及所述第一顺序号发送给所述第一转发设备,以使第一转发设备接收并缓存所述第一事务以及所述第一事务对应的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务。
[0007]可选的,在将所述第一事务以及所述第一顺序号发送给所述第一转发设备之后,所述分布式事务处理方法还包括:接收所述第一转发设备返回的所述第一事务的执行结果O
[0008]依据本发明的又一个方面,提供了一种软件定义网络中的分布式事务处理方法,应用于第一转发设备,该分布式事务处理方法包括:接收第一事务以及所述第一事务对应的第一顺序号,其中所述第一顺序号是排序服务器根据自身接收到所述第一转发设备的待执行事务的顺序,为所述第一事务分配的;缓存所述第一事务以及所述第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务。
[0009]可选的,所述缓存所述第一事务以及所述第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务,包括:获取事务顺序号窗口当前的上限值和下限值,所述事务顺序号窗口具有一固定长度;若第一顺序号小于所述下限值,则将所述第一事务加入一丢弃队列;若第一顺序号位于所述事务顺序号窗口之内,则将所述第一事务加入一等待队列;若第一顺序号大于所述上限值,将所述事务顺序号窗口的上限值更新为第一顺序号,将位于所述等待队列且顺序号小于所述事务顺序号窗口的当前下限值的事务加入一执行队列,并依据顺序号执行所述执行队列中的各个事务。
[0010]可选的,所述分布式事务处理方法还包括:利用一计时器进行计时,所述计时器具有一门限值;在所述计时器计时到所述门限值时,将所述计时器清零,以及将所述等待队列中的事务从所述等待队列中移动至所述执行队列,并依据顺序号执行所述执行队列中的各个事务。
[0011]可选的,在将所述事务顺序号窗口的上限值更新为第一顺序号之后,所述分布式事务处理方法还包括:将所述计时器清零。
[0012]依据本发明的又一个方面,提供了一种软件定义网络中的分布式事务处理装置,该分布式事务处理装置包括:获取模块,用于获取需要由第一转发设备执行的第一事务;顺序号模块,用于向一排序服务器请求所述第一事务的顺序号,并接收所述排序服务器下发的第一顺序号,其中,所述第一顺序号是排序服务器根据自身接收到所述第一转发设备的待执行事务的顺序,为所述第一事务分配的;发送模块,用于将所述第一事务以及所述第一顺序号发送给所述第一转发设备,以使第一转发设备接收并缓存所述第一事务以及所述第一事务对应的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务。
[0013]可选的,所述分布式事务处理装置还包括:反馈模块,用于接收所述第一转发设备返回的所述第一事务的执行结果。
[0014]依据本发明的又一个方面,提供了一种软件定义网络中的分布式事务处理装置,该分布式事务处理装置包括:接收模块,用于接收第一事务以及所述第一事务对应的第一顺序号,其中所述第一顺序号是排序服务器根据自身接收到所述第一转发设备的待执行事务的顺序,为所述第一事务分配的;执行模块,用于缓存所述第一事务以及所述第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务。
[0015]可选的,所述执行模块包括:获取单元,用于获取事务顺序号窗口当前的上限值和下限值,所述事务顺序号窗口具有一固定长度;第一处理单元,用于若第一顺序号小于所述下限值,则将所述第一事务加入一丢弃队列;第二处理单元,用于若第一顺序号位于所述事务顺序号窗口之内,则将所述第一事务加入一等待队列;第三处理单元,用于若第一顺序号大于所述上限值,将所述事务顺序号窗口的上限值更新为第一顺序号,将位于所述等待队列且顺序号小于所述事务顺序号窗口的当前下限值的事务加入一执行队列,并依据顺序号执行所述执行队列中的各个事务。
[0016]可选的,所述分布式事务处理装置还包括:计时模块,设置一计时器进行计时,所述计时器具有一门限值;处理模块,用于在所述计时器计时到所述门限值时,将所述计时器清零,以及将所述等待队列中的事务从所述等待队列中移动至所述执行队列,并依据顺序号执行所述执行队列中的各个事务。
[0017]可选的,所述分布式事务处理装置还包括:清零模块,用于将所述计时器清零。
[0018]本发明的有益效果至少有以下方面:本发明通过第一转发设备缓存所述第一事务以及所述第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务,节省了同时执行多个事务时,每个事务被执行成功后下层网元都向上层网元反馈事务被执行成功的时间,降低了网络延时,提高了事务的处理效率。
【附图说明】
[0019]图1表示本发明实施例提供的SDN中的分布式事务处理方法流程图之一;
[0020]图2表示本发明实施例提供的SDN中的分布式事务处理方法流程图之二 ;
[0021]图3表示本发明实施例提供的SDN中的分布式事务处理方法流程图之三;
[0022]图4表示本发明实施例转发设备处理事务的流程图;
[0023]图5表示本发明实施例提供的SDN中的分布式事务处理方法应用示意图;
[0024]图6表示本发明实施例提供的SDN中的分布式事务处理装置示意图之一;
[0025]图7表示本发明实施例提供的SDN中的分布式事务处理装置示意图之二;以及
[0026]图8表示本发明实施例执行模块示意图。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1