确定反压水线值的方法和装置的制作方法

文档序号:7706598阅读:111来源:国知局
专利名称:确定反压水线值的方法和装置的制作方法
技术领域
本发明涉及通信领域,尤其涉及通信领域中确定网络侧设备的反压水线 值的方法和装置。
背景技术
网络处理器是近年来蓬勃发展的一种可编程部件,在通信设备中被广泛 使用,并且已经逐步成为网络侧设备的主流方案之一。为了保证网络处理器 的服务质量,网络处理器在接收侧和发送侧都采用了流量控制装置,即反压 机制,以防止由于发送方发送报文速度过快,超过网络处理器的处理能力而 导致丟包。
反压机制的工作原理就是在接收端的緩沖区设置反压水线,分为高水线 和低水线,当发送方发送的数据流量小于低水线值时,网络处理器的接收端
给发送方发送一个"极饿(starving)"信号,表示现在数据流量很小,发送 方看到这个信号后就可以提高发送数据速率;如果发送的数据流量大于或等 于低水线值并且小于高水线值时,网络处理器的接收端会给发送方发送一个 "饿(hungry)"信号,表示可以正常发送数据,发送方看到这个信号后就 可以正常发送数据;如果发送的数据流量大于或等于高水线值时,网络处理 器的接收端会给发送方发送一个"满足(satisfied)"信号,表示接收端接收 数据能力已经达到极限,发送方必须停止发送数据。
如果反压水线值设置得过高,则有可能出现在发送方发送数据速率过快 的情况下,接收端由于流量没有达到高水线值而没有发送"satisfied"信号, 使得接收端的数据緩沖区溢出(overflow)。另一方面,如果反压水线值设置 得过低,緩冲区虽然不会出现"overflow",但由于发送方经常收到"satisfied" 信号而使发送速度过慢,从而达不到网络处理器的正常处理能力而浪费网络 处理器资源。因此,设置一个合适的反压水线值是开发一项新的网络处理器 产品必须要完成的工作。
目前,网络处理器产品的反压水线值的确定在产品研发阶段完成。研发人员根据网络处理器转发报文时需要达到的性能指标和芯片是否出现
"overflow"异常来确定适当的反压水线值。这个反压水线值通常都是一个 固定值, 一旦产品发布,反压水线值即已经确定。即使在产品运行过程中遇 到突发的大流量,产生丟包等现象,也不能在线重新设置反压水线值。这只 能作为一个产品缺陷重新进行维护性整改,其中将新的反压水线值写入产 品。同样地,该反压水线值也是不能随时修改。
此外,当已经研发完成的网络处理器的相关设备采用一种新的接口卡 时,由于不同接口卡的流量能力不同,网络处理器的反压水线值也需要重新 调整。
因此,上述技术方案存在以下缺陷
(1) 在现有技术中,网络侧设备的反压水线值由研发人员根据经验确 定,没有优化的方法,通常也得不到最佳的反压水线值,从而影响网络侧设 备的性能发挥,浪费网络资源;
(2) 在现有技术中,网络侧设备的反压水线值是固定的,不能根据当 前的流量状况或相关设备的状况而在线修改,使用起来具有很大的局限性, 此外也会影响网络侧设备的性能发挥,浪费网络资源。

发明内容
本发明实施例的一个目的是解决现有技术中如何更好地确定网络侧设 备的反压水线值的问题。本发明实施例的另一目的是解决现有技术中网络侧 设备的反压水线值不能适时调整的问题。
为解决上述技术问题,本发明实施例提供了 一种确定反压水线值的方 法,包括
第 一值读取步骤,读取网络侧设备在具有异常状态情况下的反压水线 值,并将该反压水线值设置为第一值;
第二值设置步骤,将所述第一值改变一常数后的数值设置为第二值,其 中所述网络侧设备在反压水线值为所述第二值的情况下没有所述异常状态; 以及
确定步骤,在所述第一值、所述第二值或所述第一值和第二值之间确定 所述网络侧设备的反压水线值。
本发明实施例还提供了 一种实施本发明上述方法的反压水线值确定装置,包括
第 一值读取模块,读取网络侧设备在具有异常状态情况下的反压水线
值,并将该反压水线值设置为第一值;
第二值设置模块,将所述第一值改变一常数后的数值设置为第二值,其中所述网络侧设备在反压水线值为所述第二值的情况下没有所述异常状态;以及
确定模块,在所述第一值、所述第二值或所述第一值和第二值之间确定所述网络侧设备的反压水线值。
本发明实施例还提供了一种网络侧设备,所述网络侧设备包括本发明上述的反压水线值确定装置,以适时调整所述网络侧设备的反压水线值。
基于上述技术方案,本发明实施例提供的确定反压水线值的方法和装置能够得到网络侧设备的最佳反压水线值,从而可以充分发挥网络侧设备的性能,节约网络资源。另一方面,本发明实施例提供的网络侧设备可以根据当前的流量状况或相关设备的状况而在线修改反压水线值,以适时调整所述网络侧设备的反压水线值,从而可以增加网络侧设备的使用适应性,充分发挥网络侧设备的性能,节约网络资源。


下面将参考附图对本发明实施例进行详细描述,其中
图1是根据本发明实施例确定反压水线值的方法的流程图;图2是根据本发明实施例确定反压水线值的另一方法的流程图;图3是根据本发明实施例确定反压水线值的再一方法的流程图;图4是根据本发明实施例确定反压水线值的示意图;图5是根据本发明实施例的反压水线值确定装置的示意图;和图6是根据本发明实施例的网络侧设备的示意图。
具体实施例方式
为了便于本领域普通技术人员理解和实现本发明,现结合附图和具体实施例来阐述本发明。
本发明实施例提供了一种确定反压水线值的方法,如图l所示,该方法包括以下步骤第一值读取步骤S100,读取网络侧设备在具有异常状态情况下的反压水线值,并将该反压水线值设置为第一值;
第二值设置步骤S200,将第一值改变一常数后的数值设置为第二值,其中网络侧设备在反压水线值为所述第二值的情况下没有异常状态;以及
确定步骤S300,在第一值、第二值或述第一值和第二值之间确定网络侧设备的反压水线值。
其中,网络侧设备包括但不限于网络处理器(NetworkProcessor,简称为"NP")、可变寄存器、无线网络控制器(Radio Network Controller,筒称为"RNC,,)、基站(NodeB);第一值为网络侧设备当前的反压水线值或初始设置的任意合适的默认反压水线值,例如,在新设备的研发阶段,研发人员根据经验给定网络侧设备的反压水线值并设置为默认值,则第一值即为初始设置的默认反压水线值;在网络侧设备的使用中,如果需要调整反压水线值,则该第 一值即为网络侧设备当前的反压水线值;异常状态包括但不限于网络侧设备出现溢出现象的溢出状态或网络侧设备出现丢包现象的丢包状态,例如,在网络侧设备的反压水线值太高的情况下,如果出现溢出现象,则该网络侧设备处于溢出状态;在网络侧设备的反压水线值太低的情况下,如果出现丢包现象,则该网络侧设备处于丢包状态。
网络侧设备在理想反压水线值的情况下,没有异常状态的出现,即没有溢出现象或没有丢包现象,在最理想的情况下,即没有溢出现象也没有丢包现象。为了确定理想的反压水线值,可以读取网络侧设备具有异常状态情况下的反压水线值并设之为第 一值,并将该第 一值改变一常数后的数值设置为第二值,其中网络侧设备在反压水线值为所述第二值的情况下没有该异常状态,从而可以确定比较理想的反压水线值在第 一值和第二值之间或为第 一值或为第二值。因此,根据本发明实施例的方法,能够得到网络侧设备的最佳反压水线值,从而可以充分发挥网络侧设备的性能,节约网络资源。
在本发明的优选实施例中,如图2所示,可以通过下列步骤设置第二值,即第二值设置步骤还可包括
初置步骤S210,将第一值改变第一常数后的数值设置为第二值;
第二值状态判断步骤S220,判断网络侧设备在反压水线值为该第二值的情况下是否具有异常状态;以及
第一重置步骤S230,如果网络侧设备在反压水线值为该第二值的情况下具有异常状态,则重置第一值和第二值使其数值分别改变第一常数,直至
网络侧设备在反压水线值为第二值的情况下没有异常状态;否则,不重置第
一值和第二值的数值。
在该实施例和本发明的所有其它实施例中,当异常状态是溢出状态时,
反压水线值是高水线值,且改变第一常数是减小第一常数;当异常状态是丢包状态时,反压水线值是低水线值,且改变第一常数是增加第一常数。网络侧设备的溢出状态可以通过然后读取网络侧设备的错误状态信息,检查是否有overflow错误出现。
例如,在当前反压水线值情况下,如果出现溢出现象即反压水线值太高,特别是高水线值太高,则读取当前的高水线值并设置为第一值,并将该第一值减小第一常数(例如N)后的数值设置为第二值,判断网络侧设备在高水线值为该第二值的情况下是否具有溢出状态,如果还具有溢出状态,则将第一值和第二值分别减小该第一常数,再进行判断,直到找到网络侧设备没有溢出状态的高水线值,此时理想的高水线值在第 一值和第二值之间或为第一值或为第二值。
又例如,在当前反压水线值情况下,如果出现丢包现象即反压水线值太低,特别是低水线值太低,则读取当前的低水线值并设置为第一值,并将该第一值增加第一常数(例如N)后的数值设置为第二值,判断网络侧设备在低水线值为该第二值的情况下是否具有丟包状态,如果还具有丢包状态,则将第一值和第二值分别增加该第一常^t,再进行判断,直到找到网络侧设备没有丢包状态的低水线值,此时理想的低水线值在第一值和第二值之间或为第一值或为第二值。
在本发明的另一优选实施例中,如图3所示,确定步骤还可包括第三值设置步骤S310,将第一值与第二值的和的平均值设置为第三值;第三值状态判断步骤S320,判断网络侧设备在反压水线值为该第三值的情况下是否具有异常状态;
第二重置步骤S330,如果网络侧设备在反压水线值为该第三值的情况下具有异常状态,则重置第一值为该第三值的数值;否则,重置第二值为该第三^f直的数值;以及
优化步骤S340,重复所述第三值设置步骤S310、第三值状态判断步骤S320和第二重置步骤S330,直至第一值和第二值之间的差值小于或等于第二常数。
其中,第二常数可以根据反压水线值所需的精度来确定。例如,如果希望反压水线值更接近于最理想值,那么可以使第二常数尽可能小,如设置第
二常数为N/32等,N为第一常数;如果希望尽快确定理想的反压水线值,则可以在满足所需精度的情况下使第二常数稍大一些,如设置第二常数为N/8等,N为第一常数。
在优化步骤S340之后,第一值和第二值之间的间隔很小,并且更接近最理想的反压水线值,此时,可以将第一值或第二值确定为理想的反压水线值,或者选取第一值和第二值之间的任一值作为理想的反压水线值。
优选地,确定步骤在优化步骤S340之后还可包括最优值确定步骤S350,直接将第二值确定为网络侧设备的反压水线值。第一值和第二值直接的间隔已经达到反压水线值的精度要求,并且网络侧设备在反压水线值为第二值的情况下没有异常状态,因此,第二值是非常理想的反压水线值,从而可以充分发挥网络侧设备的性能,节约网络资源。
下面以第一常数为N,第二常数为N/4,且网络侧设备具有溢出状态即高水线值太高的情况为例进行详细说明。则确定理想的高水线值的步骤如图4所示,其中E表示最理想状况下的高水线值。
假设当前网络侧设备具有溢出状态,则读取当前反压水线值中的高水线值A并设置为第一值,并将该第一值A减小第一常数N后的数值设置为第二值B,即B=A-N。假设网络侧设备在高水线值为第二值B的情况下没有溢出状态,则将第一值A与第二值B的和的平均值设置为第三值C,即C-(A+B ) /2。此时判断网络侧设备在高水线值为第三值C的情况下是否具有溢出状态,假设仍有溢出状态,则重置第一值为第三值的数值,即此时第一值为C。再进一步优化第一值C和第二值B,以得到更理想的反压水线值。此时将第一值C与第二值B的和的平均值设置为第三值D,即D= ( C+B )/2。判断网络侧设备在高水线值为第三值D的情况下是否具有溢出状态,假设没有溢出状态,则重置第二值为第三值的数值,即此时第二值为D。由于第一值C与第二值D之间的间隔为N/4,达到了反压水线值的精度要求,则此时可以将第 一值C或第二值D确定为理想的高水线值,或者选取第 一值C和第二值D之间的任一值作为理想的高水线值。最好是确定第二值D为最终的高水线值,因为网络侧设备在高水线值为第二值D的情况下没有溢出状态。
及采用此装置的网络侧设备。
图5示出了根据本发明实施例的反压水线值确定装置100的示意图。该反压水线值确定装置100包括第一值读取模块110、第二值设置模块120和确定模块130。其中第一值读取模块110用于读取网络侧设备在具有异常状态情况下的反压水线值,并将该反压水线值设置为第一值;第二值设置模块120用于将第一值改变一常数后的数值设置为第二值,其中网络侧设备在反压水线值为所述第二值的情况下没有异常状态;确定模块130用于在该第一值、第二值或第 一值和第二值之间确定网络侧设备的反压水线值。
类似地,本发明实施例的反压水线值确定装置IOO可以才艮据上述各实施例中的方法确定网络侧设备的最佳反压水线值,从而可以充分发挥网络侧设备的性能,节约网络资源。
图6示出了根据本发明实施例的网络侧设备200的示意图,该网络侧设备200包括根据本发明实施例的反压水线值确定装置100,以适时调整网络侧设备200的反压水线值。
由于本发明实施例提供的网络侧设备可以根据当前的流量状况或相关设备的状况而在线修改反压水线值,以适时调整网络侧设备的反压水线值,因此可以增加网络侧设备的使用适应性,充分发挥网络侧设备的性能,节约网络资源。
本发明方法不仅可以用于网络处理器的反压水线调整,同样可以用于研发使用过程中需要配置的可变寄存器值的设置上,前提条件是决定该设置值是否合适的条件是可以自动检测的,例如在本方法中,溢出状态是可以通过读取网络处理器芯片的状态寄存器来获得,是否丟包状态可以通过读取并比较入端口计数和出端口计数来获得。如果有以上几个条件同时满足,则可以参考本方法,实现自适应调整。
本领域普通4支术人员可以理解,实现本发明实施例的方法的全部或部分步骤可以通过程序指令相关的硬件来完成,所述的程序可以存储于可读取存储介质中,该程序在执行时执行上述通信方法中对应的步骤。所述的存储介质可以是ROM/RAM、磁碟、光盘等。
尽管本发明通过参考附图并结合优选实施例的方式进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域的普通技术人员可以对本发明的实施例进行各种等效的变形和改动,而这些变形与改动都在本发明的涵盖范围内。
权利要求
1、一种确定反压水线值的方法,其特征在于,包括第一值读取步骤,读取网络侧设备在具有异常状态情况下的反压水线值,并将该反压水线值设置为第一值;第二值设置步骤,将所述第一值改变一常数后的数值设置为第二值,其中所述网络侧设备在反压水线值为所述第二值的情况下没有所述异常状态;以及确定步骤,在所述第一值、所述第二值或所述第一值和第二值之间确定所述网络侧设备的反压水线值。
2、 根据权利要求1所述的方法,其特征在于,所述第二值设置步骤具 体包括初置步骤,将所述第 一值改变第 一常数后的数值^没置为第二值;第二值状态判断步骤,判断所述网络侧设备在反压水线值为所述第二值的情况下是否具有所述异常状态;以及第一重置步骤,如果所述网络侧设备在反压水线值为所述第二值的情况下具有所述异常状态,则重置所述第一值和第二值使其数值分别改变所述第一常数,直至所述网络侧设备在反压水线值为所述第二值的情况下没有所述异常状态;否则,不重置所述第一值和第二值的数值。
3、 根据权利要求1所述的方法,其特征在于,所述确定步骤还包括 第三值设置步骤,将所述第 一值与第二值的和的平均值设置为第三值; 第三值状态判断步骤,判断所述网络侧设备在反压水线值为所述第三值的情况下是否具有所述异常状态;第二重置步骤,如果所述网络侧设备在反压水线值为所述第三值的情况 下具有所述异常状态,则重置所述第一值为所述第三值的数值;否则,重置 所述第二值为所述第三值的数值;以及优化步骤,重复所述第三值设置步骤、第三值状态判断步骤和第二重置 步骤,直至所述第一值和第二值之间的差值小于或等于第二常数。
4、 根据权利要求3所述的方法,其特征在于,所述确定步骤在所述优 化步骤之后还包括最优值确定步骤,将所述第二值确定为所述网络侧设备的 反压水线值。
5、 根据权利要求1所述的方法,其特征在于,所述第一值为所述网络侧设备当前的反压水线值或初始设置的任意合适的默认反压水线值。
6、 根据权利要求1至5中任一权利要求所述的方法,其特征在于,所 述异常状态是所述网络侧设备出现溢出现象的溢出状态或所述网络侧设备 出现丢包现象的丢包状态。
7、 根据权利要求6所述的方法,其特征在于,当所述异常状态是所述 溢出状态时,所述反压水线值是高水线值,且所述改变第一常数是减小第一 常数。
8、 根据权利要求6所述的方法,其特征在于,当所述异常状态是所述 丢包状态时,所述反压水线值是低水线值,且所述改变第一常数是增加第一 常数。
9、 一种实施权利要求1至8中任一权利要求所述方法的反压水线值确 定装置,其特征在于,包括第一值读取模块,读取网络侧设备在具有异常状态情况下的反压水线 值,并将该反压水线值设置为第一值;第二值设置模块,将所述第一值改变一常数后的数值设置为第二值,其 中所述网络侧设备在反压水线值为所述第二值的情况下没有所述异常状态; 以及确定模块,在所述第一值、所述第二值或所述第一值和第二值之间确定 所述网络侧设备的反压水线值。
10、 一种网络侧设备,其特征在于,所述网络侧设备包括如权利要求9 所述的反压水线值确定装置,以适时调整所述网络侧设备的反压水线值。
全文摘要
本发明公开了确定反压水线值的方法和装置以及采用该装置的网络侧设备。根据本发明的方法包括第一值读取步骤,读取网络侧设备在具有异常状态情况下的反压水线值,并将该反压水线值设置为第一值;第二值设置步骤,将所述第一值改变一常数后的数值设置为第二值,其中所述网络侧设备在反压水线值为所述第二值的情况下没有所述异常状态;以及确定步骤,在所述第一值、所述第二值或所述第一值和第二值之间确定所述网络侧设备的反压水线值。采用本发明的方法、装置和设备,能够得到网络侧设备的最佳反压水线值,从而可以充分发挥网络侧设备的性能,节约网络资源。
文档编号H04L12/56GK101521629SQ20091013100
公开日2009年9月2日 申请日期2009年4月17日 优先权日2009年4月17日
发明者李瑞春 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1