TCP_STREAM: 批量数据传输典型的例子有 ftp 和其它类似的网络应用(即一次传输整
个文件)。Netperf 缺省情况下进行 TCP 批量传输,即-t TCP_STREAM。测试过程中,
netperf 向 netserver 发送批量的 TCP 数据分组,以确定数据传输过程中的吞吐量。
UDP_STREAM: UDP_STREAM 用来测试进行 UDP 批量传输时的网络性能。注意:此
时测试分组的大小不得大于 socket 的发送与接收缓冲大小,否则 netperf 会报出错提示。
TCP_RR: TCP_RR 方式的测试对象是多次 TCP request 和 response 的交易过程,
但是它们发生在同一个 TCP 连接中,这种模式常常出现在数据库应用中。数据库的 client
程序与 server 程序建立一个 TCP 连接以后,就在这个连接中传送数据库的多次交易过程
TCP_CRR: 与 TCP_RR 不同,TCP_CRR 为每次交易建立一个新的 TCP 连接。最典型
的应用就是 HTTP,每次 HTTP 交易是在一条单独的 TCP 连接中进行的。因此,由于需要
不停地建立新的 TCP 连接,并且在交易结束后拆除 TCP 连接,交易率一定会受到很大的影
响。
UDP_RR: UDP_RR 方式使用 UDP 分组进行 request/response 的交易过程。由于没
有 TCP 连接所带来的负担,所以交易率一定会有相应的提升。
test options 是测试相关的局部参数,它与全局参数之间要用“--”分开,
-s size:设置客户端系统的 socket 发送与接收缓冲大小(单位为 BYTES)
-S size:设置服务端系统的 socket 发送与接收缓冲大小
-m size:设置客户端系统发送测试分组的大小
-M size:设置服务端系统接收测试分组的大小
-D :对客户端与服务端系统的 socket 设置 TCP_NODELAY 选项
-r : 设置 请 求包 大 小, 应 答包 大 小( -r request, response ) 。( 单 位为
BYTES)
2.1.6 功能测试操作详解
网络带宽测试
带宽测试一般使用-t TCP_STREAM 测试项,这也是 netperf 的默认测试项目。此项
测试与 ftp 类似可以测试系统的带宽,但可以通过参数进行更多的设置。比如: