lwip iperf 方法进行性能测试
生活随笔
收集整理的這篇文章主要介紹了
lwip iperf 方法进行性能测试
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
硬件配置: STM32F407 + DP83848 + FreeRTOS V10.1.1 + LWIP 2.1.2? ? 2018年12月5日14:31:24
?
1、先讀取 PHY 寄存器 , 查看 自主協商 結果
PHY自主協商結果:ETH_Mode? ? ??ETH_Mode_FullDuplex
PHY自主協商結果:ETH_Speed? ? ?ETH_Speed_100M
2、安裝 測試軟件 :?Jperf2.0下載及使用方法介紹
?
3、添加??lwip?源文件?下的 lwip-2.1.2\src\apps\lwiperf? ? lwiperf.c 文件
4、407 這端 是 跑 TCP 服務器,然后 電腦客戶端去收發數據進行性能測試,代碼如下:
static void vTaskLwipPerf(void *pvParameters) {ip_addr_t perf_server_ip;IP_ADDR4( &perf_server_ip, 192, 168, 0, 10 ); //IP 為 407 自己的 靜態IPfor(;;){lwiperf_start_tcp_server( &perf_server_ip, 9527, NULL, NULL );vTaskDelay( 2000 / portTICK_PERIOD_MS );} }?
實測速度如下,只有?1MB/S?不到 的 速度 ,理論應該可以到12.5MB/S 的 速度啊?
?
?
?
?TCP_MSS?280? ?被我改成了?1460,速度 上升了一個數量級,大概到?4.5MB/S?的 速度 !!!
?
/*** TCP_TTL: Default Time-To-Live value.*/ #define TCP_TTL IP_DEFAULT_TTL /* IP 數據包中的TTL 的值 *//* Controls if TCP should queue segments that arrive out oforder. Define to 0 if your device is low on memory. */ #define TCP_QUEUE_OOSEQ ( LWIP_TCP ) /* TCP是否緩沖接收到的無序報文段 *//* TCP Maximum segment size. */ #define TCP_MSS (1500 - 40) /* TCP_MSS = (Ethernet MTU - IP header size - TCP header size) TCP最大報文段大小 *//* TCP sender buffer space (bytes). */ #define TCP_SND_BUF (4*TCP_MSS) /* TCP 發送緩沖區大小,增大該值可以提升TCP性能 *//* TCP receive window. */ #define TCP_WND (4*TCP_MSS) /* TCP 發送窗口大小,增大改值可以提升TCP性能 */?
?
總結
以上是生活随笔為你收集整理的lwip iperf 方法进行性能测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sourceinsight如何显示完整文
- 下一篇: ARM WFI和WFE指令