[P2PSIP] Mandatory-to-implement DHTs - a dissenting opinion

Jonathan Rosenberg <jdrosen@cisco.com> Fri, 13 July 2007 21:36 UTC

Return-path: <p2psip-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1I9So1-0006p7-Bz; Fri, 13 Jul 2007 17:36:05 -0400
Received: from [10.90.34.44] (helo=chiedprmail1.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1I9Snz-0006ov-91 for p2psip@ietf.org; Fri, 13 Jul 2007 17:36:03 -0400
Received: from sj-iport-1-in.cisco.com ([171.71.176.70] helo=sj-iport-1.cisco.com) by chiedprmail1.ietf.org with esmtp (Exim 4.43) id 1I9Sny-0001rZ-TJ for p2psip@ietf.org; Fri, 13 Jul 2007 17:36:03 -0400
Received: from sj-dkim-4.cisco.com ([171.71.179.196]) by sj-iport-1.cisco.com with ESMTP; 13 Jul 2007 14:35:44 -0700
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Ao8CALGMl0arR7PE/2dsb2JhbAA
X-IronPort-AV: i="4.16,538,1175497200"; d="scan'208"; a="8544738:sNHT15283248"
Received: from sj-core-5.cisco.com (sj-core-5.cisco.com [171.71.177.238]) by sj-dkim-4.cisco.com (8.12.11/8.12.11) with ESMTP id l6DLZiL6024117 for <p2psip@ietf.org>; Fri, 13 Jul 2007 14:35:44 -0700
Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by sj-core-5.cisco.com (8.12.10/8.12.6) with ESMTP id l6DLZPTD023376 for <p2psip@ietf.org>; Fri, 13 Jul 2007 21:35:44 GMT
Received: from xfe-sjc-211.amer.cisco.com ([171.70.151.174]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 13 Jul 2007 14:35:34 -0700
Received: from [10.32.241.147] ([10.32.241.147]) by xfe-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 13 Jul 2007 14:35:33 -0700
Message-ID: <4697F02B.4030506@cisco.com>
Date: Fri, 13 Jul 2007 17:35:39 -0400
From: Jonathan Rosenberg <jdrosen@cisco.com>
User-Agent: Thunderbird 2.0.0.4 (Windows/20070604)
MIME-Version: 1.0
To: P2PSIP WG <p2psip@ietf.org>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 13 Jul 2007 21:35:34.0036 (UTC) FILETIME=[BE825540:01C7C595]
DKIM-Signature: v=0.5; a=rsa-sha256; q=dns/txt; l=3404; t=1184362544; x=1185226544; c=relaxed/simple; s=sjdkim4002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=jdrosen@cisco.com; z=From:=20Jonathan=20Rosenberg=20<jdrosen@cisco.com> |Subject:=20Mandatory-to-implement=20DHTs=20-=20a=20dissenting=20opinion |Sender:=20; bh=BoZPxWtaTFYQqwaH1dNZGT8q/GBvcoGTxGe9u9IdQaI=; b=i+T4B1AZTBZJgit5eU51rB4F3pZY3bOJHvynRJqomSeCmc4Fso2euPT7cA5wIhHOqUB+ByRN WrUoR2ggA6qeghINrys8mTXnoBn9vgiCIPSX61tO6RYq/t21tPdHwfKT;
Authentication-Results: sj-dkim-4; header.From=jdrosen@cisco.com; dkim=pass ( sig from cisco.com/sjdkim4002 verified; );
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 02ec665d00de228c50c93ed6b5e4fc1a
Subject: [P2PSIP] Mandatory-to-implement DHTs - a dissenting opinion
X-BeenThere: p2psip@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Peer-to-Peer SIP working group discussion list <p2psip.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/p2psip>, <mailto:p2psip-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/p2psip>
List-Post: <mailto:p2psip@ietf.org>
List-Help: <mailto:p2psip-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/p2psip>, <mailto:p2psip-request@ietf.org?subject=subscribe>
Errors-To: p2psip-bounces@ietf.org

I've read draft-bryan-p2psip-requirements-00, and have a bunch of 
comments. But a few items came to mind I wanted to discuss which merit 
their own threads.

First, is the concept of mandatory-to-implement DHT. The requirements 
document talks a lot about requirements around selecting a mandatory to 
implement DHT. Its something we've discussed in the meeting and on the 
list. I think everyone agrees also that we need to allow for multiple 
DHT and all of the recent protocol proposals support it.

However, I do not think we should have a mandatory-to-implement DHT at all.

There are several reasons for this. First of all, its important to 
understand the reason why IETF has mandatory-to-implement functionality 
in its protocols. The one and only reason is that it ensures 
interoperability. It ensures that, independent of the optional features 
selected by a pair of entities, when you connect them together, they can 
still interoperate.

This property will NOT be retained with a mandatory-to-implement DHT. 
Once the ring forms, the DHT protocol is chosen and locked. Thus, if any 
  DHT besides the 'mandatory-to-implement' one has been selected for the 
DHT, a new node not supporting that DHT will not be able to join the 
ring even if it implements the mandatory-to-implement one. Thus, the 
entire purpose of mandatory-to-implement is eliminated - we don't 
actually get interoperability.

Indeed, to get this kind of interoperability, we'd need to pick one and 
only one DHT that ever gets used with p2psip. I think that is a mistake. 
This is an evolving area and is one where agility is important.

Instead, what I think happens is that a 'provider' that deploys a p2p 
network will need to pick a DHT, and make sure that the clients all 
support that DHT. This is something the market should drive, not us.

Secondly, I think its important to realize that we are picking up work 
in an area that is well trod. There are lots and lots of papers and 
protocols and software written around P2P networks. I don't think anyone 
looks at an IETF protocol and says, "IETF are the guys who know about 
DHTs, lets go with their recommendation". What IETF is really good at, 
and what this group has expertise in, is SIP, and on designing good, 
scalable protocols in general - things that have security, 
extensibility, good performance, and so on. So I think the greatest 
value we can bring to the table is to create a protocol that allows 
others to take DHTs and easily turn them into a real wire protocol that 
you can actually deploy, on the Internet, to support SIP and ideally 
other things too. Interestingly, this is exactly what all of the 
protocol proposals do. That kind of focus goes hand-in-hand with saying, 
let someone else figure out which DHT to use. I think its perfectly 
reasonable for us, and for others, to write documents on how to use our 
protocol with various DHTs. But I think we should be out of the business 
of picking one or recommending one (or ones) to be used.

-Jonathan R.
-- 
Jonathan D. Rosenberg, Ph.D.                   600 Lanidex Plaza
Cisco Fellow                                   Parsippany, NJ 07054-2711
Cisco Systems
jdrosen@cisco.com                              FAX:   (973) 952-5050
http://www.jdrosen.net                         PHONE: (973) 952-5000
http://www.cisco.com

_______________________________________________
P2PSIP mailing list
P2PSIP@ietf.org
https://www1.ietf.org/mailman/listinfo/p2psip