Re: [pcp] WG last call on draft-ietf-pcp-upnp-igd-interworking-01

Dave Thaler <dthaler@microsoft.com> Sat, 28 July 2012 00:31 UTC

Return-Path: <dthaler@microsoft.com>
X-Original-To: pcp@ietfa.amsl.com
Delivered-To: pcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7AC4011E810A for <pcp@ietfa.amsl.com>; Fri, 27 Jul 2012 17:31:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.316
X-Spam-Level:
X-Spam-Status: No, score=-103.316 tagged_above=-999 required=5 tests=[AWL=-0.516, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, SARE_SUB_RAND_LETTRS4=0.799, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MQB3qtsya6sX for <pcp@ietfa.amsl.com>; Fri, 27 Jul 2012 17:31:40 -0700 (PDT)
Received: from co1outboundpool.messaging.microsoft.com (co1ehsobe002.messaging.microsoft.com [216.32.180.185]) by ietfa.amsl.com (Postfix) with ESMTP id B3D4511E8107 for <pcp@ietf.org>; Fri, 27 Jul 2012 17:31:40 -0700 (PDT)
Received: from mail9-co1-R.bigfish.com (10.243.78.232) by CO1EHSOBE008.bigfish.com (10.243.66.71) with Microsoft SMTP Server id 14.1.225.23; Sat, 28 Jul 2012 00:31:40 +0000
Received: from mail9-co1 (localhost [127.0.0.1]) by mail9-co1-R.bigfish.com (Postfix) with ESMTP id 217D56403CC for <pcp@ietf.org>; Sat, 28 Jul 2012 00:31:40 +0000 (UTC)
X-Forefront-Antispam-Report: CIP:131.107.125.8; KIP:(null); UIP:(null); IPV:NLI; H:TK5EX14HUBC107.redmond.corp.microsoft.com; RD:none; EFVD:NLI
X-SpamScore: -36
X-BigFish: VS-36(zz9371I542M1432I4015Izz1202hzz1033IL8275bh8275dh186M5eeeKz2fh2a8h668h839h944hd25hf0ah107ah)
Received-SPF: pass (mail9-co1: domain of microsoft.com designates 131.107.125.8 as permitted sender) client-ip=131.107.125.8; envelope-from=dthaler@microsoft.com; helo=TK5EX14HUBC107.redmond.corp.microsoft.com ; icrosoft.com ;
Received: from mail9-co1 (localhost.localdomain [127.0.0.1]) by mail9-co1 (MessageSwitch) id 1343435498517072_19423; Sat, 28 Jul 2012 00:31:38 +0000 (UTC)
Received: from CO1EHSMHS015.bigfish.com (unknown [10.243.78.237]) by mail9-co1.bigfish.com (Postfix) with ESMTP id 72A3E700059 for <pcp@ietf.org>; Sat, 28 Jul 2012 00:31:38 +0000 (UTC)
Received: from TK5EX14HUBC107.redmond.corp.microsoft.com (131.107.125.8) by CO1EHSMHS015.bigfish.com (10.243.66.25) with Microsoft SMTP Server (TLS) id 14.1.225.23; Sat, 28 Jul 2012 00:31:38 +0000
Received: from TK5EX14MLTW652.wingroup.windeploy.ntdev.microsoft.com (157.54.71.68) by TK5EX14HUBC107.redmond.corp.microsoft.com (157.54.80.67) with Microsoft SMTP Server (TLS) id 14.2.309.3; Sat, 28 Jul 2012 00:31:37 +0000
Received: from TK5EX14MBXW604.wingroup.windeploy.ntdev.microsoft.com ([169.254.4.170]) by TK5EX14MLTW652.wingroup.windeploy.ntdev.microsoft.com ([157.54.71.68]) with mapi id 14.02.0309.003; Fri, 27 Jul 2012 17:31:37 -0700
From: Dave Thaler <dthaler@microsoft.com>
To: "pcp@ietf.org" <pcp@ietf.org>
Thread-Topic: WG last call on draft-ietf-pcp-upnp-igd-interworking-01
Thread-Index: Ac1hMjoDlGipwl5IQFyJZsQqTYBRegLI1Vtw
Date: Sat, 28 Jul 2012 00:31:36 +0000
Message-ID: <9B57C850BB53634CACEC56EF4853FF653B726CBE@TK5EX14MBXW604.wingroup.windeploy.ntdev.microsoft.com>
References: <9B57C850BB53634CACEC56EF4853FF653B6EC46F@TK5EX14MBXW604.wingroup.windeploy.ntdev.microsoft.com>
In-Reply-To: <9B57C850BB53634CACEC56EF4853FF653B6EC46F@TK5EX14MBXW604.wingroup.windeploy.ntdev.microsoft.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [157.54.51.90]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
Subject: Re: [pcp] WG last call on draft-ietf-pcp-upnp-igd-interworking-01
X-BeenThere: pcp@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: PCP wg discussion list <pcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pcp>, <mailto:pcp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/pcp>
List-Post: <mailto:pcp@ietf.org>
List-Help: <mailto:pcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pcp>, <mailto:pcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 28 Jul 2012 00:31:41 -0000

A marked up version with my full comments is available at:
http://research.microsoft.com/~dthaler/draft-ietf-pcp-upnp-igd-interworking-01.pdf

A summary of the main non-editorial issues follows:

1) The UPnP IGD state variables and methods fall into two categories: those
relevant to port mapping, and those not relevant to port mapping.   Currently
some the latter are listed as "not applicable", some are omitted from the document,
and of those not omitted, I think some of the statements aren't correct.   Instead,
I think this doc should be scoped to only discussion of the first category and say
the rest are covered in [IGD2], without enumerating them.   And I think we should
also say that an IGD with the IWF MUST be compliant to [IGD2].   I believe that
will maximize the chance of interoperability with UPnP-IGD clients.

2) The doc currently assumes that there's only one ExternalIPAddress.   I don't
think that's as scalable, and it's certainly not required by the PCP protocol.
Instead, I think we should explicitly state that the ExternalIPAddress should be stored
on a per control-point basis, so that different control points could see different 
values.   Each value comes from the PCP responses for mappings for that control point.
This means that just because there's a collision in external port for some other
control point doesn't mean that adding a mapping will fail.   It would only fail
if that other control point used the same ExternalIPAddress as the requesting one.
If the requesting control point hadn't yet been assigned an ExternalIPAddress, then
the request should be relayed to the PCP server(s).    [See also my comment #10
on the pcp-dhcp draft.]    Section 11.3 of the pcp-base spec already has logic where
the server will accept a port MAP request even when one IP already has a mapping,
as long as it has another available external IP that can service the request.

3) It would be good to add a paragraph, say in the discussion of Figure 4 
(Cascaded NAT scenario), explaining that without the PCP IWF, the control point
would see an "ExternalIPAddress" and port of the WAN link between the IGD
and NAT2, not the public address/port on the Internet.   With the PCP IWF,
the control point will instead see the public address/port on the Internet.
It will no longer see the intermediate address/port between the IGD and
NAT2, even though it would be useful for communication with another
host  behind the same NAT2 but not behind the IGD.   Such learning is not
supported, and so it would be good to point that out.   This helps the reader
understand the point of the rest of the logic.

4) Renewals are mentioned in passing under the "PortMappingLeaseDuration"
state variable.   However the behavior is never specified.   This should be added
as a new section 5.10.

5) The assumption in UPnP-IGD is that GetSpecificPortMappingEntry() can not
return something that wouldn't be returned by GetGenericPortMappingEntry()
and GetListOfPortMappings().   Section 5.8 breaks that, without giving any justification.
That is, it says GetListOfPortMappings and GetGenericPortMappingEntry are
served locally, never relayed, but that GetSpecificPortMappingEntry can be
relayed when no mapping is found.   This is inconsistent.  I think it should be
handled locally as well, to retain consistency.   Yes that means you can't use
it to look up third party information about other IGDs.   And that's a good thing.

-Dave

> -----Original Message-----
> From: pcp-bounces@ietf.org [mailto:pcp-bounces@ietf.org] On Behalf Of Dave
> Thaler
> Sent: Friday, July 13, 2012 1:08 PM
> To: pcp@ietf.org
> Subject: [pcp] WG last call on draft-ietf-pcp-upnp-igd-interworking-01
> 
> From the IETF 83 minutes:
> > 1330-1340 UPnP-IGD Interworking Function             (Mohamed Boucadair, 10)
> >           Document: draft-ietf-pcp-upnp-igd-interworking-01
> >           Slides: http://www.ietf.org/proceedings/83/slides/slides-83-pcp-1.pdf
> >
> > Any objections to starting a WG Last Call on this?
> > Francis objected that the issue of an IGD client that asks for a lifetime
> >     longer than the PCP server is willing to grant can never be solved,
> >     and therefore the entire work item is futile.
> > Dave: This is an issue, but not an open issue.
> > Dave: will confer with Alain about whether to start WG Last Call.
> 
> The chairs have agreed to start a WG last call.   We've seen no additional
> discussion on this draft since last IETF, so this email initiates a last call on
> draft-ietf-pcp-upnp-igd-interworking-01.   This call will conclude in two
> weeks (Friday July 27th), just prior to IETF.   Hopefully that will allow
> for discussion of WGLC comments in Vancouver.
> 
> We need at least 5 reviewers.  Please send comments to the list.
> 
> Thanks,
> -Dave
> 
> 
> 
> 
> _______________________________________________
> pcp mailing list
> pcp@ietf.org
> https://www.ietf.org/mailman/listinfo/pcp