file sharing developments, gnutella, hash URI support

Replies:

  • None.

Parents:

On Mon, Jan 21, 2002 at 01:54:16AM -0500, Gerald Oskoboiny wrote
in <mid:[email protected]> [1]
> I was just playing with the latest version of gtk-gnutella
> (version 0.80), and I noticed that some of the search results
> now include sha1 URIs in the 'Info' column! Screenshot:
> http://impressive.net/people/gerald/2002/01/21/gtk-gnutella.png
>
> I am still way out of touch with the way P2P clients actually
> work (including whether or not gtk-gnutella uses these URIs in
> any useful way), but this seems very promising.

gtk-gnutella has been updated again with related features, e.g.
(from announcements, forwarded below):

 - Added full HUGE support (Hash/URN Gnutella Extensions).

hmm... I wonder what that is.

http://www.google.com/search?q=HUGE+hash+urn+gnutella+extensions
-> http://rfc-gnutella.sourceforge.net/Proposals/HUGE/
   http://rfc-gnutella.sourceforge.net/Proposals/HUGE/draft-gdf-huge-0_93.txt

   HUGE is a collection of incremental extensions to the Gnutella
   protocol (v 0.4) which allow files to be identified and located by
   Uniform Resource Names (URNs) -- reliable, persistent, location-
   independent names, such as those provided by secure hash values.

nifty.

 - URN searches now supported, by typing "urn:sha1:" in search text, followed
   by the base32 value.

Excellent... though it doesn't seem to work very well for me in
practice yet. (maybe I don't have a big enough pipe here, or
there aren't enough peers online that grok these URIs yet.)

I keep seeing Gordon Mohr and Bitzi's name on a bunch of this stuff,
so I finally spent some time playing with http://bitzi.com/ tonight
(as user ger [2]). Bitzi is a metadata catalog and rating service:

   Our primary publication is the OpenBits Catalog, a collection of
   the best available identifying, descriptive, and editorial
   metadata about all kinds of digital files.

   We collect this metadata from our customers and volunteer
   contributors, manage processes which improve the metadata's
   reliability and usefulness over time, and then publish the
   metadata in a wide variety of formats.

   -- http://bitzi.com/about/

This sounds useful; one of the biggest hassles with downloading
files from p2p systems is trying to find out which of the various
versions are the best ones.

I installed bitcollider, a client to use to submit ratings on my
own files (apt-get install bitcollider on debian woody/sid systems)
and used it to submit a few ratings, but I found it kind of clumsy;
I was hoping to be able to use it to tell Bitzi about my high-quality
collection of MP3s (mostly ripped by myself from my own CDs), but
didn't see an easy way to do that all at once for hundreds of
files. (would need to label each one manually, it seems)

Actually, I'm not convinced that a lot of explicit user labelling
is needed to improve the file-sharing experience; if I do a
search for Matrix.avi and my client comes back with a bunch of
possibilities (grouped by their sha1 hashes), I expect that the
most popular one will tend to be the best quality, since people
will just remove lesser quality versions.

Hmm... I'd like to write a lot more about this stuff, but I
should go to sleep.

I look forward to the day when I have a command-line p2p app that
lets me do stuff a la "wget urn:sha1:I5HVBFCT7TK4UB7VR7DELZAOXFCUYFVS"
to fetch a certain file that I know I want.

Then I won't even need to keep around thousands of MP3s on my
hard drive as I do now: just keep a list of my favorite albums
and their hashes, and fetch them as desired (maybe keeping a
hundred gigs or so in a local cache.)

I'm excited that most of the features of my dream p2p client [3]
seem to be coming along nicely, without me having to get involved.
Shareaza (Windows-only) sounds great:

] SHAREAZA FEATURES
]
]  - A simple QuickStart wizard helps new users get up and
]    running in less than a minute. Choose the interface that's easiest for
]    you, share you files, and you're in!
]  - Swarmed downloads get what you want faster and more
]    reliably. Full support for multiple sources, automatic requerying, and
]    pause and resume across sessions.
]  - Powerful metadata support lets you search for content
]    by artist, album, bitrate, etc. Shareaza integrates varied metadata
]    formats from different clients into a simple unified display.
]  - Browser and URL integration works with web browsers and
]    other viewers to provide links to content on the Gnutella network. All
]    new and very cool! Plus you can find out more about local and remote
]    files with Bitzi lookup services.
]  - Full library management features put you in charge of
]    your collection, with a nested folder browser, file-level sharing
]    control, hit and fetch statistics, metadata editor, automatic change
]    scanning, Gnutella-aware move, copy, delete, rename and more.
]  - Automatic file hashing and metadata acquisition for
]    common music, image and application files provide the benefits of
]    metadata without the work. Operates in the background to keep your
]    metabase up to date. Shareaza automatically acquires metadata from
]    asf, bmp, exe, dll, gif, jpg, mp3, mpg, png, wma, and wmv files.
]  - Ultrapeer and query routing technology use intelligent
]    connections to save your bandwidth. With other Ultrapeer enabled
]    clients only. Shareaza gives you full control over your level of
]    Ultrapeer involvement.
]  - A kick-ass interface keeps you informed and gives you
]    the power to do what you want. Don't be restricted by dictated
]    "tab-based" interfaces. Shareaza lets you organise your session with
]    multiple windows and easy to use navigation. Right-click anywhere for
]    an intuitive popup command menu.
]  - Detailed diagnostic and monitoring capabilities
]    including smart packet dumping, search monitoring and filtered hit
]    monitoring enable you to keep an eye on the network.
]  - Fully featured and infinitely configurable
]    performance graphing visualises key indicators such as bandwidth
]    utilisation, neighbour interactions, downloads, uploads and network
]    characteristics over time. Create multiple graphs to keep track of
]    performance (or just to look cool).
]  - Chat peer-to-peer with other Shareaza or LimeWire
]    users. You can initiate a converation from a search result, a download
]    or an upload.
]  - Support for the latest Gnutella protocol enhancements
]    such as v0.6 handshaking, Ultrapeer/Supernode, QRP, BYE, pong caching,
]    flow control, EQHD, HUGE, HTTP/1.1, chat and XML metadata ensure
]    you're PC is a good citizen on the network.
]  - Extensive options put power users in total control of
]    the software, from high-level settings to low-level communications
]    parameters, buffer sizes, caching and routing policies.
]  - Shareaza's lean and mean design doesn't chew up half your
]    available memory and CPU time, or take ages to load. And it doesn't
]    crash your PC if you leave it running for too long. Multithreaded
]    native code ensures smooth operating conditions without going
]    overboard and taxing resources.

   -- http://www.shareaza.com/about/

Here are the two most recent gtk-gnutella announcements:

----- Forwarded message from Raphael Manfredi <[email protected]> -----

Date: Mon, 24 Jun 2002 23:44:24 +0200
From: Raphael Manfredi <[email protected]>
Subject: [Gtk-gnutella-announce] gtk-gnutella 0.90 beta released
To: [email protected],
[email protected]

Version 0.90 beta of gtk-gnutella has been released on sourceforge.
You can access it here:

http://prdownloads.sourceforge.net/gtk-gnutella/gtk-gnutella-0.90.tar.gz

Here is the highlight of the changes since last version (0.85):

- All configuration can now be made from the GUI.
- Fully redesigned search filters to work like ipchains/iptable on Linux.
- Obsoleted experimental "auto-download", superseded by the new filtering code.
- Added Gnutella bandwidth management.
- Both HTTP and Gnet bandwidth is now displayed real time.
- Added full HUGE support (Hash/URN Gnutella Extensions).
- Added support for local host preference.
- Gtk-gnutella can do traffic compression when connecting to a node that
 also supports it.
- Upload and downloads will now show User-Agent/Server information.
- Added status to the download queue.
- You can now freeze the download queue whilst manipulating it.
- Searches can now be listed on the left side of the screen, or as tabs like
 in the previous versions.
- Added automatic banning of servents that are hammering us.
- Many more cool new features that you'll discover whilst playing with it.

Enjoy!

Raphael


----- End forwarded message -----

----- Forwarded message from Raphael Manfredi <[email protected]> -----

Date: Mon, 01 Jul 2002 23:08:50 +0200
From: Raphael Manfredi <[email protected]>
Subject: [Gtk-gnutella-announce] gtk-gnutella 0.90 beta2 released
To: [email protected],
[email protected]

Version 0.90 beta2 of gtk-gnutella has been released on sourceforge.
You can access it here:

http://prdownloads.sourceforge.net/gtk-gnutella/gtk-gnutella-0.90b2.tar.gz

Here is the highlight of the changes since last beta (0.90 beta):

- Bug fixes and slight improvements.
- Greatly enhanced auto-selection in searches to use far less CPU.
- Will now warn user when encountering a newer version of gtk-gnutella.
- URN searches now supported, by typing "urn:sha1:" in search text, followed
 by the base32 value.

Raphael

----- End forwarded message -----


[1] http://impressive.net/archives/fogo/[email protected]
[2] http://bitzi.com/bitizen/ger
[3] http://impressive.net/archives/fogo/[email protected]

--
Gerald Oskoboiny <[email protected]>
http://impressive.net/people/gerald/

HURL: fogo mailing list archives, maintained by Gerald Oskoboiny