Re: [ppsp] Alternative tracker proposals; multicast-DNS

Victor Grishchenko <victor.grishchenko@gmail.com> Fri, 04 April 2014 12:02 UTC

Return-Path: <victor.grishchenko@gmail.com>
X-Original-To: ppsp@ietfa.amsl.com
Delivered-To: ppsp@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EEA121A015E for <ppsp@ietfa.amsl.com>; Fri, 4 Apr 2014 05:02:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QU2jgwTZulWG for <ppsp@ietfa.amsl.com>; Fri, 4 Apr 2014 05:02:06 -0700 (PDT)
Received: from mail-ie0-x22e.google.com (mail-ie0-x22e.google.com [IPv6:2607:f8b0:4001:c03::22e]) by ietfa.amsl.com (Postfix) with ESMTP id B1CCD1A0140 for <ppsp@ietf.org>; Fri, 4 Apr 2014 05:02:06 -0700 (PDT)
Received: by mail-ie0-f174.google.com with SMTP id rp18so3238062iec.19 for <ppsp@ietf.org>; Fri, 04 Apr 2014 05:02:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=ryJ/LaFUzq6O3SmsHLx/2RGV6k/ZLVqTtWm87vjWQaQ=; b=c16owLtjkULxLi2k+IhBFHoKBkqcMSVy8XOxwZOLSle8a+B4tN+i5cBG4zzkbAkvlu Iz4NgnqQP2dK0iTZRWMV/MjnLqNatBVn53DNi87LEQWK8ghupFqIr5zttxZI+Ym1c0oJ JAmP1UwNE0ApH6pnshSyHmk3n0UbvUkRxID44MYMoULXNjwqaUMgVusshuBaHR5YL7sm AHhQSe3om+Y8XN8chwonykhmaX2tkEYG8r5U/rHyWFUkrU5ng5FJOCZC12Re/jcsAOCp EBEafV5rgSK+TiwmGSQ3aA+Dw0y6GNPG/kNLZB3kE7BUthRDwzBmXdqKvBc/e04gengx RH2A==
X-Received: by 10.42.203.202 with SMTP id fj10mr10958125icb.51.1396612921368; Fri, 04 Apr 2014 05:02:01 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.64.240.80 with HTTP; Fri, 4 Apr 2014 05:01:21 -0700 (PDT)
In-Reply-To: <CA+qGm=-+m5LWreAZy2Fuh04CyWVqmJvaF8fg8HBz3+SfnYba1Q@mail.gmail.com>
References: <CA+qGm=-+m5LWreAZy2Fuh04CyWVqmJvaF8fg8HBz3+SfnYba1Q@mail.gmail.com>
From: Victor Grishchenko <victor.grishchenko@gmail.com>
Date: Fri, 04 Apr 2014 16:01:21 +0400
Message-ID: <CAPTHFXwTeLbwTNNQneZvXy_WajPBXhTzqLkkijP7C3tL-L6QKw@mail.gmail.com>
To: Alexander Harrowell <a.harrowell@gmail.com>
Content-Type: text/plain; charset="ISO-8859-1"
Archived-At: http://mailarchive.ietf.org/arch/msg/ppsp/imZsPB_etnJb3WXdI4JdTPGSqiU
Cc: IETF PPSP WG <ppsp@ietf.org>
Subject: Re: [ppsp] Alternative tracker proposals; multicast-DNS
X-BeenThere: ppsp@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: discussing to draw up peer to peer streaming protocol <ppsp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ppsp>, <mailto:ppsp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ppsp/>
List-Post: <mailto:ppsp@ietf.org>
List-Help: <mailto:ppsp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ppsp>, <mailto:ppsp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Apr 2014 12:02:15 -0000

On 3 April 2014 20:00, Alexander Harrowell <a.harrowell@gmail.com> wrote:
> An issue that came up at the London meeting was that some participants
> (especially Dave Cottenhuber) are not convinced by the tracker
> protocol, and propose instead to discover chunks through DNS
> resolution.

In the early days of the Swift project, Maciej Wojciechowski was
proposing something of the sort, but we didn't investigate it
thoroughly. There are definitely some issues with response caching and
such, so some experimentation is needed.

> Criticisms of the tracker are, as far as I know, as follows:
>
> 1) The tracker is a single point of failure, which is undesirable
>
> 2) The tracker protocol requires it to track quite a variety of
> metrics and to make decisions. As a result, it is quite complex, which
> affects its scalability.
>
> 3) The tracker is also vulnerable to surveillance and to censorship,
> which violates "encrypt all the things". Historically, P2P
> distribution has very often been broken by actors filtering,
> exploiting, or suing the tracker.
>
> 4) It is only weakly localised, so the problem that peer selection
> might pick peers on the other side of an ISP's most expensive link
> exists.
>
> UK ISPs had this problem when p2p filesharing was popular in the
> mid-2000s - they typically had to backhaul traffic from local
> concentrators over L2TP connections leased from BT to their
> facilities. P2P in this context typically required inter-peer
> communication to cross the expensive L2TP link twice. A similar issue
> was that Australian ISPs experienced the problem that peers might
> select high-reputation peers in, say, North America or Europe, so
> traffic would transit the high cost, high latency transpacific link.
>
> We could summarise these as three issues: scalability,
> decentralisation, and localisation.
>
> A further issue is that since the 2000s "glory years" of P2P, many
> more applications have essentially been port-multiplexed into TCP/80
> or 443 by being delivered on the WWW. A very valuable use case would
> therefore be the distribution of web content, essentially using the
> PPSP swarm as a globally distributed cache. The effort to get support
> for ppsp:// URIs into Firefox is a case in point. I am not sure how
> well the current proposals support this.

Indeed, one idea behind swift was to reduce P2P transfer warmup cycles
to make a BitTorrent-like protocol applicable to smaller content, like
Web pages.
Then, BitTorrent-like HTTP trackers are not a viable option because it
takes too much time/traffic to find content/peers. Some DNS magic may
do the trick indeed.

> DNS is scalable, globally distributed, and importantly, it is
> relatively easy for users to change their DNS servers. Further, I
> think it would be easier to protect relatively small and transactional
> interactions with DNS against malicious interference. Existing IETF
> work like DNSSEC provides for the security of DNS information although
> of course it needs more deployment.
>
> I would like to introduce an idea which contributes to scalability, to
> decentralisation, and to localisation. This would be to take up the
> idea of DNS-based content identification, using something like the
> Naming Things with Hashes proposal, and to add a multicast-DNS layer,
> so peers would initially request content from machines on their
> multicast domain, and then begin serving it to others.
>
> If it was not found locally, the peer would fall back to DNS recursive
> resolution, and then failing that to the anycast root. This would
> require that peers be able to register proactively in DNS.

I am not sufficiently familiar with the current state of DNS *cast to
say something definite.

> This provides for traffic localisation, reduced load on DNS, a simpler
> tracker, and perhaps also greater resistance to censorship, as a
> "border firewall" model would not prevent content distribution when at
> least one peer behind the firewall had managed to access the censored
> material (eg by a VPN, TOR etc or physical media).

If it works then hell yes.

> It's also relatively close to Van Jacobsen's notion of content-centred
> networking, in that the question you ask the mDNS and DNS is not "what
> IP address does this name match?" but "where is the nearest source for
> content matching this hash?"

Indeed.

-- 
Victor