CN100512206C - 分组转发设备的缓存资源管理方法 - Google Patents

分组转发设备的缓存资源管理方法 Download PDF

Info

Publication number
CN100512206C
CN100512206C CNB2004100904464A CN200410090446A CN100512206C CN 100512206 C CN100512206 C CN 100512206C CN B2004100904464 A CNB2004100904464 A CN B2004100904464A CN 200410090446 A CN200410090446 A CN 200410090446A CN 100512206 C CN100512206 C CN 100512206C
Authority
CN
China
Prior art keywords
port
cache resources
buffer memory
resource
grouping
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2004100904464A
Other languages
English (en)
Other versions
CN1780252A (zh
Inventor
蓝建栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2004100904464A priority Critical patent/CN100512206C/zh
Publication of CN1780252A publication Critical patent/CN1780252A/zh
Application granted granted Critical
Publication of CN100512206C publication Critical patent/CN100512206C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种分组转发设备的缓存资源管理方法,包括步骤:A、当接收到分组报文时,端口向系统申请所需资源池中的缓存资源;B、判断存放缓存的寄存器当前占用缓存数量是否大于设定的阈值,如否,系统为所述端口优先分配缓存资源,所述寄存器增加相应的缓存资源,端口转发所述分组报文后,释放缓存资源,结束;反之,所述端口与其余端口公平竞争资源池中的缓存资源;C、判断所述端口是否成功竞争到缓存资源,若成功,所述寄存器增加相应的缓存资源,然后端口转发所述分组报文后,释放缓存资源,结束本次分组转发;否则,放弃本次分组转发。本发明以解决在不降低分组报文转发效率的前提下,以简单高效的缓存资源管理来实现设备成本的相对降低。

Description

分组转发设备的缓存资源管理方法
技术领域
本发明涉及数据通信领域,特别是涉及数据通信技术中分组转发设备的缓存资源管理方法。
背景技术
以存储—转发方式工作的分组转发是现代数据通信中应用极其广泛的一种通信技术,概括地说就是将需要转发的信息切割成若干个分组,每个分组独立传送。常见的分组转发设备如:交换机、路由器等。本文中的设备不限于上述列举。所述分组转发设备主要用于暂时存放待转发的分组报文,该设备从接收端口接收到分组报文后即将所述报文存放到缓存中,等分析、处理结束后(即等待寻找出端口的操作完成后),再从缓存中提取所述分组报文并从发送端口发送出去。缓存对端口高速转发和分组的慢速分析处理进行速率适配。
随着分组转发技术的迅速发展,其应用领域在不断地扩大。然而它在带来巨大好处的同时,也带来了一些问题,比如分组转发设备需要较高的缓存资源管理才能充分体现分组转发的优越性,否则将会极大地降低分组转发的效用。
目前,分组转发设备的典型缓存资源管理方法主要有两种:
第一种方法主要是各个端口独占缓存资源的方式,其特点是将分组转发设备的缓存资源按设计好的权重分配给各个端口,每个端口转发的分组都只能使用分配给自己的那部分缓存。其流程图详见图1,所述方法的步骤包括:
步骤M10:将设计好的权重分配给各个端口;
步骤M11:当接收到分组报文时,端口向系统申请所需的缓存资源;
步骤M12:系统为所述端口分配本端口剩余的缓存资源;
步骤M13:判断所述端口是否成功得到缓存资源,若是,端口转发分组报文,然后释放缓存资源;否则,接收失败,放弃本次分组转发。
由上述方法可知,首先,先将分组转发设备的缓存资源按设计好的权重分配给各个端口,然后,各个端口对收到的分组报文进行转发时只能使用分配给自己的那部分缓存。由此可见,权重参数极依赖于设计者的经验,如果权重参数设计不当反而会加重缓存资源的紧缺状况,恶化分组转发设备的性能;此外,所有端口的缓存资源不能共享,资源的利用率极低,特别是对于业务负荷较重的端口的缓存资源的使用不足,而对于业务负荷较轻的端口却有大量缓资源存的闲置。
第二种方法是对第一种方法的改进,其流程图详见图2,主要是所有端口完全共享缓存资源,其特点就是将所有的缓存资源做成资源池,所有端口都通过竞争从资源池中获取缓存,直到资源池中的所有缓存都被利用完。所述方法的步骤包括:
步骤S11:当接收到分组报文时,端口向系统申请所需的缓存资源;
步骤S15:系统为所述端口分配资源池中的缓存资源,所述端口与其它端口公平竞争资源池中缓存资源;
步骤S16:判断端口是否成功竞争到缓存资源,若是,端口转发分组报文,然后释放缓存资源;否则,接收失败,放弃本次分组转发(步骤S18:)。
由上述方法可知,虽然该方法不依赖于权重参数的设计,但是该方法不能防止端口“恶意”抢占资源,比如,某些端口的业务如果长期负荷很重,就有可能耗尽资源池的所有缓存资源,致使其他端口无法得到缓存从而严重影响业务的转发。
综上所述,如果考虑设备的成本,缓存永远是“稀缺资源”,只有良好设计缓存资源管理技术,才能在节省成本的同时,仍能提供足够的缓存资源供设备使用。而上述现有技术将所有的缓存资源做成资源池,所有的端口都通过竞争从资源池中获得缓存资源,直到所有的缓存资源被用完。故上述现有技术的缺点是:(1)不能防止端口“恶意”的抢占资源;(2)缓存资源利用率低;(3)设备成本费用高。因此,在数据通信领域中,能否对分组转发设备的缓存资源有效的设计和管理是很关键的问题。
发明内容
本发明解决的问题是:提供一种分组转发设备的缓存资源管理方法,在不降低分组报文转发效率的前提下,有效的防止了端口“恶意”的抢占缓存资源,提高缓存资源利用率,并以简单高效的缓存资源管理来实现设备成本的相对降低。
为解决上述问题,本发明提供一种分组转发设备的缓存资源管理方法,包括:
当接收到分组报文时,端口向系统申请所需资源池中的缓存资源;
判断存放所述端口缓存数量的寄存器当前占用缓存数量是否大于设定的阈值,如否,系统为所述端口优先分配缓存资源,所述寄存器增加相应的缓存资源的数量,端口转发所述分组报文后,释放缓存资源,所述寄存器减少相应的缓存资源的数量,结束;反之,所述端口与其余端口公平竞争资源池中的缓存资源;
判断所述端口是否成功竞争到共享的缓存资源,若成功,所述寄存器增加相应的缓存资源的数量,然后端口转发所述分组报文后,释放缓存资源,所述寄存器减少相应的缓存资源的数量,结束本次分组转发;否则,放弃本次分组转发。
根据权利要求1所述的分组转发设备的缓存资源管理方法,其特征在于,所述资源池包括共享资源池和专用资源池。
其中,在所述端口与其余端口公平竞争资源池中的缓存资源之前还包括步骤:判断共享资源池中的缓存资源是否有剩余,若有,所述端口与其余端口公平竞争资源池中共享的缓存资源,否则,放弃本次分组转发。
其中,在系统为所述端口优先分配缓存资源之前还包括步骤:当资源池中共享的缓存资源没有剩余时,系统将资源池中专用的缓存资源优先分配给所述端口,所述寄存器增加相应的缓存资源,端口对分组报文进行转发;然后释放缓存资源。
其中,所述释放缓存资源包括:先判断专用缓存资源池的数量是否小于设定值,若是,将释放的缓存资源归并到专用资源池中,所述寄存器减少相应的缓存数量,结束;否则,将释放的缓存资源归并到共享资源池中,所述寄存器减少相应的缓存数量。
其中,所述端口的寄存器设置为两个,分别用于存放端口当前占用的缓存数量和平滑系数;所述平滑系数与收到报文的长度之积为当前报文所需的缓存数量;所述端口当前占用的缓存数量为端口已占用的缓存数量与当前报文所需的缓存数量之和。
其中,所述端口的阈值之和小于分组转发设备上所有缓存资源的总量。
与现有技术相比,本发明具有以下有益效果:由于本发明在现有技术的基础上增加了“优先分配缓存”的机制,即当某些端口没有业务时,不需要占用任何缓存资源;如果这些端口接收到分组报文,则系统为该端口优先分配缓存资源,而已拥塞且占用了大量缓存资源的端口被迫退让出缓存资源,保证合法用户的业务在任何情况下都不会受业务拥塞端口的影响。当然这种优先获取缓存的权利并不是无限制的,当需要获得缓存资源的端口达到预定的阈值时,就失去优先分配的权利。此外,优先分配不仅要体现在对剩余缓存资源的分配,即使设备上所有的缓存资源都已耗尽,具有优先权的端口也能够从系统中保留的一小块缓存资源中获得缓存。因此极大的提高了缓存资源的利用率,减少对开发人员经验的依赖,防止“恶意”抢占缓存资源,同时降低了设备的成本,提高了设备的效率和功能。
附图说明
图1是现有技术缓存资源管理方法(一)的流程图;
图2是现有技术缓存资源管理方法(二)的流程图;
图3是本发明分组转发设备的缓存资源管理方法的流程图;
图4是本发明实施例的报文接收处理的流程图;
图5是本发明实施例的报文发送处理的流程图。
具体实施方式
本发明在数据通信中,主要是以分组转发技术将需要转发的报文切割成若干个分组,每个分组独立传输。在传输过程中,有效地利用了分组转发设备的缓存资源的管理,也就是对分组转发设备中所有的缓存资源进行调整分配,限制各端口对缓存的使用,降低传输过程中分组报文的丢失、延迟等,以到达最好的传输效果。从而实现了分组转发设备的端口在超负荷的条件下很好的实现交换功能。常见的分组转发设备如:交换机、路由器等。本发明中的设备不限于上述列举。在分组转发时,一般包括两个方面同时进行:一方面是迅速的把整个分组报文从端口处涌入到缓存中(否则后面的报文就会把前面的报文“冲走”);另一方面对报文头部的路由信息作处理(包括寻找出端口、QoS等等)。在本发明中,所述分组转发设备主要用于暂时存放待转发的分组报文,该设备从接收端口接收到分组报文后即将所述报文存放到缓存中,等分析、处理结束后,再从缓存中提取并从发送端口发送出去。缓存对端口高速转发和分组的慢速分析处理进行速率适配。
另外,出于对成本和实现难度的考虑,缓存数量不可能无限满足各个端口的需求,因此就必须有一套管理机制,通过适当的策略控制各个端口对缓存的使用权。
缓存资源的管理一般指如下所述:首先,系统将缓存资源分割成一个个小块,每个小块都是一个基本的分配单元,这一步在系统上电启动或复位时完成;当端口接收到分组报文时就向系统申请所需的缓存资源块并用于存储报文(如果申请不到,将直接导致报文接收失败),系统根据一定的策略决定是否将缓存资源分配给该端口;如果所述端口获得缓存资源,转发分组报文后,端口必须把它所占用的缓存块交还系统,由系统进行再分配。
可以看到其实管理的核心就是缓存的分配、回收、再分配的过程,系统所采用的缓存分配策略往往就决定了缓存使用的的效率和合理性:越多的缓存块被不断地分配-回收-再分配而不是闲置,缓存的使用效率就越高;重要的端口得到更多缓存块,或者每个端口都能得到约定数量的缓存块,就意味着缓存管理的合理性越好。
下面结合附图对本发明的缓存资源管理的方法作进一步的描述。
请参阅图3,是本发明分组转发设备的缓存资源管理方法的流程图,具体步骤包括:
初始状态:当端口处于休眠状态时,不占用缓存资源;
步骤S11:当端口接收到分组报文时,向系统申请所需缓存资源;
步骤S12:判断所述端口对应的寄存器(存储当前占用缓存资源的数量)的值是否大于设定的阈值,如否,执行步骤S13,否则,执行步骤S15;
步骤S13:系统为所述端口优先分配缓存资源,所述端口对应的寄存器就增加相应的缓存数量;
步骤S14:端口转发所述分组报文后,释放缓存资源,所述端口对应的寄存器减少相应的缓存数量,结束;
步骤S15:所述端口与其余端口公平竞争资源池中的缓存资源;
步骤S16:判断所述端口是否成功竞争到的缓存资源,若成功,端口进行分组转发,转发完成后释放缓存资源,而所述端口对应的寄存器增加相应得缓存数量,(步骤S17);否则,放弃本次分组转发(步骤S18)。
在本发明的实现过程中,如果端口没有收到分组报文,就处于“休眠”状态,不需要占用缓存资源,一旦端口接收到分组报文,就向系统申请资源池中的缓存资源,系统判断所述端口当前占用的缓存资源是否已经超过了预先设定的优先分配阈值,如果没有超过,系统为所述端口分配所需的缓存资源,即端口就“苏醒”并利用优先分配权抢占缓存资源,所述端口对应的寄存器就增加相应的缓存数量,端口对接收到的分组报文进行转发,随后释放缓存资源,所述端口对应的寄存器减少相应的缓存数量,结束;如果超过了,就失去了优先分配缓存资源的权利,将和其它端口公平竞争剩余的共享缓存资源。然后在判断公平竞争的端口能否成功得到剩余的缓存资源,如果成功得到剩余的缓存资源,所述端口对应的寄存器就增加相应的缓存数量,对接收到的分组报文进行转发,并释放缓存资源,所述端口对应的寄存器减少相应的缓存数量;如果没有得到剩余的缓存资源,端口接收失败,放弃本次分组报文转发。
其中,本发明是在现有技术(图2)的基础上增加了“优先抢占缓存”的管理机制。即当某些端口没有业务时它不占用任何缓存资源(所有缓存都留给有分组需要转发的端口使用);一旦这些端口接收到分组,则该端口优先抢占缓存资源,而已拥塞且占用了大量缓存资源的端口被迫退让出缓存资源。这样就能保证合法用户的业务在任何情况下都不会受业务拥塞的端口影响。但是,本发明中这种优先获取缓存的权利并不是无限制的,当有业务需要转发的端口得到优先抢占缓存权利,并且随着时间推移它占用的缓存资源也达到了预定的阈值时,它就会失去优先抢占权利,转而与其他拥塞的端口公平竞争剩余的缓存资源。
由本发明的图3和现有技术的图2相比较可知,图3是在图2基本框架的基础上增加了步骤S12和步骤S13,即判断所述端口对应的寄存器当前占用缓存资源的数量是否大于设定的阈值,如否,系统为所述端口优先分配缓存资源,所述端口对应的寄存器就增加相应的缓存数量,并且对分组报文进行转发,并释放缓存资源,等待接收分组报文。所述步骤S12和步骤S13,它们的作用是防止业务繁忙的端口占用了过多的缓存资源以致影响其他端口的业务,使得所有端口在有业务时都能保证得到缓存。通过判断接收分组报文的端口当前占用的缓存资源的数量是否已经大于设定的阈值,来决定所述端口是否具有优先权优先抢占缓存资源,也就是能在公平竞争缓存资源之前,使只占用极少甚至根本没有占用缓存资源的端口在需要缓存时得到优先权。整个缓存资源管理方法概括地说就是:没有接收到分组报文需要转发的端口不占用任何缓存资源,而有业务的端口可以占用所有的缓存资源;有分组需要转发且其占用的缓存资源少于预定阈值的端口能优先抢占获取缓存,当它获取的缓存数量已经超过优先抢占的阈值时改为公平竞争。
所述步骤S12中的优先抢占阈值是个比较重要的预设常量,它可以根据用户需求为每个端口分配优先抢占阈值,但在实际应用中它并不限制端口实际占用的缓存数量,因此只需要大概估算就可以了。唯一要遵循的原则就是所有端口的阈值之和不得超过分组转发设备上缓存资源的总量。
在步骤S13中,所述端口从资源池中优先抢占缓存资源,对分组报文进行转发,并释放缓存资源,等待接收分组报文。它的作用和步骤S12是基本相同,都是为了防止某些有分组需要转发的端口占用过多的缓存资源。如果没有步骤S13对步骤S12的限制,有业务需要转发的端口将会一直使用优先抢占权不断地从系统中获得缓存资源直至缓存资源耗尽,这种行为显然是不可容忍的。因此步骤S13就是使具有优先抢占权的端口优先抢占行为限制在阈值范围之内,从而避免了上述不良现象。
还请参阅图4,是本发明实施例的报文接收处理的流程图,图4是在图3的基础上作进一步的完善,主要步骤为:
初始状态:当端口处于休眠状态时,不占用缓存资源;
步骤S11:当端口接收到分组报文时,向系统申请所需的缓存资源;
步骤S12:判断所述端口对应的寄存器当前占用缓存资源的数量是否大于设定的阈值,执行步骤S13,否则,执行步骤S15;
步骤S21:判断共享缓存资源是否还有剩余,如果有,执行步骤S13;否则,执行步骤S22;
步骤S22:所述端口使用资源池中的专用缓存资源进行分组转发报文,寄存器增加相应的缓存数量值;
步骤S13:系统为所述端口优先分配缓存资源,所述端口对应的寄存器就增加相应的缓存数量;
步骤S23:判断共享缓存资源是否还有剩余,如果有,执行步骤S15,否则,端口放弃本次分组报文转发(步骤S18);
步骤S15:所述端口与其它端口公平竞争资源池中共享的缓存资源;
步骤S16:判断所述端口是否成功竞争到缓存资源,若成功,所述端口对应的寄存器增加相应的缓存数量值,并对分组报文进行转发后,释放缓存资源;否则,放弃本次分组报文转发(步骤18)。
以上是本发明实施例中报文的接收处理过程的主要步骤,其中,所述的资源池包括专用资源池和共享资源池,当具有抢占优先权的端口抢占缓存资源时,如果共享资源池中的共享缓存资源耗尽时,则所述端口就使用专用资源池中保留的专用缓存资源暂时存放分组报文,等待分析、处理结束后,再从缓存中提取分组报文并从发送端口发送出去。这就体现了本发明的优先抢占不仅要体现对剩余缓存资源的抢占,即使设备上所有的缓存都已经耗尽,具有优先抢占权的端口也能根据需要优先得到缓存资源,也即是要迫使那些已占用大量资源的端口让出缓存资源。
相应的,所述报文的发送处理过程,还请参照图5,其主要步骤为:
步骤S31:当分组报文转发成功,就释放缓存资源;
步骤S32:判断专用缓存资源的实际数量是否小于设定值,如果是,执行步骤S33,否则,执行步骤S34;
步骤S33:将释放的缓存资源归并到专用资源池中,缓存占用寄存器的值减少;
步骤S34:将释放的缓存资源的归并到剩余的资源池中,缓存占用寄存器的值减少。
由以上所述,本发明的优选实施方式(图4和图5)是对图3技术方案的进一步改进,其改进之处为:首先在资源池中保留一小块缓存资源专用于具有优先抢占权的端口使用,为表述方便,现把分组转发设备上所有的缓存资源总量设为X,保留的那一小块缓存资源设为专用缓存资源Y,其余用于正常共享的缓存资源设为Z。当具有优先抢占权的端口需要抢占缓存资源时,如果剩余的缓存资源耗尽时,具有优先抢占权的端口仍能从专用缓存资源Y获取资源,并且计入所有端口耗费的缓存总量中,这就使得所有端口耗费的缓存总量大于Z。相应地,专用缓存资源Y的实际数量就少于设定值了,为了维持专用缓存资源Y的数量,如果分组报文转发成功,被释放的缓存资源会被系统保留作为Y缓存资源,这就使没有优先抢占权的端口在释放出缓存的同时却不能获得缓存(即它释放的缓存被保留为Y缓存了,而它因占用的缓存数量已经超过了阈值,无权获取Y缓存),客观上表现为被迫退让出缓存资源给拥有优先抢占权的端口。
其中,专用资源池中缓存资源数量的大小是比较重要的参数,它不应过大,只要保证在实际应用中不会枯竭即可,往往只占分组转发设备上所有缓存资源总量的相当小的一部分。
另外,在一些存储转发设备中,缓存的申请不是通过端口来实施,而是使用“流”。本发明也能应用于这样的设备中。下面就此类设备作一些说明:该设备在业务转发的过程中,首先需要进行“流分类”,即按照一个标准对业务划分、归类。例如按照端口划分,那么每个端口接收到的报文都归入到一个类中;又例如按照VLAN进行划分,那么所有端口接收到的、带有相同VLAN标签的报文都被划分到同一个类中。进行流分类的目的是为了对各个类型的数据作差别处理,比如带宽限制、缓存管理策略等。在越来越多的国际标准中,流分类后的每一种类型的报文都被称为一个“流”(Flow),因此在本发明中也可以用“流”来替代“端口”(按端口来划分流只是众多划分方式的一个特例而已)。报文是在流分类之后才会被接收到缓存中的,而此时报文已经被归类,那么自然而然地每个流都可以有各不相同的缓存管理策略。
所述端口占用的缓存数量是由每个端口的专门寄存器来计算的,随着缓存管理策略的不同,每个端口可能会拥有一组寄存器,也可能只有一个寄存器,寄存器的使用方式对本发明的最终效果会有较大的影响,下面以应用实例来说明本发明:
第一种应用实例:每个端口只有一个寄存器,存放当前占用的缓存数量。当一个端口有新的报文需要接收,就向系统申请所需的缓存资源,系统首先要判断占用缓存资源的寄存器的值是否已经超过预先设定的阈值(每个端口都可以配置不同的阈值),如果没有,系统为所述端口分配相应数量的缓存,该端口对应的寄存器会增加相应的数量;每发送出去一个报文,且将该报文占用的缓存块还给系统时,所述端口对应的寄存器就会减少相应的数量。
第二种应用实例:每个端口有两个寄存器,分别存放占用的缓存数量和平滑系数。这里的“占用的缓存数量”和实例1中的“当前占用的缓存数量”有所不同,是经过平滑的。过程如下所述:占用缓存数量的初始值为零,当接收一个分组报文时,分组报文的长度乘以平滑系数(介于0~1之间,每个端口都可配置各不相同的系数),所得的值加上占用缓存数量寄存器的值作为接收报文后新的寄存器值。报文发送时也作类似处理,只不过加操作变成了减操作。至于缓存的分配与实例1相同。由上所述可以看到在报文收发过程中占用的缓存数量寄存器的值与实际占用的缓存数量并不相同,而是一个比较平滑的曲线,这是因为分组转发设备的一个特点就是流量的高度突发性,如果设备内部处理时没有适当的平滑措施的话容易造成不合理的丢包,尤其是系统总缓存数量较小的场合。平滑系数在总缓存较大的场合可以设得大一些,总缓存较小的场合可以设得小一些。若平滑系数等于1,本方案就退化到与现有技术相同效果;若平滑系数设得过小,则不能体现对每个流设置不同缓存参数的区别,效果近似于完全共享缓存的方案了。一般来说平滑系数在0.5~0.8之间为宜,但并不绝对,以系统实际需要为准。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (7)

1、一种分组转发设备的缓存资源管理方法,其特征在于,包括步骤:
A、当接收到分组报文时,端口向系统申请所需资源池中的缓存资源;
B、判断存放所述端口缓存数量的寄存器当前占用缓存数量是否大于设定的阈值,如否,系统为所述端口优先分配缓存资源,所述寄存器增加相应的缓存资源的数量,端口转发所述分组报文后,释放缓存资源,所述寄存器减少相应的缓存资源的数量,结束;反之,所述端口与其余端口公平竞争资源池中的缓存资源;
C、判断所述端口是否成功竞争到缓存资源,若成功,所述寄存器增加相应的缓存资源的数量,然后端口转发所述分组报文后,释放缓存资源,所述寄存器减少相应的缓存资源的数量,结束本次分组转发;否则,放弃本次分组转发。
2、根据权利要求1所述的分组转发设备的缓存资源管理方法,其特征在于,所述资源池包括共享资源池和专用资源池。
3、根据权利要求2所述的分组转发设备的缓存资源管理方法,其特征在于,在步骤B中所述端口与其余端口公平竞争共享资源池中的缓存资源之前还包括步骤:判断共享资源池中的缓存资源是否有剩余,若有,所述端口与其余端口公平竞争资源池中共享的缓存资源,否则,放弃本次分组转发。
4、根据权利要求2所述的分组转发设备的缓存资源管理方法,其特征在于,在步骤B中系统为所述端口优先分配缓存资源之前还包括步骤:当共享缓存池中的资源没有剩余时,系统将专用缓存池资源优先分配给所述端口,所述寄存器增加相应的缓存资源,端口对分组报文进行转发;然后释放缓存资源。
5、根据权利要求4所述的分组转发设备的缓存资源管理方法,其特征在于,所述释放缓存资源包括步骤:
(51)判断专用缓存池资源的数量是否小于设定值,若是,执行步骤(52),否则,执行步骤(53);
(52)将释放的缓存资源归并到专用资源池中,所述寄存器减少相应的缓存数量,结束;
(53)将释放的缓存资源归并到共享资源池中,所述寄存器减少相应的缓存数量。
6、根据权利要求5所述的分组转发设备的缓存资源管理方法,其特征在于,所述端口的寄存器设置为两个,分别用于存放端口当前占用的缓存数量和平滑系数;所述平滑系数与收到报文的长度之积为当前报文所需的缓存数量;所述端口当前占用的缓存数量为端口已占用的缓存数量与当前报文所需的缓存数量之和。
7、根据权利要求1所述的分组转发设备的缓存资源管理方法,其特征在于,所述端口的阈值之和小于分组转发设备上所有缓存资源的总量。
CNB2004100904464A 2004-11-18 2004-11-18 分组转发设备的缓存资源管理方法 Expired - Fee Related CN100512206C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100904464A CN100512206C (zh) 2004-11-18 2004-11-18 分组转发设备的缓存资源管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100904464A CN100512206C (zh) 2004-11-18 2004-11-18 分组转发设备的缓存资源管理方法

Publications (2)

Publication Number Publication Date
CN1780252A CN1780252A (zh) 2006-05-31
CN100512206C true CN100512206C (zh) 2009-07-08

Family

ID=36770372

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100904464A Expired - Fee Related CN100512206C (zh) 2004-11-18 2004-11-18 分组转发设备的缓存资源管理方法

Country Status (1)

Country Link
CN (1) CN100512206C (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070294498A1 (en) * 2006-06-14 2007-12-20 International Business Machines Corporation Storage Allocation Management in Switches Utilizing a Flow Control
CN101471854A (zh) * 2007-12-29 2009-07-01 华为技术有限公司 一种转发报文的方法及装置
CN101483593B (zh) * 2009-02-13 2011-10-26 中兴通讯股份有限公司 一种交换设备中基于聚合链路分配缓存的方法及装置
CN105610729A (zh) * 2014-11-19 2016-05-25 中兴通讯股份有限公司 一种缓存分配方法、装置及网络处理器
CN106550018A (zh) * 2016-10-17 2017-03-29 盛科网络(苏州)有限公司 缓存资源管理方法、装置及网络交换芯片
CN113836048A (zh) * 2021-09-17 2021-12-24 许昌许继软件技术有限公司 一种基于fpga内存动态分配的数据交换方法及装置
CN114374651B (zh) * 2021-12-31 2023-01-20 海光信息技术股份有限公司 传输流量控制方法、片上网络、电子装置及存储介质

Also Published As

Publication number Publication date
CN1780252A (zh) 2006-05-31

Similar Documents

Publication Publication Date Title
US6934250B1 (en) Method and apparatus for an output packet organizer
US6882642B1 (en) Method and apparatus for input rate regulation associated with a packet processing pipeline
US6757249B1 (en) Method and apparatus for output rate regulation and control associated with a packet pipeline
Parekh et al. A generalized processor sharing approach to flow control in integrated services networks-the single node case
CN100466629C (zh) 一种网络设备和基于多核处理器的报文转发方法
US6914882B2 (en) Method and apparatus for improved queuing
US6088734A (en) Systems methods and computer program products for controlling earliest deadline first scheduling at ATM nodes
KR100407039B1 (ko) 서비스 품질 보증을 지원하기 위한 버퍼 관리 방법과데이터 교환시의 데이터 흐름 제어 방법
US20070263537A1 (en) Network having multiple QoS levels
US20040100967A1 (en) System and method for scheduling data traffic flows for a communication device
JP2003224599A (ja) リアルタイムトラヒックに対する保証された帯域幅配達を備える遅延最小化システム
CN105763478A (zh) 基于令牌桶算法的卫星数据地面传输网络流量控制系统
US7809007B2 (en) Low cost implementation for a device utilizing look ahead congestion management
CA2462793C (en) Distributed transmission of traffic streams in communication networks
CN100512206C (zh) 分组转发设备的缓存资源管理方法
Hahne et al. Competitve buffer management for shared-memory switches
Bian et al. Dynamic flow switching. A new communication service for ATM networks
CN101212417B (zh) 一种基于时间粒度的互联网服务质量保证方法
KR100908287B1 (ko) 동기 및 비동기 패킷 흐름들 간의 공유 자원의 스케줄링
Dorrigiv et al. On the advice complexity of buffer management
JP2002084322A (ja) 交換装置のマルチキャスト・トラフィック帯域幅割当て方法
CN109039934B (zh) 一种空间dtn网络拥塞控制方法及系统
Shreedhar et al. E cient fair queuing using de cit round robin
JP2005236669A (ja) 通信品質制御方法およびその通信品質制御装置
Gitman et al. Analysis and design of hybrid switching networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090708

Termination date: 20151118

EXPY Termination of patent right or utility model