CN101547150B - 数据通信输入端口调度的方法及装置 - Google Patents
数据通信输入端口调度的方法及装置 Download PDFInfo
- Publication number
- CN101547150B CN101547150B CN2009101071840A CN200910107184A CN101547150B CN 101547150 B CN101547150 B CN 101547150B CN 2009101071840 A CN2009101071840 A CN 2009101071840A CN 200910107184 A CN200910107184 A CN 200910107184A CN 101547150 B CN101547150 B CN 101547150B
- Authority
- CN
- China
- Prior art keywords
- input port
- priority
- effective input
- module
- timeslice
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6215—Individual queue per QOS, rate or priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/521—Static queue service slot or fixed bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6225—Fixed service order, e.g. Round Robin
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供一种数据通信输入端口调度装置,该装置包括以下模块:资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口列表及带宽;缓存资源分配模块,用于根据预先设置的各有效输入端口的优先级,分配缓存大小;时间片分配模块,用于分配各优先级及各有效输入端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。本发明还提供一种数据通信输入端口调度的方法。上述数据通信输入端口调度装置及装置可有效解决缓存溢出丢包问题,提高网络处理器的性能。
Description
技术领域:
本发明涉及数据通信领域,尤其是涉及一种数据通信输入端口的调度方法及装置。
背景技术:
在数据通信领域,随着数据业务的迅猛发展,通信装置所包含的输入端口也越来越多。由于需求各异这些输入端口的带宽往往也不相同。而这些输入端口又会同时被一个处理器来使用,如果调度不当,当端口的输入流量大于端口的轮循处理能力时,就会导致缓存区溢出而在输入端口产生数据包的丢失。因此,如何对输入端口调度处理并防止出现缓存区溢出问题,是提高服务质量和设备性能的关键。
现有技术中通常对输入端口采用等时间片轮循或者按优先级轮循的方式进行调度,这两种方式各中输入端口缓存大小都是预先设定而不可改变的。
在等时间片轮循方式中,各输入端口轮循时间片根据预设的轮循周期平均分配。按照与带宽成正比的方式分配各端口缓存大小,若这些端口带宽相同,则其所对应的缓存大小及在每个轮循周期内输入数据流量相同,只需设置每个端口轮循时间片的处理能力大于端口输入流量,就不会出现缓存区溢出问题。但在实际运用中,当各输入端口的带宽不同时,按照与带宽成正比所分得的各端口缓存大小不同,则其对应的输入数据流量也不同。由于端口缓存设定后不可更改,一旦出现某一端口输入数据流量大于该端口的轮询时间片的处理能力,就可能会因为轮循速率不够而处理不及时,导致缓存溢出 及数据包的丢失。
对于优先级轮循方式,则是根据优先级进行服务,先服务高优先级,再服务低优先级。但是和等时间片轮循一样,当优先级相同的输入端口当带宽不同时,也会出现缓存溢出问题。
因此,如何克服上述方法及其所对应装置的缺陷,防止缓存溢出是实际运用中需要解决的问题。
发明内容:
本发明所要解决的技术问题是,提供一种数据通信输入端口的调度方法及装置,从而有效解决缓存溢出丢包问题,提高网络处理器的性能。
为了实现上述目的,本发明提供一种数据通信输入端口调度装置,该装置包括以下模块:资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口列表及带宽;缓存资源分配模块,用于根据预先设置的各有效输入端口的优先级和获取的带宽,分配缓存大小;时间片分配模块,用于分配各优先级及各有效输入端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。
本发明还提供一种数据通信输入端口调度方法,该方法包括以下步骤:资源预处理步骤,资源预处理模块设置各有效输入端口优先级及各优先级对应的时间比例;获取与分类步骤,端口状态监控模块监控各输入端口状态,获取有效输入端口列表,根据有效输入端口列表对有效输入端口按优先级进行分类,并获取有效输入端口带宽;缓存资源分配步骤,缓存资源分配模块根据各有效输入端口优先级和所获取的带宽信息,分配各有效输入端口缓存大小;时间片分配步骤,时间片分配模块分配各优先级及各有效输入端口对应的服务时间片;轮循步骤,轮循端口模块根据各个有效输入端口的最终服 务时间片从高优先级到低优先级进行轮循。
本发明主要是监控输入端口状态,获取有效输入端口信息,并根据有效输入端口进行动态分配有效输入端口缓存大小,同时根据有效输入端口的带宽和优先级,进行一个时间片的计算,最终根据各个有效输入端口的优先级和不同的时间片来服务各个有效输入端口。通过以上方式消除了因为有效输入端口带宽不一致以及轮循速率不够产生缓存溢出丢包问题,提高了处理器的性能。
附图说明:
图1为本发明数据通信输入端口调度装置的结构图。
图2为本发明数据通信输入端口调度的方法的总体流程图。
图3为本发明数据通信输入端口调度的方法具体步骤的流程图。
具体实施方式:
下面结合附图对本发明作进一步详细说明。
图1所示为本发明输入端口调度装置,该装置包括以下模块:
资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;端口状态监控模块,用于监控输入端口状态,获取有效输入端口及带宽信息;缓存资源分配模块,用于根据预先设置的各有效输入端口的优先级,分配缓存大小;时间片分配模块,用于分配各优先级及各有效端口对应的服务时间片;轮循端口模块,用于对各有效输入端口进行轮循。
参阅图2,本发明数据通信输入端口调度的方法主要包括以下步骤:资源预处理步骤,资源预处理模块设置各输入端口优先级及各优先级对应的时间比例;获取与分类步骤,端口状态监控模块监控各输入端口状态,获取有效输入端口列表,根据有效输入端口列表对有效输入端口按优先级进行分 类,并获取有效输入端口带宽;缓存资源分配步骤,缓存资源分配模块根据各有效输入端口优先级和所获取的带宽,分配各有效输入端口缓存大小;时间片分配步骤,时间片分配模块分配各优先级及各有效输入端口对应的服务时间片;轮循步骤,轮循端口模块根据各个有效输入端口的最终服务时间片从高优先级到低优先级进行轮循。
参阅图3,在本实施例中,上述数据通信输入端口调度的方法具体包括以下步骤:
步骤1,资源预处理模块设置输入端口的优先级及各优先级对应的服务时间比例。如共有10个输入端口,可设置:输入端口1-4为高优先级,输入端口4-8为中优先级,输入端口9-10为低优先级。其中设置高优先级的服务时间比例为50%,中优先级的服务时间比例为40%,低优先级的服务时间比例为10%。在其它实施例中优先级的分类以及各优先级服务时间比例也可以根据实际需要预设,并不局限于本实施例中的方式。
步骤2,端口状态监控模块监控输入端口的状态,获取有效的输入端口列表。在本实施例中,有效端口是指已经启用的输入端口,例如在上述的10个输入端口中,如果只有1、2、5、7、9这5个输入端口启用,则将有效输入端口列为1、2、5、7、9。
步骤3,缓存资源分配模块根据有效输入端口列表对有效输入端口按优先级进行分类,并获取有效输入端口带宽,同时根据各个有效输入端口的带宽,按照有效输入端口带宽的正比例的方法为每个有效输入端口分配缓存的大小。如在上述的有效输入端口中,我们根据优先级进行分类,则有:高优先级有效输入端口列表为:1、2。中优先级有效输入端口列表为5、7。低优先级有效输入端口列表为9。通过查询芯片中关于带宽信息的记录,获取各个有效输入端口的带宽为:1号有效输入端口200M,2号有效输入端口为300M,5号有效输入端口为100M,7号有效输入端口为300M,9号有效输 入端口为100M。假设全部的缓存大小为100个字节,按照与有效输入端口带宽成正比的计算办法分配缓存大小,则1号有效输入端口缓存大小为(2/10)*100=20个字节,2、7号有效输入端口缓存大小为(3/10)*100=30个字节。同样,有效输入端口5、9为10个字节。而对于无效的输入端口则不用分配缓存,最有效地利用了缓存资源。
步骤4,时间片分配模块根据预先设置好的优先级时间比例,计算各优先级下的各个有效输入端口占用的服务时间片。
假设每个轮循周期为120个时钟周期(clock),则根据前述优先级对应的时间片比例,可得出高优先级服务时间片为:120*50%=60clock;中优先级服务时间片为:120*40%=48clock;低优先级服务时间片为:120*10%=12clock。
步骤5,时间片分配模块对优先级相同的有效输入端口,根据该有效输入端口带宽在该优先级总带宽中的比例,进一步计算各有效输入端口服务时间片。根据前面获取和计算的信息,可按照各个有效输入端口带宽占同一类优先级中有效输入端口带宽总和的比例,计算出各个端口的时间片比例为:
有效输入端口1:[200M/(200M+300M)]=2/5
有效输入端口2:[300M/(200M+300M)]=3/5
有效输入端口5:[100/(100M+300M)]=1/4
有效输入端口7:[300/(100M+300M)]=3/4
有效输入端口9:1/1=1
当然这里的计算方式也不仅局限于此,根据需要也可以采取其他计算方式。
根据比例分配各个有效输入端口的时间片,则以上有效输入端口的服务时间片分别为:
有效输入端口1:(2/5)*60=24clock
有效输入端口2:(3/5)*60=36clock
有效输入端口5:(1/4)*48=12clock
有效输入端口7:(3/4)*48=36clock
有效输入端口9:1*12=12clock
假定各有效输入端口具有一个clock处理一个字节的处理能力,则1、2、5、7、9各有效输入端口每一个周期能处理的能力分别为24字节、36字节、12字节、36字节、12字节。分别大于有效输入端口的输入速率:20字节、30字节、10字节、30字节、10字节。这样就不会出现有效输入端口Buffer溢出的问题了。
步骤6,轮循端口模块根据各个有效输入端口的最终服务时间片从高优先级到低优先级进行轮循。
从实施例中可以看出:本发明主要是监控输入端口状态,获取有效输入端口信息,并根据有效输入端口进行动态分配有效输入端口缓存大小,同时根据有效输入端口的带宽和优先级,进行一个时间片的计算,最终根据各个有效输入端口的优先级和不同的时间片来服务各个有效输入端口。通过以上方式消除了因为有效输入端口带宽不一致以及轮循速率不够产生缓存溢出丢包问题,提高了处理器的性能。
Claims (6)
1.一种数据通信输入端口调度装置,其特征在于,该装置包括以下模块:
资源预处理模块,用于设置输入端口优先级及优先级所对应的时间片比例;
端口状态监控模块,用于监控输入端口状态,获取有效输入端口列表及带宽;
缓存资源分配模块,用于根据预先设置的各有效输入端口的优先级和获取的带宽,分配缓存大小;
时间片分配模块,用于分配各优先级及各有效输入端口对应的服务时间片;
轮循端口模块,用于对各有效输入端口进行轮循。
2.一种应用如权利要求1所述的数据通信输入端口调度装置进行数据通信输入端口调度的方法,其特征在于该方法包括以下步骤:
资源预处理步骤,资源预处理模块设置各有效输入端口优先级及各优先级对应的时间比例;
获取与分类步骤,端口状态监控模块监控各输入端口状态,获取有效输入端口列表,根据有效输入端口列表对有效输入端口按优先级进行分类,并获取有效输入端口带宽;
缓存资源分配步骤,缓存资源分配模块根据各有效输入端口优先级和所获取的带宽,分配各有效输入端口缓存大小;
时间片分配步骤,时间片分配模块分配各优先级及各有效输入端口对应的服务时间片;
轮循步骤,轮循端口模块根据各个有效输入端口的最终服务时间片从高优先级到低优先级进行轮循。
3.按权利要求2所述的方法,其特征在于,所述缓存资源分配步骤按照与有效输入端口带宽成正比例的方法分配有效输入端口缓存的大小。
4.按权利要求2所述的方法,其特征在于,所述时间片分配步骤具体包括:
步骤1、时间片分配模块根据预先设置好的优先级时间比例,计算各优先级下的各个有效输入端口占用的服务时间片;
步骤2、时间片分配模块对优先级相同的有效输入端口,根据该有效输入端口带宽在该优先级总带宽中的比例,进一步计算各有效输入端口服务时间片。
5.按权利要求4所述的方法,其特征在于:所述各有效输入端口优先级分为高优先级、中优先级、以及低优先级。
6.按权利要求5所述的方法,其特征在于:所述高优先级所占比例为50%,所述中优先级所占的比例为40%,所述低优先级所占的比例为10%。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101071840A CN101547150B (zh) | 2009-04-30 | 2009-04-30 | 数据通信输入端口调度的方法及装置 |
EP09843927.6A EP2426871B1 (en) | 2009-04-30 | 2009-12-25 | Method and device for scheduling data communication input ports |
PCT/CN2009/076077 WO2010124516A1 (zh) | 2009-04-30 | 2009-12-25 | 数据通信输入端口调度方法及装置 |
BRPI0924319-4A BRPI0924319B1 (pt) | 2009-04-30 | 2009-12-25 | Método e dispositivo para programar portas de entrada de comunicação de dados |
US13/140,489 US20110249685A1 (en) | 2009-04-30 | 2009-12-25 | Method and device for scheduling data communication input ports |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101071840A CN101547150B (zh) | 2009-04-30 | 2009-04-30 | 数据通信输入端口调度的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101547150A CN101547150A (zh) | 2009-09-30 |
CN101547150B true CN101547150B (zh) | 2011-12-28 |
Family
ID=41194051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101071840A Active CN101547150B (zh) | 2009-04-30 | 2009-04-30 | 数据通信输入端口调度的方法及装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20110249685A1 (zh) |
EP (1) | EP2426871B1 (zh) |
CN (1) | CN101547150B (zh) |
BR (1) | BRPI0924319B1 (zh) |
WO (1) | WO2010124516A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101547150B (zh) * | 2009-04-30 | 2011-12-28 | 中兴通讯股份有限公司 | 数据通信输入端口调度的方法及装置 |
CN102236340B (zh) * | 2010-04-26 | 2014-12-03 | 北大方正集团有限公司 | 一种多设备管理方法和装置 |
CN101873269B (zh) * | 2010-06-24 | 2014-03-19 | 杭州华三通信技术有限公司 | 数据转发设备和端口缓存的分配方法 |
CN102006226B (zh) * | 2010-11-19 | 2013-01-02 | 福建星网锐捷网络有限公司 | 报文缓存管理方法、装置及网络设备 |
CN102223306B (zh) * | 2011-06-17 | 2018-10-16 | 南京中兴软件有限责任公司 | 一种报文传输方法及装置 |
US9706414B2 (en) | 2013-12-12 | 2017-07-11 | Huawei Technologies Co., Ltd. | Method and apparatus for determining data flow rate on service access port |
CN103702360B (zh) * | 2013-12-12 | 2017-06-06 | 华为技术有限公司 | 一种确定业务接入端口的数据流速的方法及装置 |
CN104363216A (zh) * | 2014-11-04 | 2015-02-18 | 南车株洲电力机车研究所有限公司 | 数据处理方法及列车网络*** |
JP6988723B2 (ja) * | 2018-07-17 | 2022-01-05 | 株式会社オートネットワーク技術研究所 | 車載通信装置、通信プログラム及びメッセージ送信方法 |
WO2020074687A1 (en) | 2018-10-11 | 2020-04-16 | Koninklijke Kpn N.V. | Dynamic slice priority handling |
WO2020193394A1 (en) | 2019-03-22 | 2020-10-01 | Koninklijke Kpn N.V. | Third party network and network slice management |
CN113938441B (zh) * | 2021-10-15 | 2022-07-12 | 南京金阵微电子技术有限公司 | 数据缓存方法、资源配置方法、缓存器、介质及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6661788B2 (en) * | 1999-05-14 | 2003-12-09 | Nortel Networks Limited | Multicast scheduling for a network device |
US7292580B2 (en) * | 2002-06-10 | 2007-11-06 | Lsi Corporation | Method and system for guaranteeing quality of service in a multi-plane cell switch |
US20050254435A1 (en) * | 2003-12-23 | 2005-11-17 | Moakley George P | Method and system for selecting network connections in a multi-network environment |
US7525978B1 (en) * | 2005-04-15 | 2009-04-28 | Altera Corporation | Method and apparatus for scheduling in a packet buffering network |
CN100550833C (zh) * | 2005-11-24 | 2009-10-14 | 武汉烽火网络有限责任公司 | 以太网交换缓存及调度的方法和装置 |
CN101547150B (zh) * | 2009-04-30 | 2011-12-28 | 中兴通讯股份有限公司 | 数据通信输入端口调度的方法及装置 |
-
2009
- 2009-04-30 CN CN2009101071840A patent/CN101547150B/zh active Active
- 2009-12-25 EP EP09843927.6A patent/EP2426871B1/en active Active
- 2009-12-25 BR BRPI0924319-4A patent/BRPI0924319B1/pt active IP Right Grant
- 2009-12-25 WO PCT/CN2009/076077 patent/WO2010124516A1/zh active Application Filing
- 2009-12-25 US US13/140,489 patent/US20110249685A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20110249685A1 (en) | 2011-10-13 |
WO2010124516A1 (zh) | 2010-11-04 |
BRPI0924319B1 (pt) | 2021-04-13 |
CN101547150A (zh) | 2009-09-30 |
EP2426871B1 (en) | 2013-09-11 |
EP2426871A4 (en) | 2012-10-03 |
EP2426871A1 (en) | 2012-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101547150B (zh) | 数据通信输入端口调度的方法及装置 | |
MX2008010131A (es) | Metodos y sistemas de control para reducir el uso por rafagas de un sistema informatico en red??. | |
CN109697122A (zh) | 任务处理方法、设备及计算机存储介质 | |
CN102110022B (zh) | 基于优先级调度的传感器网络嵌入式操作*** | |
CN101419561A (zh) | 一种异构多核体系中的资源管理方法及*** | |
CN104021040A (zh) | 基于时间约束条件下的云计算关联任务调度方法和装置 | |
CN103365726A (zh) | 一种面向gpu集群的资源管理方法和*** | |
CN110297698B (zh) | 一种多优先级动态限流方法、装置、服务器及存储介质 | |
CN102255926A (zh) | MapReduce***中的任务分配方法、***及装置 | |
CN102638457B (zh) | 一种服务器资源自动分配方法及*** | |
CN102945185B (zh) | 任务调度方法及装置 | |
CN104821958B (zh) | 基于WebService的用电数据分组交互接口方法 | |
CN107479966B (zh) | 一种基于多核心cpu的信令采集方法 | |
CN102510403B (zh) | 用于车辆数据接收和实时分析的集群分布式***及方法 | |
US9544905B2 (en) | Baseband resource allocation method and device thereof | |
CN105335313B (zh) | 一种基础数据的传输方法及装置 | |
CN102156722A (zh) | 一种大批量数据处理***及方法 | |
CN103607731B (zh) | 一种测量报告的处理方法及装置 | |
CN109614228B (zh) | 基于动态负载均衡方式的综合监控前置***及工作方法 | |
CN104123185A (zh) | 一种资源调度方法、装置及*** | |
Cheng et al. | Resource disaggregation versus integrated servers in data centers: Impact of internal transmission capacity limitation | |
CN102143053A (zh) | 传输数据的方法、装置和*** | |
CN106209676A (zh) | 基于多设备的云主机***的数据处理方法及装置 | |
CN106301889B (zh) | 一种端口号快速设置方法及*** | |
CN102158416B (zh) | 一种基于内存分配的报文处理方法和设备 |
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 |