Re: [Hipsec] HIP Native NAT Traversal
Ari Keranen <ari.keranen@nomadiclab.com> Mon, 12 April 2010 09:33 UTC
Return-Path: <ari.keranen@nomadiclab.com>
X-Original-To: hipsec@core3.amsl.com
Delivered-To: hipsec@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 89C473A68B6 for <hipsec@core3.amsl.com>; Mon, 12 Apr 2010 02:33:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.067
X-Spam-Level:
X-Spam-Status: No, score=-1.067 tagged_above=-999 required=5 tests=[AWL=-0.882, BAYES_40=-0.185]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AT6NDY4nEj6o for <hipsec@core3.amsl.com>; Mon, 12 Apr 2010 02:33:37 -0700 (PDT)
Received: from gw.nomadiclab.com (unknown [IPv6:2001:14b8:400:101::2]) by core3.amsl.com (Postfix) with ESMTP id 002B13A6407 for <hipsec@ietf.org>; Mon, 12 Apr 2010 02:33:31 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by gw.nomadiclab.com (Postfix) with ESMTP id 72D754E6F8; Mon, 12 Apr 2010 12:33:17 +0300 (EEST)
X-Virus-Scanned: amavisd-new at nomadiclab.com
Received: from gw.nomadiclab.com ([127.0.0.1]) by localhost (inside.nomadiclab.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yrR012rv1GcT; Mon, 12 Apr 2010 12:33:12 +0300 (EEST)
Received: from [IPv6:2001:14b8:400:101:21c:23ff:fe45:a6c1] (unknown [IPv6:2001:14b8:400:101:21c:23ff:fe45:a6c1]) by gw.nomadiclab.com (Postfix) with ESMTP id 62F2A4E6C0; Mon, 12 Apr 2010 12:33:12 +0300 (EEST)
Message-ID: <4BC2E8D6.6030404@nomadiclab.com>
Date: Mon, 12 Apr 2010 12:33:10 +0300
From: Ari Keranen <ari.keranen@nomadiclab.com>
User-Agent: Thunderbird 2.0.0.24 (X11/20100317)
MIME-Version: 1.0
To: hipsec@ietf.org
References: <4BBF283A.9080408@ericsson.com> <4BBF8C33.8050203@cs.hut.fi>
In-Reply-To: <4BBF8C33.8050203@cs.hut.fi>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [Hipsec] HIP Native NAT Traversal
X-BeenThere: hipsec@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "This is the official IETF Mailing List for the HIP Working Group." <hipsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hipsec>, <mailto:hipsec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hipsec>
List-Post: <mailto:hipsec@ietf.org>
List-Help: <mailto:hipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hipsec>, <mailto:hipsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 12 Apr 2010 09:33:38 -0000
Hi, On 04/09/2010 11:21 PM, Miika Komu wrote: > On 04/09/2010 04:14 PM, Gonzalo Camarillo wrote: >> in Anaheim, we decided to continue discussing on the list the following >> draft: >> >> https://datatracker.ietf.org/doc/draft-keranen-hip-native-nat-traversal/ >> >> In particular, I would like to see discussions on the lessons learned >> from the STUN-based implementations and potential benefits of >> implementing STUN-like functionality in HIP. > > from a protocol design perspective, demultiplexing of HIP, ESP and STUN > packets is complicated. At implementation level, this introduced an > additional requirement of packet capture using iptables. I believe this > part would become cleaner design and implementation-wise by replacing > STUN with HIP. This is indeed a problem if you don't want to patch kernel code. While HIP packets can be simply demultiplexed using the non-ESP marker, STUN packets can't and therefore you need to either use some filtering before the IPsec processing (e.g., iptables) or process all the packets at user space, which causes some performance penalty. > It actually took quite a lot effort to hook in a standalone ICE library > to the base exchange code. I believe it would also further complicate > the mobility code. Also, using TURN for relaying IPsec ESP is not all that simple since you need to add and remove the TURN framing when sending data via a TURN relay. With an ESP relay you don't need any framing at all and all the ESP processing can be done as if no relay was used. That said, also TURN relaying can be used with the native NAT traversal mode and only the host using TURN relay needs to implement TURN. I think the amount of implementation effort needed for integrating an ICE library into a HIP implementation turned out to be quite a bit higher that initially estimated. Also, the amount of extra code (some 10 kLoC) needed for all the new parsers, state machines, etc., is quite high and by re-using the HIP code one should be able to do with much less. This should result in smaller binary size, less bugs, and easier debugging. > +1 for the new draft, I believe having a single control plane instead of > two makes things simpler. I would suggest the new draft to replace the > existing one for standards track. Considering the experiences with the STUN-based approach, the native HIP mode does sound like a better idea for the standards track. Cheers, Ari
- [Hipsec] HIP Native NAT Traversal Gonzalo Camarillo
- Re: [Hipsec] HIP Native NAT Traversal Miika Komu
- Re: [Hipsec] HIP Native NAT Traversal Ari Keranen
- Re: [Hipsec] HIP Native NAT Traversal Dan Wing
- Re: [Hipsec] HIP Native NAT Traversal frogsir
- Re: [Hipsec] HIP Native NAT Traversal Miika Komu
- Re: [Hipsec] HIP Native NAT Traversal Dan Wing
- Re: [Hipsec] HIP Native NAT Traversal Ari Keranen
- Re: [Hipsec] HIP Native NAT Traversal Dan Wing
- Re: [Hipsec] HIP Native NAT Traversal frogsir
- Re: [Hipsec] HIP Native NAT Traversal Dan Wing