数据通信输入端口调度的方法及装置的制作方法

文档序号:7704185阅读:288来源:国知局
专利名称:数据通信输入端口调度的方法及装置的制作方法
技术领域
本发明涉及数据通信领域,尤其是涉及一种数据通信输入端口的调度方法及装置。
背景技术
在数据通信领域,随着数据业务的迅猛发展,通信装置所包含的输入端口也越来越多。由于需求各异这些输入端口的带宽往往也不相同。而这些输入端口又会同时被一个处理器来使用,如果调度不当,当端口的输入流量大于端口的轮循处理能力时,就会导致緩存区溢出而在输入端口产生数据包的丟失。因此,如何对输入端口调度处理并防止出现緩存区溢出问题,是提高服务质量和设备性能的关键。
现有技术中通常对输入端口采用等时间片轮循或者按优先级轮循的方式进行调度,这两种方式各中输入端口緩存大小都是预先设定而不可改变的。
在等时间片轮循方式中,各输入端口轮循时间片根据预设的轮循周期平均分配。按照与带宽成正比的方式分配各端口緩存大小,若这些端口带宽相同,则其所对应的緩存大小及在每个轮循周期内输入数据流量相同,只需设置每个端口轮循时间片的处理能力大于端口输入流量,就不会出现緩存区溢出问题。但在实际运用中,当各输入端口的带宽不同时,按照与带宽成正比所分得的各端口緩存大小不同,则其对应的输入数据流量也不同。由于端口緩存设定后不可更改, 一旦出现某一端口输入数据流量大于该端口的轮询时间片的处理能力,就可能会因为轮循速率不够而处理不及时,导致緩存溢出及数据包的丟失。
对于优先级轮循方式,则是根振优先级进行服务,先服务高优先级,再服务低优先级。但是和等时间片轮循一样,当优先级相同的输入端口当带宽不同时,也会出现緩存溢出问题。
因此,如何克服上述方法及其所对应装置的缺陷,防止緩存溢出是实际运用中需要解决的问题。

发明内容
本发明所要解决的技术问题是,提供一种数据通信输入端口的调度方法及装置,从而有效解决緩存溢出丢包问题,提高网络处理器的性能。
为了实现上述目的,本发明提供一种数据通信输入端口调度装置,该装置包括以下模块资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口列表及带宽;緩存资源分配模块,用于根据预先设置的各有效输入端口的优先级,分配緩存大小;时间片分配模块,用于分配各优先级及各有效输入端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。
本发明还提供一种数据通信输入端口调度方法,该方法包括以下步骤资源预处理步骤,资源预处理模块设置各有效输入端口优先级及各优先级对应的时间比例;获取与分类步骤,端口状态监控模块监控各输入端口状态,获取有效输入端口列表,根—据有效输入端口列表对有效输入端口按优先级进行分类,并获取有效输入端口带宽;緩存资源分配步骤,緩存资源分配模块根据各有效输入端口优先级和所获取的带宽信息,分配各有放输入端口緩存大小;时间片分配步骤,时间片分配模块分配各优先级及各有效输入端口对应的服务时间片;轮循步骤,轮循端口模块根据各个有效输入端口的最终服
5务时间片从高优先级到低优先级进行轮循。
本发明主要是监控输入端口状态,获取有效输入端口信息,并根据有效输入端口进行动态分配有效输入端口緩存大小,同时根据有效输入端口的带宽和优先级,进行一个时间片的计算,最终才艮据各个有效输入端口的优先级和不同的时间片来服务各个有效输入端口 。通过以上方式消除了因为有效输入端口带宽不一致以及轮循速率不够产生緩存溢出丢包问题,提高了处理器的性能。
附图i兌明


图1为本发明数据通信输入端口调度装置的结构图。
图2为本发明数据通信输入端口调度的方法的总体流程图。
图3为本发明数据通信输入端口调度的方法具体步骤的流程图。
具体实施例方式
下面结合附图对本发明作进一步详细说明。图l所示为本发明输入端口调度装置,该装置包括以下模块资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口及带宽信息;緩存资源分配模块,用于根据预先设置的各有效输入端口的优先级,分配緩存大小;时间片分配模块,用于分配各优先级及各有效端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。
参阅图2,本发明数据通信输入端口调度的方法主要包括以下步骤资源预处理步骤,资源预处理模块设置各输入端口优先级及各优先级对应的时间比例;获取与分类步骤,端口状态监控模块监控各输入端口状态,获取有效输入端口列表,根据有效输入端口列表对有效输入端口按优先级进行分类,并获取有效输入端口带宽;緩存资源分配步骤,緩存资源分配模块根据 各有效输入端口优先级和所获取的带宽,分配各有效输入端口緩存大小;时 间片分配步骤,时间片分配模块分配各优先级及各有效输入端口对应的服务 时间片;轮循步骤,轮循端口模块根据各个有效输入端口的最终服务时间片 从高优先级到低优先级进行轮循。
参阅图3,在本实施例中,上述数据通信输入端口调度的方法具体包括 以下步骤
步骤1,资源预处理模块设置输入端口的优先级及各优先级对应的服务 时间比例。如共有IO个输入端口,可设置输入端口 l-4为高优先级,输 入端口 4-8为中优先级,输入端口 9-10为低优先级。其中设置高优先级的 服务时间比例为50%,中优先级的服务时间比例为40%,低优先级的服务时
可以根据实际需要预设,并不局限于本实施例中的方式。
步骤2,端口状态监控模块监控输入端口的状态,获取有效的输入端口 列表。在本实施例中,有效端口是指已经启用的输入端口,例如在上述的 IO个输入端口中,如果只有1、 2、 5、 7、 9这5个输入端口启用,则将有 效输入端口列为1、 2、 5、 7、 9。
步骤3,緩存资源分配模块根据有效输入端口列表对有效输入端口按优 先级进行分类,并获取有效输入端口带宽,同时根据各个有效输入端口的带 宽,按照有效输入端口带宽的正比例的方法为每个有效输入端口分配緩存的 大小。如在上述的有效输入端口中,我们根据优先级进行分类,则有高优 先级有效输入端口列表为1、 2。中优先级有效输入端口列表为5、 7。低 优先级有效输入端口列表为9。通过查询芯片中关于带宽信息的记录,获取 各个有效输入端口的带宽为1号有效输入端口 200M, 2号有效输入端口为 300M, 5号有效输入端口为IOOM, 7号有效输入端口为300M, 9号有效输入端口为100M。 j艮设全部的緩存大小为100个字节,換照与有效输入端口
带宽成正比的计算办法分配緩存大小,则1号有效输入端口緩存大小为
(2/10) *100=20个字节,2、 7号有效输入端口緩存大小为(3/10) *100=30 个字节。同样,有效输入端口 5、 9为IO个字节。而对于无效的输入端口则 不用分配緩存,最有效地利用了緩存资源。
步骤4,时间片分配模块根据预先设置好的优先级时间比例,计算各优 先级下的各个有效输入端口占用的服务时间片。
假设每个轮循周期为120个时钟周期(clock),则根据前述优先级对应 的时间片比例,可得出高优先级^^务时间片为120*50% = 6t) clock;中优 先级服务时间片为120*40% = 48 clock;低优先级服务时间片为120*10% =12 clock 。
步骤5,时间片分配模块对优先级相同的有效输入端口,根据该有效输 入端口带宽在该优先级总带宽中的比例,进一步计算各有效输入端口服务时 间片。根据前面获取和计算的信息,可按照各个有效输入端口带宽占同一类 优先级中有效输入端口带宽总和的比例,计算出各个端口的时间片比例为
有效输入端口1
有效输入端口 2
有效输入端口 5
有效输入端口 7
有效输入端口 9 = 2/5 [300M/(2Q0M+300M)] =3/5 [100/(100M+300M)] = 1/4 [300/(100M+300M)] = 3/4 1/卜1
当然这里的计算方式也不仅局限于此,根据需要也可以釆取其他计算方式。
根据比例分配各个有效输入端口的时间片,则以上有效输入端口的服务 时间片分别为
有效输入端口 1: (2/5)*60 = 24 clock有效输入端口 2: (3/5)*60 = 36 clock 有效输入端口 5: (1/4)*48 = 12 clock 有效输入端口 7: (3/4)*48 = 36 clock 有效输入端口9: l*12=12clock
假定各有效输入端口具有一个clock处理一个字节的处理能力,则1、 2、 5、 7、 9各有效输入端口每一个周期能处理的能力分别为24字节、36字节、 12字节、36字节、12字节。分别大于有效输入端口的输入速率20字节、 30字节、IO字节、30字节、IO字节。这样就不会出现有效输入端口 Buffer 溢出的问题了。
步骤6,轮循端口模块根据各个有效输入端口的最终服务时间片从高优 先级到低优先级进行轮循。
从实施例中可以看出本发明主要是监控输入端口状态,获取有效输入 端口信息,并根据有效输入端口进行动态分配有效输入端口緩存大小,同时 根据有效输入端口的带宽和优先级,进行一个时间片的计算,最终根据各个 有效输入端口的优先级和不同的时间片来服务各个有效瑜入端口 。通过以上 方式消除了因为有效输入端口带宽不一致以及轮循速率不够产生緩存溢出 丢包问题,提高了处理器的性能。
权利要求
1、一种数据通信输入端口调度装置,其特征在于,该装置包括以下模块资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口列表及带宽;缓存资源分配模块,用于根据预先设置的各有效输入端口的优先级,分配缓存大小;时间片分配模块,用于分配各优先级及各有效输入端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。
2、 一种应用如权利要求l所述的数据通信输入端口调度装置进行数据通信输入端口调度的方法,其特征在于该方法包括以下步骤资源预处理步骤,资源预处理模块设置各有效输入端口优先级及各优先级对应的时间比例;获取与分类步骤,端口状态监控模块监控各输入端口状态,获取有效输入端口列表,根据有效输入端口列表对有效输入端口按优先级进行分类,并获取有效输入端口带宽;緩存资源分配步骤,緩存资源分配模块根据各有效输入端口优先级和所获取的带宽,分配各有效输入端口緩存大小;时间片分配步骤,时间片分配模块分配各优先级及各有效输入端口对应的服务时间片;轮循步骤,轮循端口模块根据各个有效输入端口的最终服务时间片从高优先级到低优先级进行轮循。
3、 按权利要求1所述的方法,其特征在于,所述緩存资源分配步骤可按照与有效输入端口带宽的正比例的方法分配有效输入端口緩存的大小。
4、 按权利要求1所述的方法,其特征在于,所述时间片分配步骤具体包括步骤l、时间片分配模块根据预先设置好的优先级时间比例,计算各优先级下的各个有效输入端口占用的服务时间片;步骤2、时间片分配模块对优先级相同的有效输入端口,根据该有效输入端口带宽在该优先级总带宽中的比例,进一步计算各有效输入端口服务时间片。
5、 按权利要求4所述的方法,其特征在于所述各有效输入端口优先级可分为高优先级、中优先级、以及低优先级。
6、 按权利要求5所述的方法,其特征在于所述高优先级所占比例为50%,所述中优先级所占的比例为40%,所述低优先级所占的比例为10%。
全文摘要
本发明提供一种数据通信输入端口调度装置,该装置包括以下模块资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口列表及带宽;缓存资源分配模块,用于根据预先设置的各有效输入端口的优先级,分配缓存大小;时间片分配模块,用于分配各优先级及各有效输入端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。本发明还提供一种数据通信输入端口调度的方法。上述数据通信输入端口调度装置及装置可有效解决缓存溢出丢包问题,提高网络处理器的性能。
文档编号H04L12/56GK101547150SQ20091010718
公开日2009年9月30日 申请日期2009年4月30日 优先权日2009年4月30日
发明者梁秀帅, 陆珠兴 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1