Magnet-Link

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Magnet-URI é um padrão aberto definindo um esquema de URI para magnet links, que são usados para referenciar recursos disponíveis para download via redes peer-to-peer. O padrão foi desenvolvido em 2002 como uma "generalização livre de vendedor e projeto" dos esquemas de URI ed2k: e freenet: usados por eDonkey2000 e Freenet, respectivamente, e tentar seguir os padrões oficiais do IETF URI o máximo possível.

Já que se refere a um arquivo baseado em conteúdo ou metadados, ao invés de na localização, um magnet link pode ser considerado um tipo de URN. Embora possa ser usado para outras aplicações, ele é particularmente útil em um contexto peer-to-peer, porque permite que recursos sejam referenciados sem a necessidade de um host continuamente disponível.

Aplicações que suportam magnet links incluem Azureus, uTorrent, BearShare, DC++, Gtk-gnutella, Transmission, Kazaa, LimeWire, MLdonkey, Morpheus, Phex, Shareaza, TrustyFiles, Deluge e BitComet.

Descrição Técnica[editar | editar código-fonte]

Magnet links consistem de uma série de um ou mais parâmetros, apresentados em qualquer ordem. O parâmetro mais comum é "xt", que significa "exact topic" (tópico exato), que é geralmente um URN formado do hash do conteúdo de um arquivo em particular.

Magnet-icon.gif magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C

Note que embora isso se refira a um arquivo particular, uma busca deve ser feita pelo cliente para determinar onde ele pode obter aquele arquivo. Outros parâmetros definidos pelo padrão são:

  • "dn" ("display name"): um nome de arquivo para mostrar ao usuário
  • "kt" ("keyword topic"): uma busca mais genérica, especificando termos ao invés de um arquivo particular
  • "mt" ("manifest topic"): um URI apontando para um "manifest", por exemplo, uma lista de itens adicionais
  • parâmetros específicos da aplicação, que devem começar com "x."

O padrão também sugere que dois parâmetros do mesmo tipo podem ser usado anexando ".1", ".2", etc.

Magnet-icon.gif magnet:?xt.1=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C&xt.2=urn:sha1:TXGCZQTH26NL6OUQAJJPFALHG2LTGBC7

Implementação de Clientes[editar | editar código-fonte]

Para múltiplos programas serem instalados e controlarem diferentes tipos de magnet links, a especificação também define um simples sistema de comunicação, baseado em programas executando simples servidores que processam pedidos HTTP locais. Já que muitos navegadores modernos permitem que um controlador seja registrado para um esquema de URI particular/prefixo de link, um programa em JavaScript simples pode perguntar a esses servidores para ver qual deles pode controlar os parâmetros fornecidos. Isso também permite que os programas cliente construam uma interface apropriada (via JavaScript) e se comuniquem com um outro como apropriado.

Extensões para esse sistema usando um formato XML estão sendo desenvolvidas atualmente.

Ligações externas[editar | editar código-fonte]

Ícone de esboço Este artigo sobre Internet é um esboço relacionado ao Projeto Internet. Você pode ajudar a Wikipédia expandindo-o.