You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2022/01/22 00:14:33 UTC

[GitHub] [incubator-nuttx] a-lunev opened a new pull request #5313: sim/netdev: retrieve all the queued RX frames from the network device on every poll

a-lunev opened a new pull request #5313:
URL: https://github.com/apache/incubator-nuttx/pull/5313


   ## Summary
   
   Retrieve all the queued RX frames from the network device on every poll. As a result, the RX throughput is increased significantly w/o harming the TX throughput.
   The previous RX throughput in case of TCP was 1 Mbit/s. Now it is 159 Mbit/s on my Linux setup.
   This PR extends PR #5226.
   
   ## Impact
   
   arch/sim/netdev(tun/tap)
   
   ## Testing
   
   Build NuttX:
   ```
   $ ./tools/configure.sh -l sim:tcpblaster
   $ make menuconfig (enable CONFIG_NETUTILS_IPERF, set CONFIG_NETUTILS_IPERFTEST_DEVNAME=eth0)
   $ make
   ```
   Enable TUN/TAP on Linux host:
   ```
   $ sudo setcap cap_net_admin+ep ./nuttx
   $ sudo ./tools/simhostroute.sh wlan0 on
   ```
   
   Run NuttX on Linux host:
   ```
   $ ./nuttx
   NuttShell (NSH) NuttX-10.2.0
   nsh> ifconfig eth0 10.0.1.2
   nsh> ifup eth0
   ifup eth0...OK
   nsh> nsh> iperf -s -p 5471 -i 1
   ```
   
   Start iperf on Linux host:
   ```
   $ iperf -c 10.0.1.2 -p 5471 -i 1 -t 10
   ------------------------------------------------------------
   Client connecting to 10.0.1.2, TCP port 5471
   TCP window size: 45.0 KByte (default)
   ------------------------------------------------------------
   [  3] local 192.168.1.68 port 53000 connected with 10.0.1.2 port 5471
   [ ID] Interval       Transfer     Bandwidth
   [  3]  0.0- 1.0 sec  19.0 MBytes   159 Mbits/sec
   [  3]  1.0- 2.0 sec  18.9 MBytes   158 Mbits/sec
   [  3]  2.0- 3.0 sec  19.0 MBytes   159 Mbits/sec
   [  3]  3.0- 4.0 sec  19.0 MBytes   159 Mbits/sec
   [  3]  4.0- 5.0 sec  18.8 MBytes   157 Mbits/sec
   [  3]  5.0- 6.0 sec  19.0 MBytes   159 Mbits/sec
   [  3]  6.0- 7.0 sec  18.9 MBytes   158 Mbits/sec
   [  3]  7.0- 8.0 sec  19.0 MBytes   159 Mbits/sec
   [  3]  8.0- 9.0 sec  19.0 MBytes   159 Mbits/sec
   [  3]  9.0-10.0 sec  18.9 MBytes   158 Mbits/sec
   [  3]  0.0-10.0 sec   189 MBytes   159 Mbits/sec
   ```
   
   Shutdown NuttX:
   `nsh> poweroff`
   
   Disable TUN/TAP on Linux host:
   `$ sudo ./tools/simhostroute.sh wlan0 off`


-- 
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: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 merged pull request #5313: sim/netdev: retrieve all the queued RX frames from the network device on every poll

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 merged pull request #5313:
URL: https://github.com/apache/incubator-nuttx/pull/5313


   


-- 
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: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org