summaryrefslogtreecommitdiffstats
path: root/net/socket/tcp_fin_aggregation.h
diff options
context:
space:
mode:
authorEbrahem Qassem <ekassem@codeaurora.org>2011-11-20 14:57:09 +0200
committerSteve Kondik <shade@chemlab.org>2012-09-11 13:20:30 -0700
commit5fbe95affc8eeed93c678b1d271f64dcc4dd919b (patch)
tree053d8358e76befa6fd95e7cef8319045e534167f /net/socket/tcp_fin_aggregation.h
parenta75b259c30d54752a0d42804631bcf309b381f90 (diff)
downloadexternal_chromium-5fbe95affc8eeed93c678b1d271f64dcc4dd919b.zip
external_chromium-5fbe95affc8eeed93c678b1d271f64dcc4dd919b.tar.gz
external_chromium-5fbe95affc8eeed93c678b1d271f64dcc4dd919b.tar.bz2
net: networking optimizations
features: - early connection - memory cache - caching of redirection - request queue priority - closing unused sockets - SHUTR - fin aggregation - object prefetch - dns host name prioritization Change-Id: Ief90b8206ba48115eaeb12d554424d65f36427ac
Diffstat (limited to 'net/socket/tcp_fin_aggregation.h')
-rw-r--r--net/socket/tcp_fin_aggregation.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/net/socket/tcp_fin_aggregation.h b/net/socket/tcp_fin_aggregation.h
new file mode 100644
index 0000000..26ab3f8
--- /dev/null
+++ b/net/socket/tcp_fin_aggregation.h
@@ -0,0 +1,52 @@
+// Copyright (c) 2011,2012 Code Aurora Forum. All rights reserved.
+
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following
+// disclaimer in the documentation and/or other materials provided
+// with the distribution.
+// * Neither the name of Code Aurora Forum, Inc. nor the names of its
+// contributors may be used to endorse or promote products derived
+// from this software without specific prior written permission.
+
+// THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+// BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+// BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+// OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+// IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+#ifndef TCP_FIN_AGGREGATION_H_
+#define TCP_FIN_AGGREGATION_H_
+
+#include "base/basictypes.h"
+#include "client_socket_pool_base.h"
+
+namespace net {
+
+class ITCPFinAggregation {
+
+public:
+ ITCPFinAggregation() {};
+ virtual ~ITCPFinAggregation() {};
+
+ virtual bool IsEnabled() = 0;
+ virtual void ReaperCleanup(bool close_unused_socket) = 0;
+ virtual int GetCleanupInterval(int current_interval) = 0;
+
+private:
+ DISALLOW_COPY_AND_ASSIGN(ITCPFinAggregation);
+};
+
+} // namespace net
+
+#endif /* TCP_FIN_AGGREGATION_H_ */