Ubuntu QA:
BlogBrainstormPackage status
Log in
Ubuntu QA
The Ubuntu community has contributed 22823 ideas, 138726 comments, 2639112 votes
Idea sandbox Idea sandbox
Popular ideas Popular ideas
Ideas in development Ideas in development
Implemented ideas Implemented ideas

Contributor iaw4 on the Installation category

Balance the server load and increase download speeds  
Written by BenP1990 the 10 Jun 10 at 18:34. Related project: Update manager. New
When downloading updates, most people stick with the default server set in software sources. The problem is best seen when new point releases come out. On download day, the main server that most people use gets bogged down and download speeds drop to almost nothing, consequently causing the upgrade to take a day or two. Other people have proposed setting apt to use bit torrent/P2P to balance the load among other Ubuntu users. However, that could pose problems, such as ISP P2P restrictions, ISP bandwidth caps, company/university policy, etc. Ubuntu already contains part of the answer to this problem. In "software sources", you have the option to "select best server". Ubuntu then scans for the mirror providing the best bandwidth. Why couldn't Ubuntu automatically do this and select the best three mirrors, balancing the downloads between all of them? This would have a similar affect to P2P but just be using the mirrors, thereby avoiding the problems that come with P2P.
Since posting this, someone has kindly pointed out that my understanding of the technicalities of all this is flawed. It is just an idea meant to spur thinking in this area in hopes of finding a possible solution. Please post better solutions if you have them.
69
votes
up equal down
Solution #1: Allow for use of "Multi-server Hyper-threading Transportation"
Written by BenP1990 the 10 Jun 10 at 18:34.
The are a few download managers (such as FlashGet) that use this technology. This allows for downloading one or multiple files from multiple servers, thus balancing server loads and increasing download speeds. Ubuntu should automatically select the best 3 or 4 servers and balance the updates between them.
Thanks to our friend Auzy, I understand that this may not be practical because of technical limitations. Perhaps it would be better to have the best mirror selected with a second option for P2P.
19
votes
up equal down
Solution #2: Promote Installation via Jigdo on the download page
Written by mnicky the 12 Jun 10 at 12:10.
"Jigdo (portmanteau of "Jigsaw" and "download") is a download utility initially designed around the Debian distribution of GNU/Linux that downloads files from several mirrors in order to build an optical disk image." (Wikipedia [1])

Jigdo (JIGsaw-DOwnload) can be used to efficiently download daily CD builds or update existing .iso images without the need to re-download the entire CD image. It simply checks for differences or updates between an existing CD image (on your system) and the latest released image. (Ubuntu Community documentation [2])

[1] http://en.wikipedia.org/wiki/Jigdo
[2] https://help.ubuntu.com/community/JigdoDownloadHowto
[Other:] http://www.debian.org/CD/jigdo-cd/
24
votes
up equal down
Solution #3: Server-side load balancing + cloud computing
Written by stoffel the 16 Jun 10 at 21:26.
Use transparent load balancing on the DNS server so that no software changes are needed.

Also make use of cloud computing to automatically increase capacity when many update requests are made.
11
votes
up equal down
Solution #4: Offer a smart upgrade download option
Written by naggobot@yahoo.com the 17 Jun 10 at 03:53.
When upgrading ask first from user if smart download of the upgrade may be performed. If user selects smart option then attempt first download from default server. If default server is overloaded i.e. download speed is below set threshold of less than n% of network connection speed contact primary server (canonical). Primary server can be set up to discuss with clients downloading the upgrade. If the server is near maximum capasity then the primary server automatically establishes peer2peer network between downloading clients to distribute the load.

Also to make sure that the system works the primary server does not allow for normal upgrade downloads if the server is near maximum capacity.

(So this is probably like solution#3 but with more verbal explanation)

See the 8 comments or propose a solution (latest comment the 18 Jan 11 at 22:45) >>

Automatic mirror change on upgrades  
Written by jflaker the 8 Jun 10 at 09:10. Related project: Update manager. New
Upgrade manager should have an extra button to find the best mirror, switch to it, then start the download.
-37
votes
up equal down
Solution #1: Automatic mirror change on upgrades
Written by jflaker the 8 Jun 10 at 09:10.
Upgrade manager should have an extra button option to find the best mirror, switch to it, then start the download.

During major version releases, I must do this manually through software sources because the default servers are overwhelmed.

The mirror switch should include, if possible, torrents.
135
votes
up equal down
Solution #2: No Button, UIpdate manager does it automatically.
Written by glomboi the 8 Jun 10 at 11:50.
Update manager should check for the best (least active?) mirror automatically when the "Update" button is selected.
Thus, not confusing users (who may not know what a 'mirror' is).
60
votes
up equal down
Solution #3: Offer to upgrade over torrent if free peers are available
Written by naggobot@yahoo.com the 15 Jun 10 at 14:35.
If user requests an upgrade check torrent tracker to see if adequate number of peers is available and offer to do upgrade using alternate.iso image.

If user selects alternate upgrade through torrent then download alternate iso image using torrent client, mount image as cd rom and upgrade using alternate installation cd and network.
3
votes
up equal down
Solution #4: Solution #4: Upgrade over torrent only if the user is not using the internet.
Written by bghoo8313 the 23 Jun 10 at 15:00.
Torrents usually use up a lot of bandwith and will slow down the internet so if a torrent updater is a solution it should only start downloading new updates when the user internet activity is low.
4
votes
up equal down
Solution #5: Update set as Patch which can be downloaded and shared over local network
Written by benoyanthony the 7 Jul 10 at 10:17.
Updated should be availabe in the form of Patch file which can be downloaded through direct download or from mirror, which can be easily redisrtibuted over local network for multiple system update.

See the 2 comments or propose a solution (latest comment the 13 Jun 10 at 01:03) >>