专利名称:流量管理的方法和管理装置的制作方法
技术领域:
本发明涉及通信领域,更具体地,涉及通信领域中流量管理的方法和管理装置。
背景技术:
随着互联网的兴起,各种业务开始在互联网协议(Internet Protocol, IP)网络上 承载,同时IP网络向传统的电信领域渗透,数据业务逐渐取代传统的语音业务,从而逐渐 成为通信业务的主体。为保证各种电信服务能够满足用户的业务要求,需要在网络设备上 进行流量管理(Traffic Management,TM),保证各种业务的流量能够受控。为了适应复杂业务的流量管理需求,通常在每个业务板上进行多级流量管理,但 管理的流量仅限于该业务板内的流量。业务板是指网络设备中的单板。每个单板可以进行 各种各样的业务处理,例如数据流的接入、转发、复用、路由、加标、流量控制、流量整形等。 多级流量管理使得流量能够在单板内部按级管理而通过该单板,满足该单板的输出总流量 等的限制需求。随着技术的发展,为了提高系统的处理能力和接口数量,在诸如交换机、路由器、 无线数据业务的网关设备之类的网络设备中,采用了分布式处理技术,也就是将业务处理 分布在多个单板(即业务板)上进行处理,以提高网络设备整体的处理能力。由于将流量 分布到了不同的单板,流量管理也相应地分布到了不同的单板,形成了分布式的流量管理。在现有技术中,只能在每个单板内部独立地进行流量管理。例如,为了控制单板的 入口流量,可以对从单板的入接口输入的数据流进行流量管理,丢弃过多的报文,防止对设 备造成冲击,影响设备性能,将入口流量进行流量管理之后,再进行业务板的业务处理。为 了控制业务板的出口流量,在进行业务板的业务处理之后进行流量管理,此时需要将业务 处理后的数据流再进行缓存,才能进行流量管理,因此将消耗大量的存储空间。然而,随着流量被分布到不同单板来处理的情况的出现,在每个单板内部独立地 进行流量管理已经不能满足流量管理的需要了。例如,当同一业务的流量从不同入接口输 入网络设备而进入不同的单板时,或者当同一业务的流量分布到从不同出接口输出的单板 上时,这些原本有关联、希望统一进行流量管理的数据流不再能进行统一流量管理了,而只 能由各单板单独进行管理,将会造成从网络设备输出的该业务的流量不满足诸如带宽、延 时需求之类的预定需求,影响流量管理的有效性。
发明内容
本发明实施例提供了流量管理的方法和管理装置,能够解决分布到多个单板的数 据流量不能统一管理的问题,使得能够有效管理分布到不同单板的数据流,满足流量管理 的需求。一方面,本发明实施例提供了一种流量管理的方法,包括接收至少两个单板发送 的请求令牌的通知,各单板请求的令牌数量与该单板中的待调度报文队列中需要传送的报 文数量相对应;根据请求的令牌数量,向待调度报文队列分配令牌,使得该单板根据所分配
3的令牌对待调度报文队列中的报文进行传送。另一方面,本发明实施例提供了一种用于流量管理的管理装置,包括接收模块, 用于接收至少两个单板发送的请求令牌的通知,各单板请求的令牌数量与该单板中的待调 度报文队列中需要传送的报文数量相对应;分配模块,用于根据请求的令牌数量,向待调度 报文队列分配令牌,使得该单板根据所分配的令牌对待调度报文队列中的报文进行传送。根据本发明实施例提供的技术方案,管理装置根据多个单板请求令牌的通知来分 配令牌,以通过令牌的分配控制单板的报文传送,使得原本独立进行流量管理的单板中的 流量能够得到统一、集中的调度,而不像现有技术,各单板中的流量分别、独立、隔离地进行 管理。因此,通过利用管理装置进行的集中流量管理,能够统一有效地管理分布在不同单板 上可能彼此有关联的数据流,从而满足流量管理的需求。
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域 技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示出了根据本发明实施例的流量管理的方法的流程图;图2示出了根据本发明实施例的流量管理的另一方法的流程图;图3示出了根据本发明实施例的流量管理的例子的示意图;图4示出了根据本发明实施例的利用流量管理的方法的单板的示意图;图5示出了根据本发明实施例的流量管理的另一例子的示意图;图6示出了根据本发明实施例的用于流量管理的管理装置的结构框图;图7示出了根据本发明实施例的用于流量管理的另一管理装置的结构框图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例的技术方案进行清楚、完整 地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明 中的所述实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施 例,都应属于本发明保护的范围。首先,结合图1描述根据本发明实施例的流量管理的方法100。如图1所示,方法100包括在SllO中,接收至少两个单板发送的请求令牌的通 知,各单板请求的令牌数量与该单板中的待调度报文队列中需要传送的报文数量相对应; 在S120中,根据请求的令牌数量,向待调度报文队列分配令牌,使得该单板根据所分配的 令牌对待调度报文队列中的报文进行传送。对至少两个单板进行集中流量管理的管理装置接收来自这些单板的通知。单板通 过通知来向管理装置请求令牌,请求的令牌数量可以与单板中的待调度报文队列中需要传 送的报文数量相对应。管理装置根据单板请求的令牌数量,向单板中的待调度报文队列分 配令牌。单板在接收到令牌之后,根据管理装置分配的令牌,对待调度报文队列中的报文进 行传送。根据本发明实施例提供的流量管理的方法,管理装置根据多个单板请求令牌的通知来分配令牌,以通过令牌的分配控制单板报文的传送,使得原本独立进行流量管理的单 板中的流量能够得到统一、集中的调度,而不像现有技术,各单板中的流量分别、独立、隔离 地进行管理。因此,通过利用集中流量管理,能够统一有效地管理分布在不同单板上可能彼 此有关联的数据流,从而满足流量管理的需求。下面,具体描述根据本发明实施例的SllO和S120。在SllO中,接收至少两个单板发送的请求令牌的通知,各单板请求的令牌数量与 该单板中的待调度报文队列中需要传送的报文数量相对应。管理装置管理至少两个单板,对至少两个单板中的流量进行集中的统一调度。在每个单板中,可以只有一个待调度报文队列,也可以存在多个待调度报文队列。 单板可以根据预定策略,例如基于报文类型、发送报文的用户、报文的目的地址、报文的输 出端口等,将需要传送的报文缓存在不同的待调度报文队列中。需要传送的报文可以是从 其它单板接收的报文,也可以是该单板自身产生的报文。例如,单板可以根据报文的类型对 报文进行缓存,将携带语音信息的报文存储在专用于语音信息的待调度报文队列中,将携 带视频信息的报文存储在专用于视频信息的待调度报文队列中等。单板可以通过在通知中携带某待调度报文队列中需要传送的报文数量、报文字节 数、报文数量增量或报文字节数增量,来表征请求的令牌数量。当然,本领域技术人员还可 以想到在通知中携带其他信息来表征请求的令牌数量。由于通过通知请求的令牌数量是基 于待调度报文队列中需要传送的报文确定的,因此,可以认为请求的令牌数量与需要传送 的报文数量是相对应的。例如,如果单板具有两个待调度报文队列,当第一待调度报文队列中需要传送三 个报文,第二待调度报文队列需要传送五个报文时,假设每个报文具有100个字节,则单板 在通知中携带第一待调度报文队列有300个字节需要传送、第二待调度报文队列有500个 字节需要传送的信息,来向管理装置请求总共800个令牌(假设1个令牌对应1个字节)。 请求的800个令牌数量与单板中的调度报文队列中需要传送的报文数量是相对应的。SllO中的单板可以是网络设备的业务板。本领域技术人员可以想到,SllO中的单 板也可以是未来可能出现的在网络设备中处理数据并进行数据传送的其他装置,对于其中 的流量需要进行统一的调度和管理。管理装置接收的来自单板的通知可以是单板独立发送的通知。该通知也可以是管 理装置自身根据单板传送的流量所携带的信息而确定的通知。管理装置自身确定的通知也 可以认为是管理装置从单板接收的通知,因为这仍需借助于来自单板的信息才可以确定。 例如,管理装置根据单板传送的流量判断在该单板中存在大量需要传送的视频报文,则根 据该单板允许发送的最大带宽向该单板分配令牌。在S120中,根据请求的令牌数量,向待调度报文队列分配令牌,使得单板根据所 分配的令牌对待调度报文队列中的报文进行传送。管理装置根据单板请求的令牌数量分配令牌。例如,仍然基于上述例子,管理装 置可以向单板的第一待调度报文队列分配300个令牌,向单板的第二待调度报文队列分配 500个令牌。单板根据管理装置所分配的令牌来传送待调度报文队列中的报文。例如,单板 获取管理装置分配给第一待调度报文队列的300个令牌后,传送第一待调度报文队列中的 那三个报文,而获取管理装置分配给第二待调度报文队列的500个令牌后,传送第二待调度报文队列中的那五个报文。管理装置可以基于多种预定策略来向单板中的待调度报文队列分配令牌。预定策 略可以提前设置在管理装置中,也可以根据对各单板中数据流量的统计情况来进行动态调 整。可以采用现有技术中已知的进行流量管理的策略,也可以采用未来可能出现的用于流 量管理的策略,只要能够对在不同待调度报文队列中何时发送报文、发送多少报文等进行 控制即可。根据本发明的一个实施例,管理装置可以基于优先级调度策略或负载均衡策略, 向待调度报文队列分配令牌。在优先级调度策略中,管理装置基于待调度报文队列的优先级来进行调度,使得 重要的报文即存储在优先级高的待调度报文队列中的报文,优先得到调度。例如,假设按照 报文类型缓存报文,存在存储语音报文的语音待调度报文队列、存储视频报文的视频待调 度报文队列以及存储诸如图片、邮件、文本等数据报文的数据待调度报文队列。设置语音待 调度报文队列、视频待调度报文队列和数据待调度报文队列的优先级依次递减。当通知中 指示语音待调度报文队列中有报文需要传送时,优先向语音待调度报文队列分配令牌,如 果还有剩余的令牌,再满足视频待调度报文队列中需要传送的报文,最后再满足数据待调 度报文队列中需要传送的报文。再例如,假设按照用户缓存报文,存在存储A用户发送报文的A待调度报文队列、 存储B用户发送报文的B待调度报文队列以及存储C用户发送报文的C待调度报文队列。 由于付费等原因,A用户的优先级高于B用户的优先级、B用户的优先级高于C用户的优先 级。则首先满足A用户的发送需求,当A待调度报文队列中出现需要传送的报文时,优先向 A待调度报文队列分配令牌,其次是B待调度报文队列,再其次是C待调度报文队列。在负载均衡策略中,管理装置向请求令牌的待调度报文队列均衡地分配令牌,使 得待调度报文队列可以得到均衡地调度,从而可以均衡调度各单板的流量,避免一个单板 中的流量始终处于等待状态而得不到传送的现象的出现。例如,假设有多个单板有报文需要传送,如果管理装置在某一令牌分配时刻确定 这些单板中有报文需要传送,则可以将自己的令牌平均分配给这些单板,使得单板中的流 量可以被同等对待而传送。再例如,假设某一特定单板的流量比其他单板的流量大,则管理装置可以在兼顾 其他单板的流量时,向该特定单板分配更多的令牌,使得负载大的单板可以更多地传送流 量,避免负载堆积。根据本发明的一个实施例,管理装置可以周期性地向待调度报文队列分配令牌。 单板请求的令牌数量,管理装置可能无法一次性满足。例如,由于调度策略而使得管理装置 一次只能向单板中的某待调度报文队列分配固定个数的令牌,或者管理装置每次可分配的 令牌总数小于所请求的令牌总数,或者由于该单板优先级较低而已经没有足够的令牌可以 分配等,使得管理装置可能无法一次性满足单板请求的令牌数量。这样,就需要管理装置周 期性地多次向待调度报文队列分配令牌,通过多次发送令牌的方式来灵活分配令牌,满足 预定的调度策略。另外,周期性分配令牌所间隔的时间可以相等,也可以不等。例如,仍以第一待调度报文队列需要300个令牌为例。管理装置可以一次性向第 一待调度报文队列分配300个令牌,也可以周期性地多次向其分配令牌。例如,可以以每次分配100个令牌、共分配三次的方式来分配令牌,也可以根据当前令牌的使用情况来多次 分配可用令牌,直到满足300个令牌的需求。当然,本领域技术人员还可以容易地想到,基 于预定策略来确定如何分配令牌,如果一次不能满足令牌需求,则通过多次分配来满足令 牌需求。根据本发明的一个实施例,单板可以基于令牌桶技术,根据所分配的令牌对待调 度报文队列中的报文进行传送。单板可以将从管理装置接收的令牌存储在令牌桶中。根据 不同的设置,令牌桶中的每个令牌可以对应一个字节,也可以对应多个字节,还可以直接对 应一个报文。如果令牌桶中有令牌,则允许发送流量,反之,则不允许发送流量。如果令牌 桶中的令牌数量满足一个完整报文的传送,则将该报文传送出去,并删除相应数量的令牌, 如果令牌桶中的令牌数量不足以满足一个完整报文的传送,则暂时不传送该报文,直到接 收到新的令牌并满足该完整报文时,再将该报文传送出去。令牌桶中的令牌可以是分别针对不同待调度报文队列的令牌,待调度报文队列中 的报文只可以使用针对它的那些令牌。令牌桶中的令牌也可以是待调度报文队列共享的令 牌,根据单板中的待调度报文队列使用令牌的规则来使用这些令牌。例如,单板中的语音待 调度报文队列优先使用令牌,如果令牌桶中还有剩余令牌,再由视频待调度报文队列使用, 其次再由数据待调度报文队列使用。根据本发明实施例提供的流量管理的方法,管理装置根据多个单板请求令牌的通 知来分配令牌,以通过令牌的分配控制单板的报文传送,使得原本独立进行流量管理的单 板中的流量能够得到统一、集中的调度,而不像现有技术,各单板中的流量分别、独立、隔离 地进行管理。因此,通过利用集中流量管理,能够统一有效地管理分布在不同单板上可能彼 此有关联的数据流,从而满足流量管理的需求。在图2中,示出了根据本发明实施例的流量管理的另一方法200的流程图。相比于图1的方法100,图2中的S210和S220与图1的SllO和S120基本相同, 因此不再赘述。根据本发明的一个实施例,方法200在S220之后还可以包括S230,当所分配的令 牌数量等于请求的令牌数量时,停止向待调度报文队列分配令牌。可以在管理装置中针对单板的待调度报文队列设置两个计数器。第一计数器用于 记录单板针对待调度报文队列请求的令牌数量,另一计数器用于记录管理装置向待调度报 文队列分配的令牌数量。当两个计数器的计数值相等时,说明所分配的令牌可以满足待调 度报文队列中需要传送的报文,因此,停止分配令牌。还可以在管理装置中针对单板的待调度报文队列设置一个计数器。计数器的初始 值为单板针对待调度报文队列请求的令牌数量。当管理装置向待调度报文队列分配令牌 后,将该计数器减去所分配的令牌数量,当管理装置从单板接收到针对待调度报文队列发 送的新的通知时,将该计数器加上所请求的令牌数量。当该计数器的计数值为零时,停止分 配令牌。当然,还可以在管理装置中针对单板设置两个计数器或一个计数器。与如上描述 类似,当针对单板的两个计数器的计数值相等时,或者针对单板的一个计数器的值为零时, 说明向单板分配的令牌可以满足单板中所有待调度报文队列需要传送的报文,则停止分配 令牌。
7
根据本发明的一个实施例,方法200在S220之后还可以包括S240,如果单板确定 所分配的令牌数量少于请求的令牌数量,则再次发送请求令牌的通知。管理装置向单板中的待调度报文队列分配令牌之后,单板需要确定令牌分配是否 结束。在管理装置每接收到通知、只进行一次令牌分配的情况下,如果单板接收到令牌,则 确定令牌分配结束,如果单板没接收到令牌并且等待令牌的时间届满,则确定令牌分配结 束。在管理装置每接收到通知、可能多次周期性地分配令牌的情况下,可以让管理装置在令 牌分配结束时发送特定信息来指示令牌分配结束,如果单板接收到该特定信息,则确定令 牌分配结束,如果单板没接收到该特定消息并且等待令牌的时间届满,则确定令牌分配结 束ο当单板确定令牌分配结束时,如果管理装置分配给单板的令牌数量不能满则请求 的令牌数量,说明还有部分需要传送的报文不能传送,则单板再次向管理装置请求令牌。此 时请求的令牌数量可以是与前一次还没有获取令牌的报文所对应的令牌数量,也可以是与 待调度报文队列中当前需要传送的报文数量相对应的令牌数量,而当前需要传送的报文包 括上一次还没有获取令牌的报文,还包括新缓存的需要传送的报文。这样,单板通过主动发现分配的令牌数量不能满足请求的令牌数量而再次发送通 知,可以及时请求对没有调度的报文进行重新调度,还可以降低在令牌分配过程中出现错 误而造成本该调度的报文没有及时调度、从而对流量管理性能产生的影响。虽然在图2中在S230之后再执行S240,但是也可以在S230之前执行S240,还可 以S230和S240同时执行。根据本发明实施例提供的流量管理的方法,当同一业务的流量从不同入接口输入 网络设备而进入不同单板时,或者当同一业务的流量分布到从不同出接口输出的不同单板 上时,通过管理装置进行集中流量管理,能够对这些原本有关联、希望统一进行流量管理的 数据流进行统一流量管理,而不像现有技术,只能由各单板单独进行管理。从而,可以满足 流量管理的需求,提高流量管理的有效性。并且,由于可以在单板进行数据处理(如转发、 加标等)的同时完成流量管理,可以与单板的业务处理共享报文缓存,而在传送报文时直 接根据令牌桶技术进行传送,所以不再需要开辟新的存储空间再来缓存报文,从而可以节 省存储空间,提高性能。接下来,举例说明根据本发明实施例的流量管理的例子。图3和图5分别示出了 根据本发明实施例的流量管理的例子的示意图。在图3中,管理装置340对单板310、320和330的流量进行集中流量管理。各单 板可以具有多个待调度报文队列,并在待调度报文队列中缓存相应的报文。管理装置340记录有每个需要调度的待调度报文队列的调度特性,这些特性可以 包括如下至少一个调度优先级、队列调度方式、队列拥有的报文数、队列的总出口流量的 流量整形参数。管理装置340可以对单板310、320和330中需要调度的待调度报文队列按照集合 来进行管理。可以通过预定策略将这些待调度报文队列划分为不同的集合。以按照类型来 划分为例,将单板310、320和330中缓存语音类报文的语音待调度报文队列划分为语音集 合,将单板310、320和330中缓存视频报文的视频待调度报文队列划分为视频集合,将单板 310,320和330中缓存诸如图片、邮件、文本等数据报文的数据待调度报文队列划分为数据集合,等等。在不同的集合之间,可以根据预定策略来调度不同的集合,例如基于优先级调 度策略或负载均衡策略,优先调度语音集合中的语音待调度报文队列,或者向每个集合分 配均等的令牌来调度。在每个集合中,还可以独立实施不同的队列调度和流量整形策略。例 如,对于语音集合,可以按照用户来设置不同的待调度报文队列,并优先调度特定用户的待 调度报文队列中的报文;对于视频集合,可以按照目的地址来设置不同的待调度报文队列, 并为特定目的地址的待调度报文队列分配特定传输带宽,等等。报文缓存在单板的待调度报文队列中,由各单板完成真正的入队列到出队列或出 口调度,而管理装置340则通过分配令牌来管理并控制各单板对待调度报文队列中的报文 的调度。单板310、320和330与管理装置340之间有消息链路相通,而并不通过数据报文 的方式进行消息的传送。消息链路可以要求延时小,链路可靠性高,这样可以实现快速有效 地集中管理。单板可以配置其中所管理的哪些待调度报文队列需要由管理装置340进行集中 管理,还可以配置需要由管理装置340集中管理的待调度报文队列所属的集合,便于管理 装置340按照预定策略进行集中调度。各单板可以定时通过通知向管理装置340通告各自的待调度报文队列中需要传 送的报文字节数。通告单位可以按字节来通告,也可以按字节块来通告(例如128字节为 一个字节块)。向管理装置340通告报文字节数,可以视为是向管理装置340请求调度控 制。所通告的报文字节数主要用于由管理装置340判断待调度报文队列是否为空、是否需 要分配令牌,而与每次所分配的具体令牌数量无关。如果单板的待调度报文队列中所有报文都获取有令牌、或者待调度报文队列为 空,则单板可以不进行通告。单板可以一次通告多个待调度报文队列中需要传送的报文数 量,也可以一次只通告一个待调度报文队列中需要传送的报文数量。单板可以根据待调度 报文队列中没有获取令牌的报文字节数占总报文字节数的比例,来调整发送通知的频率, 比例越高发送越快。管理装置340接收单板发送的通知之后,基于请求的令牌数量分配令牌。管理装 置340可以通过令牌的分配,来根据预定策略控制单板将传送的报文的数量。而管理装置 340分配的令牌数量可以通过待调度报文队列所属的集合的出口流量参数(例如,承诺突 发尺寸CBS、超额突发尺寸EBS、承诺信息速率CIR、峰值信息速率PIR等)来确定。单板接收管理装置340向待调度报文队列分配的令牌之后,可以基于令牌进行流
量整形。例如,可以通过令牌桶技术,将从令牌桶获取令牌的报文调度到下级队列或者出□。图4示出了根据本发明实施例的利用流量管理的方法的单板400的示意图。单板 400可以是图3的单板310、320和330中的任一个。单板400包括队列管理模块410、待调度报文队列420、令牌桶430和下级队列或 出口 440。队列管理模块410可以向管理装置通告未调度的报文字节数以请求获取相应数 量的令牌,并接收由管理装置分配的令牌。接收到令牌之后,队列管理模块410还向令牌桶 430下发所分配的令牌。当令牌桶430中的令牌满时,丢弃新下发的令牌。另外,队列管理 模块410还管理待调度报文队列420,在其中缓存将被传送的报文。待调度报文队列420中缓存的报文在获取令牌桶430中的令牌之后,传送到下级队列或出口 440,并从令牌桶430 中删除相应数量的令牌。队列管理模块410基于令牌桶430中的令牌,控制待调度报文队 列420中报文的传送,从而在单板400内完成流量整形。下面,以各单板仅仅具有一个待调度报文队列为例,具体描述根据本发明实施例 的流量管理的方法。在该例子中,进行集中流量管理来限制出口带宽。本领域技术人员可 以很容易地想到,各单板具有多个待调度报文队列的情形与此相似。再次参见图3,假设单板310具有待调度报文队列A,单板320具有待调度报文队 列B,以及单板330具有待调度报文队列C。从A、B和C三个接入点输出的报文分别缓存在 接入设备的三个接入板(即单板的例子)的待调度报文队列(简称为“队列”)A、B和C中。 三个队列基于负载均衡策略按照轮询方式来调度。假设从接入点A输入10个报文、总字节数为8000,从接入点B输入20个报文、总 字节数为15000,从接入点C输入30个报文、总字节数20000。以1000个字节为令牌分配 单位,即分配1个令牌对应1000个字节。单板310、320和330可以以字节块为单位向管理装置340通告等待调度的报文字 节数。在该例子中,假设1个字节块也具有1000个字节,那么单板310、320和330分别向 管理装置340通告各自的队列A、B、C中没有获取令牌的报文具有8、15和20个字节块。此 时,1个字节块对应着1个令牌分配单位。管理装置340按照出口总带宽5M的速率向A、B、C三个队列分配令牌,并假设分配 令牌的时间间隔内总共可以向12个字节块分配令牌。第一次轮询时,管理装置340模拟轮询调度三个队列,为A、B、C三个队列各分配4 个令牌。A、B、C三个队列在获得4个令牌之后,分别可以发送4000个字节的报文。第二次轮询时,管理装置340仍然向A、B、C三个队列各分配4个令牌。A、B、C三 个队列在获取4个令牌之后,再次分别发送4000个字节的报文。第三次轮询时,由于A队列已经没有报文发送,则不再向A队列分配新的令牌。此 时,B队列还有7个字节块需要发送,C队列还有12个字节块需要发送。管理装置340基于 负载均衡策略,向B、C队列分别分配6个令牌。这样,B、C队列分别可以发送6000个字节 的报文。第四次轮询时,由于B队列还有1个字节块,而C队列还有6个字节块,所以只需 向B队列分配1个令牌、向C队列分配6个令牌即可。这样,当管理装置340接收到来自单板310、320和330的通知之后,可以集中管理 各单板中的流量,基于负载均衡策略来多次分配令牌以满足流量管理的需求,并保证A、B、C 三个队列传送的总带宽与为这三个队列所属的集合配置的调度带宽(即5M)相符。图5示出了根据本发明实施例的流量管理的另一例子。在图5所示的例子中,单板向管理装置发送的通知可以携带报文数量增量。管理 装置每接收到一个通知,就独立地、周期性地为发送通知的单板分配令牌。管理装置向单板 分配令牌可以通过确认ACK消息来携带令牌分配信息,同时ACK消息还可以响应通知的接 收。如果单板发现ACK消息的丢失(例如超时、纠错失败等),则等待接收到用于指示令牌 分配结束的特定信息之后,重新计算单板中的待调度报文队列中等待传送的报文数量,再 次发送请求令牌的通知。
如图5所示,进行集中流量管理的管理装置520从单板510依次接收序列号为1、 2、3的通知,通知中分别携带报文字节数增量2000、500和500。管理装置520按照预定调度 策略,多次向单板510发送响应于各序列号的ACK消息,每个ACK消息携带指示分配500个 令牌的令牌分配信息(1个令牌对应1个字节)。但由于传输的错误,在响应于序列号1的 通知的ACK消息1中,有一个ACK消息丢失,而响应于序列号2的通知的ACK消息也丢失。 那么,单板510在定时器届满时发现ACK消息的丢失,并继续等待管理装置520分配令牌。 响应于序列号3的通知的ACK消息3正确传输,并发送了携带用于指示令牌分配结束的特 定信息的ACK消息3。当单板510从管理装置520接收到具有特定信息的ACK消息时,重新 计算单板510的待调度报文队列中等待传送的报文字节数,将该报文字节数携带在序列号 为4的通知中,发送给管理装置520。上面描述了根据本发明实施例的流量管理的方法,下面结合图6和图7描述根据 本发明实施例的用于流量管理的管理装置的结构框图。图6示出了根据本发明实施例的用于流量管理的管理装置600的结构框图。管理装置600包括接收模块610和分配模块620。接收模块610可用于接收至少 两个单板发送的请求令牌的通知,各单板请求的令牌数量与该单板中的待调度报文队列中 需要传送的报文数量相对应。分配模块620可用于根据请求的令牌数量,向待调度报文队 列分配令牌,使得该单板根据所分配的令牌对待调度报文队列中的报文进行传送。管理装置600的接收模块610和分配模块620的上述和其他操作和/或功能可以 参考上述图1的流量管理的方法100的SllO和S120,为了避免重复,在此不再赘述。根据本发明实施例的管理装置可以基于多个单板请求令牌的通知来分配令牌,以 通过令牌的分配控制单板的报文传送,使得原本独立进行流量管理的单板中的流量能够得 到统一、集中的调度,而不像现有技术,各单板中的流量分别、独立、隔离地进行管理。因此, 通过利用管理装置来进行集中流量管理,能够统一有效地管理分布在不同单板上可能彼此 有关联的数据流,从而满足流量管理的需求。图7示出了根据本发明实施例的用于流量管理的管理装置700的结构框图。管理 装置700中的接收模块710和分配模块720与图6的管理装置600中的接收模块610和分 配模块620基本相同。根据本发明的一个实施例,分配模块720可用于基于优先级调度策略或负载均衡 策略,向待调度报文队列分配令牌。根据本发明的一个实施例,分配模块720可用于周期性地向待调度报文队列分配 令牌。根据本发明的一个实施例,管理装置700还可以包括停止模块730。停止模块730 可用于当所分配的令牌数量等于请求的令牌数量时,停止向待调度报文队列分配令牌。分配模块720、停止模块730的上述和其他操作和/或功能可以参考上述图1的流 量管理的方法100的S120和图2的流量管理的方法200的S230,为了避免重复,在此不再 赘述。通过分配模块基于优先级调度策略来进行调度,可以使得重要的报文即存储在优 先级高的待调度报文队列中的报文优先得到调度。通过分配模块基于负载均衡策略来进行 调度,使得待调度报文队列可以得到均衡地调度,从而可以均衡调度各单板的流量,避免一
11个单板中的流量始终处于等待状态而得不到传送的现象的出现。通过分配模块周期性地分 配令牌,使得在管理装置不能一次性满足请求的令牌数量时,可以通过多次发送令牌的方 式来灵活分配令牌,满足预定的调度策略。而通过停止模块,则可以确定何时停止令牌的分 配。本领域技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和 单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的 可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能 究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技 术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为 超出本发明的范围。结合本文中所公开的实施例描述的方法步骤可以用硬件、处理器执行的软件程 序、或者二者的结合来实施。软件程序可以置于随机存取存储器(RAM)、内存、只读存储器 (ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM或技术领域 内所公知的任意其它形式的存储介质中。尽管已示出和描述了本发明的一些实施例,但本领域技术人员应该理解,在不脱 离本发明的原理和精神的情况下,可对这些实施例进行各种修改,这样的修改应落入本发 明的范围内。
权利要求
1.一种流量管理的方法,其特征在于,包括接收至少两个单板发送的请求令牌的通知,各单板请求的令牌数量与该单板中的待调 度报文队列中需要传送的报文数量相对应;根据请求的令牌数量,向所述待调度报文队列分配令牌,使得该单板根据所分配的令 牌对所述待调度报文队列中的报文进行传送。
2.根据权利要求1所述的方法,其特征在于,所述向所述待调度报文队列分配令牌包 括基于优先级调度策略或负载均衡策略,向所述待调度报文队列分配令牌。
3.根据权利要求1所述的方法,其特征在于,所述向所述待调度报文队列分配令牌包 括周期性地向所述待调度报文队列分配令牌。
4.根据权利要求1所述的方法,其特征在于,还包括当所分配的令牌数量等于所述请求的令牌数量时,停止向所述待调度报文队列分配令牌。
5.根据权利要求1所述的方法,其特征在于,所述该单板根据所分配的令牌对所述待 调度报文队列中的报文进行传送包括基于令牌桶技术,该单板根据所分配的令牌对所述待调度报文队列中的报文进行传送。
6.根据权利要求1所述的方法,其特征在于,还包括如果该单板确定所分配的令牌数量少于所述请求的令牌数量,则再次发送请求令牌的 通知。
7.一种用于流量管理的管理装置,其特征在于,包括接收模块,用于接收至少两个单板发送的请求令牌的通知,各单板请求的令牌数量与 该单板中的待调度报文队列中需要传送的报文数量相对应;分配模块,用于根据请求的令牌数量,向所述待调度报文队列分配令牌,使得该单板根 据所分配的令牌对所述待调度报文队列中的报文进行传送。
8.根据权利要求7所述的管理装置,其特征在于,所述分配模块用于基于优先级调度 策略或负载均衡策略,向所述待调度报文队列分配令牌。
9.根据权利要求7所述的管理装置,其特征在于,所述分配模块用于周期性地向所述 待调度报文队列分配令牌。
10.根据权利要求7所述的管理装置,其特征在于,还包括停止模块,用于当所分配的令牌数量等于所述请求的令牌数量时,停止向所述待调度 报文队列分配令牌。
全文摘要
本发明的实施例提供了流量管理的方法和管理装置。该方法包括接收至少两个单板发送的请求令牌的通知,各单板请求的令牌数量与该单板中的待调度报文队列中需要传送的报文数量相对应;根据请求的令牌数量,向待调度报文队列分配令牌,使得该单板根据所分配的令牌对待调度报文队列中的报文进行传送。该管理装置包括接收模块和分配模块。根据本发明实施例提供的方法和管理装置,通过利用进行集中流量管理的管理装置,使得原本独立进行流量管理的单板中的流量能够得到统一、集中的调度,从而能够统一有效地管理分布在不同单板上可能彼此有关联的数据流,以满足流量管理的需求。
文档编号H04L12/56GK102118314SQ20111004763
公开日2011年7月6日 申请日期2011年2月28日 优先权日2011年2月28日
发明者卢胜文 申请人:华为技术有限公司