Re: [shim6] WG Last Call for draft-ietf-shim6-multihome-shim-api

Shinta Sugimoto <shinta.sugimoto@ericsson.com> Mon, 14 December 2009 04:24 UTC

Return-Path: <shinta.sugimoto@ericsson.com>
X-Original-To: shim6@core3.amsl.com
Delivered-To: shim6@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E0E9A3A67FC for <shim6@core3.amsl.com>; Sun, 13 Dec 2009 20:24:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.249
X-Spam-Level:
X-Spam-Status: No, score=-6.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_SE=0.35, 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 ZGU1SqOQuY8v for <shim6@core3.amsl.com>; Sun, 13 Dec 2009 20:24:28 -0800 (PST)
Received: from mailgw3.ericsson.se (mailgw3.ericsson.se [193.180.251.60]) by core3.amsl.com (Postfix) with ESMTP id 041823A672E for <shim6@ietf.org>; Sun, 13 Dec 2009 20:24:27 -0800 (PST)
X-AuditID: c1b4fb3c-b7b8dae0000047e9-d5-4b25bdeddbf3
Received: from esessmw0256.eemea.ericsson.se (Unknown_Domain [153.88.253.124]) by mailgw3.ericsson.se (Symantec Mail Security) with SMTP id 24.EC.18409.DEDB52B4; Mon, 14 Dec 2009 05:24:13 +0100 (CET)
Received: from esgscmw0009.eapac.ericsson.se (146.11.115.34) by esessmw0256.eemea.ericsson.se (153.88.115.97) with Microsoft SMTP Server (TLS) id 8.1.375.2; Mon, 14 Dec 2009 05:24:13 +0100
Received: from ESGSCCMS0002.eapac.ericsson.se ([169.254.1.36]) by esgscmw0009.eapac.ericsson.se ([146.11.115.34]) with mapi; Mon, 14 Dec 2009 12:23:38 +0800
From: Shinta Sugimoto <shinta.sugimoto@ericsson.com>
To: Brian E Carpenter <brian.e.carpenter@gmail.com>, "shim6@ietf.org" <shim6@ietf.org>
Date: Mon, 14 Dec 2009 12:23:35 +0800
Thread-Topic: [shim6] WG Last Call for draft-ietf-shim6-multihome-shim-api
Thread-Index: Acp7rBFajtD7Ov/CSTmx+ziNSK5FOAAwIjpg
Message-ID: <541EE6CB2B85BE4389E2910C9B4BC77E01C40860EC@ESGSCCMS0002.eapac.ericsson.se>
References: <D20B2D29-D285-43A0-A1F8-AA12055059B5@apnic.net> <4B246C43.9030003@gmail.com>
In-Reply-To: <4B246C43.9030003@gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Brightmail-Tracker: AAAAAA==
Cc: Kristian Slavov <kristian.slavov@ericsson.com>, "miika@iki.fi" <miika@iki.fi>
Subject: Re: [shim6] WG Last Call for draft-ietf-shim6-multihome-shim-api
X-BeenThere: shim6@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SHIM6 Working Group Mailing List <shim6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/shim6>, <mailto:shim6-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/shim6>
List-Post: <mailto:shim6@ietf.org>
List-Help: <mailto:shim6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/shim6>, <mailto:shim6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 14 Dec 2009 04:24:30 -0000

Hi Brian,

Thank you very much for your comments. Please find my comments inline.

Let me address my opinion on compatibility issue of SHIM/HIP and SCTP/multi-path TCP in another threads. 

> -----Original Message-----
> From: Brian E Carpenter [mailto:brian.e.carpenter@gmail.com] 
> Sent: Sunday, December 13, 2009 5:24 AM
> To: shim6@ietf.org
> Cc: Kristian Slavov; miika@iki.fi; Shinta Sugimoto
> Subject: Re: [shim6] WG Last Call for 
> draft-ietf-shim6-multihome-shim-api
> 
> Hi,
> 
> First a confession, I have never seriously looked at the 
> earlier versions, so I apologise if I am covering old ground.
> 
> Basically this looks good to me, but I think it isn't quite ready.
> 
> I don't really like the first three paragraphs of the Introduction.
> The tone is almost apologetic somehow. Could we be more 
> clear, really just by starting something like
> 
>   This document defines socket API extensions by which upper layer
>   protocols may be informed about and control the way in which
>   multihoming shims in the IP layer manage the dynamic choice of
>   locators. Initially it applies to SHIM6 and HIP, but it is defined
>   generically.
> 
> and then present the main features of the shims and loc-id separation.
> (Also see my later comment about the Conclusion section.)

Ok, let us revise the text as you suggeted.  BTW, the intention of the three paragraphs in the
currerent text is to provide explanation to people who ask "HIP/SHIM6 aims at
hiding locators from applications, doesn't it? Then why you specify something
which requires applications to deal with locators?"  But I guess texts were not so clear.

> Also in the Introduction
> 
> >    This document recommends that the switching of 
> identifier and locator
> >    is done only once inside the TCP/IP stack of an endhost. 
>  That is, if
> >    multiple shim sub-layers exist at the IP layer, any one of them
> >    should be applied exclusively for a given flow.
> 
> I agree with this, but does it really belong in the API spec? 
> It seems more like something for an applicability statement. 
> However, if this stays, I think it should be very explicit, 
> adding something like:

I agree that this is a generic issue in SHIM6/HIP and it is more like applicability statement.
Let us revise the text.

>   Specifically, only one of SHIM6 and HIP should be in use, 
> and neither
>   of them are compatible with SCTP or multipath TCP.
> 
> (see 
> http://www.ietf.org/mail-archive/web/multipathtcp/current/msg0
> 0178.html
> for example)

Let me comment in different thread about compatibility issue.

> > 2.  Terminology
> ...
> >    o  Endpoint identifier (EID) - The identifier used by 
> the application
> >       to specify the endpoint of a given communication.  
> Applications
> >       may handle EIDs in various ways such as long-lived 
> connections,
> >       callbacks, and referrals[I-D.ietf-shim6-app-refer].
> >       *  In the case of SHIM6, an identifier called a ULID 
> serves as an
> >          EID.  A ULID is chosen from locators available on the host.
> >       *  In the case of HIP, an identifier called a Host Identifier
> >          serves as an EID.  A Host Identifier is derived 
> from the public
> >          key of a given host.  For the sake of backward 
> compatibility
> >          with the sockets API, the Host Identifier is 
> represented in a
> >          form of hash of public key.
> 
> We might add a clarification that the EID appears in the 
> standard socket API as an address, and does not appear in the 
> extensions defined in this document, which only concern locators.

I agree. Let us add this note in the explanation about EID.

> > 4.  Requirements
> ...
> >    o  Turn on/off shim.  An application should be able to request to
> >       turn on or turn off the multihoming support by the shim layer:
> >       *  Apply shim.  The application should be able to explicitly
> >          request the shim sub-layer to apply multihoming support.
> >       *  Don't apply shim.  The application should be able 
> to request
> >          the shim sub-layer not to apply the multihoming 
> support but to
> >          apply normal IP processing at the IP layer.
> 
> We might add a note that this function is also required by 
> any multipath transport layer such as SCTP or MPTCP, with the 
> details being operating system dependent.

I think this relates to the compabilitiy issue, so let me state my view in differnet thread.

> > 11.  Discussion
> > 
> >    In this section, open issues are introduced.
> 
> This section is non-normative. I think it should be an appendix.

Ok.

> > 12.  Changes
> 
> This section seems to be in a strange place, but in any case 
> it should be marked for deletion by the RFC Editor.

Ok.

> > 14.  Security Considerations
> 
> It seems to me that the Unknown Locator mechanism described 
> in section 11.4 might act as a bypass for the security 
> mechanism applied by the shim.

Let me clarify if I undertand your comment.
Yes, application may provide locator(s) which the multihome shim sub-layer
may not be aware of.  In principle, the reaction of the multihome shim sub-layer
must be aligned with what is stated in Section 7.2 (Locator Verification) of
RFC 5533.  Besides, I think an error message must be returned to the application
when it tries to use unknown locator as the source address for outbound user traffic.
Does this cover your concern?

> > 15.  Conclusion
> 
> We don't normally put conclusions in RFCs. Actually, the 
> content seems to belong in the Introduction.

Ok.

> > Appendix A.  Context Forking
> ...
> >    Another viable approach is to extend SHIM6 protocol by adding
> >    capability of exchanging additional information to identify the
> >    packet flow from others which needs to be handled by a 
> newly forked
> >    context.  The information exchange can be done during the context
> >    establishment.  The initiator appends 5 tuple of the 
> packet flow to
> >    be handled by the newly forked context.  Note that the additional
> >    information provided by the 5 tuple are source and 
> destination port
> >    numbers and upper layer protocol.  The information is 
> later used by
> >    the shim sub-layer to multiplex the outbound packet flow on the
> >    responder side.
> 
> Hold on, this is hypothetical protocol design in a 
> non-normative appendix of an API spec. That seems completely 
> out of place. If this issue is important, maybe the whole 
> appendix should be a separate draft?

I see.  I agree that it should be outside the API spec.
The importance of the issue depends on frequency of the scenario
(i.e., multiple applications share the same SHIM6 context), I think.

Regards,
Shinta