Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Network Traffic graph displays errenous traffic spikes #50

Open
fanquake opened this issue Aug 10, 2020 · 1 comment
Open

Network Traffic graph displays errenous traffic spikes #50

fanquake opened this issue Aug 10, 2020 · 1 comment
Labels
Bug Something isn't working

Comments

@fanquake
Copy link
Member

Ported from: bitcoin/bitcoin#10296. This has had little follow up / discussion, and may not even be an issue any more (tested version was 0.14.0).

Describe the issue

First Issue
In Bitcoin Core 0.14.0 the Network Traffic graph in the Debug window displays erroneous traffic spikes when synchronizing the block chain. My internet connection is limited to 50 megabit/sec downstream yet the bursts are over 10 megabytes/sec, approximately twice the bandwidth that my internet connection should be capable of. Although theoretically my internal network could be buffering this traffic and sending it as a burst, these theoretical traffic bursts are not seen by the operating system's Task Manager or Resource Monitor applications therefor I believe it is safe to rule this out as the cause.

Second Issue
When you press the Clear button in the Network Traffic graph, and no network activity is taking place, it will not render a graphic for the graph. After a period of time when network traffic does take place it will render a flat line followed by a graph of the traffic

Can you reliably reproduce the issue?

If so, please list the steps to reproduce below:

First Issue
Replicate the environment, begin to download the block chain and watch the traffic graph window for hours. I'm sure you could save yourself a lot of time by doing this programmatically and have your code look for traffic spikes which would exceed the available internet bandwidth.

Second Issue
Replication the environment, begin to download the block chain, wait for a period of no network traffic, press the clear button, wait for network traffic to resume.

Expected behaviour

First Issue
The network graph should display accurate traffic statistics.

Second Issue
The network graph should display a flat line during periods of no traffic

Actual behaviour

First Issue
There are erroneous traffic spikes.

Second Issue
A flat line is not displayed until traffic occurs after the graph has been cleared.

Screenshots.

First Issue
Please be aware that there is also iSCSI and Remote Desktop Services traffic accounted for in the Task Manager/Resource Monitor graphs. Even with this extra traffic, Task Manager/Resource Monitor does not display the same 10+ megabyte/sec traffic spikes.
Video of it happening with Task Manager - https://my.mixtape.moe/ugszqy.mp4
Screenshot of it happening with Resource Monitor:
screen shot 2017-04-28 at 5 04 59 pm

Second Issue
Video of it happening - https://my.mixtape.moe/gcazhi.mp4

What version of bitcoin-core are you using?

0.14.0

Machine specs:

  • OS: Windows Server 2016 Remote Desktop Services Session Host virtual machine with Bitcoin Core configured as a RemoteApp on a VMware ESXi 6.5 host
  • CPU: 4 cores from a dual Xeon E5-2660v2 with high latency sensitivity and 100% resource reservations
  • RAM: 4GB with 100% resource reservations
  • Disk size: OS/Bitcoin Core 32GB, data directory 1TB
  • Disk Type (HD/SDD): OS/Bitcoin Core is stored on the host as a VMDK on a 8x SSD RAID 0 VMFS6 datastore, the data directory is a thin provisioned LUN on a Microsoft iSCSI target server 2016 failover cluster running deduplication stored on the host as a VMDK on a 8x HDD RAID 6 VMFS5 datastore.
  • Network: Cable Modem->Cisco ASA 5510 firewall->Two Cisco Aironet 1141 802.11n (2.4Ghz) APs configured as a workgroup bridge->Cisco Catalyst 3750E switch->ESXi host with a Intel X520 NIC as the uplinks for the VDS port group->VM with a VMXNET3 network adapter
@rebroad
Copy link
Contributor

rebroad commented May 2, 2021

Might it be due to the interval being used not always being correct (e.g. sometimes there can be delays in the function being called).

It sounds like you're not able to easily reproduce the issue, but if you were, I'm curious if this rebroad/bitcoin@5ff00f8 would help.

fanquake pushed a commit that referenced this issue Sep 30, 2021
0d624261ef Merge bitcoin-core/crc32c-subtree#2: Merge upstream
cac7ca830b Merge commit 'fa5ade41ee480003d9c5af6f43567ba22e4e17e6' into bitcoin-fork
fa5ade41ee Fix compilation warnings on ARM64 with old GCC versions. (#52)
db08d22129 Updated Travis-CI configuration. (#51)
e31619a5b7 Fix GitHub links. (#50)
7fa4c263e8 Update Travis CI config. (#49)
a3d9e6d1a4 Updated third_party/ and Travis CI config. (#48)

git-subtree-dir: src/crc32c
git-subtree-split: 0d624261ef83ab08c953c196540ed18f355add4c
fanquake added a commit that referenced this issue Oct 20, 2021
a44caf65fe Merge bitcoin-core/univalue-subtree#28: Import fixes for sanitizer reported issues
135254331e Import fixes for sanitizer reported issues
d5fb86940e refactor: use c++11 range based for loop in checkObject
ff9c379304 refactor: Use nullptr (c++11) instead of NULL
08a99754d5 build: use ax_cxx_compile_stdcxx.m4 to check for C++11 support
66d3713ce7 Merge bitcoin-core/univalue-subtree#29: ci: travis -> cirrus
808d487292 ci: travis -> cirrus
c390ac375f Merge bitcoin-core/univalue-subtree#19: Split sources for easier buildsystem integration
4a5b0a1c65 build: Move source entries out to sources.mk
6c7d94b33c build: cleanup wonky gen usage
a222637c6d Merge #23: Merge changes from jgarzik/univalue@1ae6a23
f77d0f718d Merge commit '1ae6a231a0169938eb3972c1d48dd17cba5947e1' into HEAD
1ae6a231a0 Merge pull request #57 from MarcoFalke/test_fix
92bdd11f0b univalue_write: remove unneeded sstream.h include
ffb621c130 Merge pull request #56 from drodil/remove_sstream_header
f33acf9fe8 Merge commit '7890db9~' into HEAD
66e0adec4d Remove unnecessary sstream header from univalue.h
88967f6586 Version 1.0.4
1dc113dbef Merge pull request #50 from luke-jr/pushKV_bool
72392fb227 [tests] test pushKV for boolean values
c23132bcf4 Pushing boolean value to univalue correctly
81faab26a1 Merge pull request #48 from fwolfst/47-UPDATE_MIT_LINK_TO_HTTPS
b17634ef24 Update URLs to MIT license.
88ab64f6b5 Merge pull request #46 from jasonbcox/master
35ed96da31 Merge pull request #44 from MarcoFalke/Mf1709-univalue-cherrypick-explicit
420c226290 Merge pull request #45 from MarcoFalke/Mf1710-univalue-revert-test

git-subtree-dir: src/univalue
git-subtree-split: a44caf65fe55b9dd8ddb08f04c0f70409efd53b3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants