wifi: add tcp delay ack support [1/1]

PD#OTT-5388

Problem:
wifi rx throughput issue

Solution:
add tcp delay ack support
enable tcp dealy ack by following command:
echo 1 > /proc/sys/net/ipv4/tcp_use_userconfig
echo 60 > /proc/sys/net/ipv4/tcp_delack_seg

Verify:
u211

Change-Id: I060810b2800bae377388ba6ed9f9256597c9e6ea
Signed-off-by: libo <bo.li@amlogic.com>
This commit is contained in:
libo
2018-05-18 20:47:38 +08:00
committed by Bo Li
parent 37c98ae778
commit dd999cbaf8
5 changed files with 102 additions and 9 deletions

View File

@@ -140,6 +140,8 @@ void tcp_time_wait(struct sock *sk, int state, int timeo);
* most likely due to retrans in 3WHS.
*/
#define TCP_DELACK_SEG 1 /*Number of full MSS to receive before Acking RFC2581*/
#define TCP_RESOURCE_PROBE_INTERVAL ((unsigned)(HZ/2U)) /* Maximal interval between probes
* for local resources.
*/
@@ -266,6 +268,11 @@ extern int sysctl_tcp_early_retrans;
extern int sysctl_tcp_limit_output_bytes;
extern int sysctl_tcp_challenge_ack_limit;
extern int sysctl_tcp_min_tso_segs;
/* sysctl variables for controlling various tcp parameters */
extern int sysctl_tcp_delack_seg;
extern int sysctl_tcp_use_userconfig;
extern int sysctl_tcp_min_rtt_wlen;
extern int sysctl_tcp_autocorking;
extern int sysctl_tcp_invalid_ratelimit;
@@ -364,6 +371,11 @@ ssize_t tcp_splice_read(struct socket *sk, loff_t *ppos,
struct pipe_inode_info *pipe, size_t len,
unsigned int flags);
extern int tcp_use_userconfig_sysctl_handler(struct ctl_table *table, int write,
void __user *buffer, size_t *length, loff_t *ppos);
extern int tcp_proc_delayed_ack_control(struct ctl_table *table, int write,
void __user *buffer, size_t *length, loff_t *ppos);
static inline void tcp_dec_quickack_mode(struct sock *sk,
const unsigned int pkts)
{