Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Feb 2018 14:25:56 +0100
From:      Dave Cottlehuber <dch@skunkwerks.at>
To:        freebsd-current@freebsd.org
Subject:   Re: P2P core/daemon in Base?
Message-ID:  <1519305956.3128800.1279637856.74E007EC@webmail.messagingengine.com>
In-Reply-To: <20180222025158.dqookgcvscyihyeb@privacychain.ch>
References:  <20180222025158.dqookgcvscyihyeb@privacychain.ch>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 22 Feb 2018, at 03:51, Le Baron d=E2=80=99Merde wrote:
> Dear Fellows,
>=20
> Nothing new and probably will not be implemented, specially by me who=20
> can't write code, but I am sharing this idea anyway.
>=20
> The point would be to have a P2P core/daemon in Base with some API to be=
=20
> used by clients, including pkg, freebsd-update, and portsnap becoming=20
> P2P based/capable, and would also allowing any user that desire to=20
> become a FreeBSD mirror[1]. What would reduce the load on the FreeBSD=20
> infrastructure.

At present if nobody's downloading 11.1R.txz then there's no load to the mi=
rrors. Most P2P implementations require some form of seed node that keeps t=
rack of active peers & blocks, so it's not quite a free lunch.

I've an incomplete erlang-based version of https://tools.ietf.org/html/rfc7=
574
called PPSP (Peer-to-Peer Streaming Protocol), and I always felt a C or
rust-based implementation of it would be a great addition to FreeBSD whethe=
r ports
or base.

PPSP is a multi-peer streaming mix of:

- merkle tree across arbitrary blocks of data
- lightweight 'torrent-ish' UDP protocol for requesting and sharing blocks
- optional live-streaming (i.e. stream starts before full data is available)
- optional cryptographic signatures

For example, I'd love to be able to "zfs send" via a multipeer protocol and=
 have it Do The Right Thing in transferring this to multiple "zfs recv" pee=
rs, or have our custom pkg repo pull stuff off the adjacent servers rather =
than stumble across
the Pacific Ocean for the data. [Yes I'm aware pkg can be cached already].

If somebody is interested in working on this please get in touch, I would p=
ut some
funds in and can offer some context on the spec as I was involved in it.

Also, if it's something the FreeBSD Foundation might consider jointly suppo=
rting,
I would help with the paperwork & submission.

A+
Dave
=E2=80=94
  Dave Cottlehuber
  +43 67 67 22 44 78
  Managing Director
  Skunkwerks, GmbH
  http://skunkwerks.at/
  ATU70126204
  Firmenbuch 410811i



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1519305956.3128800.1279637856.74E007EC>