zephyr/subsys/net/ip
Robert Lubos 405e3d757f net: tcp: Add exponential backoff for ZWP probing
Persist timer should implement exponential backoff, as per RFC 1122:

    The transmitting host SHOULD send the first zero-window
    probe when a zero window has existed for the retransmission
    timeout period (see Section 4.2.2.15), and SHOULD increase
    exponentially the interval between successive probes.

Implement this, by following Linux behaviour, and simply double the
timeout or each probe transmission.

Additionally, prevent reseting the persist timer in case an
acknowledgment is received with zero window size, and the timer is
already running.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-08-15 08:21:29 +00:00
..
6lo_private.h
6lo.c net: 6lo: Remove dead statement 2022-06-07 11:54:20 +02:00
6lo.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
canbus_socket.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
canbus_socket.h
CMakeLists.txt
connection.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
connection.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
dhcpv4.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
dhcpv4.h
icmpv4.c net: icmp: skip checksum calculation when possible 2022-08-09 12:29:18 +02:00
icmpv4.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
icmpv6.c net: icmp: skip checksum calculation when possible 2022-08-09 12:29:18 +02:00
icmpv6.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
igmp.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv4_autoconf_internal.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
ipv4_autoconf.c net: ip: only start IP configuration on IP interfaces 2022-08-04 13:44:06 +02:00
ipv4.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv4.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
ipv6_fragment.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv6_mld.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv6_nbr.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv6.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv6.h net: ipv6: use static inlines where it makes sense for stubs 2022-07-27 18:44:07 +02:00
Kconfig net: tcp: Implement randomized retransmission timeouts 2022-08-01 10:33:24 +02:00
Kconfig.debug
Kconfig.ipv4
Kconfig.ipv6 net: l2: ieee802154: decouple L2/L3 concerns 2022-08-04 13:44:06 +02:00
Kconfig.mgmt
Kconfig.stack
Kconfig.stats
nbr.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
nbr.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
net_context.c net: context: Unregister connection for packet socket 2022-08-03 11:11:55 +02:00
net_core.c net: ip: build IEEE 802.15.4 L2 without IP support 2022-08-05 15:04:37 +02:00
net_if.c net: ip: only start IP configuration on IP interfaces 2022-08-04 13:44:06 +02:00
net_mgmt.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
net_pkt.c net: ip: build IEEE 802.15.4 L2 without IP support 2022-08-05 15:04:37 +02:00
net_private.h all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
net_shell.c net: tcp: Use our MTU to determine the mss for transmission 2022-06-07 18:55:44 +02:00
net_shell.h
net_stats.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
net_stats.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
net_tc_mapping.h
net_tc.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
net_timeout.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
packet_socket.c net: sockets: packet: Remove obsolete TODO 2022-05-27 15:40:29 -07:00
packet_socket.h
promiscuous.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
route.c net: route: Fix pkt leak if net_send_data() fails 2022-07-25 15:14:58 +02:00
route.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
tcp_internal.h net: tcp: Implement Nagle's algorithm 2022-06-09 11:32:50 +02:00
tcp_private.h net: tcp: Add exponential backoff for ZWP probing 2022-08-15 08:21:29 +00:00
tcp.c net: tcp: Add exponential backoff for ZWP probing 2022-08-15 08:21:29 +00:00
tcp.h
tp_priv.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
tp.c
tp.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
trickle.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
udp_internal.h subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
udp.c subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
utils.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00