报文发送方法及装置与流程

文档序号:11693151阅读:339来源:国知局
报文发送方法及装置与流程

本发明涉及数据网络通信领域,尤其是涉及到发包方法及装置。



背景技术:

当前新建网络环境中,为了测量网络实际的带宽,通常需要网络设备有发包测试网络带宽的功能,需要网络设备能够产生满足端口最大速率以下的各种速率的数据流。

图1是根据现有技术的发包方法的示意图,如图1所示,报文产生器由一定数量的发包单元组成,这些发包单元被配置成不同的发包速率分成不同的组,每个组内的不同发包单元发送相同速率的报文,当需要一定速率的数据流量,通过从每个组内取出一定数量的发包单元组合在一起产生满足需求的数据流。因为每个发包单元的速率都是在系统初始化阶段按照模板设置好的,产生固定速率的报文,而所需求的数据流速率是不定的,所以就会出现,一个数据流速率不等于各个发包单元速率相加的和,要么大于速率相加之和,要么小于速率相加之和。例如,一个发包单元的速率为33000个/秒,需要数据流速率为55000个/秒,大于一个发包单元的速率,小于两个发包单元组合的速率。由此导致发包单元组合生成的数据流误差比较大,测试网络实际带宽的结果也会偏差较大。

针对相关技术中无法获得预期数量的报文的问题,现有技术还未提出有效的解决方案。



技术实现要素:

本发明的目的在于提供了报文发送方法及装置,解决了相关技术中无法获得预期数量的报文的问题。

根据本发明的一个方面,提供一种报文发送方法,包括:通过限速模块限定单位时间内发出的报文数量为预设值;在单位时间内超出预设值部分的报文被限速模块丢弃的情况下,将单位时间内通过该限速模块的数量等于该预设值的报文发送出去。

进一步地,该报文发送方法还包括:在单位时间内超出预设值部分的报文未被限速模 块丢弃或单位时间内通过限速模块的报文低于预设值的情况下,将通过该限速模块的报文丢弃。

进一步地,通过限速模块限定单位时间内发出的报文数量为预设值包括:通过漏桶原理限定单位时间内发出的报文数量为预设值。

进一步地,在通过该限速模块限定单位时间内发出的报文数量为预设值之前,该报文发送方法还包括:根据单位时间内需要发送的报文个数确定该预设值。

进一步地,在通过该限速模块限定单位时间内发出的报文数量为预设值之前,该报文发送方法还包括:根据单位时间内需要发送的报文个数选取用于产生报文的一个或多个发包单元,其中,该一个或多个发包单元单位时间内产生的报文个数大于或等于该预设值。

根据本发明的另一方面,提供一种报文发送装置,包括:限速模块,用于限定单位时间内发出的报文数量为预设值;发送模块,用于在单位时间内超出预设值部分的报文被限速模块丢弃的情况下,将单位时间内通过该限速模块的数量等于该预设值的报文发送出去。

进一步地,该报文发送装置还包括:丢弃模块,用于在单位时间内超出预设值部分的报文未被限速模块丢弃或单位时间内通过限速模块的报文低于预设值的情况下,将通过该限速模块的报文丢弃。

进一步地,该限速模块包括:漏桶单元,用于通过漏桶原理限定单位时间内发出的报文数量为预设值。

进一步地,该报文发送装置还包括:确定模块,用于根据单位时间内需要发送的报文个数确定该预设值。

进一步地,该报文发送装置还包括:选取模块,用于根据单位时间内需要发送的报文个数选取用于产生报文的一个或多个发包单元,其中,该一个或多个发包单元单位时间内产生的报文个数大于或等于该预设值。

通过本发明,采用将通过限速模块的报文数量限制为预设值的技术方案,解决了相关技术中无法获得预期数量的报文的问题,可以通过限速模块获得预期数量的报文。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据相关技术的报文发送方法的流程图;

图2是根据本发明实施例的报文发送方法的流程图;

图3是根据本发明实施例的报文发送装置的结构框图;

图4是根据本发明优选实施例的报文发送装置的结构框图一;

图5是根据本发明优选实施例的报文发送装置的结构框图二;

图6是根据本发明优选实施例的报文发送装置的结构框图三;

图7是根据本发明优选实施例的报文发送装置的结构框图四;

图8是根据本发明实施例的限速发包的示意图;

图9是根据本发明优选实施例的限速发包的示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

在本实施例中提供了一种报文发送方法及装置,图2是根据本发明实施例的报文发送方法的流程图,如图2所示,该流程包括如下步骤:

步骤s202,通过限速模块限定单位时间内发出的报文数量为预设值;

步骤s204,在单位时间内超出预设值部分的报文被限速模块丢弃的情况下,将单位时间内通过该限速模块的数量等于该预设值的报文发送出去。

值得一提的是,上述将单位时间内通过该限速模块的数量等于该预设值的报文发送出去是指,限速模块将数量等于该预设值的报文发送给报文发送控制器,该报文发送控制器将接收到的数量等于该预设值的报文发送出去。

进一步地,该报文发送方法还包括:在单位时间内超出预设值部分的报文未被限速模块丢弃或单位时间内通过限速模块的报文低于预设值的情况下,将通过该限速模块的报文 丢弃。上述将通过该限速模块的报文丢弃是指,限速模块向报文发送控制器发送接收到的报文,由于报文数量不等于预设值,该报文发送控制器将接收到的报文丢弃。

优选地,限速模块可以通过漏桶原理限定单位时间内发出的报文数量为预设值。在漏桶已满的情况下,限速模块发送出去的报文数量等于预设值,报文发送控制器接收到该限速模块发送的报文,将该报文发送出去。上述漏桶已满是指漏桶中令牌被报文全部消耗,数量为零。在漏桶未满的情况下,也即漏桶中令牌未被报文全部消耗,令牌数不为零,报文发送控制器将接收到的报文丢弃。

优选地,上述预设值可以根据单位时间内需要发送的报文个数确定。进一步地,可以根据所需的报文包长和速率计算出每秒钟需要发出的报文个数。

优选地,可以根据单位时间内需要发送的报文个数选取用于产生报文的一个或多个发包单元,其中,该一个或多个发包单元单位时间内产生的报文个数大于或等于该预设值。更进一步地,尽量减少所选取的发包单元的数量,以节省资源。

通过上述步骤,解决了无法获得预期数量的报文的问题,提高了带宽测试的精度。

图3是根据本发明实施例的报文发送装置的结构框图,如图3所示,该装置包括:

限速模块32,用于限定单位时间内发出的报文数量为预设值;

发送模块34,用于在单位时间内超出预设值部分的报文被限速模块丢弃的情况下,将单位时间内通过该限速模块的数量等于该预设值的报文发送出去。

图4是根据本发明优选实施例的报文发送装置的结构框图一,如图4所示,该装置还包括:

丢弃模块42,用于在单位时间内超出预设值部分的报文未被限速模块丢弃或单位时间内通过限速模块的报文低于预设值的情况下,将通过该限速模块的报文丢弃。

图5是根据本发明优选实施例的报文发送装置的结构框图二,如图5所示,该限速模块22包括:

漏桶单元52,用于通过漏桶原理限定单位时间内发出的报文数量为预设值。

图6是根据本发明优选实施例的报文发送装置的结构框图三,如图6所示,该报文发送装置还包括:

确定模块62,用于根据单位时间内需要发送的报文个数确定该预设值。

图7是根据本发明优选实施例的报文发送装置的结构框图四,如图7所示,该报文发送装置还包括:

选取模块72,用于根据单位时间内需要发送的报文个数选取用于产生报文的一个或多个发包单元,其中,该一个或多个发包单元单位时间内产生的报文个数大于或等于该预设值。

下面结合具体实施例对本发明进行进一步说明。

本发明实施例采用漏桶机制提高限速模块的精度对报文产生器产生的报文进行限速。在所有发包单元的速率大于所需要的速率的情况下,在漏桶被填满之后,多出来的报文被限速丢包,由此报文通过限速模块后降低测试数据流与实际数据流的误差。

图8是根据本发明实施例的限速发包的示意图,如图8所示,包括:根据所需的报文包长和速率计算出每秒钟需要发出的报文个数,根据计算出来的每秒钟需要发出的报文个数设置限速模块的限速值。之后根据计算出来的每秒钟需要发出的报文个数来选取各个发包速率的发包单元,这些发包单元的速率总和要大于所需要的速率。在报文产生器发出报文后,报文经过限速模块,在报文发送控制器全部丢弃,直到在限速模块已经出现了限速丢包后,报文发送控制器开启发送,使报文全部通过。通过报文发送控制器的报文经过计数、封装等处理得到所需要的数据流。

图9是根据本发明优选实施例的限速发包的示意图,如图9所示,例如,需求速率为55,000,000字节/秒,包长1000字节的数据流,包括:根据需求速率55,000,000字节/秒,包长1000字节的数据流,确定限速模块的限速值,设置限速模块的限速值为55000个/秒;选取两个速率为33000个/秒的发包单元开始发包,在漏桶未满之前,报文在报文发送控制器丢弃;在漏桶被填满的情况下,限速模块开始有限速丢包,通知报文发送控制器,到达报文发送模块的所有报文被全部转发。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步 骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1