报文转发方法和系统与流程

文档序号:12730504
报文转发方法和系统与流程

本发明属于虚拟电信边缘云报文转发技术领域,具体涉及一种报文转发方法和系统。



背景技术:

虚拟电信边缘云已成为电信行业发展的重要趋势,其是为解决电信专用通信设备的不足而产生的。虚拟电信边缘云技术将电信边缘网虚拟化并聚集或分解其网络功能,承载于采用通用X86架构硬件的软件虚拟化平台上,从而对传统电信机房的设备进行软件与硬件的解耦。

电信边缘云中,用户(家庭用户及固网企事业用户)的终端(用户的电脑)通过Vxlan隧道连接虚拟电信边缘云的网元并访问相应资源(企业私有资源和公众服务资源),其中的报文(数据)转发系统采用松耦合架构。具体的,用户的终端发起访问请求报文,并通过PG(或Simple CPE)、网关、vCPE、vBRAS建立Vxlan隧道,实现Vxlan二层网络的接入,其中,vCPE能作为DHCP服务器给下挂的终端分配IP地址,并能作为PPPoE Client经过防火墙等进行拨号接入认证、计费等;之后,由NAT进行公网和私网IP地址的转换,通过网关接入并访问资源。

但是,现有虚拟电信边缘云的报文转发方法具有丢包率高、网络拥塞程度高、服务容错性低等问题。



技术实现要素:

本发明至少部分解决现有的虚拟电信边缘云的报文转发方法丢包率高、网络拥塞程度高、服务容错性低的问题,提供一种丢包率低(甚至是零丢包)、网络拥塞程度低、服务容错性高的报文转发方法和系统。

解决本发明技术问题所采用的技术方案是一种报文转发方法,用于虚拟电信边缘云的报文转发,所述虚拟电信边缘云包括多个用于转发报文的数据平面;所述报文转发方法包括:

新迭代循环开始,将迭代次数清零并用随机数据平面转发至少一条报文;

当有报文来时判断迭代次数是否达到阈值,若是则返回所述新迭代循环开始的步骤;

统计当前各数据平面的负载参数,所述负载参数的统计期间为本迭代循环期间;

根据负载参数计算当前评价函数;根据负载参数计算用各数据平面转发所述报文后的预测评价函数,从中选出最优的预测评价函数;

比较所述最优的预测评价函数与当前评价函数,若当前评价函数较优则返回所述新迭代循环开始的步骤,若预测评价函数较优则用该最优的预测评价函数对应的数据平面转发所述报文,并将迭代次数加1。

优选的,所述用随机数据平面转发至少一条报文为用随机数据平面转发一条报文。

优选的,所述阈值在45至55之间。

优选的,第k次迭代时,数据平面i的负载参数包括其并行报文处理能力值Rik和报文丢弃率tik

进一步优选的,第k次迭代时的当前评价函数optZk根据以下公式计算:

其中,a、b、c为大于0且小于1的系数;n为虚拟电信边缘云中数据平面的总数;xik为数据平面i的状态,其在数据平面i处理报文时为1,未处理报文时为0;Hik为Rik和(tik)-1的二维向量{Rik,(tik)-1}。

进一步优选的,第k次迭代时,用数据平面i转发所述报文后的预测评价函数optZ’ik+1根据以下公式计算:

其中,u、v、w为大于0且小于1的系数;R’ik+1和t’ik+1分别表示若用数据平面i转发所述报文后,预测得到的第(k+1)次迭代中数据平面i的报文处理能力值和报文丢弃率;x’ik+1表示若用数据平面i转发所述报文后,预测得到的第(k+1)次迭代中数据平面i的状态,其在数据平面i处理报文时为1,未处理报文时为0;H’ik+1通过如下公式计算:

其中,rik为Hik的变差期望,其等于d为大于0且小于1的调节因子,vik为Hik的方差向量,其等于

进一步优选的,所述预测评价函数和当前评价函数越大越优。

优选的,所述报文转发方法还包括:缓存被数据平面丢弃的报文,并给予缓存中的报文最高的转发优先级。

解决本发明技术问题所采用的技术方案是一种报文转发系统,用于虚拟电信边缘云的报文转发,所述虚拟电信边缘云包括多个用于转发报文的数据平面;所述报文转发系统包括:

初始单元,用于开始新迭代循环,将迭代次数清零并用随机数据平面转发至少一条报文;

阈值比较单元,用于当有报文来时判断迭代次数是否达到阈值,若是则使初始单元开始工作;

统计单元,用于统计当前各数据平面的负载参数,所述负载参数的统计期间为本迭代循环期间;

当前评价函数计算单元,用于根据负载参数计算当前评价函数;

预测评价函数计算单元,用于根据负载参数计算用各数据平面转发所述报文后的预测评价函数,从中选出最优的预测评价函数;

评价函数比较单元,用于比较所述最优的预测评价函数与当前评价函数,若当前评价函数较优则使初始单元开始工作;

报文转发单元,用于用最优的预测评价函数对应的数据平面转发所述报文,并将迭代次数加1。

优选的,所述报文转发系统还包括:缓存单元,用于缓存被数据平面丢弃的报文,并给予其中的报文最高的转发优先级。

本发明的报文转发系统和方法具有丢包率低(甚至是零丢包)、网络拥塞程度低、服务容错性高等优点。

附图说明

图1为本发明的实施例的一种报文转发方法的流程示意图;

图2为本发明的实施例的另一种报文转发方法的流程示意图;

图3为本发明的实施例的一种报文转发系统的结构框图;

图4为本发明的实施例的另一种报文转发系统的结构框图。

具体实施方式

为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。

实施例1:

如图1所示,本实施例提供一种报文转发方法,用于虚拟电信边缘云的报文转发,虚拟电信边缘云包括多个用于转发报文的数据平面,该报文转发方法包括:

S101、新迭代循环开始,将迭代次数清零并用随机数据平面转发至少一条报文。

S102、当有报文来时判断迭代次数是否达到阈值,若是则返回新迭代循环开始的步骤。

S103、统计当前各数据平面的负载参数,负载参数的统计期间为本迭代循环期间。

S104、根据负载参数计算当前评价函数;根据负载参数计算用各数据平面转发报文后的预测评价函数,从中选出最优的预测评价函数。

S105、比较最优的预测评价函数与当前评价函数,若当前评价函数较优则返回新迭代循环开始的步骤,若预测评价函数较优则用该最优的预测评价函数对应的数据平面转发报文,并将迭代次数加1。

本实施例的报文转发方法具有丢包率低(甚至是零丢包)、网络拥塞程度低、服务容错性高等优点。

实施例2:

如图2所示,本实施例提供一种报文转发方法。

具体的,该报文转发方法用于虚拟电信边缘云的报文转发。虚拟电信边缘云用X86架构的硬件虚拟实现电信边缘网的各种设备和功能,其中包括多个用于转发报文的数据平面(相当于报文转发器),每条来自用户终端的报文均需要被分配到一个数据平面中进行转发。

具体的,以上报文转发方法包括:

S201、新迭代循环开始,将迭代次数清零并用随机数据平面转发至少一条报文。

本实施例的报文转发方法包括不断进行的迭代循环,一个迭代循环结束后新的迭代循环开始,此时将迭代次数置为零,并且在有报文来时,用随机的方式选择数据平面并转发报文。

优选的,以上用随机数据平面转发至少一条报文为用随机数据平面转发一条报文。

也就是说,本步骤中优选转发一条且仅转发一条报文。

S202、当有报文来时判断迭代次数是否达到阈值,若是则返回新迭代循环开始的步骤,若否则进入下一步。

在新迭代循环开始并随机转发完报文后,若再有报文来,则判断当前(即本次迭代循环中)的迭代次数是否达到预定次数,如果达到则结束本次迭代循环,返回开始新迭代循环的步骤(即步骤S201),若未达到则继续。这是因为若一个迭代循环无限制进行下去,即使其运算的结果是优化,但其实际也会劣化,故需要设置迭代次数的上限。

优选的,以上阈值在45至55之间,更优选为50。

也就是说,最优选将迭代次数设为50。

S203、统计当前各数据平面的负载参数,负载参数的统计期间为本迭代循环期间。

也就是说,统计从本次迭代循环开始(即从步骤S201)到当前为止,各数据平面的负载参数。

优选的,第k次迭代时,数据平面i的负载参数包括其并行报文处理能力值Rik和报文丢弃率tik

显然,如果是第一次迭代,步骤S201结束后直接进入本步骤,则统计的负载参数就是随机转发的报文所产生的负载参数,其称为初始负载参数,即为Ri0和ti0

具体的,以上并行报文处理能力值Rik表示一个数据平面在本次迭代循环中处理报文的平均速度,其等于本次迭代循环中该数据平面成功转发的报文数除以本次迭代循环进行的时间;而报文丢弃率ti0则表示本次迭代循环中,该数据平面丢弃(并非完全丢弃,而是处理不了进入缓存中)的报文数量占其处理的总报文数量的比例。

S204、根据负载参数计算当前评价函数;根据负载参数计算用各数据平面转发报文后的预测评价函数,从中选出最优的预测评价函数。

也就是说,线根据以上的负载参数计算表示系统当前状态的当前评价函数,即表示当前系统整体情况的函数。

同时,分别假设以上新来的报文通过各数据平面转发,并预测在通过不同数据平面转发后系统整体的评价函数,也就是计算各数据平面的预测评价函数。

优选的,第k次迭代时的当前评价函数optZk根据以下公式计算:

其中,a、b、c为大于0且小于1的系数;n为虚拟电信边缘云中数据平面的总数;xik为数据平面i的状态,其在数据平面i处理报文时为1,未处理报文时为0;Hik为Rik和(tik)-1的二维向量{Rik,(tik)-1}。

具体的,当前评价函数是通过以上公式计算的,可见,以上公式中的Rik和tik均为可直接统计得到的参数;Hik为Rik和(tik)-1的二维向量,故也是已知的;而xik为表示各数据平面当前实际状态的参数,其定义为若数据平面i当前正在处理报文,则其对应的xi为1,若数据平面i当前未处理报文则相应的xi为0。

由此可见,当前评价函数optZk是根据实测的各数据平面当前的情况(负载参数和状态)得到的,故其可表示当前系统的实际状态(优化程度)。

优选的,第k次迭代时,用数据平面i转发报文后的预测评价函数optZ’ik+1根据以下公式计算:

其中,u、v、w为大于0且小于1的系数;R’ik+1和t’ik+1分别表示若用数据平面i转发报文后,预测得到的第(k+1)次迭代中数据平面i的报文处理能力值和报文丢弃率;x’ik+1表示若用数据平面i转发报文后,预测得到的第(k+1)次迭代中数据平面i的状态,,其在数据平面i处理报文时为1,未处理报文时为0;H’ik+1通过如下公式计算:

其中,rik为Hik的变差期望,其等于d为大于0且小于1的调节因子,vik为Hik的方差向量,其等于

也就是说,假设用数据平面i转发该报文,并预测这样转发后下一次迭代(只是预测,并未进入下一次迭代,这里的“k+1”仅仅表示预测的是转发后的参数)中各数据平面的负载参数。其中,x’ik+1、R’ik+1、t’ik+1分别表示预测得到的下一次迭代中的xik、Rik、tik。而H’ik+1是对应Hik的,但其不是由预测得到的R’ik+1、t’ik+1直接构成,而是由之前实测得到的Hik和Hik-1计算得出的预测值,其具体计算方式如前(由于此时要用到此前两次的Hi,故第一次得到Hi0后可再随机转发一个报文产生Hi1)。

这样,若虚拟电信边缘云中有n个数据平面,则可得到n个预测评价函数optZ’ik+1,分别表示用n个数据平面转发本报文后系统可能的优化程度。由此,可从中选出最优的预测评价函数(若有多个预测评价函数的优化程度相同则从中随机选择),用其对应的数据平面作为发送本条报文的候选数据平面。

优选的,预测评价函数和当前评价函数越大越优。

也就是说,预测评价函数和当前评价函数计算后均为一个值,且该值越大越优。因此,以上选出最优的预测评价函数也就是选出最大的预测评价函数。

S205、比较最优的预测评价函数与当前评价函数,若当前评价函数较优则返回新迭代循环开始的步骤,若预测评价函数较优则进入下一步。

在得到最优的预测评价函数后,将其与当前评价函数比较,若发现当前评价函数较优(即较大),则表示不论用哪个数据平面转发报文均会导致系统劣化,故重新开始迭代循环,即返回以上S201步骤。

S206、用该最优的预测评价函数对应的数据平面转发报文,并将迭代次数加1。

若发现最优的预测评价函数比当前评价函数更优(即更大),则表明用与该最优的预测评价函数对应的数据平面转发报文可使系统进一步优化,故用相应的数据平面转发报文。

同时,由于本次迭代结束,故将迭代次数加1。待有新的报文来到时,再次进入S202步骤,在本次迭代循环中开始一次新的迭代。

优选的,本实施例还包括:缓存被数据平面丢弃的报文,并给予缓存中的报文最高的转发优先级。

也就是说,本实施例的报文转发方法中还要设立缓存,当任意时刻(不限于某步骤),任意数据平面中有报文因为某些原因(如网络拥塞)未发送成功而被丢弃时,则将该报文存入缓存区中,并给予其最高的转发优先级,即认为缓存区中的报文是最新来到的报文,应优先按以上的方式处理。由此,本实施例的方法可大大的降低丢包率,甚至实现零丢包。

当然,应当理解,在不影响方法实施的情况下,以上各步骤的顺序可进行调整,例如,统计负载参数的步骤也可在判断阈值的步骤之前进行;再如,将迭代次数加1的步骤也可提前(只要在与阈值比较的步骤后即可,当前,这样可能导致第一次的k从0变为1,但其只是数字编号的变化,故无实际影响)。

本实施例的报文转发方法具有丢包率低(甚至是零丢包)、网络拥塞程度低、服务容错性高等优点。

实施例3:

如图3所示,本实施例提供一种报文转发系统,用于虚拟电信边缘云的报文转发,其包括:

初始单元,用于开始新迭代循环,将迭代次数清零并用随机数据平面转发至少一条报文;

阈值比较单元,用于当有报文来时判断迭代次数是否达到阈值,若是则使初始单元开始工作;

统计单元,用于统计当前各数据平面的负载参数,负载参数的统计期间为本迭代循环期间;

当前评价函数计算单元,用于根据负载参数计算当前评价函数;

预测评价函数计算单元,用于根据负载参数计算用各数据平面转发报文后的预测评价函数,从中选出最优的预测评价函数;

评价函数比较单元,用于比较最优的预测评价函数与当前评价函数,若当前评价函数较优则使初始单元开始工作;

报文转发单元,用于用最优的预测评价函数对应的数据平面转发报文,并将迭代次数加1。

本实施例的报文转发系统可实行上述的报文转发方法,故具有丢包率低(甚至是零丢包)、网络拥塞程度低、服务容错性高等优点。

实施例4:

如图4所示,本实施例提供一种报文转发系统,用于虚拟电信边缘云的报文转发,其包括:

初始单元,用于开始新迭代循环,将迭代次数清零并用随机数据平面转发至少一条报文;

阈值比较单元,用于当有报文来时判断迭代次数是否达到阈值,若是则使初始单元开始工作;

统计单元,用于统计当前各数据平面的负载参数,所述负载参数的统计期间为本迭代循环期间;

当前评价函数计算单元,用于根据负载参数计算当前评价函数;

预测评价函数计算单元,用于根据负载参数计算用各数据平面转发所述报文后的预测评价函数,从中选出最优的预测评价函数;

评价函数比较单元,用于比较所述最优的预测评价函数与当前评价函数,若当前评价函数较优则使初始单元开始工作;

报文转发单元,用于用最优的预测评价函数对应的数据平面转发所述报文,并将迭代次数加1;

缓存单元,用于缓存被数据平面丢弃的报文,并给予其中的报文最高的转发优先级。

本实施例的报文转发系统可实行上述的报文转发方法,故具有丢包率低(甚至是零丢包)、网络拥塞程度低、服务容错性高等优点。

可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1