UDP测试
UDP是User Datagram Protocol的简称,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。与TCP协议一样,UDP用于处理数据包,但不提供数据包分组、组装和排序等功能。由于UDP不能对数据包进行排序,因此在发送报文后无法得知其是否安全完整到达。UDP主要用于支持需要在计算机之间传输数据的网络应用,如网络视频会议系统等。许多网络应用程序都使用UDP,例如多媒体数据流和实时通信应用程序。虽然UDP最初的光彩已经被一些类似协议所掩盖,但即使在今天,UDP仍然是一项非常实用和可行的网络传输层协议。
在5G专网项目中,当设备调测部署完成后,为了验证网络系统内终端到DN服务器之间的最大性能带宽,可以采用UDP上下行灌包测试方法。这种测试方法可以最大限度地验证5G专网系统内的上下行峰值速率。通过测试,可以确保终端到DN服务器之间的通信质量,同时也可以评估网络系统在不同负载情况下的性能表现。
UDP上下行灌包测试的具体步骤如下:
- 选择合适的测试终端和设备,确保它们可以与网络系统进行有效的通信。
- 在测试终端上配置适当的UDP端口号,并确保该端口可以被网络系统监听和接收UDP数据包。
- 使用UDP上下行灌包工具,向网络系统发送测试数据包。在发送数据包时,可以根据实际情况调整发送速率和发送时间间隔,以便更好地模拟实际应用场景。
- 监测网络系统接收到的UDP数据包,记录每个数据包的接收时间和接收位置,以便评估网络系统的上下行传输性能。
- 对比接收到的UDP数据包的数量和大小,以及发送的测试数据包的数量和大小,可以评估网络系统内终端到DN服务器之间的最大性能带宽。根据测试结果,对网络系统进行优化和调整,以提高其传输性能。
-
UDP命令的用法
-
上行UDP灌包
服务侧启动如下命令:iperf -u -s -i 1 -p 6001
终端侧启动如下命令:iperf -c xx.xx.xx.xx -u -i 1 -t 100 -b 5m -p 6001 -P 1
测试时UDP灌包一般为1个线程,直接观察每行的值即可。
参数说明:
参数 | 说明 |
xx.xx.xx.xx | 表示向xx.xx.xx.xx 包,(xx.xx.xx.xx为DN服务器地址) |
-n | 指定发送多少次数据包 |
-u | 表示启动UDP灌包,如果是灌TCP则不需要-u这个参数 |
-b 320m | 表示指定灌包大小,这里表示灌320M的数据,单位bits/sec |
-p 6001 | 表示指定灌包的端口为6001,可根据需要更改 |
-t 99999 | 表示指定灌99999秒,可根据需要修改灌包时长 |
-i | 表示以秒为单位显示报告间隔,一般设置为1 |
-c | 表示以client模式启动 |
-s | 表示以server模式启动 |
-P | 代表线程,一般设置为1个 |
测试时iperf界面显示如下:
举例:
服务侧启动如下命令:iperf -s -u -i 1 -p 6001
终端侧启动如下命令:iperf -c 10.40.0.3 -u –b 50m -p 6001 -t 50
服务侧:
终端侧:
说明:使用iperf3时命令如下:
服务侧:iperf3 -s -i 1 -p 6001
终端侧:iperf3 -c 10.1.1.3 -u -i 1 -t 100 -b 50m -p 6001 -P 1
xx.xx.xx.xx为服务器ip。
下行UDP灌包
服务侧启动如下命令:iperf -c 10.180.145.161 -u -i 1 -t 10 -b 120m -p 6001 -P 1
客户侧启动如下命令:iperf -u -s -i 1 –p 6001
参数说明:
参数 | 说明 |
xx.xx.xx.xx | 表示向xx.xx.xx.xx包,xx.xx.xx.xx为终端服务器地址 |
测试时iperf界面显示如下:
服务侧:
终端侧:
说明:使用iperf3时命令如下:
iperf3
服务端:iperf3 -c xx.xx.xx.xx -u -i 1 -t 100 -b 50m -p 6001 -P 1
客户端:iperf3 -s -i 1 -p 6001
xx.xx.xx.xx为终端侧ip。
说明:下行测试与上行类似,只是客户端和服务端相反,下行灌包-b建议设置为1200M。
iperf3和iperf2在使用上,iperf3服务端端使用了统一的命令iperf3 -s,不再区分测试UDP还是TCP。
-
UDP灌包的应用
Ubunt系统服务端UDP灌包的使用
1、根据灌包服务器操作系统Ubuntu在官网下载最新的iperf版本https://iperf.fr/iperf-download.php#fedora选择对应的64位离线安装包下载到本地。
2、上传软件离线安装包服务器然后执行“sudo dpkg -i +版本包”进行安装。
iperf3安装:
sudo dpkg -i iperf3_3.9-1_amd64.deb libsctp1_1.0.18+dfsg-1_amd64.deb libiperf0_3.9-1_amd64.deb
安装成功后执行iperf3 -v确认版本安装情况。
Iperf2安装:
sudo dpkg -i iperf_2.0.5+dfsg1-2_amd64.deb
iperf -v
3、具体使用命令参见2.2.1UDP命令的用法
4、端计算网关自带iperf3工具,当测试WAN口灌包时,也可以通过查看usb0的流量观察灌包速率,执行命令 iftop -i usb0进行查看。
CentOS系统服务端UDP灌包的使用
1、如果灌包服务器是CentOS系统,登录iperf官网https://iperf.fr/iperf-download.php选择BBU服务器对应的CentOS 64位软件包下载到本地。
2、上传服务器然后执行“rpm -ivh +版本包名称”进行安装。
iperf3安装:
rpm -ivh iperf3-3.1.3-1.fc24.x86_64.rpm
说明:
rpm 常用命令解释:
-i 显示套件的相关信息。
-v 显示指令执行过程。
-h 或--hash 套件安装时列出标记。
Iferf3 -v
iperf2安装:
rpm -ivh iperf-2.0.8-2.fc23.x86_64.rpm
iperf –v
3、具体使用命令参见UDP命令的用法
WIN10系统服务端UDP灌包的使用
1、根据服务器操作系统Ubuntu在官网下载最新的iperf版本https://iperf.fr/iperf-download.php#windows选择对应安装包进行下载。
2、偶尔使用、临时使用
进入下载的iperf2或者iperf3的软件包文件夹目录D:\02 Tools\灌包软件\iperf-2.0.9-win64,输入“cmd”进入使用
3、经常使用
以win10为例,给iperf配置环境变量直接使用
选择“此电脑”右键选择属性,选择高级系统设置
在系统属性-环境变量,在系统变量-Path(编辑或双击进入)新建一个环境变量,填入iperf3的目录地址D:\02 Tools\灌包软件\iperf-3.1.3-win64,确定退出,依次添加iperf2的目录地址:D:\02 Tools\灌包软件\iperf-2.0.9-win64确定退出。
4、查询iperf3版本测试环境变量是否成功在使用,在CMD里执行iperf –version或iperf3 –version命令查询。
5、具体UDP使用命令参见2.2.1 UDP命令的用法
6、iperf中打印出现混乱,此时可以观察电脑的网卡流量判断灌包速率,任务管理器界面,点击性能菜单,择对应的以太网观察服务端电脑的网卡接收到的流量。
测试手机UDP灌包的使用
- 手机下载安装Magic iPerf ,
- 具体UDP使用命令参见UDP命令的用法。