AptServiceDiscovery

Summary

Apt could announce itself on the network with avahi. Other computers on the network would then not need to donwload (or replicate) packages, saving time and bandwidth.

Rationale

There are often several or many computers sharing a LAN. Updating packages is inefficient since the whole package is downloaded even if only one bit (literally) has changed. This inefficiency is made worse when each computer independently downloads packages from packages.ubuntu.org and elsewhere.

Making one computer a self-appointed apt cache which is advertised on the network would improve things. The apt-cache exists already but is difficult to hand configure. Perhaps it can be improved to use avahi.

Perhaps all the apt-getting systems can pool their resources (e.g. when this new system is first run) so the packages stored on all those machines are pooled logically: the nominated master system can do future downloads while the rest can optionally delete their package caches after they have all conferred.

Presence of various different apt sources lists would have to be part of the announcement.

Use cases

  • Ian is a power user who tracks the development version of Ubuntu and packages in other repos. He has a laptop and two servers. One server does almost all the downloads; his laptop has additional apt source lines for multimedia, and donwloads these itself.
  • John buys a computer for his kids, installs ubuntu and connects the computer to his office LAN. The initial update after installation (and perhaps running automatix or similar) needs a few hundred megabytes to be downloaded. During installation the new machine recognised the apt service on the network, and subscribed to this service as a slave.
  • Ubuntu bandwidth bills are growing uncontrollably as people uninstall windows by the thousand: with widespread adoption of local apt proxies, a 25% saving is seen.

Scope

Design

Implementation

Code

Data preservation and migration

Outstanding issues

BoF agenda and discussion

Discussion

[May 08,06 KrishnaSankar] Good Idea. Extending this idea further, we can design a mini peer assisted distribution mechanism, embedding relevant peer-to-peer ideas (like finger table) and self forming networks, as a wrapper to apt. As we are using ZeroConf primitives, this is mostly contained in the local network. BTW, we could also extend it beyond the local network.


CategorySpec

AptServiceDiscovery (last edited 2008-08-06 16:37:34 by localhost)