一种流控传输协议数据包的组包方法、发送方法及装置制造方法及图纸

技术编号:4134235 阅读:362 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供一种流控传输协议数据包的组包方法、发送方法及装置。组包方法包括:根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参数;将所述生成的报文绑定参数与设定的数据包发送延时时间进行比较;如果所述生成的报文绑定参数小于或等于所述设定的数据包发送延时时间,则将所述设定的数据包发送延时时间内的SCTP数据报文绑定后与SCTP公共头组成数据包;如果所述生成的报文绑定参数大于所述设定的数据包发送延时时间,则将所述数据包发送延时时间内的每一SCTP数据报文分别与SCTP公共头组成数据包。通过动态设置SCTP数据包绑定,流量小的时候保证时延,流量大的时候,减少带宽占用,提高带宽利用率。

【技术实现步骤摘要】

本专利技术涉及通信
,尤其涉及一种流控传输协议数据包的组包方 法、发送方法及装置。
技术介绍
为了减少带宽使用和网络小数据包数量,SCTP (Stream Control Transmission Protocol,流控传输协议)采用包头复用方式进行组包。SCTP数 据报文是由数据包的公共头和一个或多个数据块组成。现有技术中的组包是采用静态配置方式,S卩如果用户或者系统对发送报文的时延要求较为严格,则设置为不绑定方式,也就是说收到报文立即发送;如果用户或者系统对发送报文的时延要求不严格,同时数据量较大,则 采用绑定方式,也就是固定设置组包延时时间,不管系统当前的流量大小如 何,只要每隔一个组包延时时间就将SCTP数据报文绑定后与SCTP公共头组 成数据包。在实现本专利技术过程中,专利技术人发现现有的静态配置方式至少存在如下问题如果采用不绑定方式,那么收到报文即发送,则需要占用大量带宽,带宽的利用率较低;而如果通过固定设置组包延时时间进行绑定,那么当在用 户的数据流量存在多变的情况下,则时延性能较低,无法满足系统对时延性 能的要求。
技术实现思路
本专利技术实施例提出一种流控传输协议数据包的组包方法、发送方法及装6置,以解决现有的静态配置方式存在的问题。一方面,本专利技术实施例提供一种流控传输协议数据包的组包方法,该方 法包括-根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参数; 将所述生成的报文绑定参数与设定的数据包发送延时时间进行比较; 如果所述生成的报文绑定参数小于或等于所述设定的数据包发送延时时间,则将所述设定的数据包发送延时时间内的SCTP数据报文绑定后与SCTP公共头组成数据包; —如果所述生成的报文绑定参数大于所述设定的数据包发送延时时间,则将所述数据包发送延时时间内的每一 SCTP数据报文分别与SCTP公共头组成数据包。此外,本专利技术实施例还提供一种流控传输协议数据包发送方法,该方法包括根据本专利技术实施例提供的流控传输协议数据包组包方法,将预发送的 流控传输协议数据报文组包成数据包;将所述组成的数据包发送出去。另一方面,本专利技术实施例还提供流控传输协议数据包的组包装置,该装置包括参数生成单元,用于根据预定时间内的SCTP数据报文的数量和大小生成 报文绑定参数;参数比较单元,用于将所述生成的报文绑定参数与设定的数据包发送延 时时间进行比较;组包单元,用于如果所述生成的的报文绑定参数小于或等于所述设定的 数据包发送延时时间,则将所述设定的数据包发送延时时间内的SCTP数据报 文绑定后与SCTP公共头组成数据包;或者,如果所述生成的报文绑定参数大 于所述设定的数据包发送延时时间,则将所述数据包发送延时时间内的每一 SCTP数据报文分别与SCTP公共头组成数据包。再一方面,本专利技术实施例还提供一种流控传输协议数据包发送装置,该发送装置包括本专利技术实施例提供的流控传输协议数据包的组包装置,用于 将流控传输协议数据报文组包成数据包;数据包发送单元,用于将所述组包 装置生成的数据包发送出去。与现有技术相比,本专利技术实施例的技术方案通过动态设置SCTP数据包绑 定方式,可在流量小的时候保证时延;在流量大的情况下,在保证时延的前 提下,还可减少带宽占用,提高带宽利用率,从而解决现有的静态配置方式 存在的缺陷。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面 描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的流控传输协议数据包的组包方法的流程示意图2为本专利技术实施例提供的SCTP数据报文中的公共头的示意图; 图3为本专利技术实施例提供的SCTP数据报文中的数据块示意图; 图4为本专利技术实施例提供的根据检测的SCTP数据报文的数量和大小生成 报文绑定参数的方法的流程示意图5为本专利技术实施例提供的绑定多个报文的SCTP数据包的示意图6为本专利技术实施例提供的流控传输协议数据包的组包方法的流程示意图7为本专利技术实施例提供的流控传输协议数据包的发送方法的流程示意图8为本专利技术实施例提供的流控传输协议数据包的组包装置的示意图; 图9为本专利技术实施例提供的参数生成单元的示意8图10为本专利技术实施例提供的流控传输协议数据包的组包装置的示意图; 图11为本专利技术实施例提供的流控传输协议数据包的发送装置的示意图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行 清楚、完整地描述。显然,所描述的实施例仅仅是本专利技术一部分实施例,而 不是全部的实施例。基于本申请中描述的这些实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护 的范围。如图1所示,为本专利技术实施例提供的一种流控传输协议数据包的组包方 法的流程示意图,包括在S101,根据预定时间内的SCTP数据报文的数量和大小生成报文绑定 参数。示例性的,SCTP数据报文包括一个公共头(如图2所示)和一个^多个 数据块(如图3所示)。示例性的,如图4所示,上述S101中根据检测的SCTP数据报文的数量 和大小生成报文绑定参数的方法可以包括-在S401,根据预定时间内的SCTP数据报文的数量和大小得到该预定时 间内的SCTP数据报文平均长度。例如,假设预定时间为Timel,该Timel时间内待发送的SCTP报文数量 为PacketNum,所有这些报文的总长度为PacketLength,则该Timel时间内的 这些SCTP数据报文的平均长度可以通过以下方法得到AvgPacketSize-报文的总长度PacketLength/报文数量PacketNum,其中AvgPacketSize表示Timel内的SCTP数据报文平均长度。在S402,根据数据包最大长度和得到的SCTP数据报文平均长度得到组 成最大长度数据包所需的SCTP数据报文的数量。例如,假设最大长度数据包的长度为MTU,最大长度数据包的长度是指 通信协议的某一层上面所能通过的最大数据报大小(以字节为单位),最大长 度数据包的长度通常与通信接口有关(网络接口卡、串口等)。比如,在实际 应用中,最大长度数据包可以为最大传输单元。则组成最大长度数据包所需 的SCTP数据报文的数量可表示为组成最大长度数据包所需的SCTP数据报文的数量MaxBundNum =(最 大长度数据包的长度MTU —IP头长度IPHeader) / SCTP数据报文平均长度 AvgPacketSize。其中,IPHeader为传输SCTP数据报文的IP头长度,需要说明的是SCTP 净荷中是不包含IP头信息的。在S403,根据预定时间内的SCTP报文数量和组成最大长度数据包所需 的SCTP数据报文的数量得到组成最大长度数据包所需的SCTP数据报文的绑 定延时时间。例如,该绑定延时时间可通过下述方法获得Flux =SCTP报文数量PacketNum/预定时间Timel;MaxBundRelay^组成最大长度数据包所需的SCTP数据报文的数量 MaxBundNum/ Flux,其中Flux表示单位时间内系统发送的报文个数,MaxBundR本文档来自技高网...

【技术保护点】
一种流控传输协议数据包的组包方法,其特征在于,所述方法包括: 根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参数; 将所述生成的报文绑定参数与设定的数据包发送延时时间进行比较; 如果所述生成的报文绑定参数小于或等 于所述设定的数据包发送延时时间,则将所述设定的数据包发送延时时间内的SCTP数据报文绑定后与SCTP公共头组成数据包; 如果所述生成的报文绑定参数大于所述设定的数据包发送延时时间,则将所述数据包发送延时时间内的每一SCTP数据报文分别 与SCTP公共头组成数据包。

【技术特征摘要】
1.一种流控传输协议数据包的组包方法,其特征在于,所述方法包括根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参数;将所述生成的报文绑定参数与设定的数据包发送延时时间进行比较;如果所述生成的报文绑定参数小于或等于所述设定的数据包发送延时时间,则将所述设定的数据包发送延时时间内的SCTP数据报文绑定后与SCTP公共头组成数据包;如果所述生成的报文绑定参数大于所述设定的数据包发送延时时间,则将所述数据包发送延时时间内的每一SCTP数据报文分别与SCTP公共头组成数据包。2. 如权利要求1所述的流控传输协议数据包的组包方法,其特征在于, 所述方法还包括对所述预定时间内的SCTP数据报文的数量和大小进行检测, 则所述根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参数包括:根据所述检测得到的SCTP数据报文的数量和大小生成所述报文绑定参数。3. 如权利要求1或2所述的流控传输协议数据包的组包方法,其特征在 于,所述根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参数的 方法包括根据所述预定时间内的SCTP数据报文的数量和大小得到所述预定时间 内的SCTP数据报文平均长度;根据数据包最大长度和所述得到的SCTP数据报文平均长度得到组成最 大长度数据包所需的SCTP数据报文的数量;根据所述得到的SCTP数据报文的数量得到组成所述最大长度数据包所 需的SCTP数据报文的绑定延时时间;根据所述的组成最大长度数据包所需的SCTP数据报文的绑定延时时间 生成所述的报文绑定参数。4. 如权利要求3所述的流控传输协议数据包的组包方法,其特征在于, 所述的根据所述的组成最大长度数据包所需的SCTP数据报文的绑定延时时 间生成所述的报文绑定参数包括报文绑定参数=最大长度数据包所需的SCTP数据报文的绑定延时时间/ (l+A+B),其中A表示组包时延调节系数,B表示绑定防抖动系数;或者,报文绑定参数=最大长度数据包所需的SCTP数据报文的绑定延时时间/ (l+A-B),其中A表示组包时延调节系数,B表示绑定防抖动系数,且 1+A-B>0。5. 如权利要求4所述的流控传输协议数据包的组包方法,其特征在于,如果系统当前在绑定报文情况,则所述生成报文绑定参数为报文绑定参数=最大长度数据包所需的SCTP数据报文的绑定延时时间/ (l+A+B);或者,如果系统当前为非绑定情况,则所述生成报文绑定参数为报文绑定参数=最大长度数据包所需的SCTP数据报文的绑定延时时间/ (l+A-B)。6. 如权利要求2至5任一项所述的流控传输协议数据包的组包方法,其 特征在于,根据所述的报文绑定参数设定所述的数据包发送延时时间。7. —种流控传输协议数据包的发送方法,其特征在于,所述方法包括 根据如权利要求1-6任一项所述的组包方法,对预发送的流控传输协议数据报文进行组包以形成数据包;将所述组包形成的数据包发送出去。8. —种流控传输协议数据包的组包装置,其特征在于,所述装置包括 参数生成单元,用于根据预定时间内的SCTP数据报文的数量和大小生成报文绑定参...

【专利技术属性】
技术研发人员:杨锟
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1