一种报文调度方法和装置.pdf

上传人:r5 文档编号:1509738 上传时间:2018-06-19 格式:PDF 页数:17 大小:1.18MB
返回 下载 相关 举报
摘要
申请专利号:

CN201510589389.2

申请日:

2015.09.15

公开号:

CN106533954A

公开日:

2017.03.22

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):H04L 12/801申请日:20150915|||公开

IPC分类号:

H04L12/801(2013.01)I; H04L29/06

主分类号:

H04L12/801

申请人:

深圳市中兴微电子技术有限公司

发明人:

王兆丰; 宁少华

地址:

518085 广东省深圳市盐田区大梅沙1号厂房

优先权:

专利代理机构:

北京派特恩知识产权代理有限公司 11270

代理人:

张振伟;张颖玲

PDF下载: PDF下载
内容摘要

本发明实施例公开了一种报文调度方法和装置,该方法可以包括:将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类型;按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列;将所述传输队列按照预设的调度策略进行调度传输。

权利要求书

1.一种报文调度方法,其特征在于,所述方法包括:将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类型;按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列;将所述传输队列按照预设的调度策略进行调度传输。2.根据权利要求1所述的方法,其特征在于,所述将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类型,具体包括:对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文;或者,对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP报文对应的进程信息。3.根据权利要求2所述的方法,其特征在于,所述根据解析的得到的报文头信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文,具体包括:当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为空同时满足时,所述TCP报文为ACK报文;当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为空任一个不满足时,所述TCP报文为数据报文。4.根据权利要求2所述的方法,其特征在于,所述根据解析的得到的报文头信息确定所述TCP报文对应的进程信息,具体包括:根据解析得到的所述TCP报文的源端口信息和/或目的端口信息确定所述TCP报文对应的进程信息。5.根据权利要求2所述的方法,其特征在于,当根据解析的得到的报文头信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包括:将所述ACK报文和所述数据报文输入到对应的TCP传输通道;以及在所述TCP传输通道中,将所述TCP传输通道对应的ACK报文映射到单独的ACK报文传输队列,并将所述TCP传输通道对应数据报文映射到所述TCP传输通道对应的TCP业务传输队列中。6.根据权利要求5所述的方法,其特征在于,将所述传输队列按照预设的调度策略进行调度传输,具体包括:将所述TCP传输通道中对应的ACK报文传输队列和TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮询调度算法进行调度传输。7.根据权利要求2所述的方法,其特征在于,当根据解析的得到的报文头信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包括:将所述TCP报文中的所有ACK报文映射到单独的全局传输队列中,并将所述数据报文映射到对应的TCP传输通道中的TCP业务传输队列。 -->8.根据权利要求7所述的方法,其特征在于,将所述传输队列按照预设的调度策略进行调度传输,具体包括:根据预设的调度策略将各TCP传输通道中的TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮询调度算法进行调度所得到调度队列与全局队列进行调度传输。9.根据权利要求2所述的方法,其特征在于,当根据解析的得到的报文头信息确定所述TCP报文对应的进程信息时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包括:按照所述TCP报文对应的进程信息以及预设的队列映射管理机制,从所述TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报文映射到对应的TCP业务传输队列。10.根据权利要求9所述的方法,其特征在于,所述将所述传输队列按照预设的调度策略进行调度传输,具体包括:根据预设的调度策略将所述TCP传输通道中的所有TCP业务传输队列按照轮询调度或者带权重轮询调度算法进行调度所得到的调度队列与所述TCP传输通道中的常规业务传输队列进行调度传输。11.根据权利要求2所述的方法,其特征在于,当根据解析的得到的报文头信息确定所述TCP报文对应的进程信息时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包括:将所述TCP报文按照对应的TCP传输通道存储在子队列资源池,并按照所述TCP报文的进程信息将所述TCP报文映射到所述子队列资源池中对应TCP传输通道内的TCP传输子队列。12.根据权利要求11所述的方法,其特征在于,将所述传输队列按照预设的调度策略进行调度传输,具体包括:所述在子队列资源池中,按照轮询调度或者带权重轮询调度算法对每个TCP传输通道内的TCP传输子队列进行调度,得到每个TCP传输通道对应的调度队列;以及,按照预设的调度策略将每个TCP传输通道对应的调度队列与对应的TCP传输通道中的常规传输队列进行调度传输。13.一种报文调度装置,其特征在于,所述装置包括:解析单元、映射单元和调度单元;其中,所述解析单元,用于将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类型;所述映射单元,用于按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列;所述调度单元,用于将所述传输队列按照预设的调度策略进行调度传输。14.根据权利要求13所述的装置,其特征在于,所述解析单元,具体用于:对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文;或者,对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP报文对应的进程信息。 -->15.根据权利要求14所述的装置,其特征在于,所述解析单元,具体用于:当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为空同时满足时,所述TCP报文为ACK报文;当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为空任一个不满足时,所述TCP报文为数据报文。16.根据权利要求14所述的装置,其特征在于,所述解析单元,具体用于:根据解析得到的所述TCP报文的源端口信息和/或目的端口信息确定所述TCP报文对应的进程信息。17.根据权利要求14所述的装置,其特征在于,所述映射单元,具体用于:将所述ACK报文和所述数据报文输入到对应的TCP传输通道;以及在所述TCP传输通道中,将所述TCP传输通道对应的ACK报文映射到单独的ACK报文传输队列,并将所述TCP传输通道对应数据报文映射到所述TCP传输通道对应的TCP业务传输队列中。18.根据权利要求17所述的装置,其特征在于,所述调度单元,具体用于将所述TCP传输通道中对应的ACK报文传输队列和TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮询调度算法进行调度传输。19.根据权利要求14所述的装置,其特征在于,所述映射单元,具体用于:将所述TCP报文中的所有ACK报文映射到单独的全局传输队列中,并将所述数据报文映射到对应的TCP传输通道中的TCP业务传输队列。20.根据权利要求19所述的装置,其特征在于,所述调度单元,具体用于:根据预设的调度策略将各TCP传输通道中的TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮询调度算法进行调度所得到调度队列与全局队列进行调度传输。21.根据权利要求14所述的装置,其特征在于,所述映射单元,具体用于:按照所述TCP报文对应的进程信息以及预设的队列映射管理机制,从所述TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报文映射到对应的TCP业务传输队列。22.根据权利要求21所述的装置,其特征在于,所述调度单元,具体用于:根据预设的调度策略将所述TCP传输通道中的所有TCP业务传输队列按照轮询调度或者带权重轮询调度算法进行调度所得到的调度队列与所述TCP传输通道中的常规业务传输队列进行调度传输。23.根据权利要求14所述的装置,其特征在于,所述映射单元,具体用于:将所述TCP报文按照对应的TCP传输通道存储在子队列资源池,并按照所述TCP报文的进程信息将所述TCP报文映射到所述子队列资源池中对应TCP传输通道内的TCP传输子队列。24.根据权利要求23所述的装置,其特征在于,所述调度单元,具体用于:所述在子队列资源池中,按照轮询调度或者带权重轮询调度算法对每个TCP传输通道内的TCP传输子队列进行调度,得到每个TCP传输通道对应的调度队列;以及,按照预设的调度策略将每个TCP传输通道对应的调度队列与对应的TCP传输通道中的常规传输队列进行调度传输。 -->

说明书

一种报文调度方法和装置

技术领域

本发明涉及通信技术,尤其涉及一种报文调度方法和装置。

背景技术

目前的通信网络,大多采用传输控制协议/互联网络协议(TCP/IP,
Transmission Control Protocol/Internet Protocol)为传输协议。随着宽带网络日益
普及,尤其是无源光网络(PON,Passive Optical Network)技术的应用,使得
用户接入带宽越来越大,运营商和用户对于传输的稳定性和传输速率也有更高
的要求,所以,当前更加关注的是通信设备对于同一用户或者同一通道的双向
数据传输的稳定性和最大传输速率。

目前现有的设备和技术,大多都不能很好的支持同一用户或者同一通道内
的双向TCP传输,目前存在的问题是,下载速率会因为ACK报文被上传数据
干扰而大幅抖动,上传速率也会因为其ACK报文被下载数据干扰而大幅抖动,
并且都达不到预期的最大速率;出现该问题的原因是TCP协议报文中的ACK
报文受到同一个用户或者同一个通道上另一个方向的大量数据报文的影响,导
致ACK报文延迟变大,延迟抖动,甚至因为数据报文拥塞而导致ACK报文丢
弃,这些因素都会导致TCP协议的拥塞窗口频繁伸缩,发送速率剧烈抖动,从
而使得链路速率和稳定性变差。

发明内容

为解决上述技术问题,本发明实施例期望提供一种报文调度方法和装置,
能够改善ACK报文被数据报文干扰的情况,使得ACK报文的传输延迟稳定在
一个范围内,从而达到预期的最大传输速率,并且保证传输速率的稳定性。

本发明的技术方案是这样实现的:

第一方面,本发明实施例提供了一种报文调度方法,所述方法包括:

将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类
型;

按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应
的传输队列;

将所述传输队列按照预设的调度策略进行调度传输。

在上述方案中,所述将传输控制协议TCP封装的TCP报文进行解析,获
得所述TCP报文的类型,具体包括:

对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP
报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文;

或者,对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述
TCP报文对应的进程信息。

在上述方案中,所述根据解析的得到的报文头信息确定所述TCP报文为不
带数据净荷的确认ACK报文或携带数据净荷的数据报文,具体包括:

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空同时满足时,所述TCP报文为ACK报文;

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空任一个不满足时,所述TCP报文为数据报文。

在上述方案中,所述根据解析的得到的报文头信息确定所述TCP报文对应
的进程信息,具体包括:

根据解析得到的所述TCP报文的源端口信息和/或目的端口信息确定所述
TCP报文对应的进程信息。

在上述方案中,当根据解析的得到的报文头信息确定所述TCP报文为不带
数据净荷的确认ACK报文或携带数据净荷的数据报文时,所述按照所述TCP
报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包
括:

将所述ACK报文和所述数据报文输入到对应的TCP传输通道;以及在所
述TCP传输通道中,将所述TCP传输通道对应的ACK报文映射到单独的ACK
报文传输队列,并将所述TCP传输通道对应数据报文映射到所述TCP传输通
道对应的TCP业务传输队列中。

在上述方案中,将所述传输队列按照预设的调度策略进行调度传输,具体
包括:

将所述TCP传输通道中对应的ACK报文传输队列和TCP业务传输队列按
照优先级调度或者轮询调度或者带权重轮询调度算法进行调度传输。

在上述方案中,当根据解析的得到的报文头信息确定所述TCP报文为不带
数据净荷的确认ACK报文或携带数据净荷的数据报文时,所述按照所述TCP
报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包
括:

将所述TCP报文中的所有ACK报文映射到单独的全局传输队列中,并将
所述数据报文映射到对应的TCP传输通道中的TCP业务传输队列。

在上述方案中,将所述传输队列按照预设的调度策略进行调度传输,具体
包括:

根据预设的调度策略将各TCP传输通道中的TCP业务传输队列按照优先
级调度或者轮询调度或者带权重轮询调度算法进行调度所得到调度队列与全局
队列进行调度传输。

在上述方案中,当根据解析的得到的报文头信息确定所述TCP报文对应的
进程信息时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报
文映射到对应的传输队列,具体包括:

按照所述TCP报文对应的进程信息以及预设的队列映射管理机制,从所述
TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报文映射到对
应的TCP业务传输队列。

在上述方案中,所述将所述传输队列按照预设的调度策略进行调度传输,
具体包括:

根据预设的调度策略将所述TCP传输通道中的所有TCP业务传输队列按
照轮询调度或者带权重轮询调度算法进行调度所得到的调度队列与所述TCP传
输通道中的常规业务传输队列进行调度传输。

在上述方案中,当根据解析的得到的报文头信息确定所述TCP报文对应的
进程信息时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报
文映射到对应的传输队列,具体包括:

将所述TCP报文按照对应的TCP传输通道存储在子队列资源池,并按照
所述TCP报文的进程信息将所述TCP报文映射到所述子队列资源池中对应
TCP传输通道内的TCP传输子队列。

在上述方案中,将所述传输队列按照预设的调度策略进行调度传输,具体
包括:

所述在子队列资源池中,按照轮询调度或者带权重轮询调度算法对每个
TCP传输通道内的TCP传输子队列进行调度,得到每个TCP传输通道对应的
调度队列;以及,

按照预设的调度策略将每个TCP传输通道对应的调度队列与对应的TCP
传输通道中的常规传输队列进行调度传输。

第二方面,本发明实施例提供了一种报文调度装置,所述装置包括:解析
单元、映射单元和调度单元;其中,

所述解析单元,用于将传输控制协议TCP封装的TCP报文进行解析,获
得所述TCP报文的类型;

所述映射单元,用于按照所述TCP报文的类型及预设的映射机制将所述
TCP报文映射到对应的传输队列;

所述调度单元,用于将所述传输队列按照预设的调度策略进行调度传输。

在上述方案中,所述解析单元,具体用于:

对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP
报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文;

或者,对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述
TCP报文对应的进程信息。

在上述方案中,所述解析单元,具体用于:

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空同时满足时,所述TCP报文为ACK报文;

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空任一个不满足时,所述TCP报文为数据报文。

在上述方案中,所述解析单元,具体用于:

根据解析得到的所述TCP报文的源端口信息和/或目的端口信息确定所述
TCP报文对应的进程信息。

在上述方案中,所述映射单元,具体用于:

将所述ACK报文和所述数据报文输入到对应的TCP传输通道;以及在所
述TCP传输通道中,将所述TCP传输通道对应的ACK报文映射到单独的ACK
报文传输队列,并将所述TCP传输通道对应数据报文映射到所述TCP传输通
道对应的TCP业务传输队列中。

在上述方案中,所述调度单元,具体用于将所述TCP传输通道中对应的
ACK报文传输队列和TCP业务传输队列按照优先级调度或者轮询调度或者带
权重轮询调度算法进行调度传输。

在上述方案中,所述映射单元,具体用于:

将所述TCP报文中的所有ACK报文映射到单独的全局传输队列中,并将
所述数据报文映射到对应的TCP传输通道中的TCP业务传输队列。

在上述方案中,所述调度单元,具体用于:根据预设的调度策略将各TCP
传输通道中的TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮询
调度算法进行调度所得到调度队列与全局队列进行调度传输。

在上述方案中,所述映射单元,具体用于:

按照所述TCP报文对应的进程信息以及预设的队列映射管理机制,从所述
TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报文映射到对
应的TCP业务传输队列。

在上述方案中,所述调度单元,具体用于:

根据预设的调度策略将所述TCP传输通道中的所有TCP业务传输队列按
照轮询调度或者带权重轮询调度算法进行调度所得到的调度队列与所述TCP传
输通道中的常规业务传输队列进行调度传输。

在上述方案中,所述映射单元,具体用于:

将所述TCP报文按照对应的TCP传输通道存储在子队列资源池,并按照
所述TCP报文的进程信息将所述TCP报文映射到所述子队列资源池中对应
TCP传输通道内的TCP传输子队列。

在上述方案中,所述调度单元,具体用于:

所述在子队列资源池中,按照轮询调度或者带权重轮询调度算法对每个
TCP传输通道内的TCP传输子队列进行调度,得到每个TCP传输通道对应的
调度队列;以及,

按照预设的调度策略将每个TCP传输通道对应的调度队列与对应的TCP
传输通道中的常规传输队列进行调度传输。

本发明实施例提供了一种报文调度方法和装置,通过将TCP报文按照类型
分别进行映射到传输队列后再进行调度传输,能够改善ACK报文被数据报文
干扰的情况,使得ACK报文的传输延迟稳定在一个范围内,从而达到预期的
最大传输速率,并且保证传输速率的稳定性。

附图说明

图1为本发明实施例提供的一种报文调度方法流程示意图;

图2为本发明实施例提供的一种报文调度方法具体流程示意图;

图3为本发明实施例提供的另一种报文调度方法具体流程示意图;

图4为本发明实施例提供的又一种报文调度方法具体流程示意图;

图5为本发明实施例提供的再一种报文调度方法具体流程示意图;

图6为本发明实施例提供的一种报文调度装置结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清
楚、完整地描述。

实施例一

参见图1,其示出了本发明实施例提供的一种报文调度方法,需要说明的
是,该方法可以应用于双向传输TCP报文的设备,该方法可以包括:

S101:将TCP封装的TCP报文进行解析,获得所述TCP报文的类型;

S102:按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射
到对应的传输队列;

S103:将所述传输队列按照预设的调度策略进行调度传输。

可以理解地,通过上述S101至S103所描述的对于双向传输的TCP报文的
调度过程,可以将TCP报文按照类型分别进行映射到传输队列后再进行调度传
输,从而能够避免TCP协议出现拥塞以及发送速率的剧烈抖动,提高了链路速
率和稳定性。

实施例二

基于实施例一所述的对于双向传输的TCP报文的调度过程,在步骤S101
中,将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类
型,具体可以包括:

对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP
报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文;

或者,对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述
TCP报文对应的进程信息。

可以理解地,除了上述两种获得TCP报文类型的方式之外,本领域技术人
员还可以根据其他的确定策略来对TCP报文的类型进行确定,本实施例对此不
再赘述。

实施例三

基于实施例二所述的获得TCP报文类型的方式,根据解析的得到的报文头
信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的数
据报文,可以包括:

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空同时满足时,所述TCP报文为ACK报文;

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空任一个不满足时,所述TCP报文为数据报文。

举例来说,上述针对TCP报文为ACK报文或数据报文的进行确定的具体
实现过程可以是:根据对TCP报文进行解析所得到的报文头以及上述确定策略
来确定TCP报文为ACK报文或数据报文;或者也可以是通过访问控制列表
(ACL,Access Control List)对TCP报文进行匹配来确定TCP报文为ACK报
文或数据报文。本发明实施例对上述的具体实现过程不作具体限定。

优选地,当根据解析的得到的报文头信息确定所述TCP报文为不带数据净
荷的确认ACK报文或携带数据净荷的数据报文时,所述按照所述TCP报文的
类型及预设的映射机制将所述TCP报文映射到对应的传输队列,具体包括:

将ACK报文和数据报文输入到对应的TCP传输通道;以及在所述TCP传
输通道中,将所述TCP传输通道对应的ACK报文映射到单独的ACK报文传输
队列,并将所述TCP传输通道对应数据报文映射到所述TCP传输通道对应的
TCP业务传输队列中。

具体地,对应于上述按照所述TCP报文的类型及预设的映射机制将所述
TCP报文映射到对应的传输队列的方式,将所述传输队列按照预设的调度策略
进行调度传输,具体可以包括:

将所述TCP传输通道中对应的ACK报文传输队列和TCP业务传输队列按
照优先级调度或者轮询调度或者带权重轮询调度算法进行调度传输。

以图2为例,当TCP报文被确定为ACK报文和数据报文之后,可以将ACK
报文和数据报文分别输入到对应的TCP传输通道,比如TCP通道1......TCP通
道N;随后在每个TCP传输通道中,以TCP通道1为例,将TCP通道1对应
的ACK报文映射到单独的ACK报文传输队列q10;将TCP通道1对应的数据
报文映射到对应的TCP业务传输队列中,比如q11、q12、......、q1x;可以理解地,
对于其他的TCP传输通道,如TCP通道N,也进行相应的映射。此时,对于
每个TCP传输通道,仍以TCP通道1为例,可以按照预设的调度算法,例如
优先级调度或者轮询调度或者带权重轮询调度算法等,将TCP通道1中的ACK
报文传输队列q10以及TCP业务传输队列q11、q12、......、q1x进行调度。具体的
调度实现过程为本领域技术人员的常规技术手段,在此不再赘述。

优选地,为了不占用TCP传输通道的队列资源,当根据解析的得到的报文
头信息确定所述TCP报文为不带数据净荷的确认ACK报文或携带数据净荷的
数据报文时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报
文映射到对应的传输队列,具体包括:

将所述TCP报文中的所有ACK报文映射到单独的全局传输队列中,并将
所述数据报文映射到对应的TCP传输通道中的TCP业务传输队列。

具体地,对应于上述按照所述TCP报文的类型及预设的映射机制将所述
TCP报文映射到对应的传输队列的方式,将所述传输队列按照预设的调度策略
进行调度传输,可以包括:

根据预设的调度策略将各TCP传输通道中的TCP业务传输队列按照优先
级调度或者轮询调度或者带权重轮询调度算法进行调度所得到调度队列与全局
队列进行调度传输。

以图3为例,当TCP报文被确定为ACK报文和数据报文之后,可以将ACK
报文映射到全局队列中,将数据报文分别输入到对应的TCP传输通道,比如
TCP通道1......TCP通道N;随后在每个TCP传输通道中,以TCP通道1为例,
将TCP通道1对应的数据报文映射到对应的TCP业务传输队列中,比如q10、
q11、......、q1x;可以理解地,对于其他的TCP传输通道,如TCP通道N,也进
行相应的映射。此时,对于每个TCP传输通道,仍以TCP通道1为例,可以
按照优先级调度或者轮询调度或者带权重轮询调度算法等,将TCP通道1中
TCP业务传输队列q10、q11、q12、......、q1x进行调度,从而得到调度队列;接着,
将各TCP传输通道对应的调度队列与全局队列一起,按照预设的调度算法,例
如优先级调度或者轮询调度或者带权重轮询调度算法等进行调度传输。

实施例四

基于实施例二所述的获得TCP报文类型的方式,根据解析的得到的报文头
信息确定所述TCP报文对应的进程信息,具体可以包括:

根据解析得到的所述TCP报文的源端口信息和/或目的端口信息确定所述
TCP报文对应的进程信息。

优选地,当根据解析的得到的报文头信息确定所述TCP报文对应的进程信
息时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射
到对应的传输队列,具体可以包括:

按照所述TCP报文对应的进程信息以及预设的队列映射管理机制,从所述
TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报文映射到对
应的TCP业务传输队列。

进一步地,按照所述TCP报文对应的进程信息以及预设的队列映射管理机
制,从所述TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报
文映射到对应的TCP业务传输队列,具体可以包括:

当所述TCP报文协议头字段的SYN标志位为1时,则可以认为所述TCP
报文对应的进程刚刚创建,所以此时可以在所述TCP传输通道的可用队列资源
中,将所述TCP报文映射到新建的所述TCP报文对应的进程信息相关联的TCP
业务传输队列;可以理解地,当所述TCP传输通道没有可用队列资源时,将所
述TCP报文传输至常规报文传输队列;需要说明的是,在本实施例中,常规报
文可以认为是非TCP协议报文

当所述TCP报文协议头字段的FIN标志位为1时,则可以认为所述TCP
报文对应的进程已经结束,所以此时根据所述TCP报文的进程信息查找在所述
TCP传输通道的已有传输队列,当查找到时,删除所述TCP传输通道中与所述
TCP报文的进程信息对应的已有传输队列,使其变为可用资源;可以理解地,
当没有查找到时,将所述TCP报文传输至常规报文传输队列;

当所述TCP报文协议头字段的SYN标志位与FIN标志位均不为1时,则
可以认为所述TCP报文对应的进程正在传输中,所以此时可以根据所述TCP
报文的进程信息查找在所述TCP传输通道的TCP业务传输队列,当查找到时,
将所述TCP报文按照匹配的进程信息映射至对应的TCP业务传输队列;可以
理解地,当没有查找到时,将所述TCP报文传输至常规报文传输队列。

更进一步地,为了防止网络故障导致没有收到所述TCP报文对应进程的结
束报文(即,FIN标志位为1的报文),进而导致所述TCP传输通道中与所述
TCP报文对应的TCP业务传输队列无法删除,从而造成可用资源的紧张和存储
资源的浪费,可以采用定时老化机制,及在预设的时间段内,TCP业务传输队
列没有新的TCP报文对应映射加入,则TCP业务传输队列会被老化掉,释放
掉占用的队列资源。具体的老化过程为现有技术,本发明实施例不做详细描述。

具体地,对应于上述按照所述TCP报文的类型及预设的映射机制将所述
TCP报文映射到对应的传输队列的方式,将所述传输队列按照预设的调度策略
进行调度传输,可以包括:

根据预设的调度策略将所述TCP传输通道中的所有TCP业务传输队列按
照轮询调度或者带权重轮询调度算法进行调度所得到的调度队列与所述TCP传
输通道中的常规业务传输队列进行调度传输。

以图4为例,将输入的报文中的TCP报文与非TCP报文区分完毕之后,
将TCP报文与非TCP报文输入到对应的TCP传输通道中,比如TCP通道1......
TCP通道N;随后在每个TCP传输通道中,以TCP通道1为例,将TCP通道
中的TCP报文按照TCP端口等类似的进程信息映射到对应的TCP业务传输队
列,比如TCP业务队列q1m+1,q1m+2,......q1m+n,具体的映射过程可以按照上
述的方式进行,在此不再赘述;接着,在每个TCP传输通道中,可以按照轮询
调度或者带权重轮询调度算法等,将TCP通道1中TCP业务传输队列q1m+1,
q1m+2,......q1m+n进行调度,从而得到调度队列;然后,将调度队列与同一TCP
传输通道中的常规业务传输队列,如常规队列q10,q11,......q1n一起,按照预
设的调度算法,例如优先级调度或者轮询调度或者带权重轮询调度算法等进行
调度传输。可以理解地,对于其他的TCP传输通道,如TCP通道N,也进行
相类似的处理过程。

优选地,当根据解析的得到的报文头信息确定所述TCP报文对应的进程信
息时,所述按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射
到对应的传输队列,具体可以包括:

将所述TCP报文按照对应的TCP传输通道存储在子队列资源池,并按照
所述TCP报文的进程信息将所述TCP报文映射到所述子队列资源池中对应
TCP传输通道内的TCP传输子队列。

具体地,对应于上述按照所述TCP报文的类型及预设的映射机制将所述
TCP报文映射到对应的传输队列的方式,将所述传输队列按照预设的调度策略
进行调度传输,可以包括:

在子队列资源池中,按照轮询调度或者带权重轮询调度算法对每个TCP传
输通道内的TCP传输子队列进行调度,得到每个TCP传输通道对应的调度队
列;以及,

按照预设的调度策略将每个TCP传输通道对应的调度队列与对应的TCP
传输通道中的常规传输队列进行调度传输。

以图5为例,将TCP报文按照对应的TCP传输通道输入到预先开辟的子
队列资源池中,对应的TCP传输通道,可以比如TCP通道1......TCP通道N;
随后,按照TCP报文的进程信息将TCP报文映射到所述子队列资源池中对应
TCP传输通道内的TCP传输子队列,以TCP通道1为例,将TCP通道中的TCP
报文按照TCP端口等类似的进程信息映射到对应的TCP传输子队列,比如TCP
子队列sq10,sq11,......sq1x,具体的映射过程为本领域技术人员的常规技术,
在此不再赘述;接着,可以按照轮询调度或者带权重轮询调度算法等,将TCP
通道1对应的TCP传输子队列sq10,sq11,......sq1x进行调度,从而得到调度队
列,然后,将调度队列与同一TCP传输通道中的常规业务传输队列,如常规队
列q10,q11,......q1m一起,按照预设的调度算法,例如优先级调度或者轮询调
度或者带权重轮询调度算法等进行调度传输;详细地,子队列调度之后得到调
度队列可以认为是常规队列q1m+1。可以理解地,对于其他的TCP传输通道,如
TCP通道N,也进行相类似的处理过程。

实施例五

基于前述实施例相同的技术构思,参见图6,其示出了本发明实施例提供
的一种报文调度装置60的结构示意图,该装置60可以应用于双向传输TCP报
文的设备中,该装置60可以包括:解析单元601、映射单元602和调度单元603;
其中,

所述解析单元601,用于将传输控制协议TCP封装的TCP报文进行解析,
获得所述TCP报文的类型;

所述映射单元602,用于按照所述TCP报文的类型及预设的映射机制将所
述TCP报文映射到对应的传输队列;

所述调度单元603,用于将所述传输队列按照预设的调度策略进行调度传
输。

示例性地,所述解析单元601,具体用于:

对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述TCP
报文为不带数据净荷的确认ACK报文或携带数据净荷的数据报文;

或者,对所述TCP报文进行解析,根据解析的得到的报文头信息确定所述
TCP报文对应的进程信息。

进一步地,所述解析单元601,具体用于:

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空同时满足时,所述TCP报文为ACK报文;

当所述TCP报文的报文头中ACK标志位为1以及携带的数据净荷部分为
空任一个不满足时,所述TCP报文为数据报文。

进一步地,所述解析单元601,具体用于:

根据解析得到的所述TCP报文的源端口信息和/或目的端口信息确定所述
TCP报文对应的进程信息。

在上述方案中,所述映射单元602,具体用于:

将所述ACK报文和所述数据报文输入到对应的TCP传输通道;以及在所
述TCP传输通道中,将所述TCP传输通道对应的ACK报文映射到单独的ACK
报文传输队列,并将所述TCP传输通道对应数据报文映射到所述TCP传输通
道对应的TCP业务传输队列中。

相应地,所述调度单元603,具体用于将所述TCP传输通道中对应的ACK
报文传输队列和TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮
询调度算法进行调度传输。

在上述方案中,所述映射单元602,具体用于:

将所述TCP报文中的所有ACK报文映射到单独的全局传输队列中,并将
所述数据报文映射到对应的TCP传输通道中的TCP业务传输队列。

相应地,所述调度单元603,具体用于:根据预设的调度策略将各TCP传
输通道中的TCP业务传输队列按照优先级调度或者轮询调度或者带权重轮询调
度算法进行调度所得到调度队列与全局队列进行调度传输。

在上述方案中,所述映射单元602,具体用于:

按照所述TCP报文对应的进程信息以及预设的队列映射管理机制,从所述
TCP报文对应的TCP传输通道的可用队列资源中,将所述TCP报文映射到对
应的TCP业务传输队列。

相应地,所述调度单元603,具体用于:

根据预设的调度策略将所述TCP传输通道中的所有TCP业务传输队列按
照轮询调度或者带权重轮询调度算法进行调度所得到的调度队列与所述TCP传
输通道中的常规业务传输队列进行调度传输。

在上述方案中,所述映射单元602,具体用于:

将所述TCP报文按照对应的TCP传输通道存储在子队列资源池,并按照
所述TCP报文的进程信息将所述TCP报文映射到所述子队列资源池中对应
TCP传输通道内的TCP传输子队列。

相应地,所述调度单元603,具体用于:

所述在子队列资源池中,按照轮询调度或者带权重轮询调度算法对每个
TCP传输通道内的TCP传输子队列进行调度,得到每个TCP传输通道对应的
调度队列;以及,

按照预设的调度策略将每个TCP传输通道对应的调度队列与对应的TCP
传输通道中的常规传输队列进行调度传输。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计
算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和
硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算
机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储
器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品
的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方
框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结
合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或
其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可
编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个
流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备
以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的
指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流
程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使
得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处
理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个
流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范
围。

一种报文调度方法和装置.pdf_第1页
第1页 / 共17页
一种报文调度方法和装置.pdf_第2页
第2页 / 共17页
一种报文调度方法和装置.pdf_第3页
第3页 / 共17页
点击查看更多>>
资源描述

《一种报文调度方法和装置.pdf》由会员分享,可在线阅读,更多相关《一种报文调度方法和装置.pdf(17页珍藏版)》请在专利查询网上搜索。

本发明实施例公开了一种报文调度方法和装置,该方法可以包括:将传输控制协议TCP封装的TCP报文进行解析,获得所述TCP报文的类型;按照所述TCP报文的类型及预设的映射机制将所述TCP报文映射到对应的传输队列;将所述传输队列按照预设的调度策略进行调度传输。。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1