diff options
author | rtenneti@chromium.org <rtenneti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-09 05:11:41 +0000 |
---|---|---|
committer | rtenneti@chromium.org <rtenneti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-09 05:11:41 +0000 |
commit | d67d10528eb68753d19db1698b3688fa48fa44b3 (patch) | |
tree | 3797e452b5c689ff8da97dc9a73b775c610b07ea /net/curvecp | |
parent | 785db4fe43f9b4b3ce1231dec4d723e379ed992b (diff) | |
download | chromium_src-d67d10528eb68753d19db1698b3688fa48fa44b3.zip chromium_src-d67d10528eb68753d19db1698b3688fa48fa44b3.tar.gz chromium_src-d67d10528eb68753d19db1698b3688fa48fa44b3.tar.bz2 |
Collect stats to investigate the viability of UDP
connectivity from the browser (first cut). Collect
stats for TCP connectivity also.
- What percentage of users can get a message end-to-end
to an TCP and UDP server.
- What is the latency for TCP and UDP messages.
Added TCP and UDP echo servers to testserver.py
for unittests.
BUG=82565
TEST=udp tests
Review URL: http://codereview.chromium.org/7056031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@88495 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/curvecp')
-rw-r--r-- | net/curvecp/test_client.h | 2 | ||||
-rw-r--r-- | net/curvecp/test_data_stream.h | 88 | ||||
-rw-r--r-- | net/curvecp/test_server.h | 2 |
3 files changed, 2 insertions, 90 deletions
diff --git a/net/curvecp/test_client.h b/net/curvecp/test_client.h index 08f496f..e992ce8 100644 --- a/net/curvecp/test_client.h +++ b/net/curvecp/test_client.h @@ -10,7 +10,7 @@ #include "net/base/completion_callback.h" #include "net/base/host_port_pair.h" #include "net/base/io_buffer.h" -#include "net/curvecp/test_data_stream.h" +#include "net/base/test_data_stream.h" namespace net { diff --git a/net/curvecp/test_data_stream.h b/net/curvecp/test_data_stream.h deleted file mode 100644 index d2bbc87..0000000 --- a/net/curvecp/test_data_stream.h +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef NET_CURVECP_TEST_DATA_STREAM_H_ -#define NET_CURVECP_TEST_DATA_STREAM_H_ -#pragma once - -#include <string.h> // for memcpy() -#include <algorithm> - -// This is a test class for generating an infinite stream of data which can -// be verified independently to be the correct stream of data. - -namespace net { - -class TestDataStream { - public: - TestDataStream() { - Reset(); - } - - // Fill |buffer| with |length| bytes of data from the stream. - void GetBytes(char* buffer, int length) { - while (length) { - AdvanceIndex(); - int bytes_to_copy = std::min(length, bytes_remaining_); - memcpy(buffer, buffer_ptr_, bytes_to_copy); - buffer += bytes_to_copy; - Consume(bytes_to_copy); - length -= bytes_to_copy; - } - } - - // Verify that |buffer| contains the expected next |length| bytes from the - // stream. Returns true if correct, false otherwise. - bool VerifyBytes(const char *buffer, int length) { - while (length) { - AdvanceIndex(); - int bytes_to_compare = std::min(length, bytes_remaining_); - if (memcmp(buffer, buffer_ptr_, bytes_to_compare)) - return false; - Consume(bytes_to_compare); - length -= bytes_to_compare; - buffer += bytes_to_compare; - } - return true; - } - - void Reset() { - index_ = 0; - bytes_remaining_ = 0; - buffer_ptr_ = buffer_; - } - - private: - // If there is no data spilled over from the previous index, advance the - // index and fill the buffer. - void AdvanceIndex() { - if (bytes_remaining_ == 0) { - // Convert it to ascii, but don't bother to reverse it. - // (e.g. 12345 becomes "54321") - int val = index_++; - do { - buffer_[bytes_remaining_++] = (val % 10) + '0'; - } while ((val /= 10) > 0); - buffer_[bytes_remaining_++] = '.'; - } - } - - // Consume data from the spill buffer. - void Consume(int bytes) { - bytes_remaining_ -= bytes; - if (bytes_remaining_) - buffer_ptr_ += bytes; - else - buffer_ptr_ = buffer_; - } - - int index_; - int bytes_remaining_; - char buffer_[16]; - char* buffer_ptr_; -}; - -} // namespace net - -#endif // NET_CURVECP_TEST_DATA_STREAM_H_ diff --git a/net/curvecp/test_server.h b/net/curvecp/test_server.h index 22c44e4..a941401 100644 --- a/net/curvecp/test_server.h +++ b/net/curvecp/test_server.h @@ -8,8 +8,8 @@ #include "base/task.h" #include "net/base/completion_callback.h" +#include "net/base/test_data_stream.h" #include "net/curvecp/curvecp_server_socket.h" -#include "net/curvecp/test_data_stream.h" namespace net { |