Re: [P2PSIP] Status of RELOAD

"Bruce Lowekamp" <lowekamp@sipeerior.com> Wed, 23 January 2008 15:20 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 1JHhP5-0005ln-7r; Wed, 23 Jan 2008 10:20:39 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1JHhP4-0005lc-B1 for p2psip@ietf.org; Wed, 23 Jan 2008 10:20:38 -0500
Received: from wa-out-1112.google.com ([209.85.146.179]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1JHhOS-0001eR-Ag for p2psip@ietf.org; Wed, 23 Jan 2008 10:20:38 -0500
Received: by wa-out-1112.google.com with SMTP id k40so6907679wah.25 for <p2psip@ietf.org>; Wed, 23 Jan 2008 07:17:10 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; bh=Hy9Hk9gRyd+4Rv9giVhggSskgd9ceLrMWFiV0LY0QJ8=; b=qN6gJ0dn4Cv2GjigYzPkxqWSkW+xzfoQ1iTinrcef8v/avEaptiNKbFgV25clm55TVB6ysBfLkPhWvbMseUH+G5zWa3GVS/mv5+wcMms8Q5SmlKRD1lmEP5exl4pxTstRumEuMZ3TkfuaqSKk51N1ZjfBRREZgl091bpMoccP1k=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=J1NuNVvRbEVMRq4ZY/cCGDw0AKDKNAf3CaIJGijqzSBw2PIiy5sIFAnBZeJsb5gHyz53X7OaDqCQ4EbqR1Tr1sMDKaf3cYUMsrgI9U6OXkL/Lkr+4s3Z2BBbegwi+WQNCdkj5WAQPxN4uCX1CZnBZp50wymwV199pq+Se/ruHwY=
Received: by 10.114.134.1 with SMTP id h1mr8411206wad.4.1201101430183; Wed, 23 Jan 2008 07:17:10 -0800 (PST)
Received: by 10.114.209.13 with HTTP; Wed, 23 Jan 2008 07:17:10 -0800 (PST)
Message-ID: <20d2bdfb0801230717l579cfc30ic10b6cb678a18321@mail.gmail.com>
Date: Wed, 23 Jan 2008 10:17:10 -0500
From: Bruce Lowekamp <lowekamp@sipeerior.com>
To: michaelc@idssoftware.com
Subject: Re: [P2PSIP] Status of RELOAD
In-Reply-To: <20080122200203.59ca11a9ba9389561a029f06442e67fa.ff22e2cc50.wbe@email.secureserver.net>
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
References: <20080122200203.59ca11a9ba9389561a029f06442e67fa.ff22e2cc50.wbe@email.secureserver.net>
X-Google-Sender-Auth: 48ef063c82b4c139
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d8ae4fd88fcaf47c1a71c804d04f413d
Cc: p2psip@ietf.org
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

Michael,

Of course, there is always a new version of a draft on the way...

You're right that reload-01 used a very simple and uniform TLV
structure for everything.  The uniformity of that is nice, but it has
a couple of problems:
- because it allowed the various parameters to be in any order,
parsing it and locating elements of the structure was fairly
complicated.
- for fields that must be there exactly once and have a fixed length
(i.e. a uint32), it's a lot of overhead.

The goal of the reload-02 encoding structure was to get rid of the TLV
structure when it's not necessary.  i.e. when you know what type
you're encoding, give that type a predefined structure when it can
have one.  For example, in reload-02, the CONNECT request in 5.1.2.1
is a good example.  You know what the fields of a connect (it's
encoding the information needed by ICE) need to be.  In this case,
they can be variable length, and there can be varying numbers of
candidate addresses.  The structure there is of a predefined order,
but allows the length of each field to be specified.  Essentially, the
T of TLV isn't needed because we know the order of the types of a
CONNECT request.

Unfortunately, you're absolutely right in observing that the structure
used in reload-02 isn't as clear as it should be.  Basically, we ran
out of time.  There is an underlying type definition language being
used here (thanks to ekr) that ultimately would make things a lot
clearer and easier to implement, but right now it's a bit confusing
until you spend time with it.  I think ultimately this way of encoding
will be much easier to parse.

The header is still basically fixed.  It allows the via and route list
to vary (their order will be reversed in the next version, which will
simplify processing), but otherwise it's very similar.

I don't know of a formal paper on it, but 128-bits is more than enough
to provide reasonable guarantees of uniqueness.  Technically, if what
you do is truncate a hash (rather than using a hash that naturally
produces that length), as long as it's a good hash, all bits are
equally random, so truncating it is still safe.

Bruce




On Jan 22, 2008 10:02 PM,  <michaelc@idssoftware.com> wrote:
> Hi Cullen,
>
> RELOAD-1 was a solid protocol with strengths like the flexibility of TLV,
> 32-bit alignment, full 160-bit IDs, well defined symbolic values, etc.  By
> comparison, the ASP draft was pretty rough.  When these two merged into
> RELOAD-2, most of the RELOAD-1 pros were lost.  Is RELOAD-3 on its way?
>
> Many fields in RELOAD-2 are variable size values or arrays, so why not use
> Type-Length-Value to make the protocol more "binary readable" and
> extensible?  RELOAD-1 defines a single fixed header and everything else in
> TLV.  That is too good to abandon, not to mention being a perfect construct
> for supporting multiple DHTs.
>
>  By the way, I have seen several drafts use 128-bit ID in fixed structures,
> which means truncating the low 32-bit of a SHA-1 hash.  Is there a potential
> risk?  Any formal paper about this?
>
>  Thanks
>
>  --Michael
> _______________________________________________
> P2PSIP mailing list
> P2PSIP@ietf.org
> https://www1.ietf.org/mailman/listinfo/p2psip
>
>

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