Re: Gittorent .. avahi ?

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Srijak Rijal <srijak@...>
Cc: <git@...>
Date: Sunday, April 1, 2007 - 10:30 pm

Srijak Rijal wrote:

Note that a minimal tracker can always return the same static file,
listing known stable peers; the P2P protocol is capable of discovering
new peers.

Also, unlike BitTorrent, the protocol is capable of negotiating the
tracker update frequency.  A tracker under load would just start
advertising addresses for longer, and returning server busy responses
for peers that contact them too frequently.  See the "valid" key in the
Request, and the "expires" key in the Response.

I think in BitTorrent there is an *over*-emphasis on making the tracker
load light, because people want to be able to run them on the most
dirt-cheap hosting account they can find, because they might get shut
down and don't want a huge outlay.  But with GitTorrent, a large number
of the tracker providers are going to be software houses, and people
already running mirroring services - and so the increased load will be
more than justified by the reduced overall load.


Looks like avahi is only intended for the local network anyway, going by
the home page and Wikipedia article.

I guess the use cases for this include programming houses and hackathons.

At a hackathon, you might scan the network for a list of projects, and
jump into one of the swarms.  Then you hack on the code.  Then to
"commit", you set up and advertise another tracker that has your list of
heads, but refers to the other repo as an "alternative" (see
Metainfo/repo/alternatives).  The other people's avahi-enhanced
gittorrent client could see that a new related project has been
advertised, and fetch new commits to "remotes/" references automatically.

SVN fans would probably then configure it to automatically merge in new
remote references to their current working tree, but that's not
important right now :-).

One current TO-DO item in the specification to make this use case
scalable is to allow connections to deal with multiple (possibly
related) repositories at the same time.  Otherwise, with 6 "committers",
you've got 6 P2P swarms.  But this can happen with the next incremental
version of the specification.

At a programming house, setting up a tracker to commit wouldn't be as
frequent, as you expect people to have the appropriate access to
commit.  It would still be useful as a live directory of projects - but
is it significantly more useful than a simple gitweb?

Anyway, the old warning about scope creep applies to this idea - working
from the bottom up is a lot better for getting things done than thinking
big.  Just look at me, I think big all the time and never get anything
done ;-)  There will be a lot of interesting technologies enabled by
gittorrent.

Sam.


-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Gittorent .. avahi ?, Srijak Rijal, (Sun Apr 1, 1:59 pm)
Re: Gittorent .. avahi ?, Jonas Fonseca, (Tue Apr 3, 2:25 pm)
Re: Gittorent .. avahi ?, Srijak Rijal, (Tue Apr 3, 3:44 pm)
Re: Gittorent .. avahi ?, Sam Vilain, (Sun Apr 1, 10:30 pm)
Re: Gittorent .. avahi ?, Shawn O. Pearce, (Tue Apr 3, 1:31 am)