著录项信息
| 专利名称 | 一种报文传输方法及装置 |
| 申请号 | CN201110164406.X | 申请日期 | 2011-06-17 |
| 法律状态 | 暂无 | 申报国家 | 暂无 |
| 公开/公告日 | 2011-10-19 | 公开/公告号 | CN102223306A |
| 优先权 | 暂无 | 优先权号 | 暂无 |
| 主分类号 | H04L12/865 | IPC分类号 | H;0;4;L;1;2;/;8;6;5查看分类表>
|
| 申请人 | 中兴通讯股份有限公司 | 申请人地址 | 广东省深圳市南山区科技南路55号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
| 权利人 | 中兴通讯股份有限公司 | 当前权利人 | 中兴通讯股份有限公司 |
| 发明人 | 陈晓;唐建娟 |
| 代理机构 | 北京康信知识产权代理有限责任公司 | 代理人 | 余刚;梁丽超 |
摘要
本发明公开了一种报文传输方法及装置,在该方法中设置的报文发送长度阈值,根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值;确定是否将时间片分配给该发送队列,进行报文传输;当确定所有发送队列中待发送报文包含的字节数都小于设置的报文发送长度阈值时,确定时间片空转。由于在本发明中通过对每个发送队列中包含的待发送报文包含的字节数,设置报文发送长度阈值,只有当发送队列中待发送报文包含的字节数,大于设定的报文发送长度阈值时,才将时间片分配给该发送队列,进行报文传输,因此,提高了时间片的利用率,从而有效的减少了系统资源的浪费。
一种报文传输方法及装置\n技术领域\n[0001] 本发明涉及数据通传输术领域,尤其涉及一种报文传输方法及装置。\n背景技术\n[0002] 在报文的传输过程中,系统根据报文的重要程度,为报文设置不同的优先级,当网络系统拥塞时,大量的报文汇聚到一个网络设备的出端口,此时在端口容量允许的情况下,需要尽量保证优先级高的报文优先发送。\n[0003] 另外,在网络设备上每个端口一般有8个输出队列,每个队列均有固定的优先级,用数字的方式表示,依次为7、6、5、4、3、2、1、0队列,每个队列的优先级预先注册在系统内。\n其中,序号最高的队列7具有最高的优先级,队列的优先级依据队列的序列号依次减小,队列0具有最低的优先级。并且,优先级高的报文放入优先级高的队列。\n[0004] 在队列调度时,严格按照优先级从高至低的次序,优先发送较高优先级队列中的报文,最高优先级当然具有最高的发送权。即,首先发送优先级最高的队列7中的报文,当优先级最高的队列7为空时,再发送优先级较低的队列6中的报文,以此类推。因此,将关键业务的报文放入较高优先级的队列中,而将非关键业务的报文放入较低优先级的队列中,可以保证关键业务的报文能及时发送,只有当网络系统空闲,没有高优先级的报文发送时,低优先级的报文才能被发送。\n[0005] 在网络设备中,最基本的优先级队列调度方式是采用固定优先级和时间片结合的方式进行。在第一个时间片中,系统根据待发送报文所在队列的优先级,选择所在队列优先级最高的待发送报文进行发送,当该时间片结束时,即使该队列中仍有报文,系统仍然需要回收该队列的发送权,重新进行仲裁,当下一个时间片该队列的优先级仍然为最高时,才可以继续发送该队列的报文,否则,系统选择优先级更高的队列中的报文进行发送。\n[0006] 因为每个时间片的时间长度是一定的,并且端口的最大速率是由系统确定的,所以,每个时间片最多能够发送的报文长度也是确定的。例如某系统的端口速率为1Gbps,时间片长度为10us,则每个时间片内能够发送的报文长度为1Gbps*10us=1250bytes。当队列中的待发送报文长度小于系统一个时间片内支持的最大长度时,即使该队列中的报文已经发送完成,系统仍需要等待至这个时间片结束才能重新分配下一个时间片。\n[0007] 目前,优先级较高队列中发送的报文一般为协议报文,由于协议报文通常不会连续发送,并且每个协议报文包含的字节数比较少,因此,当系统分配时间片用于协议报文进行发送时,可能仅有小部分时间在发送报文,而大部分时间都浪费掉了。在一种极端情况下,当协议报文的发送周期与时间片重合时,就会出现每个时间片只能发送一个协议报文,同时,低优先级队列中的报文往往因为时间片一直被占用,而无法进行发送。\n[0008] 因此,在现有技术中,采用固定优先级和时间片结合的方式进行报文传输的过程中,由于时间片分配不合理,会导致时间片利用率偏低,造成系统资源的极大浪费,也严重影响了网络系统的性能。\n发明内容\n[0009] 有鉴于此,本发明提供了一种报文传输方法及装置,用以解决现有技术中由于时间片分配不合理,而导致系统资源浪费的问题。\n[0010] 本发明提供了一种报文传输方法,该方法包括以下步骤:\n[0011] 根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值;\n[0012] 当确定发送队列中包含的待发送报文包含的字节数大于设置的报文发送长度阈值时,将时间片分配给该发送队列,进行报文传输;\n[0013] 否则,确定时间片空转。\n[0014] 本发明提供了一种报文传输装置,所述装置包括:\n[0015] 判断模块,用于根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值;\n[0016] 传输空转模块,用于当确定发送队列中包含的待发送报文包含的字节数大于设置的报文发送长度阈值时,将时间片分配给该发送队列,进行报文传输;否则,确定时间片空转。\n[0017] 本发明提供了一种报文传输方法及装置,在该方法中设置的报文发送长度阈值,根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值;确定是否将时间片分配给该发送队列,进行报文传输;当确定所有发送队列中待发送报文包含的字节数都小于设置的报文发送长度阈值时,确定时间片空转。由于在本发明中通过对每个发送队列中包含的待发送报文包含的字节数,设置报文发送长度阈值,只有当发送队列中待发送报文包含的字节数,大于设定的报文发送长度阈值时,才将时间片分配给该发送队列,进行报文传输,因此,提高了时间片的利用率,从而有效的减少了系统资源的浪费。\n附图说明\n[0018] 此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:\n[0019] 图1为本发明提供的一种报文传输的过程示意图;\n[0020] 图2为本发明提供的一种报文传输过程的详细示意图;\n[0021] 图3为本发明提供的另一种报文传输的详细过程示意图;\n[0022] 图4为本发明提供的一种报文发送装置的结构示意图。\n具体实施方式\n[0023] 为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0024] 本发明为了提高时间片的利用率,减少系统资源的浪费,提供了一种报文传输方法及装置,由于在本发明中通过对每个发送队列设置报文发送长度阈值,只有当发送队列中待发送报文包含的字节数,大于设定的报文发送长度阈值时,才将时间片分配给该发送队列,进行报文传输,因此,提高了时间片的利用率,从而有效的减少了系统资源的浪费。\n[0025] 图1为本发明提高的一种报文传输的过程示意图,该传输过程包括以下几个步骤:\n[0026] S101:根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值,当判定结果为是时,进行步骤S102,否则,进行步骤S103。\n[0027] 其中,报文发送长度阈值可以为任意值,是根据端口的最大速率及时间片的时间长度确定的。\n[0028] 具体的,系统根据端口的最大速率及时间片的时间长度,设置发送队列的报文发送长度阈值,由于每个时间片的时间长度是一定的,端口的最大速率由系统的配置确定,因此,每个时间片的时间长度内,端口能够传输的最大报文字节数,为端口的最大速率与时间片的时间长度乘积而确定的固定值。\n[0029] S102:将时间片分配给该发送队列,进行报文传输。\n[0030] 具体的,在本发明中系统将当前的一个时间片分配给查找到的发送队列,其中,该查找到的发送队列为,包含的待发送报文的字节数大于设置的报文发送长度阈值的队列中,且优先级最高的发送队列。\n[0031] S103:确定时间片空转。\n[0032] 其中,当系统在端口中未查找到,包含待发送报文的字节数大于设置的报文发送长度阈值的发送队列时,系统将当前的时间片空转,并开始下一个时间片的分配过程。\n[0033] 在本发明中通过对每个发送队列设置报文发送长度阈值,只有当发送队列中包含的待发送报文包含的字节数,大于设定的报文发送长度阈值时,才将时间片分配给该发送队列,进行报文传输,因此,提高了时间片的利用率,从而有效的减少了系统资源的浪费。\n[0034] 而当每个发送队列中包含的待发送报文包含的字节数都不大于设置的报文长度阈值时,该时间片可以空转,或者,为了保证优先级较高的发送队列中报文的发送,该时间片可以发送优先级最高的发送队列中包含的待发送报文,或者也可以在所有的发送队列中查找包含的字节数最多的发送队列,发送该发送队列中的待发送报文,再或者可以任意选择一个发送队列,发送该发送队列包含的待发送报文。\n[0035] 另外,在本发明中为了在提高时间片利用率的同时,保证优先级高的报文优先进行传输,根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文的字节数,是否大于设置的报文发送长度阈值,包括:\n[0036] 查找当前发送队列中优先级最高的发送队列;\n[0037] 针对该发送队列,确定当前该发送队列中待发送报文包含的字节数;\n[0038] 判断该待发送报文包含的字节数,是否大于设置的报文发送长度阈值;\n[0039] 当确定该待发送报文包含的字节数大于设置的报文发送长度阈值时,将时间片分配给该发送队列,进行报文传输,否则,查找较该优先级最高的发送队列优先级低的发送队列,直至将时间片分配给该发送队列,进行报文传输。\n[0040] 即在本发明中,按照发送队列的优先级从高到底的顺序,依次查找每个发送队列,并确定该发送队列中待发送报文包含的字节数,当按照次序查找到某一发送队列中包含的待发送报文包含的字节数大于设定的报文发送长度阈值时,则可以认为该发送队列为所有发送队列中,包含的待发送报文的字节数大于设定的报文发送长度阈值,且优先级最高的发送队列,此时将该时间片分配给发送队列,发送该发送队列中包含的待发送报文。\n[0041] 图2为本发明提供的一种报文传输过程的详细示意图,该传输过程包括以下几个步骤:\n[0042] S201:根据端口中每个发送队列的优先级,查找当前发送队列中优先级最高的发送队列。\n[0043] 具体的,当系统的时间片机制开始运转,进行时间片的分配时,系统根据端口中每个发送队列的优先级,查找当前发送队列中优先级最高的发送队列。\n[0044] S202:针对该优先级最高的发送队列,确定当前该发送队列中待发送报文包含的字节数。\n[0045] S203:判断该发送队列中待发送报文包含的字节数,是否大于设置的报文发送长度阈值,当判定结果为是时,进行步骤S204,否则,进行步骤S205。\n[0046] S204:将时间片分配给该发送队列,进行报文传输。\n[0047] S205:判断该发送队列是否为该端口的优先级最低的发送队列,当判断结果为是时,进行步骤S206,否则,进行步骤S207。\n[0048] S206:确定该时间片空转。\n[0049] S207:在该发送队列中除该优先级最高的发送队列之外的发送队列中,查找优先级最高的发送队列,将该发送队列作为当前优先级最高的队列,进行步骤S202。\n[0050] 在本发明中确定时间片空转包括:确定当前发送队列中优先级最低的发送队列中包含的待发送报文包含的字节数,小于设置的报文发送长度阈值时,当前时间片空转。\n[0051] 另外,在本发明中为了便于查找到包含的待发送报文包含的字节数,大于设置的报文发送长度阈值的发送队列,针对端口中的每个发送队列,在确定该发送队列中待发送报文包含的字节数之前,还包括:\n[0052] 确定该发送队列包含待发送报文。\n[0053] 这是因为有的发送队列中可能不包含待发送报文,如果该发送队列中不包含待发送报文,则该发送队列中包含的字节数为零,一定小于设置的报文发送长度阈值,因此,在本发明中为了提高报文发送的效率,在针对每个发送队列中待发送报文包含的字节数之前,先判断该待发送队列中是否包含待发送报文,当该发送队列中包含待发送报文时,再确定该发送队列中待发送报文包含的字节数,当该待发送队列中不包含待发送报文时,则确定该发送队列包含的字节数小于设定的报文发送长度阈值,直接进行下一优先级的发送队列的判断。\n[0054] 图3为本发明提供的另一种报文传输的详细过程示意图,该传输过程包括以下几个步骤:\n[0055] S301:系统的时间片机制开始运转,对当前的时间片进行分配。\n[0056] S302:根据端口中每个发送队列的优先级,查找当前发送队列中优先级最高的发送队列,将该优先级最高的发送队列作为当前发送队列。\n[0057] S303:判断当前发送队列中是否包含待发送报文,当判定结果为是时,进行步骤S304,否则,进行步骤S307。\n[0058] S304:针对该当前发送队列,确定该当前发送队列中待发送报文包含的字节数。\n[0059] S305:判断该当前发送队列中待发送报文包含的字节数,是否大于设置的报文发送长度阈值,当判定结果为是时,进行步骤S306,否则,进行步骤S307。\n[0060] S306:将时间片分配给该发送队列,进行报文传输。\n[0061] S307:判断该当前发送队列是否为该端口的优先级最低的发送队列,当判断结果为是时,进行步骤S308,否则,进行步骤S309。\n[0062] S308:确定该时间片空转,并立刻开始下一个时间片的分配。\n[0063] S309:在该发送队列中除优先级较该当前发送队列高的发送队列,及该当前发送队列之外的发送队列中,查找优先级最高的发送队列,将该优先级最高的发送队列作为当前发送队列,进行步骤S303。\n[0064] 具体的,当查找至端口中优先级最低的发送队列时,确定该优先级最低的发送队列中包含的待发送报文包含的字节数,小于设置的报文发送长度阈值时,当前时间片分配结束,并立刻开始下一个时间片的分配。\n[0065] 另外,在本发明中为了在提高时间片利用率的同时,进一步保证优先级高的报文优先进行传输,系统可以统一设置端口中每个发送队列的报文发送长度阈值,也可以根据端口中每种优先级的发送队列,分别设置该发送队列对应的报文发送长度阈值。\n[0066] 在本发明中当高优先级的报文包含的字节数较少时,为了保证低优先级流量较大的报文能够进行传输,系统为端口中的发送队列统一设置报文发送长度阈值,例如,统一设置成端口能够传输的最大报文字节数。这样,当端口中优先级高的发送队列中包含的报文较少时,由于该优先级高的发送队列中包含的报文字节数未达到设定的报文发送长度阈值,因此,系统将当前的时间片分配给优先级较低的,包含的报文字节数大于设定的报文发送长度阈值的发送队列,进行报文的传输。\n[0067] 或者,为了提高时间片利用率的同时,保证高优先级报文能及时的进行传输,系统根据端口中发送队列的优先级分别设定报文发送长度阈值,例如,设置优先级较高的发送队列的报文发送长度阈值为端口能够传输的最大报文字节数的60%,设置优先级较低的发送队列的报文发送长度阈值为端口能够传输的最大报文字节数。这样,当端口中优先级高的发送队列中包含的报文较少时,将时间片分配给优先级较低的,包含的报文字节数大于端口能够传输的最大报文字节数的发送队列,进行报文的传输,而当优先级高的队列中积累的待发送报文包含的字节数,大于端口能够传输的最大报文字节数的60%时,将时间片分配给该优先级高的发送队列,进行报文传输。\n[0068] 图4为本发明提供的一种报文发送装置的结构示意图,该装置包括:\n[0069] 判断模块41,用于根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值;\n[0070] 传输空转模块42,用于当确定发送队列中包含的待发送报文包含的字节数大于设置的报文发送长度阈值时,将时间片分配给该发送队列,进行报文传输;否则,确定时间片空转。\n[0071] 所述传输空转模块42,具体用于查找当前发送队列中优先级最高的发送队列;针对该发送队列,确定当前该发送队列中待发送报文包含的字节数;判断该待发送报文包含的字节数,是否大于设置的报文发送长度阈值;当确定该待发送报文包含的字节数大于设置的报文发送长度阈值时,将时间片分配给该发送队列,进行报文传输,否则,查找较该优先级最高的发送队列优先级低的发送队列,直至将时间片分配给该发送队列,进行报文传输。\n[0072] 所述判断模块41,还用于确定该发送队列是否包含待发送报文。\n[0073] 所述传输空转模块42,具体用于确定当前发送队列中优先级最低的发送队列中包含的待发送报文包含的字节数,小于设置的报文发送长度阈值时,时间片空转。\n[0074] 所述装置还包括:\n[0075] 设置模块43,用于根据端口的最大速率及时间片的时间长度,设置报文发送长度阈值,其中,报文发送长度阈值为不大于端口最大速率与时间片的时间长度乘积的任意值。\n[0076] 本发明提供了一种报文传输方法及装置,在该方法中设置的报文发送长度阈值,根据端口中每个发送队列的优先级,按照优先级依次判断每个发送队列中包含的待发送报文包含的字节数,是否大于设置的报文发送长度阈值;确定是否将时间片分配给该发送队列,进行报文传输;当确定所有发送队列中待发送报文包含的字节数都小于设置的报文发送长度阈值时,确定时间片空转。由于在本发明中通过对每个发送队列中包含的待发送报文包含的字节数,设置报文发送长度阈值,只有当发送队列中待发送报文包含的字节数,大于设定的报文发送长度阈值时,才将时间片分配给该发送队列,进行报文传输,因此,提高了时间片的利用率,从而有效的减少了系统资源的浪费。\n[0077] 上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
法律信息
- 2019-10-08
专利权的转移
登记生效日: 2019.09.16
专利权人由南京中兴软件有限责任公司变更为中兴通讯股份有限公司
地址由210012 江苏省南京市雨花台区宁南街道紫荆花路68号变更为518057 广东省深圳市南山区科技南路55号
- 2018-10-16
- 2018-08-17
专利申请权的转移
登记生效日: 2018.07.27
申请人由中兴通讯股份有限公司变更为南京中兴软件有限责任公司
地址由518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法务部变更为210012 江苏省南京市雨花台区宁南街道紫荆花路68号
- 2014-06-11
实质审查的生效
IPC(主分类): H04L 12/56
专利申请号: 201110164406.X
申请日: 2011.06.17
- 2011-10-19
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2009-09-30
|
2009-04-30
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |