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

文档序号:9931221阅读:来源:国知局
r>【具体实施方式】
[0027]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
[0028]如图1所示,本发明实施例SDN中的分布式事务处理方法流程图之一,软件定义网络中的分布式事务处理方法,应用于一控制器,其中,软件定义网络中包括多个控制器,该软件定义网络中的分布式事务处理方法包括以下步骤:
[0029]步骤S100、获取需要由第一转发设备执行的第一事务。
[0030]这里,应当说明的是,第一事务为第一转发设备所要执行的多个事务中的任一个事务,具体可以是建立第一转发设备到另一转发设备之间的连接,拆除第一转发设备与另一转发设备之间的连接,当然也不仅限于此。
[0031]步骤S200、向一排序服务器请求第一事务的顺序号,并接收排序服务器下发的第一顺序号,其中,第一顺序号是排序服务器根据自身接收到第一转发设备的待执行事务的顺序,为第一事务分配的。
[0032]这里,顺序号是排序服务器根据自身接收到第一转发设备的待执行事务的顺序,为第一事务分配的,顺序号的大小反映了排序服务器接收到第一转发设备的待执行事务的先后顺序,该顺序号在要执行其所对应事务的第一转发设备中具有唯一性。
[0033]步骤S300、将第一事务以及第一顺序号发送给第一转发设备,以使第一转发设备接收并缓存第一事务以及第一事务对应的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务;应当说明的是,下发给第一转发设备的事务携带有该事务所对应的顺序号,来使第一转发设备根据其接收事务的顺序号来确定该事务被执行的顺序。
[0034]如图2所示,为了掌握事务被执行的情况,本发明实施例在上述步骤S300之后还可以包括步骤S400:
[0035]步骤S400、接收第一转发设备返回的第一事务的执行结果;应当说明的是,该执行结果可以是执行成功、执行失败或者未被执行。
[0036]如图3所示,本发明实施例SDN中的分布式事务处理方法流程图之三,该定义网络中的分布式事务处理方法应用于第一转发设备,包括以下步骤:
[0037]步骤S500、接收第一事务以及第一事务对应的第一顺序号,其中第一顺序号是排序服务器根据自身接收到第一转发设备的待执行事务的顺序,为第一事务分配的。
[0038]步骤S600、缓存第一事务以及第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务;应当说明的是,通过第一转发设备缓存第一事务以及第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务,节省了同时执行多个事务时,每个事务被执行成功后下层网元都向上层网元反馈事务被执行成功的时间,降低了网络延时,提尚了事务的处理效率。
[0039]如图4所示,缓存第一事务以及第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务的具体步骤如下:
[0040]步骤S601、获取事务顺序号窗口当前的上限值和下限值,事务顺序号窗口具有一固定长度。
[0041]这里,第一转发设备在本地设置一事务顺序号窗口,该窗口的长度是固定的,且可以滑动移动该窗口。应当说明的是事务顺序号窗口的长度虽然不变,但是因为滑动会导致事务顺序号窗口的上、下限值发生变化,并且事务顺序号窗口的长度可以根据经验或者试验数据进行设置,当然也不仅限于此。
[0042]步骤S602、若第一顺序号小于下限值,则将第一事务加入一丢弃队列。
[0043]步骤S603、若第一顺序号位于事务顺序号窗口之内,则将第一事务加入一等待队列。
[0044]步骤S604、若第一顺序号大于上限值,将事务顺序号窗口的上限值更新为第一顺序号,将位于等待队列且顺序号小于事务顺序号窗口的当前下限值的事务加入一执行队列,并依据顺序号执行执行队列中的各个事务。
[0045]应当说明的是,为了避免只有当事务顺序号窗口的上限值更新时,转发设备才会依据顺序号执行执行队列中的各个事务,本发明实施例还设有一计时器,设置计时器的门限,当计时器到达门限时将计时器清零,以及将等待队列中的事务从等待队列中移动至执行队列,并依据顺序号执行执行队列中的各个事务。相应的,当事务顺序号窗口的上限值更新后也将计时器清零。计时器的门限可以根据经验、试验数据或者网络性能进行设置,当然也不仅限于此,计时器的门限设置可以为转发设备处理完事务顺序号窗口排满事务时所需时长的一倍以上,较佳的,计时器的门限设置为转发设备处理完事务顺序号窗口排满事务时所需时长的两倍到三倍。
[0046]如图5所示,本发明实施例SDN中的分布式事务处理方法应用示意图,包括以下步骤:
[0047]步骤1、控制器为{网元,事务}请求顺序号。
[0048]步骤2、控制器接收为{网元,事务}分配的顺序号。
[0049]步骤3、控制器将{网元,事务,顺序号}分配给执行该事务的网元。
[0050]如图6所示,本发明实施例SDN中的分布式事务处理装置示意图之一,该软件定义网络中的分布式事务处理装置包括:获取模块71、顺序号模块72和发送模块73 ;其中,获取模块71,用于获取需要由第一转发设备执行的第一事务;顺序号模块72,用于向一排序服务器请求第一事务的顺序号,并接收排序服务器下发的第一顺序号,其中,第一顺序号是排序服务器根据自身接收到第一转发设备的待执行事务的顺序,为第一事务分配的;发送模块73,用于将第一事务以及第一顺序号发送给第一转发设备,以使第一转发设备接收并缓存第一事务以及第一事务对应的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务。
[0051]应当说明的是,顺序号是排序服务器根据自身接收到第一转发设备的待执行事务的顺序,为第一事务分配的,顺序号的大小反映了排序服务器接收到第一转发设备的待执行事务的先后顺序,该顺序号在要执行其所对应事务的第一转发设备中具有唯一性。下发给第一转发设备的事务携带有该事务所对应的顺序号,来使第一转发设备根据其接收事务的顺序号来确定该事务被执行的顺序。为了控制器掌握事务的执行结果,该软件定义网络中的分布式事务处理装置还包括:反馈模块,用于接收第一转发设备返回的第一事务的执行结果。
[0052]如图7所示,本发明实施例SDN中的分布式事务处理装置示意图之二,该软件定义网络中的分布式事务处理装置包括:接收模块81和执行模块82 ;接收模块81,用于接收第一事务以及第一事务对应的第一顺序号,其中第一顺序号是排序服务器根据自身接收到第一转发设备的待执行事务的顺序,为第一事务分配的;执行模块82,用于缓存第一事务以及第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务。
[0053]应当说明的是,通过第一转发设备缓存第一事务以及第一事务的第一顺序号,并根据各个事务的顺序号依次执行所缓存的事务,节省了同时执行多个事务时,每个事务被执行成功后下层网元都向上层网元反馈事务被执行成功的时间,降低了网络延时,提高了事务的处理效率。
[0054]如图8所示,图7中执行模块82包括:获取单元821、第一处理单元822、第二处理单元823、和第三处理单元824 ;获取单元821,用于获取事务顺序号窗口当前的上限值和下限值,事务顺序号窗口具有一固定长度;第一
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1