nuttx/net/tcp
Xiang Xiao 5fd8f78bf9 net/ipforward, tcp, and udp: Fix a chicken and egg problem by eliminating the check of the arp/neighbor tables before packet transmission
1. For buffered tcp/udp case, if CONFIG_NET_ARP_SEND/CONFIG_NET_ARP_IPIN/CONFIG_NET_ICMPv6_NEIGHBOR isn't enabled and the table doesn't contain ip<->ethaddr mapping yet, the logic will skip the realtransmission and then arp/neighbor can't steal the final buffer to generate arp/icmpv6 packet.
2.for all other case, the tcp layer or user program should already contain the retransmit logic, the check is redundancy and may generate many duplicated packets if arp/icmpv6 response is too slow because the cursor stop forward. If user still concern about the very first packet lost, he could fix the issue by enabling CONFIG_NET_ARP_SEND/CONFIG_NET_ICMPv6_NEIGHBOR at begin.
2019-09-18 12:33:41 -06:00
..
Kconfig
Make.defs
tcp_accept.c
tcp_appsend.c
tcp_backlog.c
tcp_callback.c
tcp_conn.c
tcp_connect.c
tcp_devpoll.c
tcp_finddev.c
tcp_getsockopt.c
tcp_input.c
tcp_ipselect.c
tcp_listen.c
tcp_monitor.c
tcp_netpoll.c
tcp_notifier.c
tcp_recvwindow.c
tcp_send_buffered.c
tcp_send_unbuffered.c
tcp_send.c
tcp_sendfile.c
tcp_seqno.c
tcp_setsockopt.c
tcp_timer.c
tcp_txdrain.c
tcp_wrbuffer_dump.c
tcp_wrbuffer.c
tcp.h