zhhyu7 opened a new pull request, #18011:
URL: https://github.com/apache/nuttx/pull/18011
## 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.
## Impact
- **TCP**: `tcp_wrbuffer.c`, `tcp_recvfrom.c`, `tcp_send_buffered.c`
- **UDP**: `udp_wrbuffer.c`
- **ICMP/ICMPv6**: `icmp_input.c`, `icmpv6_input.c`
- **Packet**: `pkt_input.c`, `pkt_sendmsg_buffered.c`
## 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:
```
NuttShell (NSH) NuttX-12.12.0
MOTD: username=admin password=Administrator
nsh> iperf -c 10.0.1.1
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 167133184 Bytes 444.21 Mbits/sec
3.01- 6.02 sec 160907264 Bytes 427.66 Mbits/sec
6.02- 9.03 sec 167264256 Bytes 444.56 Mbits/sec
9.03- 12.04 sec 159039488 Bytes 422.70 Mbits/sec
12.04- 15.05 sec 165265408 Bytes 439.24 Mbits/sec
15.05- 18.06 sec 162758656 Bytes 432.58 Mbits/sec
18.06- 21.07 sec 166150144 Bytes 441.60 Mbits/sec
21.07- 24.08 sec 168116224 Bytes 446.82 Mbits/sec
24.08- 27.09 sec 163971072 Bytes 435.80 Mbits/sec
27.09- 30.10 sec 168886272 Bytes 448.87 Mbits/sec
0.00- 30.10 sec 1649491968 Bytes 438.40 Mbits/sec
iperf exit
nsh>
nsh> iperf -s
IP: 10.0.1.2
mode=tcp-server sip=10.0.1.2:5001,dip=0.0.0.0:5001, interval=3, time=0
accept: 10.0.1.1:37436
Interval Transfer Bandwidth
0.00- 3.01 sec 212808200 Bytes 565.60 Mbits/sec
3.01- 6.02 sec 206625040 Bytes 549.17 Mbits/sec
6.02- 9.03 sec 204516800 Bytes 543.57 Mbits/sec
closed by the peer: 10.0.1.1:37436
iperf exit
nsh>
nsh> iperf -c 10.0.1.1 -u
IP: 10.0.1.2
mode=udp-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 248220416 Bytes 659.72 Mbits/sec
3.01- 6.02 sec 252431808 Bytes 670.92 Mbits/sec
6.02- 9.03 sec 251402880 Bytes 668.18 Mbits/sec
9.03- 12.04 sec 248893120 Bytes 661.51 Mbits/sec
12.04- 15.05 sec 248382336 Bytes 660.15 Mbits/sec
15.05- 18.06 sec 252202176 Bytes 670.30 Mbits/sec
18.06- 21.07 sec 247859776 Bytes 658.76 Mbits/sec
21.07- 24.08 sec 252090304 Bytes 670.01 Mbits/sec
24.08- 27.09 sec 252523072 Bytes 671.16 Mbits/sec
27.09- 30.10 sec 251651648 Bytes 668.84 Mbits/sec
0.00- 30.10 sec 2505657536 Bytes 665.96 Mbits/sec
iperf exit
nsh>
```
--
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]