summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Żenczykowski <maze@google.com>2021-04-02 10:50:56 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-04-02 10:50:56 +0000
commit351ab4736eef8d2d92caee12ea1b6deb9750f29b (patch)
tree8fe8519e77b4bfbc9d808dedce73282632fdb1eb
parentbb7845a38dd19858523405cf7563d000fb5e493c (diff)
parenta22161c49b7a74060d3be0b3282cdc4b9b6d9b78 (diff)
downloadtests-351ab4736eef8d2d92caee12ea1b6deb9750f29b.tar.gz
net-test: add test for congestion control sysctls am: 2cd9b42078 am: 0fbfcc6183 am: a22161c49b
Original change: https://android-review.googlesource.com/c/kernel/tests/+/1650427 Change-Id: I36ccc77dc6116760ef5c59220a4c420c2c5751cd
-rwxr-xr-xnet/test/sysctls_test.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/net/test/sysctls_test.py b/net/test/sysctls_test.py
new file mode 100755
index 0000000..4b71f39
--- /dev/null
+++ b/net/test/sysctls_test.py
@@ -0,0 +1,43 @@
+#!/usr/bin/python
+#
+# Copyright 2021 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import unittest
+
+import net_test
+
+
+class SysctlsTest(net_test.NetworkTest):
+
+ def check(self, f):
+ algs = open(f).readline().strip().split(' ')
+ bad_algs = [a for a in algs if a not in ['bbr', 'bbr2', 'cubic', 'reno']]
+ msg = ("Obsolete TCP congestion control algorithm found. These "
+ "algorithms will decrease real-world networking performance for "
+ "users and must be disabled. Found: %s" % bad_algs)
+ self.assertEqual(bad_algs, [], msg)
+
+ def testAllowedCongestionControl(self):
+ self.check('/proc/sys/net/ipv4/tcp_allowed_congestion_control')
+
+ def testAvailableCongestionControl(self):
+ self.check('/proc/sys/net/ipv4/tcp_available_congestion_control')
+
+ def testCongestionControl(self):
+ self.check('/proc/sys/net/ipv4/tcp_congestion_control')
+
+
+if __name__ == "__main__":
+ unittest.main()