mats Posted December 1, 2014 Posted December 1, 2014 (edited) One of my schools has recently had an upgrade to FTTC from a TalkTalk / OpenReach via a well known educational supplier whose name consists of just two letters. It was sold to us as having a minimum speed of X Mb/s. Sadly, they or their supplier seem to have confused the words "minimum" and "maximum", and instead of running for most of the time at around twice X Mb/s as we were promised, the connection only manages X Mb/s. During the install process, the engineers assured me that it was because of other people using the connection and that this was temporary. To test this theory, I decided to run regular speed tests. Here's how it's done (minimal Linux experience required). Requirements - a linux machine. Any old debian derivative should do, other distros are likely to work. I used ubuntu server on a minimally resourced vmware VM. It'll need python 2.7 but that's likely to be pre-installed. - speedtest_cli.py from https://github.com/sivel/speedtest-cli . Extract it from the "Download zip" link if you can't be bothered with git. (wget https://github.com/sivel/speedtest-cli/archive/master.zip) Method In your home dir, create a directory called speedtest. Put speedtest_ci.py in there. Create batch file /home/[YOUR USERNAME]/speedtest/test.sh containing - #!/bin/bash DATE=$(date +"%Y-%m-%d_%H%M") echo `date` >> /home/[YOUR USERNAME]/speedtest/speedtest.log http_proxy="http://proxy.rmplc.co.uk:8080" https_proxy="https://proxy.rmplc.co.uk:8080" /home/[YOUR USERNAME]/speedtest/speedtest_cli.py --simple >> /home/[YOUR USERNAME]/speedtest/speedtest.log Edit [YOUR USERNAME] appropriately. Drop / edit the proxy setting. Make it executable - chmod +x /home/[YOUR USERNAME]/speedtest/test.sh Test it out. It should create a file called speedtest.log and write the results of each speed test to the end of it. (I suspect the ping time is in uS). Mon Dec 1 10:12:18 GMT 2014 Ping: 1800000.0 ms Download: 24.05 Mbits/s Upload: 7.27 Mbits/s Cron is a utility which can run commands at regular times. Each user can edit their cron entries with the crontab command. Make a crontab entry with crontab -e Add this line 0 */4 * * * export http_proxy="http://proxy.rmplc.co.uk:8080"; /home/[YOUR USERNAME]/speedtest/test.sh > /dev/null 2>&1 This will run your speed test at midnight then every 4 hours past (or 4, 8 am, midday, 4pm, 8pm, midnight). When this has run for a day or two, your speedtest.log file will have a number of entries. To just see the speeds -egrep Down speedtest/speedtest.log This shows just the lines containing the word "Down". Download: 24.93 Mbits/s Download: 25.05 Mbits/s Download: 25.21 Mbits/s Download: 25.10 Mbits/s Download: 25.21 Mbits/s To get speeds and times, egrep 'GMT|Down' /home/[YOUR USERNAME]/speedtest/speedtest.log | perl -p -e 's/2014\n/ /' This finds lines containing GMT or Down , passes them to Perl which finds "2014" followed by newline and strips out the newline. egrep 'GMT|Down' /home/[YOUR USERNAME]/speedtest/speedtest.log | perl -p -e 's/2014\n/2014 /' Thu Nov 27 16:02:01 GMT 2014 Download: 22.21 Mbits/s Thu Nov 27 20:02:01 GMT 2014 Download: 25.17 Mbits/s Fri Nov 28 00:02:01 GMT 2014 Download: 24.08 Mbits/s To stop it running, edit crontab again crontab -e and remove the line previously inserted. Putting a hash in front of the line comments it out. So, there we have it. Proof that our "minimum X Mb/s" line isn't what we were sold. Now for the fun part. Edited December 1, 2014 by mats minor edit
snagrat Posted December 1, 2014 Posted December 1, 2014 I need to do this but have very little Linux experience. Is it pretty easy?
mats Posted December 1, 2014 Author Posted December 1, 2014 I need to do this but have very little Linux experience. Is it pretty easy? I thought so.
SchoolsBroadband Posted December 1, 2014 Posted December 1, 2014 @mats any ISP that guarantees you speed on a standard FTTC line from BT is lying. BT's SLA to communication providers is "We guarantee a minimum of 12Mbit of speed for 90% of the time during the busiest 3 hour period". That's it......... The only way to guarantee speeds is use full GEA-FTTC or EoFTTC which gives a minimum speed guarantee of xyz all day every day. This is more expensive though and I think at the moment we are the only ISP that offers this as standard on our higher end packages although I could be wrong. If you need any more tech info let me know. Good luck Dave
Arreks Posted December 1, 2014 Posted December 1, 2014 Is the 'minimum speed' they promised you in writing?
mats Posted December 1, 2014 Author Posted December 1, 2014 Ta for the replies. It was sold as "up to x, indicative y" which I appreciate isn't the same as "it'll run at z". However, it's running at y and never gets any higher (y is over twice x) so have an uncomfortable feeling that there's wriggle room which is about to be utilised.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now