Skip to contentSkip to conversation

net: TCP thin-stream detection

PATCH In review Andreas Petlund 1 participant 1 message Feb 8, 2010

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH v2 1/3 net: TCP thin-stream detection

Major change: Stopped stream from being detected as thin if in initial slow-start

Quoted 1 line

From 1c448f7c65a016ded7eedd44fe74874e5b3cdbc0 Mon Sep 17 00:00:00 2001

From: Andreas Petlund <[email protected]>
Date: Mon, 8 Feb 2010 14:05:24 +0100
Subject: [PATCH 1/3] net: TCP thin-stream detection

---
 include/net/tcp.h |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
include/net/tcp.h +7 -0
index 87d164b..e5e2056 100644
@@ -1386,6 +1386,13 @@ static inline void tcp_highest_sack_combine(struct sock *sk,
 		tcp_sk(sk)->highest_sack = new;
 }
 
+/* Determines whether this is a thin stream (which may suffer from
+ * increased latency). Used to trigger latency-reducing mechanisms.*/
+static inline unsigned int tcp_stream_is_thin(struct tcp_sock *tp)
+{
+	return tp->packets_out < 4 && !tcp_in_initial_slowstart(tp);
+}
+
 /* /proc */
 enum tcp_seq_states {
 	TCP_SEQ_STATE_LISTENING,
Signature · 1 line
1.6.3.3