nuttx/net/tcp
liqinhui f61dc72892 net/tcp:Add NewReno congestion control.
- NewReno congestion control algorithm is used to solve the problem
  of network congestion breakdown. NewReno congestion control includes
  slow start, collision avoidance, fast retransmission, and fast
  recovery. The implementation refers to RFC6582 and RFC5681.

- In addition, we optimize the congestion algorithm. In the conflict
  avoidance stage, the maximum congestion window max_cwnd is used to
  limit the excessive growth of cwnd and prevent network jitter
  caused by congestion. Maximum congestion window max_cwnd is updated
  with the current congestion window cwnd and the update weight is
  0.875 when an RTO timeout occurs.

Signed-off-by: liqinhui <liqinhui@xiaomi.com>
2023-05-16 12:35:01 -03:00
..
Kconfig net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
Make.defs net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp.h net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_accept.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_appsend.c net/tcp: reuse common api to replace some ip select code 2023-01-30 11:25:10 +08:00
tcp_backlog.c tcp_input: drop SYN when no free node in the backlog 2023-04-24 01:52:33 +08:00
tcp_callback.c net/tcp: add out-of-order segment support 2023-01-18 16:24:09 +08:00
tcp_cc.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_close.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_conn.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_connect.c net/tcp: remove conn check since which can not be NULL 2023-02-02 13:31:06 +08:00
tcp_devpoll.c net/tcp: reuse common api to replace some ip select code 2023-01-30 11:25:10 +08:00
tcp_dump.c net: cleanup pvconn reference to avoid confuse 2022-08-26 20:58:11 +08:00
tcp_finddev.c net: modify find device logic 2023-02-12 01:25:34 +08:00
tcp_getsockopt.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_input.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_ioctl.c net: Align the prototype of sock_intf_s::si_ioctl with file_operations::ioctl 2022-09-06 22:46:37 +08:00
tcp_ipselect.c net/tcp: reuse common api to replace some ip select code 2023-01-30 11:25:10 +08:00
tcp_listen.c
tcp_monitor.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_netpoll.c tcp_input: drop SYN when no free node in the backlog 2023-04-24 01:52:33 +08:00
tcp_notifier.c Typo fixes. 2023-02-17 11:17:11 -03:00
tcp_recvfrom.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_recvwindow.c net/tcp: add out-of-order segment support 2023-01-18 16:24:09 +08:00
tcp_send.c net: move ttl field into socket_conn_s struct 2023-05-13 12:39:53 +08:00
tcp_send_buffered.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_send_unbuffered.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_sendfile.c net/sendfile: adapt sendfile() to support new driver model 2023-02-14 11:21:09 +08:00
tcp_seqno.c net/tcp: Avoid starting TCP sequence number 0 2022-11-13 09:09:36 +08:00
tcp_setsockopt.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_shutdown.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_timer.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_txdrain.c net: remove conn-related casts 2023-05-10 19:32:09 -03:00
tcp_wrbuffer.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00