GSoC/GCI Archive
Google Summer of Code 2012

Metalink

Web Page: http://www.metalinker.org/ideas.html

Mailing List: https://groups.google.com/forum/?fromgroups#!forum/metalink-discussion

Metalink is dedicated to improving downloads and making it easier for people to download open source software. Advanced download features are automated so the download experience is seamless. These features include mirror/CDN usage, error repair, P2P integration, digital signatures, and more.

Metalink increases the effectiveness and efficiency of downloads by combining the speed, bandwidth distribution, and redundancy of an optimized hybrid mirror/peer-to-peer network, without any questions of legality, integrity, or safety.

Metalink was standardized as RFCs in the IETF and has been adopted by over 40 programs, such as DownThemAll! (a Firefox extension), KGet (the native download manager of KDE), and many others.

Projects

  • Apache Traffic Server cache hits for download mirrors Exploit Metalink to detect duplicate downloads from different mirrors and redirect clients to mirrors that are already cached
  • Metalink/HTTP support in DownThemAll with Web Client UI for aria2 The main proposal is to add support to DownloadTheAll for http Metalink downloads and creating Web Client UI for aria2. The web UI should only take 2-3 weeks and the main focus would be on adding suppport in DownloadThemAll
  • Metalink/HTTP support in KGet Metalink/HTTP as mentioned in the RFC 6249 provides the facility of providing better download experience same as that of Metalink/XML. It does so by using standards such as ETFlags, Instance Digests in HTTP and Web Linking. On the other hand KGet is a versatile and user friendly download manager of the KDE desktop envirnoment with existing support for Metalink/XML. This project intends to extends the capabality of KGet by extending its support to Metalink/HTTP.
  • Native Chrome and Firefox support for Metalinks Though Metalinks make it a lot easier to download stuff from the Internet, most browsers are not equipped with native metalink support. Hence, the idea is to showcase the advantages of having native metalink support in browsers, by modifying Chromium and Mozilla Firefox to support metalinks.