Upload speeds are slow until computer is restarted


Recommended Posts

I am having a strange problem..for some reason when I go to upload something to say like mega, 1fichier, solidfiles, etc..pretty much any file host site my upload speeds only go to like 200 kb/sec but when I restart my computer and try again, my upload speed is maxed out, and regular speeds like I'm suppose to get, and I get 75 MB up..so usually its like 7.8 mb/sec and its fine for like a few hours, but then it does the same thing until I restart my computer. And when I run a speed test, that comes back fine (see below) so I don't know what is going on here. Can anyone help? and also my connection is hard wired

4648660552.png

 

I just ran another speed test at the same I was trying to upload something like you said, still getting around 200 kb/sec and speed tests are fine. and I checked in my router, there is no traffic shaping or traffic priority going on.

"75 MB up..so usually its like 7.8 mb/sec "

Well since you reversed Byte and bit here with your Big B's for bit and little b's for byte.. so are you seeing 200KByte or Kbits up because its a huge difference..

what I would like to see is a sniff when its real low and then a sniff when its working as normal.. Grab wireshark and do that.. you don't need to run it for the whole upload..  But run it for say 30 seconds on your slow upload and then 10 or so seconds on FAST upload.  PM me if you have any question on using wireshark its free and just sniff and then save the file and they might be large on your good speed upload..  But I can give you a place to upload them too so I can get them, etc.

Next time vs rebooting your computer just disable your interface and re enable it.  Are you wired or wireless?  With those speeds and that 4ms ping time I would for sure say wired, but want to make sure.  The speeds are doable with for sure with decent wireless but the ping time is really low for a wireless connection.

I'm wired directly to the router/modem. What do you want me to do exactly with wireshark? just let it run for 30 seconds with my good speed uploads, then again with the slow speed uploads?

I just tried what you said Budman..disabling it and re-enabling it(didn't know you could do that to fix a connection) and my upload speed was normal again when trying to upload something(see video I took below). Now I just gotta wait, because it's random when the upload speed at 200 kb/sec happens, so I'll post that second video when I try it again in a few hours

good upload speeds

Edited by Sharpstick68

I doubt that has anything to do with it.. But you find them in the advanced section of the driver.  Different nics, different drivers will have different options you can play with..  But I doubt its a setting like that you could tweak that is causing you a problem.

Offload is normally something you want ON!!  If your nic supports it, if doesn't and you have it on it just wouldn't do anything and still work.  What OS are you running btw?

 

 

 

driversettings.png

so has it happened again, have you taken any sniffs?  Does it happen on small files as well - what size of files are you sending.  If not too large you can just do the full sniff.  But if like 100MB then yeah the sniff would be 100MB in size ;)  Really curious to see the sniff when its bad!!

Yea it is still happening, but it is good to know that I can just disable and re-enable my network card without having to restart my computer to fix it(thanks BudMan). But it happens on files of all sizes, anywhere from 10 mb to 500 mb it's really strange. The next time it happens I will open up Wireshark and what should I look for..anything going to the file hosting site? which is solidfiles.com ?

also my network card is a Realtek® 8111E

and the network card drivers are up to date

Yeah like to see the transfer.. are you getting really all delays in the acks, is the window size not ramping up?  Are you having to retrans, etc. etc..

Kind of need to see a trace when your rocking full speed vs one when its ######.  Just because you restart your nic doesn't mean its really your end..  Maybe your sending to a different IP when its slow vs fast, etc.

 

grabbing now - but have to head to work in like 30 seconds.  Will look at today.

They are big most likely because you were downloading big files ;) 

edit:

Ok took a quick look, hope to get some more time later today.  But yeah your slow speeds make sense from the sniffs and your window size.  As you will see in the slow upload your largest size was 17462, less bytes on the wire in that frame..  While in your fast upload 62834 bytes in the frame.

Notice that in your fast upload you windows scaling is working scaled your window size by 4..  But in your slow upload scaling factor is -1?? I think this is because I missed the syn,ack for the start of this conversation so wireshark doesn't know what the scaling factor is suppose to be so just guesses.. (seeproblemwindowsizepic)  But clearly they are not the same.. So something not working in figuring out the scaling factor for the upload.  When you move large amounts of data over a wan you want a large window so you send more data in less number of packets.  So less back and forth acks while moving large amount of data.  In your slow upload your largest size is that 17k while in your fast upload your sending almost 63K bytes worth of data each time.

Now your sniffs are with 2 different file sizes or atleast showing that so not sure if you were sending the same file and just cut off the sniff or what haven't look that deep yet.  But in general if your window size is small to send say 10MB you need X number of conversations back and forth.. While each should take about the same time lets call it 30ms for example.. So if you can send that same 10MB in less interactions of send and ack, you can move that 10MB faster..

Clearly in your fast upload your sending more data per conversation then when your slow sending - huge difference between 17k and 63k.  So need to figure out why something is not working out right in your scaling?

What does this output for you?

C:\>netsh int tcp show global
Querying active state...

TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State          : enabled
Chimney Offload State               : automatic
NetDMA State                        : enabled
Direct Cache Acess (DCA)            : enabled
Receive Window Auto-Tuning Level    : normal
Add-On Congestion Control Provider  : ctcp
ECN Capability                      : enabled
RFC 1323 Timestamps                 : disabled

Can you grab a sniff from the start of your sending so I can see the syn.ack and then wireshark should be able to correctly figure out the window size for the conversation.

 

 

 

 

quicklook.png

problemwindowsize.png

Edited by BudMan

Thanks for looking over the files BudMan, really appreciate it.

I did the first command line like you asked and this is what came back

  Quote

c:\>netsh int tcp show global
Querying active state...

TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State          : enabled
Chimney Offload State               : automatic
NetDMA State                        : enabled
Direct Cache Acess (DCA)            : disabled
Receive Window Auto-Tuning Level    : normal
Add-On Congestion Control Provider  : none
ECN Capability                      : disabled
RFC 1323 Timestamps                 : disabled
** The above autotuninglevel setting is the result of Windows Scaling heuristics

overriding any local/policy configuration on at least one profile.


c:\>

 

And also here is the sniff file you asked for. I started sniffing before I even had the website up, then I tried uploading the file while it was sniffing, and these are my good speeds again, because like I said those slow upload speeds I get when attempting to upload happens at random times.. https://www.dropbox.com/s/6156l4s1cna46wo/fast-upload2.pcapng?dl=0

The good speed sniff had the syn,ack part.. What I would like to see bad speed with the syn,ack of the upload stream..

You might want to try turning these on

Add-On Congestion Control Provider  : ctcp
ECN Capability                      : enabled

netsh int tcp set global congestionprovider=ctcp

This can ramp up your window size quicker and could help in speed.  Can't hurt to turn it on.. And then do you upload tests, if you don't continue to see your good speeds or better than set it back to none.

edit: ok took a look at that next sniff and as you can see good window size sending large packets.. While your bad one was only sending 17K at the LARGEST...

decentwindowsize.thumb.png.8a1d8bbe30dd2

 

Edited by BudMan

I ran that command(as administrator) and it changed, then tried and it started out fast but then was transferring at about 2.1 MB/sec but then I closed out the site, stopped the sniff and tried again and my speeds were maxing out(you can take a look at the sniff file if you want, just let me know). But ok, I will try again some time later tonight or whenever, because like I said the slow speed is always at a random time, and I'm not uploading all the time, only when ever I feel like it, so the slow upload speeds can happen when ever..even at peak hours aka prime time 7 pm to 10/11 pm.

So if your uploading and your window size is small, then yes it will be slower if your window size is larger..  Without seeing the syn,ack of the conversation starting its impossible to see what and why they might not work out a large window size.

Ok you caught the syn so you see no windows scaling. This is why your slower is your sending smaller frames.. Remember before where you were sending 63k here your sending 17k  HUGE different for speed over a wan connection.

nowindowscaling.thumb.png.fb2e526b8ff4ed

Now just need to figure out WHY??  Let me look deeper and do some research on why windows scaling would not be used.  Did you change the option?  Also I don't like that yours has that * on it about windows scaling an heurstics - from my understanding what is reported is not always what is used..  I have to run out early this morning..  Will have more info later.

 

you enable ecn with from an elevated prompt.

C:\>netsh interface tcp set global ecncapability=enabled
Ok.

Can you show your globals again, are you still seeing the ** The above autotuninglevel setting is the result of Windows Scaling heuristics

So can you do this command

C:\>netsh interface tcp show heuristics
TCP Window Scaling heuristics Parameters
----------------------------------------------
Window Scaling heuristics         : disabled
Qualifying Destination Threshold  : 3
Profile type unknown              : normal
Profile type public               : normal
Profile type private              : normal
Profile type domain               : normal

Notice I have mine disabled..

Here you go BudMan

c:\>netsh interface tcp show heuristics
TCP Window Scaling heuristics Parameters
----------------------------------------------
Window Scaling heuristics         : enabled
Qualifying Destination Threshold  : 3
Profile type unknown              : normal
Profile type public               : normal
Profile type private              : restricted
Profile type domain               : normal


c:\>

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • PC manufacturers used to trick BIOS copyright strings to get full editions of trial software by Usama Jawad You may have noticed that when you purchase a new PC, it comes with certain software pre-installed. Sometimes, when you open this software, it activates, and you receive the full version of it without paying any additional cost. This is because that PC's manufacturer is a licensee of that software and the fact that a customer gets the full version of a trial software for free serves as a perk for potential buyers. However, many PC manufacturers tried to trick this process in its infancy. During the days of Windows 95, when the Plug and Play specification was still in development, the OS' engineering team was trying to figure out ways through which it could identify PCs that existed prior to the inception of this specification. To that end, one of the methods they tried was searching for copyright strings and firmware dates in the BIOS. Through the course of this investigation, they discovered a rather oddly named copyright string "Not Copyright Fabrikam Computer" in a PC that was actually manufactured by Contoso. In this case, both Fabrikam and Contoso are fictional names that are used to describe this scenario without revealing the actual identity of the OEMs involved. Microsoft engineer Raymond Chen explains in a blog post that these odd copyright strings were actually appearing because Contoso PCs contained a trial version of a software and the company wanted the full version to be activated for customers even though it was not an official licensee. In order to bypass the costly licensing process, what the firm did was that it added the following text to its copyright string: "Copyright Contoso Not Copyright Fabrikam Computer". The trial version of said software would search for the string "Copyright Fabrikam Computer" and end up finding it within the substring of the convoluted copyright string mentioned above, accidentally activating the software's full version. While more robust ways were adopted later to avoid this problem, it's certainly interesting to see that OEMs would go to this length in order to distribute software that they are not officially allowed to. Well, as they say, the past stays in the past.
    • Uhm... a couple of issues with this. First, you're engaging in revisionist history. People weren't dragged from Win 7 to Win 10. You've kind of glossed over a whole cycle there: Win 8/8.1. People stayed on 7 because they hated 8/8.1 and held on until 10 showed up. THEN they actually started to switch voluntarily. Second, it's not about the OS, it's about the workflow. OS fans consistently miss this, People have work to do and they've invested a lot of time, effort and even money building their workflows. It's expensive to change so, that change has to offer real benefits and sorry, Win 11 just doesn't. That's the same reason they won't just jump to an entirely new OS - which has an even bigger workflow cost - until there's just no other option. And now there IS another option, stay on Win 10 for another year and pray for Win 12 (much as Win 7 users did with Win 8 - which happened when Win 10 came out).
    • Microsoft has some PC VR games that could be played with it.
    • As such, many developers will start dropping Windows 10 support in their products Hi! Actual developer here. No we won't. It really doesn't work that way simply because most Windows devs don't target to a specific release of Windows unless we're using a feature that only exists IN a specific version, and that's pretty unusual. The biggest example would be MSFT killing off Windows Mixed Reality in Win 11, but most stuff we write for Win 10 will just work fine in Win 11 and vice versa. The vast majority of software doesn't rely on these things and will continue working on any recent version of Windows. Heck some of my software still runs on WinXP. Where Win 10 users will be left behind is software that relies on new features in Win 11 but again, we tend not to use those unless we're writing specific apps that need those features. In fact, the biggest danger area isn't apps, it's drivers as hardware makers focus on new machines more than supporting legacy devices.
  • Recent Achievements

    • Week One Done
      DrRonSr earned a badge
      Week One Done
    • Week One Done
      Sharon dixon earned a badge
      Week One Done
    • Dedicated
      Parallax Abstraction earned a badge
      Dedicated
    • First Post
      956400 earned a badge
      First Post
    • Week One Done
      davidfegan earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      616
    2. 2
      ATLien_0
      227
    3. 3
      +FloatingFatMan
      170
    4. 4
      Michael Scrip
      166
    5. 5
      Som
      148
  • Tell a friend

    Love Neowin? Tell a friend!