[ppsp] Alternative tracker proposals; multicast-DNS

Alexander Harrowell <a.harrowell@gmail.com> Thu, 03 April 2014 16:00 UTC

Return-Path: <a.harrowell@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 91E221A0264 for <ppsp@ietfa.amsl.com>; Thu, 3 Apr 2014 09:00:38 -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 wbAhd2fJeYcv for <ppsp@ietfa.amsl.com>; Thu, 3 Apr 2014 09:00:32 -0700 (PDT)
Received: from mail-qg0-x22d.google.com (mail-qg0-x22d.google.com [IPv6:2607:f8b0:400d:c04::22d]) by ietfa.amsl.com (Postfix) with ESMTP id 87FC81A0233 for <ppsp@ietf.org>; Thu, 3 Apr 2014 09:00:32 -0700 (PDT)
Received: by mail-qg0-f45.google.com with SMTP id j5so2029465qga.32 for <ppsp@ietf.org>; Thu, 03 Apr 2014 09:00:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=YSisNtGc2k+FgS9p/HYkxAgCbidKeMImPr535STpRtI=; b=xD2tgtnu6RL1CRLtDzEW52iEkNgqQOtQDiAKq1wSkfv4TjnGGbq1WVr/saygeXieAr 0ZiLC0Yo8A5VRFIccdwNlbWDPetxIjyLRAPooiKmPA9vaRU3gqWU7E12yJlm0w+SjSHg cC/cNZLt7otRrq+1LQ3tmD8W0vEWlHsTTw+HQqivKFOjVNzgX1nFNSgx3+4cO7xZh7Ia 8YRL82+vLtqsrk7n3KORtZve+uS77Nki3aNmd/s+zRgsVzQgu49MsLw14IKQ4NK1ysuC 8AHzy14MQF5yAsYzi1fmSAfvfNQ+ikybr0RDXszPfNMYuALUwJ9IYUY3txzfw6cutpj9 A/HQ==
MIME-Version: 1.0
X-Received: by 10.229.112.5 with SMTP id u5mr8424187qcp.3.1396540828125; Thu, 03 Apr 2014 09:00:28 -0700 (PDT)
Received: by 10.96.77.227 with HTTP; Thu, 3 Apr 2014 09:00:28 -0700 (PDT)
Date: Thu, 03 Apr 2014 17:00:28 +0100
Message-ID: <CA+qGm=-+m5LWreAZy2Fuh04CyWVqmJvaF8fg8HBz3+SfnYba1Q@mail.gmail.com>
From: Alexander Harrowell <a.harrowell@gmail.com>
To: ppsp@ietf.org
Content-Type: text/plain; charset="ISO-8859-1"
Archived-At: http://mailarchive.ietf.org/arch/msg/ppsp/1e6jfGS_G70eEYS18Q8fr7LAFnU
Subject: [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: Thu, 03 Apr 2014 16:00:38 -0000

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.

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.

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.

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).

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?"

Thoughts?

Alex Harrowell