Metalink
Metalink ist ein plattform- und anwendungsübergreifender offener Standard, der ein Format für Dateien definiert, mit denen eine Liste von Bezugsquellen und anderen Metainformationen zum Herunterladen einer bestimmten Datei bereitgehalten werden kann.
Metalink | |
---|---|
Dateiendung: | .metalink |
MIME-Type: | application/metalink+xml |
Erweitert von: | XML |
Website: | metalinker.org |
2008 wurde das Format der Internet Engineering Task Force zur Standardisierung vorgelegt, was im Juni 2010 die Metalink 4.0 Spezifikation in RFC 5854 zur Folge hatte.
Technik
Metalinks sind XML-Textdateien, die physische Eigenschaften (Dateigröße, Prüfsummen) von Dateien beschreiben und deren Standorte auflisten. Das Format ist offengelegt und erweiterbar.
Die Standorte jeder Datei können in Form von URLs für verschiedene Protokolle aufgeführt sein, wie z. B. HTTP-, FTP- oder rsync-Servern oder – zur Lokalisierung der Datei in Peer-to-Peer-Netzen wie BitTorrent oder eDonkey2000 – den URLs von .torrent-Dateien, Magnet- oder eD2k-Links vorliegen. Diese Links oder Adressen können von herunterladender Software ausgewertet werden und damit auf möglicherweise mehrere redundante Quellen für die gewünschte Datei auflösen. Damit wird einerseits die Zuverlässigkeit eines Downloads erhöht aber auch beschleunigt, indem gleichzeitig mehrere Teile der gleichen Datei aus mehreren, jeweils unterschiedlichen Quellen (Mirrors) heruntergeladen werden können.
Neben der Liste der Bezugsquellen sind noch Prüfsummen im MD5-, SHA-1- oder SHA-256-Format für die Datei als Ganzes oder auch einzelne Abschnitte der Datei enthalten, wodurch Fehler erkannt werden können und in diesem Fall bei mehreren Prüfsummen auch nicht die ganze Datei erneut geladen werden muss.
Weiterhin können OpenPGP-Signaturen angegeben werden, mit denen die Authentizität der erhaltenen Datei geprüft werden kann.
Metalink 3.0 (mit der .metalink Endung) und Metalink 4.0 Dateien (mit der Endung .meta4) sind miteinander nicht kompatibel.
Metalink 4.0 Beispiel
<?xml version="1.0" encoding="UTF-8"?>
<metalink xmlns="urn:ietf:params:xml:ns:metalink">
<published>2009-05-15T12:23:23Z</published>
<file name="example.ext">
<size>14471447</size>
<identity>Example</identity>
<version>1.0</version>
<language>en</language>
<description>A description of the example file for download.</description>
<hash type="sha-256">3d6fece8033d146d8611eab4f032df738c8c1283620fd02a1f2bfec6e27d590d</hash>
<url location="de" priority="1">ftp://ftp.example.com/example.ext</url>
<url location="fr" priority="1">http://example.com/example.ext</url>
<metaurl mediatype="torrent" priority="2">http://example.com/example.ext.torrent</metaurl>
</file>
</metalink>
Metalink 4.0 Dateien werden mittels des application/metalink4+xml
Internet Media Type ausgeliefert. Zur Erzeugung der Metalinks existiert eine ganze Reihe von Software.
Unterstützung
Download-Manager oder auch Software-Paketverwaltungen unterstützen den Standard, wobei die Unterstützung unterschiedlich weit geht. Vor allem Downloads per rsync Protokoll und OpenPGP-Signaturen werden von kaum einem Programm geboten.
Programme
- aria2 (GPL) in Debian Repositorien. Ein Unix/Windows Kommandozeilen-Download Hilfsprogramm, das BitTorrent und Metalink (HTTP/FTP/BitTorrent) unterstützt.
- DownThemAll! (GPL), ein Download-Manager als Firefox Add-On, der einfache Metalink Funktionen bietet.
- FlashGot (GPL), ein Firefox Add-On zum Starten von Downloads in diversen, eigenständigen, externen Download Managern.
- Free Download Manager (GPL), ein gratis Windows Download Manager mit Metalink (HTTP/FTP) Unterstützung seit v2.5.
- GetRight 6, ein Windows Download Manager mit Metalink (HTTP/FTP/BitTorrent) Unterstützung.
- jDownloader ist ein in Java geschriebener Open-Source Download-Manager.
- KGet (GPL), KDE's eigener Download Manager, mit Metalink-Funktionalität seit KDE 4.
- Metalink Access ist eine Erweiterung für den Opera-Webbrowser, die es ermöglicht, Dateien in Metalinks direkt herunterzuladen.
- Net Transport, ein Windows Download Manager.
- Orbit Downloader, ein Windows Download Manager mit Metalink (HTTP/FTP) Funktion.
- Phex (GPL), ein Mac/Unix/Windows gnutella P2P-Programm; unterstützt neben Metalink Downloads auch den Export ganzer Dateisammlungen als Metalink, um sie z. B. mit anderen zu teilen.
- Retriever ist ein Closed-Source Multi-Platform Java Download Manager, der Metalink und BitTorrent unterstützt.
- SmartFTP, ist ein Windows GUI FTP Programm, das es erlaubt per Metalink Dateien zur FTP Warteschlange hinzuzufügen und Dateien per Prüfsumme verifizieren kann.
- VeryCDs easyMule (Version 1 gemäß GPL, Ver.2 verletzt evtl. die GPL) ist eine eMule Version mit Metalink Support.
- wxDownload Fast (GPL) ist ein Mac/Unix/Windows Download Manager mit Metalink (HTTP/FTP) Unterstützung.
Paketverwaltungen
yum und ZYpp machen bei den alltäglichen Software-Aktualisierungen von Linux-Distributionen wie Mandriva, Fedora und openSUSE davon Gebrauch. Auch das Ubuntu-Installationsprogramm Wubi löst damit auf seine Datenquellen auf. Ebenso unterstützt auch die Paketverwaltung von Debian Metalink HTTP Header.[1]
Anbieter
Es wird bei zahlreichen Linux-Distributionen (wie auch einigen BSDs) einschließlich Ubuntu, Fedora, Mandriva und openSUSE bei der Verbreitung der CD-Abbilder eingesetzt. Auch bei anderer Software wird es für den Download der Programmpakete angeboten: so z. B. bei OpenOffice.org und Sage oder auch beim UniProt Consortium für die Übertragung ihrer großen Protein-Datenbank.