一种网络性能测试方法和系统技术方案

技术编号:25091201 阅读:18 留言:0更新日期:2020-07-31 23:36
本申请提供了一种网络性能测试方法和系统,该方法包括:第一设备构造第一UDP包,并通过NAT设备发送给第二设备;NAT设备接收到第一UDP包时,修改第一UDP包的包头后作为第二UDP包,并发送给第二设备;第二设备接收到NAT设备发送的第二UDP包时,修改第二UDP包的包头后作为第三UDP包,将该第三UDP包发送给第一设备;NAT设备接收到第三UDP包时,修改第三UDP包的包头后作为第四UDP包,并发送给第一设备;第一设备接收到第四UDP包时,记录接收第四UDP包的时间,根据记录的时间,以及第四UDP包中携带的时间戳计算网络时延。该方法能够实现NAT私网和公网侧之间网络性能的测试。

【技术实现步骤摘要】
一种网络性能测试方法和系统
本专利技术涉及计算机网络
,特别涉及一种网络性能测试方法和系统。
技术介绍
网络性能测试中很重要的是要测试时延、抖动、丢包率等指标、通常用于测试的工具是ping。Ping在实际的场景中有很多限制,具体如下:Ping由于使用网路群组管理协议(InternetGroupManagementProtocol,ICMP)协议发送ICMP包,很多时候防火墙会过滤,进而不能实现网络性能的测试。实际网络中如果发端在网络地址转换(NetworkAddressTranslation,NAT)私网一侧,被ping的设备在NAT公网一侧,返回的ICMP包不一定能穿透NAT,造成测试失败。
技术实现思路
有鉴于此,本申请提供一种网络性能测试方法和系统,能够实现NAT私网和公网侧之间网络性能的测试。为解决上述技术问题,本申请的技术方案是这样实现的:一种网络性能测试方法,应用于包括第一设备、NAT设备和第二设备的网络系统中,其中,第一设备在NAT私网侧,第二设备在公网侧;该方法包括:第一设备构造第一UDP包,并通过NAT设备发送给第二设备;其中,所述第一UDP包的载荷部分携带发送第一UDP包的时间戳;NAT设备接收到第一UDP包时,通过NAT映射,修改第一UDP包的包头后作为第二UDP包,并发送给第二设备;第二设备接收到NAT设备发送的第二UDP包时,修改第二UDP包的包头后作为第三UDP包,将该第三UDP包通过所述NAT设备发送给第一设备;NAT设备接收到第三UDP包时,通过NAT映射,修改第三UDP包的包头后作为第四UDP包,并发送给第一设备;第一设备接收到第四UDP包时,记录接收第四UDP包的时间,根据记录的时间,以及第四UDP包中携带的时间戳计算网络时延。一种网络性能测试方法,应用于包括第三设备、网络地址转换NAT设备和第四设备的网络系统中,其中,第三设备在NAT私网侧,第四设备在公网侧;该方法包括:第三设备构造第五UDP包,用于在NAT设备进行注册;NAT设备接收到第三设备发送的第五UDP包时,建立第三设备内网地址和内网UDP端口号与外网的第二设备的外网地址和外网UDP端口号的映射关系;第四设备构造第六UDP包,并通过NAT设备发送给第三设备;其中,所述第五UDP包的载荷部分携带发送第六UDP包的时间戳;NAT设备接收到第六UDP包时,修改第六UDP包的包头后作为第七UDP包,并发送给第三设备;第三设备接收到NAT设备发送的第七UDP包时,修改第七UDP包的包头,修改后作为第八UDP包,将该第八UDP包发送给第四设备;NAT设备接收到第八UDP包时,修改第八UDP包的包头后作为第九UDP包,并发送给第四设备;第四设备接收到第九UDP包时,记录接收第九UDP包的时间,根据记录的时间,以及第九UDP包中携带的时间戳计算网络时延。一种网络性能测试系统,该系统包括:第一设备、NAT设备和第二设备,其中,第一设备在NAT私网侧,第二设备在公网侧;第一设备,构造第一UDP包,并通过NAT设备发送给第二设备;其中,所述第一UDP包的载荷部分携带发送第一UDP包的时间戳;接收到第二设备发送的第四UDP包时,记录接收第四UDP包的时间,根据记录的时间,以及第四UDP包中携带的时间戳计算网络时延;NAT设备,接收到第一UDP包时,通过NAT映射,修改第一UDP包的包头后作为第二UDP包,并发送给第二设备;接收到第三UDP包时,通过NAT映射,修改第三UDP包的包头后作为第四UDP包,并发送给第一设备;第二设备,接收到第二UDP包时,修改第二UDP包的包头后作为第三UDP包,将该第三UDP包通过所述NAT设备发送给第一设备。一种网络性能测试系统,该系统包括:第三设备、网络地址转换NAT设备和第四设备的网络系统中,其中,第三设备在NAT私网侧,第四设备在公网侧;第三设备,构造第五UDP包,用于在NAT设备进行注册;接收到NAT设备发送的第七UDP包时,修改第七UDP包的包头,修改后作为第八UDP包,将该第八UDP包发送给第四设备;NAT设备,接收到第三设备发送的第五UDP包时,建立第三设备内网地址和内网UDP端口号与外网的第二设备的外网地址和外网UDP端口号的映射关系;接收到第六UDP包时,修改第六UDP包的包头后作为第七UDP包,并发送给第三设备;接收到第八UDP包时,修改第八UDP包的包头后作为第九UDP包,并发送给第四设备;第四设备,构造第六UDP包,并通过NAT设备发送给第三设备;其中,所述第五UDP包的载荷部分携带发送第六UDP包的时间戳;接收到第九UDP包时,记录接收第九UDP包的时间,根据记录的时间,以及第九UDP包中携带的时间戳计算网络时延。由上面的技术方案可知,本申请中通过引入UDP协议,使UDP包成功地从私网到公网,从公网到私网穿透NAT,能够在免配置的前提下,实现NAT私网和公网侧之间网络性能的测试。附图说明图1为本申请实施例一中网络性能测试系统示意图;图2为本申请实施例中NAT转换示意图;图3为本申请实施例二中网络性能测试系统示意图;图4为应用于实施例一中的网络性能测试流程示意图;图5为应用于实施例二中的网络性能测试流程示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,下面结合附图并举实施例,对本专利技术的技术方案进行详细说明。本申请实施例中一种网络性能测试系统。可以应用在存在NAT的场景下,也可以应用在不存在NAT的场景下。应用在存在NAT的场景下:实施例一参见图1,图1为本申请实施例一中网络性能测试系统示意图。该系统包括:第一设备、NAT设备和第二设备,其中,第一设备在NAT私网侧,第二设备在公网侧;第一设备构造第一用户数据报协议(UserDatagramProtocol,UDP)包,并通过NAT设备发送给第二设备;其中,所述第一UDP包的载荷部分携带发送第一UDP包的时间戳;这里构造的第一UDP包的包头中包括:源端口号和目的端口号,以及源地址和目的地址;源地址为第一设备内网地址,源端口号为第一设备自定义的端口号,目的地址为第二设备的公网地址,目的端口为第二设备接收UDP数据包端口号。参见图2,图2为本申请实施例中NAT转换示意图。图2中以第一UDP的源端口号为3000、目的端口号为6900,以及源地址为172.24.20.233、目的地址为219.239.97.10为例。第一UDP包的载荷部分至少包括第一设备发送第一UDP包的时间戳,至于载荷部分是否包括其他信息,本申请实施例中对此不进行限制。NAT设备,接收到第一UDP包时,通过NAT映射,修改第一UDP包的包头后作为第二UDP包,并发送给第二设备;第二UDP包构成:源本文档来自技高网...

【技术保护点】
1.一种网络性能测试方法,其特征在于,应用于包括第一设备、网络地址转换NAT设备和第二设备的网络系统中,其中,第一设备在NAT私网侧,第二设备在公网侧;该方法包括:/n第一设备构造第一用户数据报协议UDP包,并通过NAT设备发送给第二设备;其中,所述第一UDP包的载荷部分携带发送第一UDP包的时间戳;/nNAT设备接收到第一UDP包时,通过NAT映射,修改第一UDP包的包头后作为第二UDP包,并发送给第二设备;/n第二设备接收到NAT设备发送的第二UDP包时,修改第二UDP包的包头后作为第三UDP包,将该第三UDP包通过所述NAT设备发送给第一设备;/nNAT设备接收到第三UDP包时,通过NAT映射,修改第三UDP包的包头后作为第四UDP包,并发送给第一设备;/n第一设备接收到第四UDP包时,记录接收第四UDP包的时间,根据记录的时间,以及第四UDP包中携带的时间戳计算网络时延。/n

【技术特征摘要】
1.一种网络性能测试方法,其特征在于,应用于包括第一设备、网络地址转换NAT设备和第二设备的网络系统中,其中,第一设备在NAT私网侧,第二设备在公网侧;该方法包括:
第一设备构造第一用户数据报协议UDP包,并通过NAT设备发送给第二设备;其中,所述第一UDP包的载荷部分携带发送第一UDP包的时间戳;
NAT设备接收到第一UDP包时,通过NAT映射,修改第一UDP包的包头后作为第二UDP包,并发送给第二设备;
第二设备接收到NAT设备发送的第二UDP包时,修改第二UDP包的包头后作为第三UDP包,将该第三UDP包通过所述NAT设备发送给第一设备;
NAT设备接收到第三UDP包时,通过NAT映射,修改第三UDP包的包头后作为第四UDP包,并发送给第一设备;
第一设备接收到第四UDP包时,记录接收第四UDP包的时间,根据记录的时间,以及第四UDP包中携带的时间戳计算网络时延。


2.根据权利要求1所述的方法,其特征在于,
所述第一UDP包的目的端口号为53;
所述第四UDP包的源端口号为53。


3.根据权利要求1或2所述的方法,其特征在于,所述方法进一步包括:
第二设备开启多个进程或线程,将反射UDP包的任务分布给多个CPU进行处理;
配置多个UDP端口,通过CPU调度使用对应的UDP端口向第一设备反射数据包。


4.一种网络性能测试方法,其特征在于,应用于包括第三设备、网络地址转换NAT设备和第四设备的网络系统中,其中,第三设备在NAT私网侧,第四设备在公网侧;该方法包括:
第三设备构造第五UDP包,用于在NAT设备进行注册;
NAT设备接收到第三设备发送的第五UDP包时,建立第三设备内网地址和内网UDP端口号与外网的第二设备的外网地址和外网UDP端口号的映射关系;
第四设备构造第六UDP包,并通过NAT设备发送给第三设备;其中,所述第五UDP包的载荷部分携带发送第六UDP包的时间戳;
NAT设备接收到第六UDP包时,修改第六UDP包的包头后作为第七UDP包,并发送给第三设备;
第三设备接收到NAT设备发送的第七UDP包时,修改第七UDP包的包头,修改后作为第八UDP包,将该第八UDP包发送给第四设备;
NAT设备接收到第八UDP包时,修改第八UDP包的包头后作为第九UDP包,并发送给第四设备;
第四设备接收到第九UDP包时,记录接收第九UDP包的时间,根据记录的时间,以及第九UDP包中携带的时间戳计算网络时延。


5.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:
第四设备开启多个进程或线程,将反射UDP包的任务分布给多个CPU进行处理;
配置多个UD...

【专利技术属性】
技术研发人员:刘述杨哲葛裴田辉
申请(专利权)人:中国信息通信研究院
类型:发明
国别省市:北京;11

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

1