[Hipsec] HIP Registration Extension (fwd)

Lauri Silvennoinen <ljsilven@cc.hut.fi> Thu, 14 August 2008 17:41 UTC

Return-Path: <hipsec-bounces@ietf.org>
X-Original-To: hip-archive@lists.ietf.org
Delivered-To: ietfarch-hip-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B625A3A6957; Thu, 14 Aug 2008 10:41:09 -0700 (PDT)
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 7E59D3A6957 for <hipsec@core3.amsl.com>; Thu, 14 Aug 2008 10:41:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 A66ei0TUfq6E for <hipsec@core3.amsl.com>; Thu, 14 Aug 2008 10:41:07 -0700 (PDT)
Received: from smtp-2.hut.fi (smtp-2.hut.fi [130.233.228.92]) by core3.amsl.com (Postfix) with ESMTP id 342283A6868 for <hipsec@ietf.org>; Thu, 14 Aug 2008 10:41:06 -0700 (PDT)
Received: from localhost (katosiko.hut.fi [130.233.228.115]) by smtp-2.hut.fi (8.13.6/8.12.10) with ESMTP id m7EHf880013528 for <hipsec@ietf.org>; Thu, 14 Aug 2008 20:41:08 +0300
Received: from smtp-2.hut.fi ([130.233.228.92]) by localhost (katosiko.hut.fi [130.233.228.115]) (amavisd-new, port 10024) with LMTP id 26385-120-19 for <hipsec@ietf.org>; Thu, 14 Aug 2008 20:41:08 +0300 (EEST)
Received: from kosh.hut.fi (kosh.hut.fi [130.233.228.10]) by smtp-2.hut.fi (8.13.6/8.12.10) with ESMTP id m7EHesFn013237 for <hipsec@ietf.org>; Thu, 14 Aug 2008 20:40:54 +0300
Date: Thu, 14 Aug 2008 20:40:54 +0300
From: Lauri Silvennoinen <ljsilven@cc.hut.fi>
To: hipsec@ietf.org
Message-ID: <Pine.OSF.4.64.0808141955110.142735@kosh.hut.fi>
MIME-Version: 1.0
X-TKK-Virus-Scanned: by amavisd-new-2.1.2-hutcc at katosiko.hut.fi
Subject: [Hipsec] HIP Registration Extension (fwd)
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/pipermail/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>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: hipsec-bounces@ietf.org
Errors-To: hipsec-bounces@ietf.org

Hi all,

I asked a few questions related to the HIP Registration Extension back on 
April, but I think I never got an answer to these questions. The draft is 
now known as RFC 5203, but the issues remain unanswered. So I send my 
previous mail again, hoping to get an answer this time.

In addition to the issues presented below, I would like to propose a new 
Failure Type to be used in the REG_FAILED parameter. We have currently two 
Failure Types defined:

     Failure Type    Reason
     ------------    --------------------------------------------
     0               Registration requires additional credentials
     1               Registration type unavailable

Now, when the server is able to provide multiple services and some of 
these services cannot co-exist i.e. a single requester cannot be 
registered to these services simultaneously, how does the server respond 
to a registration attempt?

For example, if a server is able to provide both rendezvous service and 
full relay for HIP packets service (used in ICE), a single requester 
cannot be allowed to register to both of these services without canceling 
the previously granted service first.

For this type of situation, I suggest a new Failure Type:

     Failure Type    Reason
     ------------    --------------------------------------------
     2               Cancellation required

The other possibility would be to just silently overwrite the previous 
registration.

Best regards,
Lauri



---------- Forwarded message ----------
Date: Mon, 14 Apr 2008 16:30:40 +0300 (EEST)
From: Lauri Silvennoinen

Hi,

I am implementing / improving the existing implementation of the HIP
Registration Extension for InfraHIP project (HIPL). I have a few questions
concerning draft-ietf-hip-registration-02:

1) How does a registrar announce that it is capable of providing multiple
    services with different lifetimes?

     In Section 3.1 it is said that "a registrar SHOULD include a REG_INFO
     parameter in the R1 packets it sends during all base exchanges." The
     REG_INFO parameter, however, is of the following form:

         0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Type              |             Length            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | Min Lifetime  | Max Lifetime  |  Reg Type #1  |  Reg Type #2  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      ...      |     ...       |  Reg Type #n  |               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+    Padding    +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

     I.e. it has single "Min Lifetime" and "Max Lifetime" values. The issue
     would be solved if the registrar could include multiple REG_INFO
     parameters in the R1 packets, but nothing is said about multiple
     REG_INFOs in the draft.

2) How to handle REG_REQUEST, REG_RESPONSE and REG_FAILED parameters that
    have redundant services? These parameters are of the following form:

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Type              |             Length            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |   Lifetime    |  Reg Type #1  |  Reg Type #2  |  Reg Type #3  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      ...      |     ...       |  Reg Type #n  |               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+    Padding    +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

     Now, what happens if, say, both "Reg Type #1" and "Reg Type #2" are of
     type RVS? Not that it would make any sense to build such parameters, but
     the hosts should be ready to handle such parameters.

3) What happens if registration cancellation does not succeed? In Section
    5 it is said:

     "A zero lifetime is reserved for canceling purposes.  Requesting a zero
     lifetime for a registration type equals to canceling the registration
     of that type.  A requester MAY cancel a registration before it expires
     by sending a REG_REQ to the registrar with a zero lifetime.  A
     registrar SHOULD respond and grant a registration with a zero lifetime.
     A registrar (and an attached service) MAY cancel a registration before
     it expires, at its own discretion.  However, if it does so, it SHOULD
     send a REG_RESPONSE with a zero lifetime to all registered requesters."

     Thus if the requester wants to cancel a service it sends a REG_REQUEST
     parameter with zero lifetime to which the registrar should answer with
     a REG_RESPONSE with zero lifetime respectively. But what happens if the
     registrar is unable to cancel the registration due to transient
     conditions or some other reason? Does the registrar just remain silent
     or send a REG_FAILED?

Thanks,
Lauri
_______________________________________________
Hipsec mailing list
Hipsec@ietf.org
https://www.ietf.org/mailman/listinfo/hipsec