一种端口拥塞管理方法、装置和设备与流程

文档序号:17481308发布日期:2019-04-20 06:28阅读:229来源:国知局
一种端口拥塞管理方法、装置和设备与流程

本发明涉及计算机通信技术,尤其涉及一种端口拥塞管理方法、装置、设备和计算机可读存储介质。



背景技术:

拥塞管理在交换接入(switchingaccess,以下简称sa)芯片中是一项非常重要的技术手段;sa芯片收到来自交换网的大量报文切片,按照一定的方式把这些报文缓存在不同的队列中,并以一定的调度规则将不同队列内的报文调度输出;当报文流量突发或者数据流整形时,即队列的输入速率大于队列的调度输出速率时,会造成队列深度累积,形成缓存拥塞。这时就需要一种拥塞管理策略,对输入的报文进行反压或者丢弃处理,以免造成系统的挂死。

现有技术中,可以采用反压方式或丢弃方式进行拥塞管理;在反压方式下,当队列深度达到门限值时,产生对前级输入的反压,使得前级停止向该队列继续发送报文切片,等待队列中已有的报文切片输出调度至队列深度低于反压撤销门限时,再继续控制前级向队列发送报文切片;在丢弃方式下,当队列深度达到丢弃门限时,对新进入的报文切片进行丢弃,直至队列深度小于丢弃门限则停止丢弃。这里,各个队列的丢弃门限即代表着该队列占用缓存资源的大小。

在传统的拥塞管理策略下,一般为每个队列设定一个固定的丢弃门限或反压撤销门限,有两种门限设定策略:

(1)每个队列的丢弃门限或反压撤销门限都设为最大缓存深度,即每个队列都可以占用全部缓存资源,这样可以确保每个队列都有最大的流量突发吸纳能力;但是当一个队列拥塞时,会影响其他队列的正常输入输出,甚至会导致其他队列数据流中断。

(2)每个队列的丢弃门限或反压撤销门限设置为一个固定值,且所有队列门限之和不超过端口的总缓存资源的大小,这样可以确保每个队列都有资源可用,不会被某一条或几条队列占用全部缓存资源;但是当一条队列拥塞而其他队列空闲时,该拥塞队列可能丢包,而端口的其他空余缓存资源不能得到有效利用。



技术实现要素:

为解决现有存在的技术问题,本发明实施例提供一种端口拥塞管理方法、装置、设备和计算机可读存储介质,能够提高端口的缓存资源的利用效率,并降低端口接收的报文的丢弃概率。

为达到上述目的,本发明实施例的技术方案是这样实现的:

本发明实施例提供了一种端口拥塞管理方法,所述方法包括:

检测端口的剩余缓存资源的大小,所述端口的剩余缓存资源用于表示端口的所有缓存资源中除去被占用缓存资源外的缓存资源;

当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限;

根据所述每个队列的变更后的拥塞丢弃门限,对所述每个队列中的报文进行处理。

本发明实施例还提供了一种端口拥塞管理装置,所述装置包括:检测模块、控制模块和处理模块;其中,

检测模块,用于检测端口的剩余缓存资源的大小,所述端口的剩余缓存资源用于表示端口的所有缓存资源中除去被占用缓存资源外的缓存资源;

控制模块,用于当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限;

处理模块,用于根据所述每个队列的变更后的拥塞丢弃门限,对所述每个队列中的报文进行处理。

本发明实施例还提供了一种端口拥塞管理设备,所述设备包括:存储器和处理器;其中,

所述存储器用于存储端口拥塞管理程序;

所述处理器用于执行所述存储器中存储的端口拥塞管理程序,以实现权利要求1至7任一项所述的方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任意一种端口拥塞管理方法的步骤。

本发明实施例提供的一种端口拥塞管理方法、装置、设备和计算机可读存储介质中,首先,检测端口的剩余缓存资源的大小,所述端口的剩余缓存资源用于表示端口的所有缓存资源中除去被占用缓存资源外的缓存资源;然后,当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限;最后,根据所述每个队列的变更后的拥塞丢弃门限,对所述每个队列中的报文进行处理;如此,通过动态门限进行队列拥塞管理,可以在端口的剩余缓存资源较多时,通过增大端口的每个队列的拥塞丢弃门限,实现降低端口接收的报文的丢弃概率;在端口的剩余缓存资源较少时,通过降低端口的每个队列的拥塞丢弃门限,降低对其他队列的报文处理过程造成的影响,进而提高端口的缓存资源的利用效率。

附图说明

图1为本发明实施例的拥塞管理的工作原理示意图;

图2为本发明实施例的端口拥塞管理方法的流程图;

图3为本发明实施例对队列的拥塞丢弃门限进行动态配置的流程图;

图4为本发明实施例基于动态门限进行报文处理的示意图;

图5为本发明实施例的端口拥塞管理装置的组成结构示意图;

图6为本发明实施例的端口拥塞管理设备的硬件结构示意图。

具体实施方式

以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例可以应用于接收报文的端口中,每个端口中可以采用至少一个队列来处理报文,并将处理后的报文输出;每个队列的队列深度用于表示对应队列当前占用的缓存资源的大小。

在一个可选的示例中,图1为本发明实施例的拥塞管理的工作原理示意图,如图1所示,端口中共有n个队列,这n个队列分别为队列1至队列n,n为大于1的自然数;为了进行拥塞管理,可以预先设置丢弃门限表和反压门限表,其中,丢弃门限表包括至少一个丢弃门限,反压门限表包括至少一个反压撤销门限;在实际实施时,可以在丢弃门限表中选择一个丢弃门限,在反压门限表中选择一个反压撤销门限;在实际工作时,可以将每个队列的队列深度与选择的丢弃门限或反压撤销门限进行比较,当任意一个队列的队列深度超过选择的丢弃门限或反压时,按照丢弃方式或反压方式进行报文处理;例如,可以在相应的报文上标记上丢弃标记或反压标记,之后,再按照丢弃标记或反压标记进行相应的报文处理。

在图1中,可以利用一个深度为n的随机存取存储器(ram,randomaccessmemory)统计每条队列的入队个数,同时可以利用一个深度为n的ram统计每条队列的出队个数,入队个数与出队个数相减即为该队列的深度。

基于上述记载的端口、队列等内容,提出以下各具体实施例。

第一实施例

本发明第一实施例记载了一种端口拥塞管理方法,图2为本发明实施例的端口拥塞管理方法的流程图,如图2所示,该方法包括:

步骤201:检测端口的剩余缓存资源的大小,所述端口的剩余缓存资源用于表示端口的所有缓存资源中除去被占用缓存资源外的缓存资源;

可以理解的是,端口中的所有缓存资源的大小可以是预先确定的,端口中被占用的缓存资源的大小可以由处理器等设备实时检测得出,从而,可以确定端口的剩余缓存资源的大小。

步骤202:当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限。

这里,每个队列的拥塞丢弃门限可以是按照丢弃方式进行报文丢弃处理时使用的丢弃门限,也可以是按照反压方式进行报文处理时使用的反压撤销门限。

可以看出,在本发明实施例中,端口的每个队列的拥塞丢弃门限并不是固定的,而是可以根据端口的剩余缓存资源的大小进行改变;也就是说,在进行队列拥塞管理时,不再为每个队列设定固定的拥塞丢弃门限,而是根据端口的剩余缓存资源的大小动态调整各个队列的丢弃门限;总体原则为:当端口的剩余缓存资源较大时,增大队列的拥塞丢弃门限,以降低该队列的报文丢弃概率;当端口的剩余缓存资源较小时,减小队列的拥塞丢弃门限,增加丢弃概率,从而减小该队列对其他队列的影响。

步骤203:根据所述每个队列的变更后的拥塞丢弃门限,对所述每个队列中的报文进行处理。

在实际实施时,当控制增大或降低所述端口的每个队列的拥塞丢弃门限时,可以得到每个队列的变更后的拥塞丢弃门限。

可选的,本步骤可以通过以下两种方式实现:

第一种方式:

当端口的第i个队列的变更后的拥塞丢弃门限大于端口的第i个队列的队列深度时,基于端口的第i个队列的变更后的拥塞丢弃门限,对端口的第i个队列中的报文进行处理;其中,i取1至n。

在实际实施时,在确定端口的第i个队列的变更后的拥塞丢弃门限时,由于端口的第i个队列的变更后的拥塞丢弃门限大于端口的第i个队列的队列深度,此时不需要对端口的第i个队列的报文进行丢弃或反压处理;当端口的第i个队列的队列深度可以发生变化,使端口的第i个队列的队列深度大于端口的第i个队列的变更后的拥塞丢弃门限时,按照端口的第i个队列的变更后的拥塞丢弃门限进行报文丢弃或反压处理。

当所述端口的第i个队列的变更后的拥塞丢弃门限小于或等于所述端口的第i个队列的队列深度,且所述端口的剩余缓存资源大于或等于设定阈值时,基于所述端口的第i个队列的变更前的拥塞丢弃门限,对所述端口的第i个队列中的报文进行处理;

也就是说,当端口的剩余缓存资源大于或等于设定阈值时,说明端口的剩余缓存资源较多,此时为了避免采用变更后的拥塞丢弃门限直接造成的报文丢弃或反压处理过程,采用队列的变更前的拥塞丢弃门限可以有效地降低报文的丢弃概率。

当所述端口的第i个队列的变更后的拥塞丢弃门限小于或等于所述端口的第i个队列的队列深度,且所述端口的剩余缓存资源小于设定阈值时,将端口的第i个队列的变更后的拥塞丢弃门限的值更新为端口的第i个队列当前的队列深度;基于所述端口的第i个队列的变更后的拥塞丢弃门限,对所述端口的第i个队列中的报文进行处理。

也就是说,当端口的剩余缓存资源大于或等于设定阈值时,说明端口的剩余缓存资源较少,此时,将端口的第i个队列的变更后的拥塞丢弃门限的值更新为端口的第i个队列当前的队列深度,可以保证端口的第i个队列中的报文不被丢弃;同时,端口的第i个队列的变更后的拥塞丢弃门限的值更新后,端口的第i个队列的变更后的拥塞丢弃门限的值没有增加,从而,可以有效地降低第i个队列对其他队列的报文处理过程造成的影响,也就是说,需要确保变更后的门限值不会小于当前的队列深度,即不会发生因为丢弃门限更改而直接造成报文丢弃。

此时,可以按照队列的变更后的拥塞丢弃门限进行报文的丢弃或反压处理,进而可以提高队列的报文丢弃概率,降低对其他队列的报文处理造成的影响。

第二种方式:

在所述端口的第i个队列的队列深度大于或等于所述第i个队列的变更后的拥塞丢弃门限时,对进入至所述第i个队列的报文进行丢弃处理,或者,对停止向所述第i个队列发送报文直至端口的第i个队列的队列深度小于或等于所述第i个队列的变更后的拥塞丢弃门限;其中,i取1至n,n表示所述端口的队列个数。

也就是说,端口的第i个队列的队列深度大于或等于所述第i个队列的变更后的拥塞丢弃门限时,如果拥塞丢弃门限为按照丢弃方式进行报文丢弃处理时使用的丢弃门限,则按照丢弃方式对进入至所述第i个队列的报文进行丢弃处理,直至端口的第i个队列的队列深度小于或等于所述第i个队列的变更后的拥塞丢弃门限;如果拥塞丢弃门限为按照反压方式进行报文处理时使用的反压撤销门限,则按照反压方式停止前级向所述第i个队列发送报文,直至端口的第i个队列的队列深度小于或等于所述第i个队列的变更后的拥塞丢弃门限。

可以看出,对于第二种方式,不需要考虑队列的拥塞丢弃门限与队列深度的大小关系,也不需要考虑端口的剩余缓存资源的大小,实现较为方便。

在实际实施时,步骤201至203均可以由端口中的处理器实现,设定阈值也可以利用端口中的处理器进行预先配置。

通过上述记载的内容可以看出,在本发明实施例中,可以根据实际情况对队列的拥塞丢弃门限进行动态配置;下面通过图3说明本发明实施例对队列的拥塞丢弃门限进行动态配置的流程图,如图3所示,该流程可以包括:

步骤301:在需要确定队列当前的拥塞丢弃门限时,在动态门限表中选取一个动态门限;

这里,可以针对每个队列,预先配置用于存储拥塞丢弃门限的动态门限表,从动态门限表中选取的动态门限为预先存储的动态门限。

可选的,可以根据每个队列的队列属性从动态门限表中选取一个拥塞丢弃门限作为动态门限;例如,队列属性包括以下至少一项:所述端口的接口类型、所述端口的第i个队列的队列优先级、所述端口的端口优先级。

步骤302:获取队列的队列深度;判断选取的动态门限是否大于队列深度,如果是,则执行步骤303;如果否,则执行步骤304。

步骤303:将动态门限作为实际拥塞丢弃门限;

此时,可以按照实际拥塞丢弃门限进行报文处理。

步骤304:判断端口的剩余缓存资源是否小于设定阈值,如果是,则执行步骤305;如果否,则执行步骤306。

步骤305:将队列的队列深度作为实际拥塞丢弃门限。

此时,可以按照实际拥塞丢弃门限进行报文处理。

步骤306:保持队列的拥塞丢弃门限不变。

也就是说,不考虑采用动态门限作为队列的实际拥塞丢弃门限,而是采用队列的拥塞丢弃门限的原始值。

此时,可以按照队列的原拥塞丢弃门限进行报文处理。

应用本发明实施例的端口拥塞管理方法,首先,检测端口的剩余缓存资源的大小,所述端口的剩余缓存资源用于表示端口的所有缓存资源中除去被占用缓存资源外的缓存资源;然后,当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限;最后,根据所述每个队列的变更后的拥塞丢弃门限,对所述每个队列中的报文进行处理;如此,通过动态门限进行队列拥塞管理,可以在端口的剩余缓存资源较多时,通过增大端口的每个队列的拥塞丢弃门限,实现降低端口接收的报文的丢弃概率;在端口的剩余缓存资源较少时,通过降低端口的每个队列的拥塞丢弃门限,降低对其他队列的报文处理过程造成的影响,进而提高端口的缓存资源的利用效率。

也就是说,通过动态门限进行队列拥塞管理,可以保证交换接入芯片技术指标的前提下,提高了缓存利用效率,并且降低了报文的丢弃概率,对交换接入芯片吸纳流量突发的能力有较大提升。

第二实施例

为了能够更加体现本发明的目的,在本发明第一实施例的基础上,进行进一步的举例说明。

示例性地,可以根据端口的剩余缓存资源从小到大的顺序,预先划分出第1数值区间至第m数值区间,每个数值区间用于表示所述端口的剩余缓存资源的大小的一个取值范围;m为大于1的自然数;

相应地,所述当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限,包括:

当所述端口的剩余缓存资源增大时,若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,控制增大所述端口的每个队列的拥塞丢弃门限;

所述当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限,包括:

当所述端口的剩余缓存资源减小时,若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,控制降低所述端口的每个队列的拥塞丢弃门限。

在一个可选的示例中,第1数值区间至第m数值区间分别对应第1拥塞等级至第m拥塞等级,这里,每个拥塞等级可以表征端口被占用的缓存资源的大小(端口的拥塞程度),可以看出,按照第1拥塞等级至第m拥塞等级的顺序,端口被占用的缓存资源越小;

当然,在另一实施例中,也可以根据端口的剩余缓存资源从大到小的顺序,预先划分出第1数值区间至第m数值区间。

可以看出,本发明实施例中,可以根据端口的缓存资源的使用情况,划分出不同的拥塞等级,每个拥塞等级可单独分配不同的丢弃门限;拥塞等级依据剩余缓存空间和拥塞等级门限确定,其中拥塞等级门限可配置更改。拥塞等级门限将缓存空间划分为多个数值区间,当端口的剩余缓存资源的大小处于某一区间时,则系统的拥塞状态处于对应的拥塞等级上,系统拥塞等级的变化会导致队列的拥塞丢弃门限相应地跟着动态变化。

可选的,可以针对每个数值区间,设置至少一个拥塞丢弃门限;其中,当a小于b时,第a数值区间对应的任意一个拥塞丢弃门限小于第b数值区间对应的任意一个拥塞丢弃门限,a和b均为小于或等于m的自然数;例如,可以为每个拥塞等级设置几十个丢弃门限。

相应地,所述若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,控制增大所述端口的每个队列的拥塞丢弃门限,包括:

若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,在端口的剩余缓存资源的大小当前所处在的数值区间对应的所有拥塞丢弃门限中,选择一个拥塞丢弃门限作为所述端口的第i个队列的拥塞丢弃门限,其中,i取1至n,n表示所述端口的队列个数;

所述若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,控制降低所述端口的每个队列的拥塞丢弃门限,包括:

若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,在端口的剩余缓存资源的大小当前所处在的数值区间对应的所有拥塞丢弃门限中,选择一个拥塞丢弃门限作为所述端口的第i个队列的拥塞丢弃门限。

可选的,可以根据所述端口的第i个队列的队列属性,在端口的剩余缓存资源的大小当前所处在的数值区间对应的所有拥塞丢弃门限中,选择一个拥塞丢弃门限作为所述端口的第i个队列的拥塞丢弃门限;其中,

所述端口的第i个队列的队列属性包括以下至少一项:所述端口的接口类型、所述端口的第i个队列的队列优先级、所述端口的端口优先级。

下面通过图4对本发明实施例的拥塞管理方法进行示例性说明

图4为本发明实施例基于动态门限进行报文处理的示意图,如图4所示,动态门限表中存储有每个拥塞等级的拥塞丢弃门限,假设有m个拥塞等级,每个拥塞等级根据队列优先级有l个拥塞丢弃门限,则该动态门限表共有m*l个拥塞丢弃门限;同时,可以设置一个队列实际丢弃门限表,深度为n。该表内存储的是队列在进行是否丢弃判断时采用的实际拥塞丢弃门限。

参照图4,在端口初始化完成后,各个队列深度都为0,端口的拥塞等级处于表示被占用缓存资源最少的拥塞等级,此时,此时每个队列的队列深度小于对应的拥塞等级的拥塞丢弃门限,并且端口的剩余缓存资源较多,按照上述记载的第一种方式,在动态门限表中选取一个动态门限作为实际拥塞丢弃门限,并写入相应的实际丢弃门限表中,之后,判断是否进行报文丢弃处理。

端口开始工作后,各个队列开始有报文切片进入,假设,此时缓存处于拥塞等级m上(端口的剩余缓存资源较多),第n个队列突发大流量(即短时间内接收到很多报文),第n个队列深度增大;由于端口的剩余缓存资源较多,分配给第n个队列的实际拥塞丢弃门限较大,第n个队列占用较大缓存空间不易丢包,n为小于或等于m的自然数。

若队列深度继续增大时,端口的拥塞等级开始提高,对应的拥塞丢弃门限减小;此时,比较队列深度与从动态丢弃门限表中选取的动态门限,若队列深度仍小于动态门限,将动态门限值写入到实际丢弃门限表中。

若队列深度继续增大,端口的拥塞等级继续提高,当队列深度大于此时的动态门限时,则将队列深度作为门限写入实际丢弃门限表中,此时该队列开始有报文切片丢弃,它所占用的缓存空间不会无限膨胀以至于影响其他队列。

上述描述可知,在某个队列突发大流量时,动态门限可以最大限度的吸纳突发,而某一条流持续拥塞时,该队列受到拥塞等级和动态门限的限制,不会挤占其他队列的缓存空间。

第三实施例

在本发明前述实施例的基础上,本发明第三实施例提出了一种端口拥塞管理装置。

图5为本发明实施例的端口拥塞管理装置的组成结构示意图,如图5所示,该装置可以包括:检测模块501、控制模块502和处理模块503;其中,

检测模块501,用于检测端口的剩余缓存资源的大小,所述端口的剩余缓存资源用于表示端口的所有缓存资源中除去被占用缓存资源外的缓存资源;

控制模块502,用于当所述端口的剩余缓存资源增大时,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,控制降低所述端口的每个队列的拥塞丢弃门限;

处理模块503,用于根据所述每个队列的变更后的拥塞丢弃门限,对所述每个队列中的报文进行处理。

可选的,所述装置还包括配置模块504;

所述配置模块504,用于根据所述端口的剩余缓存资源从小到大的顺序,预先划分出第1数值区间至第m数值区间,每个数值区间用于表示所述端口的剩余缓存资源的大小的一个取值范围;m为大于1的自然数;

相应地,所述控制模块502,具体用于当所述端口的剩余缓存资源增大时,若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,控制增大所述端口的每个队列的拥塞丢弃门限;当所述端口的剩余缓存资源减小时,若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,控制降低所述端口的每个队列的拥塞丢弃门限。

可选的,所述配置模块504,还用于针对每个数值区间,设置至少一个拥塞丢弃门限;其中,当a小于b时,第a数值区间对应的任意一个拥塞丢弃门限小于第b数值区间对应的任意一个拥塞丢弃门限,a和b均为小于或等于m的自然数;

所述控制模块502,具体用于若所述端口的剩余缓存资源的大小所处在的数值区间发生变化,在端口的剩余缓存资源的大小当前所处在的数值区间对应的所有拥塞丢弃门限中,选择一个拥塞丢弃门限作为所述端口的第i个队列的拥塞丢弃门限,其中,i取1至n,n表示所述端口的队列个数。

可选的,所述控制模块502,具体用于根据所述端口的第i个队列的队列属性,在端口的剩余缓存资源的大小当前所处在的数值区间对应的所有拥塞丢弃门限中,选择一个拥塞丢弃门限作为所述端口的第i个队列的拥塞丢弃门限。

可选的,所述端口的第i个队列的队列属性包括以下至少一项:所述端口的接口类型、所述端口的第i个队列的队列优先级、所述端口的端口优先级。

可选的,所述处理模块503,具体用于当所述端口的第i个队列的变更后的拥塞丢弃门限大于所述端口的第i个队列的队列深度时,基于所述端口的第i个队列的变更后的拥塞丢弃门限,对所述端口的第i个队列中的报文进行处理;其中,i取1至n,n表示所述端口的队列个数;

当所述端口的第i个队列的变更后的拥塞丢弃门限小于或等于所述端口的第i个队列的队列深度,且所述端口的剩余缓存资源大于或等于设定阈值时,基于所述端口的第i个队列的变更前的拥塞丢弃门限,对所述端口的第i个队列中的报文进行处理;

当所述端口的第i个队列的变更后的拥塞丢弃门限小于或等于所述端口的第i个队列的队列深度,且所述端口的剩余缓存资源小于设定阈值时,将端口的第i个队列的变更后的拥塞丢弃门限的值更新为端口的第i个队列当前的队列深度;基于所述端口的第i个队列的变更后的拥塞丢弃门限,对所述端口的第i个队列中的报文进行处理。

另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

具体来讲,本实施例中的一种端口拥塞管理方法对应的计算机程序指令可以被存储在光盘,硬盘,u盘等存储介质上,当存储介质中的与一种端口拥塞管理方法对应的计算机程序指令被一电子设备读取或被执行时,实现前述第一实施例和第二实施例的任意一种端口拥塞管理方法的步骤。

基于前述实施例相同的技术构思,参见图6,其示出了本发明实施例提供的一种端口拥塞管理设备60,可以包括:存储器601、处理器602和总线603;其中,

所述总线603用于连接所述存储器601、处理器602和这些器件之间的相互通信;

所述存储器601,用于存储端口拥塞管理程序和数据;

所述处理器602,用于执行所述存储器中存储的端口拥塞管理程序,以实现前述第一实施例和第二实施例的任意一种端口拥塞管理方法的步骤。

在实际应用中,上述存储器601可以是易失性存储器(volatilememory),例如随机存取存储器(ram,random-accessmemory);或者非易失性存储器(non-volatilememory),例如只读存储器(rom,read-onlymemory),快闪存储器(flashmemory),硬盘(hdd,harddiskdrive)或固态硬盘(ssd,solid-statedrive);或者上述种类的存储器的组合,并向处理器602提供指令和数据。

上述处理器602可以为特定用途集成电路(asic,applicationspecificintegratedcircuit)、数字信号处理器(dsp,digitalsignalprocessor)、数字信号处理装置(dspd,digitalsignalprocessingdevice)、可编程逻辑装置(pld,programmablelogicdevice)、现场可编程门阵列(fpga,fieldprogrammablegatearray)、中央处理器(cpu,centralprocessingunit)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述第一处理器功能的电子器件还可以为其它,本发明实施例不作具体限定。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

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