CN109391556B - 一种报文调度方法、装置及存储介质 - Google Patents
一种报文调度方法、装置及存储介质 Download PDFInfo
- Publication number
- CN109391556B CN109391556B CN201710682606.1A CN201710682606A CN109391556B CN 109391556 B CN109391556 B CN 109391556B CN 201710682606 A CN201710682606 A CN 201710682606A CN 109391556 B CN109391556 B CN 109391556B
- Authority
- CN
- China
- Prior art keywords
- code
- input
- message
- input channel
- priority
- 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/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
-
- 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
-
- 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/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种报文调度方法、装置及存储介质,上述报文调度方法包括:在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。
Description
技术领域
本发明涉及网络技术,尤其涉及一种报文调度方法、装置及存储介质。
背景技术
网络处理器(Network Processor,NP)是一种专门应用于网络系统的微处理器。由于具有高速度、低功耗和可编程的优点,NP逐渐成为构成路由转发引擎所不可替代的部分,同时,NP的报文处理能力直接影响着网络互连的性能和质量。在连续不断的报文在输入至NP之后,NP会将报文均衡地调度到各个微码处理器并行处理,其中,报文吞吐率会直接影响整个NP的性能和质量。现有技术中,常见的报文调度方法为一对多的调度方法,即NP通过一个输入通道接收报文,然后将报文依次轮询调度到多个输出接口进行输出,此时,报文调度的最大带宽为芯片的主时钟频率。
为了提高报文吞吐率,从而提高NP的报文调度性能,现有技术通常需要提高芯片的主时钟频率,但是,不断地提高芯片的主时钟频率会造成系统的功耗增加的缺陷,同时会导致NP后级处理模块带宽过度浪费的后果。另一方面,通过增加NP接收报文的输入通道数量来提高报文的吞吐率时,如果不同输入通道的报文被调度至相同的输出接口进行输出,那么便会造成报文输出冲突的缺陷,不能有效地提高报文的吞吐率。
发明内容
本发明实施例提供一种报文调度方法、装置及存储介质,在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种报文调度方法,包括:
在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;
当所述第一授权码和所述第二授权码相同时,检测所述第一输入通道在第T+1输入周期是否存在第三报文输入;
当所述第一输入通道在所述第T+1输入周期存在所述第三报文输入时,根据所述预设获取策略获取所述第一输入通道调度所述第三报文时对应的第三授权码;
根据所述第三授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
在上述方案中,所述根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码,包括:
获取所述第一输入通道调度所述第一报文时对应的第一状态码和第一优先码,以及所述第二输入通道调度所述第二报文时对应的第二状态码和第二优先码;
根据所述第一状态码和所述第一优先码,计算所述第一授权码;以及根据所述第二状态码和所述第二优先码,计算所述第二授权码。
在上述方案中,所述获取所述第一输入通道调度所述第一报文时对应的第一状态码,以及所述第二输入通道调度所述第二报文时对应的第二状态码,包括:
在预设输出接口中分别确定所述第一输入通道在第T-1输入周期的第一输出接口,和所述第二输入通道在第T-1输入周期的第二输出接口;
将所述第一输出接口和所述第二输出接口设置为关闭状态;
对所述第一输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第一状态码;以及对所述第二输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第二状态码。
在上述方案中,所述获取所述第一输入通道调度所述第一报文时对应的第一优先码,以及所述第二输入通道调度所述第二报文时对应的第二优先码,包括:
当T等于1时,将第一预存初始优先码设置为所述第一优先码,将第二预存初始优先码设置为所述第二优先码;
当T大于1时,读取所述第一输入通道在所述第T-1输入周期调度报文时的第四授权码和所述第二输入通道在所述第T-1输入周期调度报文时的第五授权码,并将所述第四授权码设置为所述第一优先码,将所述第五授权码设置为所述第二优先码。
在上述方案中,所述根据所述第一优先码和所述第一状态码,计算所述第一授权码,包括:
根据所述第一状态码和所述第一优先码,确定第一优先级掩码;
对所述第一状态码和所述第一优先级掩码进行逻辑与运算,获得所述第一授权码。
在上述方案中,所述根据所述第一状态码和所述第一优先码,确定第一优先级掩码,包括:
当所述第一状态码大于所述第一优先码时,计算所述第一状态码和所述第一优先码的第一差值结果,并对所述第一差值结果进行取反计算,获得所述第一优先级掩码;
当所述第一状态码小于所述第一优先码时,计算所述第一状态码和第一预设阈值的第二差值结果,并对所述第二差值结果进行取反计算,获得所述第一优先级掩码;
当所述第一状态码等于所述第一优先码时,将第二预设阈值设置为所述第一优先级掩码。
在上述方案中,所述根据所述第二优先码和所述第二状态码,计算所述第二授权码,包括:
根据所述第二状态码和所述第二优先码,确定第二优先级掩码;
对所述第二状态码和所述第二优先级掩码进行逻辑与运算,获得所述第二授权码。
在上述方案中,所述根据所述第二状态码和所述第二优先码,确定第二优先级掩码,包括:
当所述第二状态码大于所述第二优先码时,计算所述第二状态码和所述第二优先码的第三差值结果,并对所述第三差值结果进行取反计算,获得所述第二优先级掩码;
当所述第二状态码小于所述第二优先码时,计算所述第二状态码和所述第一预设阈值的第四差值结果,并对所述第四差值结果进行取反计算,获得所述第二优先级掩码;
当所述第二状态码等于所述第二优先码时,将所述第二预设阈值设置为所述第二优先级掩码。
在上述方案中,所述根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码之后,所述方法还包括:
当所述第一授权码和所述第二授权码不同时,根据所述第一授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
在上述方案中,所述检测所述第一输入通道在第T+1输入周期是否存在第三报文输入之后,所述方法还包括:
当所述第一输入通道在所述第T+1输入周期不存在所述第三报文输入时,保存所述第一报文,在所述第T+1输入周期,根据所述第一授权码调度所述第一报文。
本发明实施例提供了一种报文调度装置,所述报文调度装置包括:获取单元,检测单元,调度单元,
所述获取单元,用于在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;
所述检测单元,用于当所述第一授权码和所述第二授权码相同时,检测所述第一输入通道在第T+1输入周期是否存在第三报文输入;
所述获取单元,用于当所述第一输入通道在所述第T+1输入周期有所述第三报文输入时,按照所述预设获取策略获取所述第一输入通道调度所述第三报文时对应的第三授权码;
所述调度单元,用于根据所述第三授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
在上述方案中,所述获取单元包括:获取子单元,计算子单元,
所述获取子单元,用于获取所述第一输入通道调度所述第一报文时对应的第一状态码和第一优先码,以及所述第二输入通道调度所述第二报文时对应的第二状态码和第二优先码;
所述计算子单元,用于根据所述第一状态码和所述第一优先码,计算所述第一授权码;以及根据所述第二状态码和所述第二优先码,计算所述第二授权码;
其中,所述获取子单元,具体用于在预设输出接口中分别确定所述第一输入通道在第T-1输入周期的第一输出接口,和所述第二输入通道在第T-1输入周期的第二输出接口;以及将所述第一输出接口和所述第二输出接口设置为关闭状态;以及对所述第一输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第一状态码;以及对所述第二输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第二状态码;
所述获取子单元,还具体用于当T等于1时,将第一预存初始优先码设置为所述第一优先码,将第二预存初始优先码设置为所述第二优先码;当T大于1时,读取所述第一输入通道在所述第T-1输入周期调度报文时的第四授权码和所述第二输入通道在所述第T-1输入周期调度报文时的第五授权码,并将所述第四授权码设置为所述第一优先码,将所述第五授权码设置为所述第二优先码。
在上述方案中,所述计算子单元,具体用于根据所述第一状态码和所述第一优先码,确定第一优先级掩码;以及对所述第一状态码和所述第一优先级掩码进行逻辑与运算,获得所述第一授权码;
所述计算子单元,还具体用于根据所述第二状态码和所述第二优先码,确定第二优先级掩码;以及对所述第二状态码和所述第二优先级掩码进行逻辑与运算,获得所述第二授权码;
其中,所述计算子单元,具体用于当所述第一状态码大于所述第一优先码时,计算所述第一状态码和所述第一优先码的第一差值结果,并对所述第一差值结果进行取反计算,获得所述第一优先级掩码;以及当所述第一状态码小于所述第一优先码时,计算所述第一状态码和第一预设阈值的第二差值结果,并对所述第二差值结果进行取反计算,获得所述第一优先级掩码;以及当所述第一状态码等于所述第一优先码时,将第二预设阈值设置为所述第一优先级掩码;
所述计算子单元,还具体用于当所述第二状态码大于所述第二优先码时,计算所述第二状态码和所述第二优先码的第三差值结果,并对所述第三差值结果进行取反计算,获得所述第二优先级掩码;以及当所述第二状态码小于所述第二优先码时,计算所述第二状态码和所述第一预设阈值的第四差值结果,并对所述第四差值结果进行取反计算,获得所述第二优先级掩码;以及当所述第二状态码等于所述第二优先码时,将所述第二预设阈值设置为所述第二优先级掩码。
在上述方案中,所述调度单元,还用于在根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码之后,当所述第一授权码和所述第二授权码不同时,根据所述第一授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文;
所述调度单元,还用于在检测所述第一输入通道在第T+1输入周期是否存在第三报文输入之后,当所述第一输入通道在所述第T+1输入周期不存在所述第三报文输入时,保存所述第一报文,在所述第T+1输入周期,根据所述第一授权码调度所述第一报文。
本发明实施例提供了一种报文调度装置,所述报文调度装置包括处理器、存储有所述处理器可执行指令的存储器、通信接口,和用于连接所述处理器、所述存储器以及所述通信接口的总线,当所述指令被执行时,所述处理器执行如下操作:
所述处理器,用于在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当所述第一授权码和所述第二授权码相同时,检测所述第一输入通道在第T+1输入周期是否存在第三报文输入;当所述第一输入通道在所述第T+1输入周期存在所述第三报文输入时,按照所述预设获取策略获取所述第一输入通道调度所述第三报文时对应的第三授权码;根据所述第三授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
本发明实施例提供了一种计算机可读存储介质,其上存储有程序,应用于终端中,所述程序被处理器执行时实现如权利要求1-10任一项所述的方法。
由此可见,本发明实施例提供了一种报文调度方法、装置及存储介质,在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。也就是说,本发明实施例提出的一种报文调度方法、装置及存储介质,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
附图说明
图1为本发明实施例提出的一种报文调度方法的实现流程示意图一;
图2为本发明实施例提出的一种报文调度方法的实现流程示意图二;
图3为本发明实施例提出的一种报文调度方法的实现流程示意图三;
图4为本发明实施例提出的一种报文调度方法的实现流程示意图四;
图5为本发明实施例提出的一种报文调度方法的实现流程示意图五;
图6为本发明实施例提出的一种报文调度方法的实现流程示意图六;
图7为本发明实施例提出的一种双输入多输出的报文调度方法的示意图;
图8为一种典型的双输入十六内核网络处理器结构示意图;
图9为本发明实施例提出的终端的组成结构示意图一;
图10为本发明实施例提出的终端的组成结构示意图二;
图11为本发明实施例提出的终端的组成结构示意图三。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
实施例一
图1为本发明实施例提出的一种报文调度方法的实现流程示意图一,如图1所示,在本发明的实施例中,报文调度装置进行报文调度的方法可以包括以下步骤:
步骤101、在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数。
在本发明的实施例中,当当前时刻为第T输入周期时,报文调度装置可以分别检测第一输入通道和第二输入通道的当前输入状态,如果上述第一输入通道存在第一报文输入,且上述第二输入通道存在第二报文输入,那么报文调度装置可以根据预设获取策略获取上述第一输入通道调度上述第一报文时对应的第一授权码,和上述第二输入通道调度上述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数。
需要说明的是,在本发明的实施例中,上述报文调度装置可以包括两个输入通道和多个输出接口,其中,上述输出接口可以为微码处理器。
进一步地,在本发明的实施例中,上述第一输入通道或者上述第二输入通道可以为上述报文调度装置中的两个输入通道中的任意一个输入通道,且上述报文调度装置中的两个输入通道都分别有一个报文缓存队列,用于缓存输入的报文。其中,上述第一输入通道可以将输入的第一报文缓存在上述第一输入通道对应的报文缓存队列中,同时,上述第二输入通道可以将输入的第二报文缓存在上述第二输入通道对应的报文缓存队列中。
需要说明的是,在本发明的实施例中,上述第一授权码用于表征上述第一输入通道在第T输入周期调度上述第一报文时对应的上述全部输出接口的最终授权状态,具体地,上述第一授权码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第一授权码的位数也为16。
需要说明的是,在本发明的实施例中,由于上述第一授权码用于表征上述第一输入通道在第T输入周期调度上述第一报文时对应的上述全部输出接口的授权状态,即当第一输入通道有报文输入时,根据上述第一授权码可以确定在全部输出接口中授权哪一个输出接口将该报文输出,也就是说,如果将被授权的输出接口设置为1,将其他输出接口被设置为0,那么,上述第一授权码为只有一位为1,其余位为0的二进制数。例如,当报文调度装置具有6个输出接口时,如果第一输入通道当前输入周期授权第2个输出接口对报文进行输出,那么第一输入通道在当前输入周期的第一授权码为010000。
需要说明的是,在本发明的实施例中,上述第二授权码用于表征上述第二输入通道在第T输入周期调度上述第二报文时对应的上述全部输出接口的最终授权状态,具体地,上述第二授权码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第二授权码的位数也为16。
需要说明的是,在本发明的实施例中,由于上述第二授权码用于表征上述第二输入通道在第T输入周期调度上述第二报文时对应的上述全部输出接口的授权状态,即当第二输入通道有报文输入时,根据上述第二授权码可以确定在全部输出接口中授权哪一个输出接口将该报文输出,也就是说,如果将被授权的输出接口设置为1,将其他输出接口被设置为0,那么,上述第二授权码为只有一位为1,其余位为0的二进制数。例如,当报文调度装置具有6个输出接口时,如果第二输入通道当前输入周期授权第3个输出接口对报文进行输出,那么第二输入通道在当前输入周期的第二授权码为001000。
步骤102、当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入。
在本发明的实施例中,报文调度装置在根据上述预设获取策略获取上述第一输入通道调度上述第一报文时对应的第一授权码,和上述第二输入通道调度上述第二报文时对应的第二授权码之后,可以检测上述第一输入通道在第T+1输入周期是否存在第三报文输入。
进一步地,在本发明的实施例中,上述报文调度装置在根据上述预设获取策略获取上述第一输入通道调度上述第一报文时对应的第一授权码,和上述第二输入通道调度上述第二报文时对应的第二授权码之后,可以将上述第一授权码和上述第二授权码进行比较,如果上述第一授权码和上述第二授权码不相同,那么可以说明上述第一输入通道在第T输入周期将上述第一报文调度输出的输出接口,与上述第二输入通道在第T输入周期将上述第二报文调度输出的输出接口不同。相应地,如果上述第一授权码和上述第二授权码相同,那么可以说明上述第一输入通道在第T输入周期将上述第一报文调度输出的输出接口,与上述第二输入通道在第T输入周期将上述第二报文调度输出的输出接口相同。
进一步地,在本发明的实施例中,上述报文调度装置如果确定上述第一授权码和上述第二授权码相同,那么上述报文调度装置便可以检测上述第一输入通道在第T+1输入周期是否存在第三报文输入。
进一步地,在本发明的实施例中,如果上述第一输入通道在第T输入周期将上述第一报文调度输出的输出接口,与上述第二输入通道在第T输入周期将上述第二报文调度输出的输出接口不同,那么上述报文调度装置便可以同时将上述第一输入通道在第T输入周期对应的第一报文和上述第二输入通道在第T输入周期对应的第二报文进行输出。也就是说,在本发明的实施例中,如果上述第一授权码和上述第二授权码不相同,那么上述报文调度装置便可以在第T输入周期根据第一授权码调度上述第一报文,同时在第T输入周期根据第二授权码调度上述第二报文。
步骤103、当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码。
在本发明的实施例中,报文调度装置在检测上述第一输入通道在第T+1输入周期是否存在第三报文输入之后,如果上述第一输入通道在第T+1输入周期存在第三报文输入时,那么上述报文调度装置可以根据上述预设获取策略获取第一输入通道调度上述第三报文时对应的第三授权码。
进一步地,在本发明的实施例中,如果上述第一输入通道在第T+1输入周期存在第三报文输入,那么上述报文调度装置可以根据上述预设获取策略获取第一输入通道调度上述第三报文时对应的第三授权码。具体地,在本发明的实施例中,上述报文调度装置可以先获取上述第一输入通道在第T+1输入周期调度上述第三报文时对应的状态码和优先码,然后根据上述第一输入通道在第T+1输入周期调度上述第三报文时对应的状态码和优先码计算上述第一输入通道在第T+1输入周期调度上述第三报文时对应的第三授权码。
需要说明的是,在本发明的实施例中,上述第三授权码用于表征上述第一输入通道在第T+1输入周期调度上述第三报文时对应的上述全部输出接口的最终授权状态,具体地,上述第三授权码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第三授权码的位数也为16。
需要说明的是,在本发明的实施例中,由于上述第三授权码用于表征上述第一输入通道在第T+1输入周期调度上述第三报文时对应的上述全部输出接口的授权状态,即当第一输入通道有报文输入时,根据上述第三授权码可以确定在全部输出接口中授权哪一个输出接口将该报文输出,也就是说,如果将被授权的输出接口设置为1,将其他输出接口被设置为0,那么,上述第三授权码为只有一位为1,其余位为0的二进制数。例如,当报文调度装置具有6个输出接口时,如果第一输入通道在第T+1输入周期授权第1个输出接口对报文进行输出,那么第一输入通道在第T+1输入周期的第三授权码为100000。
步骤104、根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。
在本发明的实施例中,报文调度装置在根据上述预设获取策略获取第一输入通道调度上述第三报文时对应的第三授权码之后,可以在第T输入周期根据上述第三授权码调度上述第一报文,以及根据上述第二授权码调度上述第二报文。
进一步地,在本发明的实施例中,上述报文调度装置在确定上述第一授权码和上述第二授权码相等,即上述第一输入通道在第T输入周期将上述第一报文调度输出的输出接口,与上述第二输入通道在第T输入周期将上述第二报文调度输出的输出接口相同之后,可以继续在第T输入周期根据上述第二授权码对上述第二输入通道的第二报文进行输出,而将上述第一输入通道在第T输入周期的第一报文按照上述第三授权码进行输出。
在本发明的实施例中,进一步地,上述报文调度装置在检测上述第一输入通道在第T+1输入周期是否存在第三报文输入之后,如果上述第一输入通道在第T+1输入周期不存在第三报文输入,那么上述报文调度装置可以保存上述第一报文,并在第T+1输入周期,根据上述第一授权码调度上述第一报文。
需要说明的是,在本发明的实施例中,上述报文调度装置在第T输入周期,根据上述第三授权码调度上述第一报文,以及根据上述第二授权码调度上述第二报文之后,上述报文调度装置还可以在第T+1输入周期,根据上述第一授权码调度上述第三报文。
本发明实施例提供了一种报文调度方法,在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。也就是说,本发明实施例提出的一种报文调度方法,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
实施例二
图2为本发明实施例提出的一种报文调度方法的实现流程示意图二,如图2所示,基于实施例一,在本发明的实施例中,进一步地,报文调度装置根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码的方法可以包括以下步骤:
步骤201、获取第一输入通道调度第一报文时对应的第一状态码和第一优先码,以及第二输入通道调度第二报文时对应的第二状态码和第二优先码。
在本发明的实施例中,报文调度装置可以先获取上述第一输入通道调度上述第一报文时对应的第一状态码和第一优先码,同时可以获取上述第二输入通道调度上述第二报文时对应的第二状态码和第二优先码。
进一步地,在本发明的实施例中,上述报文调度装置在检测上述第一输入通道在第T输入周期是否缓存上述第一报文之后,如果上述第一输入通道在第T输入周期缓存上述第一报文,那么报文调度装置可以按照预设编码策略对全部输出接口进行编码,从而获得上述第一输入通道在第T输入周期调度上述第一报文时对应的第一状态码。相应地,上述报文调度装置在检测上述第二输入通道在第T输入周期是否缓存上述第二报文之后,如果上述第二输入通道在第T输入周期缓存上述第二报文,那么报文调度装置可以按照预设编码策略对全部输出接口进行编码,从而获得上述第二输入通道在第T输入周期调度上述第二报文时对应的第二状态码。
具体地,在本发明的实施例中,上述报文调度装置可以先确定上述全部输出接口的当前状态,然后再根据上述全部输出接口的当前状态对上述输出接口进行编码,从而获得上述第一输入通道在第T输入周期调度上述第一报文时对应的第一状态码,以及上述第二输入通道在第T输入周期调度上述第二报文时对应的第二状态码。
需要说明的是,在本发明的实施例中,上述第一状态码用于表征在上述第一输入通道第T输入周期调度上述第一报文时,上述全部输出接口的可用状态,具体地,上述第一状态码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第一状态码的位数也为16。同时,上述第二状态码用于表征在上述第二输入通道第T输入周期调度上述第二报文时,上述全部输出接口的可用状态,具体地,上述第二状态码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第二状态码的位数也为16。
需要说明的是,在本发明的实施例中,上述报文调度装置可以将当前状态为空的输出接口设置为1,将当前状态为非空的输出接口设置为0,例如,当报文调度装置具有6个输出接口时,如果输出接口1的当前状态为空,输出接口2的当前状态为空,输出接口3的当前状态为非空,输出接口4的当前状态为空,输出接口5的当前状态为非空,输出接口6的当前状态为空,那么报文调度装置可以将当前状态为空的输出接口设置为1,将当前状态为非空的输出接口设置为0,从而对上述6个输出接口进行编码之后的结果为一个6比特位的二进制数,即110101。
在本发明的实施例中,报文调度装置在按照预设编码策略对输出接口进行编码,获得第一输入通道在第T输入周期调度上述第一报文时对应的第一状态码,和第二输入通道在第T输入周期调度上述第二报文时对应的第二状态码之后,报文调度装置可以获取上述第一输入通道在第T输入周期调度上述第一报文时对应的第一优先码,同时,报文调度装置可以获取上述第二输入通道在第T输入周期调度上述第二报文时对应的第二优先码。
进一步地,在本发明的实施例中,上述第一优先码用于表征在上述第一输入通道在第T输入周期调度上述第一报文时对应的上述全部输出接口的优先级状态,具体地,上述第一优先码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第一优先码的位数也为16。
需要说明的是,在本发明的实施例中,由于第一优先码用于表征第一输入通道在第T输入周期调度上述第一报文时对应的上述全部输出接口的优先级状态,即当第一输入通道有报文输入时,根据第一优先码可以确定在全部输出接口中优先选择哪一个输出接口将该报文输出,也就是说,如果报文调度装置将优先级最高的输出接口设置为1,将其他输出接口设置为0,那么,上述第一优先码为只有一位为1,其余位为0的二进制数。例如,当报文调度装置具有6个输出接口时,如果第一输入通道当前输入周期优先选择第2个输出接口对报文进行输出,那么报文调度装置可以将第一输入通道在当前输入周期的优先码设置为010000。
进一步地,在本发明的实施例中,上述第二优先码用于表征在上述第二输入通道在第T输入周期调度上述第二报文时对应的上述全部输出接口的优先级状态,具体地,上述第二优先码为一个位数与输出接口个数相同的二进制数,例如,如果输出接口的个数为16,那么相应地,第二优先码的位数也为16。
需要说明的是,在本发明的实施例中,由于第二优先码用于表征第二输入通道在第T输入周期调度上述第二报文时对应的上述全部输出接口的优先级状态,即当第一输入通道有报文输入时,根据第二优先码可以确定在全部输出接口中优先选择哪一个输出接口将该报文输出,也就是说,如果报文调度装置将优先级最高的输出接口设置为1,将其他输出接口设置为0,那么,上述第二优先码为只有一位为1,其余位为0的二进制数。例如,当报文调度装置具有6个输出接口时,如果第二输入通道当前输入周期优先选择第2个输出接口对报文进行输出,那么报文调度装置可以将第二输入通道在当前输入周期的优先码设置为010000。
步骤202、根据第一状态码和第一优先码,计算第一授权码;以及根据第二状态码和第二优先码,计算第二授权码。
在本发明的实施例中,上述报文调度装置在获取上述第一输入通道调度上述第一报文时对应的第一状态码和第一优先码,以及上述第二输入通道调度上述第二报文时对应的第二状态码和第二优先码之后,可以根据上述第一状态码和上述第一优先码,计算上述第一授权码;以及根据上述第二状态码和上述第二优先码,计算上述第二授权码。
本发明实施例提供了一种报文调度方法,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
实施例三
图3为本发明实施例提出的一种报文调度方法的实现流程示意图三,如图3所示,基于实施例二,在本发明的实施例中,进一步地,报文调度装置获取第一输入通道调度第一报文时对应的第一状态码,以及第二输入通道调度第二报文时对应的第二状态码的方法可以包括以下步骤:
步骤301、在预设输出接口中分别确定第一输入通道在第T-1输入周期的第一输出接口,和第二输入通道在第T-1输入周期的第二输出接口。
在本发明的实施例中,报文调度装置对上述第一输入通道和上述第二输入通道进行检测,确定上述第一输入通道缓存有第一报文,且上述第二输入通道缓存有第二报文之后,上述报文调度装置可以在预设输出接口中确定上述第一输入通道在上一个输入周期,即第T-1输入周期的输出接口,即第一输出接口,同时,上述报文调度装置可以在预设输出接口中确定上述第二输入通道在上一个输入周期,即第T-1输入周期的输出接口,即第二输出接口。
需要说明的是,在本发明的实施例中,上述第一输出接口为上述报文调度装置中的全部预设输出接口中的一个输出接口,且上述第一输出接口为上述第一输入通道在第T-1输入周期对缓存的报文进行调度时所对应的一个输出接口。相应地,上述第二输出接口为上述报文调度装置中的全部预设输出接口中的一个输出接口,且上述第二输出接口为上述第二输入通道在第T-1输入周期对缓存的报文进行调度时所对应的一个输出接口。
步骤302、将第一输出接口和第二输出接口设置为关闭状态。
在本发明的实施例中,上述报文调度装置在预设输出接口中确定上述第一输入通道在第T-1输入周期的第一输出接口,以及上述第二输入通道在第T-1输入周期的第二输出接口之后,可以将上述第一输出接口的当前状态设置为关闭状态,同时将上述第二输出接口的当前状态设置为关闭状态。
进一步地,在本发明的实施例中,上述报文调度装置将上述第一输入通道在第T-1输入周期的第一输出接口的当前状态设置为关闭状态,将上述第二输入通道在第T-1输入周期的第二输出接口的当前状态设置为关闭状态,便可以保证在相邻的两个周期中,上述第一输入通道中缓存的报文会被调度至不同的输出接口中进行输出,同时,上述第二输入通道中缓存的报文会被调度至不同的输出接口中进行输出。例如,在第2输入周期时,报文调度装置将第一输入通道缓存的报文调度至输出接口2中进行输出,那么,在第3输入周期时,报文调度装置直接将输出接口2的当前状态设置为关闭状态,从而可以将第一输入通道中缓存的报文调度至输出接口2以外的其他输出接口进行输出。
步骤303、对第一输出接口和预设输出接口中的其他输出接口进行编码,获得第一状态码;以及对第二输出接口和预设输出接口中的其他输出接口进行编码,获得第二状态码。
在本发明的实施例中,上述报文调度装置在将上述第一输出接口的当前状态设置为关闭状态,同时将上述第二输出接口的当前状态设置为关闭状态之后,便可以对上述第一输出接口和预设输出接口中的其他输出接口进行编码,获得上述第一状态码,同时可以对上述第二输出接口和预设输出接口中的其他输出接口进行编码,获得上述第二状态码。
在本发明的实施例中,进一步地,报文调度装置对上述第一输入通道和上述第二输入通道进行检测,确定上述第一输入通道缓存有第一报文,且上述第二输入通道没有缓存有第二报文之后,上述报文调度装置便可以直接对上述报文调度装置中的全部预设输出接口进行编码,从而便可以获得表征上述第一输出通道在第T输入周期调度上述第一报文时对应的第一状态码。
需要说明的是,在本发明的实施例中,当上述第一输入通道缓存有第一报文,且上述第二输入通道没有缓存有第二报文时,上述报文调度装置在第T输入周期进行报文调度时,便不会出现第一输入通道的报文和第二输入通道的报文被调度至同一个输出接口中进行输出的情况,因此,上述报文调度装置可以直接对全部输出接口进行编码。
本发明实施例提供了一种报文调度方法,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
实施例四
图4为本发明实施例提出的一种报文调度方法的实现流程示意图四,如图4所示,基于实施例二和实施例三,在本发明的实施例中,报文调度装置获取第一输入通道调度第一报文时对应的第一优先码,以及第二输入通道调度第二报文时对应的第二优先码的方法可以包括以下步骤:
步骤401、当T等于1时,将第一预存初始优先码设置为第一优先码,将第二预存初始优先码设置为第二优先码。
在本发明的实施例中,在进行报文调度的初始周期时,即当T等于1时,上述报文调度装置可以将预先存储的第一预存初始优先码设置为上述第一输入通道的第一优先码,同时将预先存储的第二预存初始优先码设置为上述第二输入通道的第二优先码。
需要说明的是,在本发明的实施例中,上述报文调度装置在预先存储上述第一输入通道的第一预存初始优先码和上述第二输入通道的第二预存初始优先码时,可将不同输入通道的预存初始优先码存储为不同的值,以便降低对不同输入通道缓存的报文调度时产生冲突的概率。
步骤402、当T大于1时,读取第一输入通道在第T-1输入周期调度报文时的第四授权码和第二输入通道在第T-1输入周期调度报文时的第五授权码,并将第四授权码设置为第一优先码,将第五授权码设置为第二优先码。
在本发明的实施例中,如果不是在进行报文调度的初始周期,即当T大于1时,上述报文调度装置可以读取上述第一输入通道在第T-1输入周期调度报文时的第四授权码,并将上述第四授权码设置为第一优先码,同时,读取上述第二输入通道在第T-1输入周期调度报文时的第五授权码,并将上述第五授权码设置为第二优先码。
进一步地,在本发明的实施例中,上述报文调度装置在完成第T-1输入周期的报文调度之后,若某一输入通道在T周期存在报文输入,则上述报文调度装置可以读取该输入通道在第T-1输入周期的对应的授权码,然后将该输入通道在第T-1输入周期的对应的授权码更新该输入通道在第T输入周期的优先编码。较佳地,在本发明的实施例中,如果某一输入通道在第T输入周期不存在报文输入,那么则将该输入通道在第T-1输入周期的对应的优先编码保持。
本发明实施例提供了一种报文调度方法,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
实施例五
图5为本发明实施例提出的一种报文调度方法的实现流程示意图五,如图5所示,基于实施例二,在本发明的实施例中,报文调度装置根据第一优先码和第一状态码,计算第一授权码的方法可以包括以下步骤:
步骤501、根据第一状态码和第一优先码,确定第一优先级掩码。
在本发明的实施例中,报文调度装置在确定第一输入通道调度上述第一报文时对应的第一状态码和第一优先码之后,可以根据上述第一状态码和上述第一优先码,确定上述第一优先级掩码。
步骤502、对第一状态码和第一优先级掩码进行逻辑与运算,获得第一授权码。
在本发明的实施例中,报文调度装置在根据上述第一状态码和上述第一优先码,确定上述第一优先级掩码之后,可以对上述第一状态码和上述第一优先级掩码进行逻辑与运算,从而可以获得上述第一输入通道在调度上述第一报文时对应的第一授权码。
在本发明的实施例中,进一步地,上述报文调度装置也可以在获取上述第二输入通道对应的第二状态码和第二优先码之后,然后根据上述第二输入通道对应的第二状态码和第二优先码计算上述第二输入通道调度上述第二报文时对应的第二授权码。
本发明实施例提供了一种报文调度方法,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
实施例六
图6为本发明实施例提出的一种报文调度方法的实现流程示意图六,如图6所示,基于实施例五,在本发明的实施例中,报文调度装置根据第一状态码和第一优先码,确定第一优先级掩码的方法可以包括以下步骤:
步骤501a、当第一状态码大于优先码时,计算第一状态码和第一优先码的第一差值结果,并对第一差值结果进行取反计算,获得第一优先级掩码。
在本发明的实施例中,报文调度装置在确定第一输入通道在第T输入周期的第一状态码和第一优先码之后,如果上述第一状态码大于上述第一优先码时,上述报文调度装置可以对上述第一状态码和上述第一优先码进行减法计算,获得上述第一状态码和上述第一优先码的第一差值结果,然后上述报文调度装置可以对上述第一差值结果进行取反计算,并将取反计算的结果确定为上述第一优先级掩码。
步骤501b、当第一状态码小于第一优先码时,计算第一状态码和第一预设阈值的第二差值结果,并对第二差值结果进行取反计算,获得第一优先级掩码。
在本发明的实施例中,报文调度装置在确定第一输入通道在第T输入周期的第一状态码和第一优先码之后,如果上述第一状态码小于上述第一优先码时,上述报文调度装置可以对上述第一状态码和预先设置的第一预设阈值进行减法计算,获得上述第一状态码和上述第一预设阈值的第二差值结果,然后上述报文调度装置可以对上述第二差值结果进行取反计算,并将取反计算的结果确定为上述优先级掩码。较佳地,在本发明的实施例中,上述第一预设阈值可以为1。
步骤501c、当第一状态码等于第一优先码时,将第二预设阈值设置为第一优先级掩码。
在本发明的实施例中,报文调度装置在确定第一输入通道在第T输入周期的第一状态码和第一优先码之后,如果上述第一状态码等于上述第一优先码时,上述报文调度装置可以直接将预先设置的第二预设阈值确定为上述第一优先级掩码。较佳地,在本发明的实施例中,上述第二预设阈值可以为0。
根据上述的描述可知,通过上述的步骤501a~501c,当第一状态码大于第一优先码时,报文调度装置可以计算第一状态码和第一优先码的第一差值结果,并对第一差值结果进行取反计算,获得第一优先级掩码;当第一状态码小于第一优先码时,计算第一状态码和第一预设阈值的第二差值结果,并对第二差值结果进行取反计算,获得第一优先级掩码;当第一状态码等于第一优先码时,将第二预设阈值设置为第一优先级掩码;从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
在发明的实施例中,进一步地,上述报文调度装置按照上述步骤,根据上述第二状态码和上述第二优先码,确定上述第二优先级掩码。
实施例七
基于实施例一至实施例六,图7为本发明实施例提出的一种基于双输入多输出的报文调度方法的流程示意图,图8为一种典型的双输入十六内核网络处理器结构示意图,如图8所示,该网络处理器提供两个报文输入通道,内部包含16个微码处理器内核;两个输入通道的报文通过2进16出调度模块,将报文均衡地调度到16个微码处理器内核中进行处理。结合如图8所示的结构,如图7所示,该双输入十六内核网络处理器进行报文调度的方法主要包括以下步骤:
步骤601、当有报文输入时,发送报文调度请求。
在本发明的实施例中,两个报文输入端口分别检测当前端口报文输入情况,当存在报文输入时,将输入的报文存入各自输入通道的报文缓存队列中,并向报文调度模块发出报文调度请求。
步骤602、获取输入通道对应的状态码。
在本发明的实施例中,接收到报文调度请求的输入通道,读取另一输入通道的报文缓存队列状态,若另一个输入通道的报文缓存队列为空,则直接对当前所有报文输出接口状态进行编码,得到第一输入通道的状态编码R1T和第二输入通道的状态编码R2T,其中,R1T为第一输入通道在第T输入周期对应的状态编码;R2T为第二输入通道在第T输入周期对应的状态编码。
在本发明的实施例中,若另一个通道的报文缓存队列也非空,则获取在第T-1输入周期该输入通道报文的调度结果,将调度结果对应的报文输出接口状态进行屏蔽,对其他报文输出接口状态进行编码,得到第一输入通道在第T输入周期对应的状态编码R1T和第二输入通道在第T输入周期对应的状态编码R2T。
步骤603、计算输入通道对应的授权码。
在本发明的实施例中,根据第一输入通道在第T输入周期对应的优先编码B1T,解析状态编码R1T,然后获得第一输入通道在第T输入周期对应的授权码G1T。相应地,根据第二输入通道在第T输入周期对应的优先编码B2T,解析状态编码R2T,然后获得第二输入通道在第T输入周期对应的授权码G2T。其中,B1T为第一输入通道在第T输入周期对应的优先编码;B2T为第二输入通道在第T输入周期对应的优先编码;G1T为第一输入通道在第T输入周期对应的授权码;G2T为第二输入通道在第T输入周期对应的授权码。
具体地,在本发明的实施例中,首先比较状态编码与优先编大小;如果状态编码大于优先编码,则使用状态编码减去优先编码,得到优先级掩码的反码;如果状态编码小优先编码,则使用状态编码减去1,得到优先级掩码的反码;如果状态编码等于优先编码,则将优先级掩码的反码设定为0。
进一步地,在本发明的实施例中,可以将优先级掩码的反码取反,得到优先级掩码;最后将状态编码与优先级掩码进行逻辑与操作,得到授权码。
进一步地,在本发明的实施例中,在系统初始化时,可以将两个输入通道在第T输入周期的优先编码B1T和B2T置成不同的值,从而降低调度冲突的概率。
步骤604、读取各个输入通道中缓存的报文。
在本发明的实施例中,两个输入通道分别读取各自报文缓存队列中在第T输入周期的报文P1T和报文P2T。其中,P1T为第一输入通道在第T输入周期缓存的报文;P2T为第二输入通道在第T输入周期缓存的报文。
步骤605、根据授权码对报文进行调度。
在本发明的实施例中,先对两个输入通道报文的授权码,即第一输入通道在第T输入周期对应的授权码G1T和第二输入通道在第T输入周期对应的授权码G2T进行比较,需要说明的是,如果某一输入通道在第T输入周期没有报文,则其在第T输入周期的授权码为0。
在本发明的实施例中,若G1T和G2T将报文P1T和P2T授权到同一个报文输出接口,则保存G1T,同时,第二输入通道中的报文P2T使用授权码G2T正常调度输出;如果第一输入通道在第T+1输入周期有报文输入,则使用第T+1输入周期的报文产生的授权码G1(T+1)将报文P1T调度输出,而第T+1输入周期的报文P1(T+1)使用授权码G1T调度输出;如果第一输入通道在第T+1输入周期没有报文输入,则将报文P1T同时保存,在第T+1输入周期再使用授权码G1T将报文P1T调度输出。其中,G1(T+1)为第一输入通道在第T+1输入周期对应的授权码;P1(T+1)为第一输入通道在第T+1缓存的报文。
在本发明的实施例中,在完成了第T输入周期的一次两路报文调度的过程之后,在第T+1输入周期,若某一输入通道在第T输入周期存在报文输入,则该输入通道可以根据步骤303产生的授权码计算并更新第T+1输入周期的优先编码B1(T+1)或者B2(T+1);若第T输入周期不存在报文输入,则将优先编码保持。其中,B1(T+1)为第一输入通道在第T+1输入周期对应的优先编码;B2(T+1)为第二输入通道在第T+1输入周期对应的优先编码。
通过上述步骤601至步骤605可知,本发明提出的报文调度方法,在第T+1输入周期,如果存在两个及两个以上的报文输出接口可用,则第一输入通道中的生成的授权码G1T+1≠G1T,第二输入通道中的生成的授权码G2(T+1)≠G2T;由此可以推断,若G1T=G2T,即G1T和G2T将报文P1T和P2T授权到同一个报文输出接口时,由于G1(T+1)≠G2T,G1T≠G2(T+1),因此使用第T+1输入周期的报文产生的授权码G1(T+1)将报文P1T调度输出,而第T+1输入周期的报文P1(T+1)使用授权码G1T调度输出,便可以实现两个输入通道报文的连续调度,保证100%吞吐率。其中,G2(T+1)为第二输入通道在第T+1输入周期对应的授权码。
通过上述步骤602可知,本发明提出的报文调度方法,如果只存在一个报文输出接口可用,且只有一个报文通道存在报文输入,该输入通道可以直接根据报文输出接口状态产生相应的状态码,报文可以连续授权输出;如果只存在一个报文输出接口可用,且两个输入通道同时存在报文输入,在上一时钟周期将报文调度至该接口的通道,会将此报文输出接口状态屏蔽,该输入通道的报文在此时钟周期将不会被调度输出;但是在下一周期,该输入通道报文将可以得到授权,并调度输出。
通过上述步骤601至步骤605可知,本发明提出的报文调度方法,每个输入通道在完成报文调度后,更新各自输入通道的优先编码。当存在多个报文输出接口可用时,两个输入通道的报文将会被轮转调度到各个报文输出接口,从而实现公平的报文调度。
本发明实施例提供了一种报文调度方法,在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。也就是说,本发明实施例提出的一种报文调度方法,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
实施例八
基于实施例一至实施例七的同一发明构思下,图9为本发明实施例提出的终端的组成结构示意图一,如图9所示,本发明实施例提出的报文调度装置1包括:获取单元11,检测单元12,调度单元13。
获取单元11,用于在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数。
检测单元12,用于在获取单元11根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码之后,当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入。
获取单元11,还用于在检测单元12检测第一输入通道在第T+1输入周期是否存在第三报文输入之后,当第一输入通道在第T+1输入周期有第三报文输入时,按照预设获取策略获取第一输入通道调度第三报文时对应的第三授权码。
调度单元15,用于在获取单元11按照预设获取策略获取第一输入通道调度第三报文时对应的第三授权码之后,根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。
图10为本发明实施例提出的终端的组成结构示意图二,如图10所示,本发明实施例提出的获取单元11包括:获取子单元111和计算子单元112。
获取子单元111,用于获取第一输入通道调度第一报文时对应的第一状态码和第一优先码,以及第二输入通道调度第二报文时对应的第二状态码和第二优先码。
计算子单元112,用于根据第一状态码和第一优先码,计算第一授权码;以及根据第二状态码和第二优先码,计算第二授权码。
进一步地,在本发明的实施例中,获取子单元111,具体用于在预设输出接口中分别确定第一输入通道在第T-1输入周期的第一输出接口,和第二输入通道在第T-1输入周期的第二输出接口;以及将第一输出接口和第二输出接口设置为关闭状态;以及对第一输出接口和预设输出接口中的其他输出接口进行编码,获得第一状态码;以及对第二输出接口和预设输出接口中的其他输出接口进行编码,获得第二状态码。
进一步地,在本发明的实施例中,获取子单元111,还具体用于当T等于1时,将第一预存初始优先码设置为第一优先码,将第二预存初始优先码设置为第二优先码;当T大于1时,读取第一输入通道在第T-1输入周期调度报文时的第四授权码和第二输入通道在第T-1输入周期调度报文时的第五授权码,并将第四授权码设置为第一优先码,将第五授权码设置为第二优先码。
进一步地,在本发明的实施例中,计算子单元112,具体用于根据第一状态码和第一优先码,确定第一优先级掩码;以及对第一状态码和第一优先级掩码进行逻辑与运算,获得第一授权码。
计算子单元112,还具体用于根据第二状态码和第二优先码,确定第二优先级掩码;以及对第二状态码和第二优先级掩码进行逻辑与运算,获得第二授权码。
进一步地,在本发明的实施例中,计算子单元112,具体用于当第一状态码大于第一优先码时,计算第一状态码和第一优先码的第一差值结果,并对第一差值结果进行取反计算,获得第一优先级掩码;以及当第一状态码小于第一优先码时,计算第一状态码和第一预设阈值的第二差值结果,并对第二差值结果进行取反计算,获得第一优先级掩码;以及当第一状态码等于第一优先码时,将第二预设阈值设置为第一优先级掩码。
进一步地,在本发明的实施例中,计算子单元112,还具体用于当第二状态码大于第二优先码时,计算第二状态码和第二优先码的第三差值结果,并对第三差值结果进行取反计算,获得第二优先级掩码;以及当第二状态码小于第二优先码时,计算第二状态码和第一预设阈值的第四差值结果,并对第四差值结果进行取反计算,获得第二优先级掩码;以及当第二状态码等于第二优先码时,将第二预设阈值设置为第二优先级掩码。
进一步地,在本发明的实施例中,调度单元13,还用于在根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码之后,当第一授权码和第二授权码不同时,根据第一授权码调度第一报文,以及根据第二授权码调度第二报文。
进一步地,在本发明的实施例中,调度单元13,还用于在检测第一输入通道在第T+1输入周期是否存在第三报文输入之后,当第一输入通道在第T+1输入周期不存在第三报文输入时,保存第一报文,在第T+1输入周期,根据第一授权码调度第一报文。
图11为本发明实施例提出的终端的组成结构示意图三,在实际应用中,基于实施例一至实施例七的同一发明构思下,如图11所示,报文调度装置1可以包括处理器14、存储有处理器14可执行指令的存储器15、通信接口16,和用于连接处理器14、存储器15以及通信接口16的总线17。
在本发明的实施例中,获取单元11、检测单元12以及检测单元13均可由位于报文调度装置1上的处理器14实现,上述处理器14可以为特定用途集成电路(ApplicationSpecific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital Signal Processing Device,DSPD)、可编程逻辑装置(ProgRAMmable Logic Device,PLD)、现场可编程门阵列(Field ProgRAMmable GateArray,FPGA)、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本发明实施例不作具体限定。该报文调度装置1还可以包括存储器15,该存储器15可以与处理器14连接,其中,存储器15用于存储可执行程序代码,该程序代码包括计算机操作指令,存储器13可能包含高速RAM存储器,也可能还包括非易失性存储器,例如,至少两个磁盘存储器。
在本发明的实施例中,总线17用于连接通信接口16、处理器14和存储器15以及这些器件之间的相互通信。
在本发明的实施例中,存储器15,用于存储指令和数据。
处理器14,用于在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。
在实际应用中,上述存储器15可以是易失性第一存储器(volatile memory),例如随机存取第一存储器(Random-Access Memory,RAM);或者非易失性第一存储器(non-volatile memory),例如只读第一存储器(Read-Only Memory,ROM),快闪第一存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的第一存储器的组合,并向处理器14提供指令和数据。
本发明实施例提供了一种报文调度装置,在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。也就是说,本发明实施例提出的一种报文调度装置,可以根据当前所有输出接口的状态、两个输入通道的报文输入情况、以及上一周期两个输入通道进行报文调度的结果,在当前输入周期同时完成两个输入通道报文的调度、实现公平的轮转输出的调度过程,从而在不增加系统功耗且不浪费带宽的前提下,能够避免两个输入通道在相同的输入周期调度报文时存在的输出接口的冲突,有效地提高报文吞吐率。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供一种计算机可读存储介质,其上存储有程序,应用于终端中,该程序被处理器执行时实现如实施例一至实施例七的方法。
具体来讲,本实施例中的一种报文调度方法对应的程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种报文调度方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取第一输入通道调度第一报文时对应的第一授权码,和第二输入通道调度第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;
当第一授权码和第二授权码相同时,检测第一输入通道在第T+1输入周期是否存在第三报文输入;
当第一输入通道在第T+1输入周期存在第三报文输入时,根据预设获取策略获取第一输入通道调度第三报文时对应的第三授权码;
根据第三授权码调度第一报文,以及根据第二授权码调度第二报文。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (16)
1.一种报文调度方法,其特征在于,所述方法包括:
在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;第一授权码用于表征所述第一输入通道在第T输入周期调度所述第一报文时对应的全部输出接口的授权状态;第二授权码用于表征所述第二输入通道在第T输入周期调度所述第二报文时对应的全部输出接口的授权状态;
当所述第一授权码和所述第二授权码相同时,检测所述第一输入通道在第T+1输入周期是否存在第三报文输入;
当所述第一输入通道在所述第T+1输入周期存在所述第三报文输入时,根据所述预设获取策略获取所述第一输入通道调度所述第三报文时对应的第三授权码;所述第三授权码用于第一输入通道在第T+1输入周期调度上述第三报文时对应的上述全部输出接口的授权状态;
根据所述第三授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
2.根据权利要求1所述的方法,其特征在于,所述根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码,包括:
获取所述第一输入通道调度所述第一报文时对应的第一状态码和第一优先码,以及所述第二输入通道调度所述第二报文时对应的第二状态码和第二优先码;
根据所述第一状态码和所述第一优先码,计算所述第一授权码;以及根据所述第二状态码和所述第二优先码,计算所述第二授权码。
3.根据权利要求2所述的方法,其特征在于,所述获取所述第一输入通道调度所述第一报文时对应的第一状态码,以及所述第二输入通道调度所述第二报文时对应的第二状态码,包括:
在预设输出接口中分别确定所述第一输入通道在第T-1输入周期的第一输出接口,和所述第二输入通道在第T-1输入周期的第二输出接口;
将所述第一输出接口和所述第二输出接口设置为关闭状态;
对所述第一输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第一状态码;以及对所述第二输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第二状态码。
4.根据权利要求3所述的方法,其特征在于,所述获取所述第一输入通道调度所述第一报文时对应的第一优先码,以及所述第二输入通道调度所述第二报文时对应的第二优先码,包括:
当T等于1时,将第一预存初始优先码设置为所述第一优先码,将第二预存初始优先码设置为所述第二优先码;
当T大于1时,读取所述第一输入通道在所述第T-1输入周期调度报文时的第四授权码和所述第二输入通道在所述第T-1输入周期调度报文时的第五授权码,并将所述第四授权码设置为所述第一优先码,将所述第五授权码设置为所述第二优先码。
5.根据权利要求2所述的方法,其特征在于,所述根据所述第一优先码和所述第一状态码,计算所述第一授权码,包括:
根据所述第一状态码和所述第一优先码,确定第一优先级掩码;
对所述第一状态码和所述第一优先级掩码进行逻辑与运算,获得所述第一授权码。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一状态码和所述第一优先码,确定第一优先级掩码,包括:
当所述第一状态码大于所述第一优先码时,计算所述第一状态码和所述第一优先码的第一差值结果,并对所述第一差值结果进行取反计算,获得所述第一优先级掩码;
当所述第一状态码小于所述第一优先码时,计算所述第一状态码和第一预设阈值的第二差值结果,并对所述第二差值结果进行取反计算,获得所述第一优先级掩码;
当所述第一状态码等于所述第一优先码时,将第二预设阈值设置为所述第一优先级掩码。
7.根据权利要求2所述的方法,其特征在于,所述根据所述第二优先码和所述第二状态码,计算所述第二授权码,包括:
根据所述第二状态码和所述第二优先码,确定第二优先级掩码;
对所述第二状态码和所述第二优先级掩码进行逻辑与运算,获得所述第二授权码。
8.根据权利要求7所述的方法,其特征在于,所述根据所述第二状态码和所述第二优先码,确定第二优先级掩码,包括:
当所述第二状态码大于所述第二优先码时,计算所述第二状态码和所述第二优先码的第三差值结果,并对所述第三差值结果进行取反计算,获得所述第二优先级掩码;
当所述第二状态码小于所述第二优先码时,计算所述第二状态码和所述第一预设阈值的第四差值结果,并对所述第四差值结果进行取反计算,获得所述第二优先级掩码;
当所述第二状态码等于所述第二优先码时,将所述第二预设阈值设置为所述第二优先级掩码。
9.根据权利要求1所述的方法,其特征在于,所述根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码之后,所述方法还包括:
当所述第一授权码和所述第二授权码不同时,根据所述第一授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
10.根据权利要求1所述的方法,其特征在于,所述检测所述第一输入通道在第T+1输入周期是否存在第三报文输入之后,所述方法还包括:
当所述第一输入通道在所述第T+1输入周期不存在所述第三报文输入时,保存所述第一报文,在所述第T+1输入周期,根据所述第一授权码调度所述第一报文。
11.一种报文调度装置,其特征在于,所述报文调度装置包括:获取单元,检测单元,调度单元,
所述获取单元,用于在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;第一授权码用于表征所述第一输入通道在第T输入周期调度所述第一报文时对应的全部输出接口的授权状态;第二授权码用于表征所述第二输入通道在第T输入周期调度所述第二报文时对应的全部输出接口的授权状态;
所述检测单元,用于当所述第一授权码和所述第二授权码相同时,检测所述第一输入通道在第T+1输入周期是否存在第三报文输入;
所述获取单元,用于当所述第一输入通道在所述第T+1输入周期有所述第三报文输入时,按照所述预设获取策略获取所述第一输入通道调度所述第三报文时对应的第三授权码;所述第三授权码用于第一输入通道在第T+1输入周期调度上述第三报文时对应的上述全部输出接口的授权状态;
所述调度单元,用于根据所述第三授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文。
12.根据权利要求11所述的报文调度装置,其特征在于,所述获取单元包括:获取子单元,计算子单元,
所述获取子单元,用于获取所述第一输入通道调度所述第一报文时对应的第一状态码和第一优先码,以及所述第二输入通道调度所述第二报文时对应的第二状态码和第二优先码;
所述计算子单元,用于根据所述第一状态码和所述第一优先码,计算所述第一授权码;以及根据所述第二状态码和所述第二优先码,计算所述第二授权码;
其中,所述获取子单元,具体用于在预设输出接口中分别确定所述第一输入通道在第T-1输入周期的第一输出接口,和所述第二输入通道在第T-1输入周期的第二输出接口;以及将所述第一输出接口和所述第二输出接口设置为关闭状态;以及对所述第一输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第一状态码;以及对所述第二输出接口和所述预设输出接口中的其他输出接口进行编码,获得所述第二状态码;
所述获取子单元,还具体用于当T等于1时,将第一预存初始优先码设置为所述第一优先码,将第二预存初始优先码设置为所述第二优先码;当T大于1时,读取所述第一输入通道在所述第T-1输入周期调度报文时的第四授权码和所述第二输入通道在所述第T-1输入周期调度报文时的第五授权码,并将所述第四授权码设置为所述第一优先码,将所述第五授权码设置为所述第二优先码。
13.根据权利要求12所述的报文调度装置,其特征在于,
所述计算子单元,具体用于根据所述第一状态码和所述第一优先码,确定第一优先级掩码;以及对所述第一状态码和所述第一优先级掩码进行逻辑与运算,获得所述第一授权码;
所述计算子单元,还具体用于根据所述第二状态码和所述第二优先码,确定第二优先级掩码;以及对所述第二状态码和所述第二优先级掩码进行逻辑与运算,获得所述第二授权码;
其中,所述计算子单元,具体用于当所述第一状态码大于所述第一优先码时,计算所述第一状态码和所述第一优先码的第一差值结果,并对所述第一差值结果进行取反计算,获得所述第一优先级掩码;以及当所述第一状态码小于所述第一优先码时,计算所述第一状态码和第一预设阈值的第二差值结果,并对所述第二差值结果进行取反计算,获得所述第一优先级掩码;以及当所述第一状态码等于所述第一优先码时,将第二预设阈值设置为所述第一优先级掩码;
所述计算子单元,还具体用于当所述第二状态码大于所述第二优先码时,计算所述第二状态码和所述第二优先码的第三差值结果,并对所述第三差值结果进行取反计算,获得所述第二优先级掩码;以及当所述第二状态码小于所述第二优先码时,计算所述第二状态码和所述第一预设阈值的第四差值结果,并对所述第四差值结果进行取反计算,获得所述第二优先级掩码;以及当所述第二状态码等于所述第二优先码时,将所述第二预设阈值设置为所述第二优先级掩码。
14.根据权利要求11所述的报文调度装置,其特征在于,
所述调度单元,还用于在根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码之后,当所述第一授权码和所述第二授权码不同时,根据所述第一授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文;
所述调度单元,还用于在检测所述第一输入通道在第T+1输入周期是否存在第三报文输入之后,当所述第一输入通道在所述第T+1输入周期不存在所述第三报文输入时,保存所述第一报文,在所述第T+1输入周期,根据所述第一授权码调度所述第一报文。
15.一种报文调度装置,其特征在于,所述报文调度装置包括处理器、存储有所述处理器可执行指令的存储器、通信接口,和用于连接所述处理器、所述存储器以及所述通信接口的总线,当所述指令被执行时,所述处理器执行如下操作:
所述处理器,用于在第T输入周期,当第一输入通道存在第一报文输入,且第二输入通道存在第二报文输入时,根据预设获取策略获取所述第一输入通道调度所述第一报文时对应的第一授权码,和所述第二输入通道调度所述第二报文时对应的第二授权码;其中,T为大于或者等于1的整数;当所述第一授权码和所述第二授权码相同时,检测所述第一输入通道在第T+1输入周期是否存在第三报文输入;当所述第一输入通道在所述第T+1输入周期存在所述第三报文输入时,按照所述预设获取策略获取所述第一输入通道调度所述第三报文时对应的第三授权码;根据所述第三授权码调度所述第一报文,以及根据所述第二授权码调度所述第二报文,其中,第一授权码用于表征所述第一输入通道在第T输入周期调度所述第一报文时对应的全部输出接口的授权状态;第二授权码用于表征所述第二输入通道在第T输入周期调度所述第二报文时对应的全部输出接口的授权状态;所述第三授权码用于第一输入通道在第T+1输入周期调度上述第三报文时对应的上述全部输出接口的授权状态。
16.一种计算机可读存储介质,其上存储有程序,应用于终端中,其特征在于,所述程序被处理器执行时实现如权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710682606.1A CN109391556B (zh) | 2017-08-10 | 2017-08-10 | 一种报文调度方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710682606.1A CN109391556B (zh) | 2017-08-10 | 2017-08-10 | 一种报文调度方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109391556A CN109391556A (zh) | 2019-02-26 |
CN109391556B true CN109391556B (zh) | 2022-02-18 |
Family
ID=65415012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710682606.1A Active CN109391556B (zh) | 2017-08-10 | 2017-08-10 | 一种报文调度方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109391556B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021197617A1 (en) * | 2020-04-03 | 2021-10-07 | Huawei Technologies Co., Ltd. | Network device, system and method for cycle-based load balancing |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152281A (zh) * | 2013-03-05 | 2013-06-12 | 中国人民解放军国防科学技术大学 | 基于两级交换的负载均衡调度方法 |
CN106612236A (zh) * | 2015-10-21 | 2017-05-03 | 深圳市中兴微电子技术有限公司 | 众核网络处理器及其微引擎的报文调度方法、系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9705804B2 (en) * | 2012-08-30 | 2017-07-11 | Sonus Networks, Inc. | Opportunistic wireless resource utilization using dynamic traffic shaping |
US9397938B2 (en) * | 2014-02-28 | 2016-07-19 | Cavium, Inc. | Packet scheduling in a network processor |
-
2017
- 2017-08-10 CN CN201710682606.1A patent/CN109391556B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152281A (zh) * | 2013-03-05 | 2013-06-12 | 中国人民解放军国防科学技术大学 | 基于两级交换的负载均衡调度方法 |
CN106612236A (zh) * | 2015-10-21 | 2017-05-03 | 深圳市中兴微电子技术有限公司 | 众核网络处理器及其微引擎的报文调度方法、系统 |
Non-Patent Citations (1)
Title |
---|
一种动态分配输入队列的片上虫孔路由器结构;朱红雷等;《电子学报》;20100515;第38卷(第05期);1032-1037 * |
Also Published As
Publication number | Publication date |
---|---|
CN109391556A (zh) | 2019-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105511954B (zh) | 一种报文处理方法及装置 | |
JP5036920B1 (ja) | 中継装置、中継装置の制御方法、およびプログラム | |
US10324509B2 (en) | Automatic generation of power management sequence in a SoC or NoC | |
CN108632165B (zh) | 一种报文处理方法、装置及设备 | |
US9672910B2 (en) | Memory architecture for storing data in a plurality of memory chips | |
US10917361B2 (en) | Data processing apparatus and terminal | |
CN110825673B (zh) | 音频输入输出系统及方法 | |
WO2022227614A1 (zh) | 用于命令分发的装置、方法、芯片、计算机设备及存储介质 | |
CN113110943B (zh) | 软件定义交换结构及基于该结构的数据交换方法 | |
CN109391556B (zh) | 一种报文调度方法、装置及存储介质 | |
CN116627870A (zh) | 动态优先级加权轮询仲裁方法和仲裁器 | |
CN111953618B (zh) | 一种多级并行交换架构下的解乱序方法、装置及系统 | |
US6922456B2 (en) | Counter system and method | |
CN111711574B (zh) | 一种超高阶单周期报文调度方法及装置 | |
KR102384685B1 (ko) | 비균일 트래픽을 고려한 중앙 집중형 스케줄링 장치 및 방법 | |
CN103176941B (zh) | 核间通信方法和代理装置 | |
CN116961696A (zh) | 一种双模模块通信方法、装置、电子设备及存储介质 | |
CN106452695A (zh) | 冗余报文处理方法、装置及系统 | |
CN108984112B (zh) | 存储QoS控制策略的实现方法及装置 | |
US11483209B2 (en) | Forward progress mechanisms for a communications network having multiple nodes | |
CN114006862B (zh) | 报文转发方法、装置和设备及计算机存储介质 | |
WO2012149775A1 (zh) | 数据处理的方法和装置 | |
TW201502792A (zh) | 單循環仲裁 | |
CN111385214A (zh) | 一种流量控制方法、装置及设备 | |
CN115391053A (zh) | 基于cpu和gpu混合计算的在线服务方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |