zhhyu7 opened a new pull request, #18211:
URL: https://github.com/apache/nuttx/pull/18211

   ## Summary
   The main content of this submission is to limit both the TX/RX buffers of 
TCP/UDP to throttled IOBs, avoiding impacts on the sending and receiving of 
control-type messages.
   and optimized TX for TCP buffered mode.
   
   
   ## Impact
   
   *Update this section, where applicable, on how change affects users,
    build process, hardware, documentation, security, compatibility, etc.*
   
   ## Testing
   sim:matter with very small amount of IOB configuration
   ```
   CONFIG_MM_IOB=y
   CONFIG_IOB_NBUFFERS=40
   CONFIG_IOB_BUFSIZE=196
   CONFIG_IOB_ALIGNMENT=4
   CONFIG_IOB_SECTION=""
   CONFIG_IOB_NCHAINS=40
   CONFIG_IOB_THROTTLE=10
   ```
   NuttX test log:
   ```
   nsh> iperf -c 10.0.1.1 -B 10.0.1.2
        IP: 10.0.1.2
   
    mode=tcp-client sip=10.0.1.2:5001,dip=10.0.1.1:5001, interval=3, time=30
   
              Interval         Transfer         Bandwidth
   
      0.00-   3.01 sec  148127744 Bytes  393.70 Mbits/sec
      3.01-   6.02 sec  147177472 Bytes  391.17 Mbits/sec
      6.02-   9.03 sec  132677632 Bytes  352.63 Mbits/sec
      9.03-  12.04 sec  143818752 Bytes  382.24 Mbits/sec
     12.04-  15.05 sec  148914176 Bytes  395.79 Mbits/sec
     15.05-  18.06 sec  158990336 Bytes  422.57 Mbits/sec
     18.06-  21.07 sec  140148736 Bytes  372.49 Mbits/sec
     21.07-  24.08 sec  127320064 Bytes  338.39 Mbits/sec
     24.08-  27.09 sec  129712128 Bytes  344.75 Mbits/sec
     27.09-  30.10 sec  133414912 Bytes  354.59 Mbits/sec
      0.00-  30.10 sec 1410301952 Bytes  374.83 Mbits/sec
   iperf exit
   nsh> 
   ```
   esp32c3-devkit:wifi board 
   NuttX test log:
   ```
   nsh> iperf -c 10.212.241.242 &
   iperf [13:100]
   nsh>      IP: 10.212.241.66
   
    mode=tcp-client sip=10.212.241.66:5001,dip=10.212.241.242:5001, interval=3, 
time=30
   
              Interval         Transfer         Bandwidth
      0.00-   3.01 sec    1359872 Bytes    3.61 Mbits/sec
      3.01-   6.02 sec    1343488 Bytes    3.57 Mbits/sec
      6.02-   9.03 sec    1458176 Bytes    3.88 Mbits/sec
      9.03-  12.04 sec    1179648 Bytes    3.14 Mbits/sec
     12.04-  15.05 sec    1425408 Bytes    3.79 Mbits/sec
     15.05-  18.06 sec    1474560 Bytes    3.92 Mbits/sec
     18.06-  21.07 sec    1376256 Bytes    3.66 Mbits/sec
     21.07-  24.08 sec    1277952 Bytes    3.40 Mbits/sec
     24.08-  27.09 sec    1261568 Bytes    3.35 Mbits/sec
     27.09-  30.10 sec    1409024 Bytes    3.74 Mbits/sec
      0.00-  30.10 sec   13565952 Bytes    3.61 Mbits/sec
   iperf exit
   iperf -c 10.212.241.242 &
   iperf [22:100]
   nsh>      IP: 10.212.241.66
   
    mode=tcp-client sip=10.212.241.66:5001,dip=10.212.241.242:5001, interval=3, 
time=30
   
              Interval         Transfer         Bandwidth
   
      0.00-   3.01 sec     180224 Bytes    0.48 Mbits/sec
   
   nsh> cat /proc/iobinfo
       ntotal     nfree     nwait nthrottle
          100        40         0         0
   nsh>    3.01-   6.02 sec     376832 Bytes    1.00 Mbits/sec
      6.02-   9.03 sec     491520 Bytes    1.31 Mbits/sec
      9.03-  12.04 sec    1228800 Bytes    3.27 Mbits/sec
     12.04-  15.05 sec    1048576 Bytes    2.79 Mbits/sec
     15.05-  18.06 sec    1392640 Bytes    3.70 Mbits/sec
     18.06-  21.07 sec    1327104 Bytes    3.53 Mbits/sec
     21.07-  24.08 sec    1277952 Bytes    3.40 Mbits/sec
     24.08-  27.09 sec     278528 Bytes    0.74 Mbits/sec
     27.09-  30.10 sec    1130496 Bytes    3.00 Mbits/sec
      0.00-  30.10 sec    8732672 Bytes    2.32 Mbits/sec
   iperf exit
   
   nsh> cat /proc/iobinfo
       ntotal     nfree     nwait nthrottle
          100       100         0        60
   nsh> 
   nsh> 
   ```
   My local environment has a relatively high packet loss rate, so the 
throughput is relatively low.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to