Why Do MP3s Download Slowly? - Page 1
Forum section: electronics / general

author: bostonman
author_rank: Super Contributor
timestamp: February 21, 2020, 06:22:26 pm
content: It's been a while since I've downloaded MP3s from places like Napster, torrents, etc... but recently questioned download speeds.If my ISP is providing 15Mbps, that's (rounding up) 2MBps. A typical 128KHz sampled MP3 is roughly 1MB per one minute of music.So a four-minute MP3 would be 4MB which means it should download within three-seconds.Obviously other factors need to be considered, but I don't remember any MP3 taking under a minute or two before completing a download.Am I missing something in the math?

author: CatalinaWOW
author_rank: Super Contributor
timestamp: February 21, 2020, 06:35:40 pm
content: I agree with your math, but there are lots of places where throttling can occur in the system.At the source, at your hard drive, in your OS and in handshaking at various stages in the process. Your results are not greatly different than mine, though I have admittedly lousy satellite internet service.

author: bostonman
author_rank: Super Contributor
timestamp: February 21, 2020, 06:41:17 pm
content: I never gave thought to download speeds and stuff until having to explain ISP commercials to others and what Mbps means.So I began to question why an MP3 takes so long to download.You basically answered my question and confirmed my assumptions. If a 4MB MP3 took five-seconds instead of two-seconds, then I wouldn't question my math, but thought I didn't account for something since it's a gross difference.

author: mariush
author_rank: Super Contributor
timestamp: February 21, 2020, 07:20:48 pm
content: Some download servers bandwidth limit the download speed on purpose.For example, the highest bitrate for mp3 is 320 kbps so a server may limit the speed to 512 kbps or 1 mbps.The reason for this is to save bandwidth : someone may start to listen an hour long podcast and stop listening after 10-15 minutes. By the time you get to 10-15 minutes point, you probably only downloaded half an hour worth of data, so the server saved half hour worth of bitrate.512 kbps - 1 mbps is good enough to give you an initial burst of data, basically to buffer a few minutes of audio, and it's big enough to allow your music player / browser to recover (refill buffer) if there's some temporary network slowdowns.

author: SeanB
author_rank: Super Contributor
timestamp: February 21, 2020, 07:40:33 pm
content: As well a lot of ISP's do tend to bandwidth limit audio and video, so that you can buffer a few seconds to a minute at a time, and then slowly get the rest. Basically done to manage bursts of data in the aggregrate on the network, and often as well with larger sites like YT and other CDN's there are local cache servers to provide the actual data, instead of having a central server. thus the cache server gets the request, looks to see if it is in cache and then trickles it out, or goes upstream to get it, grabs a minute or so of it, then has the time to trickle it down to you, while getting the rest to cache.Simple test is to have a encrypted and non encrypted file, and see that the non encrypted is going to be rate limited, while the encrypted file, as a big binary blob, is not going to be rate limited, but will come down at the maximum speed of the slowest point in the system, most likely the oversubscribed local link to the connection to you, closely followed by the minimum viable product ISP provided connection equipment if you are using it. Store both files as random name, and in the same directory on the same server.Another thing is that most ISP's will deliberately prioritise data to the most common speed test sites, so that they will show an inflated number, as the traffic will be priority over all other users briefly, giving a false impression of fast speed. All others will be throttled, just how badly is a combination of rate limiting both locally and at peering points along the way where your traffic is passed from one network to another.

author: ve7xen
author_rank: Super Contributor
timestamp: February 22, 2020, 01:02:44 am
content: Most likely just due to TCP windowing and the 'slow start' algorithm. When the connection first opens, the window (amount of data that can be unacknowledged at once) will be relatively small, so the server will send a few packets, then wait for them to be ACKed, then send double the amount this time and so on. The larger the latency to the server, the longer this takes to ramp up and the larger the required window. If the bandwidth-delay product (BDP) is high, this can make the session quite slow to come up to speed, taking definitely some seconds.There are plenty of other things that *could* slow down a file transfer, but if you're asking why it never seems to reach optimal, this is one of the main reasons. What you're reporting seems to be grossly slow though, so I'd assume there is something wrong with your setup or you are downloading files that are intended to be 'streamed' and the remote server is sending them at the appropriate streaming rate rather than forcing your client to buffer the whole file. Pirate sources like Napster and whatnot also are just pure peer-to-peer systems, so if the person you're grabbing the file has a 15mbps connection, their upload is probably only like 2mbps, and those programs often allowed like 5 or 10 people to download from you at once. Assuming this is actually what you're talking about, it's just the uploader running into their own cap.Most ISPs aren't really throttling specific types of traffic like this anymore.

author: brucehoult
author_rank: Super Contributor
timestamp: February 22, 2020, 01:16:08 am
content: Quote from: bostonman on February 21, 2020, 06:22:26 pmQuick experiment: how long does this take to download? It's 4885017 bytes.http://hoult.org/stairway.mp3

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: February 22, 2020, 07:08:41 am
content: Quote from: brucehoult on February 22, 2020, 01:16:08 amI got 5 seconds here in Potatoland.

author: SeanB
author_rank: Super Contributor
timestamp: February 22, 2020, 08:33:44 am
content: Got to the throttled rate of 222kB/s here, limited by the cell tower 100m away. That one is very oversubscribed.

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: February 22, 2020, 08:39:04 am
content: Am I missing something but I thought that it is throttled for a reason. The listener is supposed to stream the music live to a device, not download. Hence the restriction.Maybe you have to consider finding/cooking up a catcher program in python or something. Run in the background.

author: rdl
author_rank: Super Contributor
timestamp: February 24, 2020, 09:06:04 pm
content: I never thought it was the network/ISP, I always figured it was the source. Why should a site feed you data at a rate faster than it can be played? People at home are generally paying for and expecting a certain data rate, while source is paying by quantity. ISP shouldn't even know what you're downloading.