Re: [pcp] Comparison of PCP authentication

"Dan Wing" <dwing@cisco.com> Wed, 08 August 2012 17:02 UTC

Return-Path: <dwing@cisco.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 1061F21F8717 for <pcp@ietfa.amsl.com>; Wed, 8 Aug 2012 10:02:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.498
X-Spam-Level:
X-Spam-Status: No, score=-110.498 tagged_above=-999 required=5 tests=[AWL=0.101, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, 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 94ubJaM1f1s3 for <pcp@ietfa.amsl.com>; Wed, 8 Aug 2012 10:02:45 -0700 (PDT)
Received: from mtv-iport-2.cisco.com (mtv-iport-2.cisco.com [173.36.130.13]) by ietfa.amsl.com (Postfix) with ESMTP id D005C21F8712 for <pcp@ietf.org>; Wed, 8 Aug 2012 10:02:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=dwing@cisco.com; l=3804; q=dns/txt; s=iport; t=1344445366; x=1345654966; h=from:to:references:in-reply-to:subject:date:message-id: mime-version:content-transfer-encoding; bh=3h3WmSs+NAUL6DgrciGhOw7bJc8Ug8YV8kN3GdN3dr4=; b=Rxm0xha+zCJ0AyONBgC0zBlHdkeR026cL199P7vVKytjFzrTA4FQUlYX rTdOIkL7LsKAseAwYNpIniemQbCsEuHFyAw8ofW7qBM+BHZB084sD9e+h PuI18tI+h5OuKXC681gUgGG8TzmXKqaPvUn3kT+ABkM2HfEmcgSGBvLhs 0=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgkFAMeaIlCrRDoH/2dsb2JhbABFqhePRYEHgiABAQEDAQEBAQUKARQBAhA0EAcBAwIJDwIEAQEBJwcZDhUKCQgBAQQBEgsXh2UFDJsAjWOSVgSLEoZgA4hOhQyWGIFmgn+BNgc
X-IronPort-AV: E=Sophos;i="4.77,733,1336348800"; d="scan'208";a="54450819"
Received: from mtv-core-2.cisco.com ([171.68.58.7]) by mtv-iport-2.cisco.com with ESMTP; 08 Aug 2012 17:02:45 +0000
Received: from dwingWS (sjc-vpn4-1372.cisco.com [10.21.85.91]) by mtv-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id q78H2ihu009620; Wed, 8 Aug 2012 17:02:44 GMT
From: Dan Wing <dwing@cisco.com>
To: 'james woodyatt' <jhw@apple.com>, pcp@ietf.org
References: <9B57C850BB53634CACEC56EF4853FF653B6EC381@TK5EX14MBXW604.wingroup.windeploy.ntdev.microsoft.com> <7FE144CF-00E3-4451-8CBE-A6A684DB7CC4@yegin.org> <067d01cd73fd$765a6c50$630f44f0$@com> <D6D2DEED-C35A-45AB-8B72-96195C308DB9@yegin.org> <57FF0F8E-1B86-410F-8B6B-C4893A28222F@lilacglade.org> <BB72B80F-0622-4A5B-A985-79D8AED13E0B@apple.com>
In-Reply-To: <BB72B80F-0622-4A5B-A985-79D8AED13E0B@apple.com>
Date: Wed, 08 Aug 2012 10:02:44 -0700
Message-ID: <003b01cd7587$a111b760$e3352620$@com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: Ac10J67eOOhE5zD1Qz6jxkYshqojrwBXmD7w
Content-Language: en-us
Subject: Re: [pcp] Comparison of PCP authentication
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: Wed, 08 Aug 2012 17:02:47 -0000

> -----Original Message-----
> From: pcp-bounces@ietf.org [mailto:pcp-bounces@ietf.org] On Behalf Of
> james woodyatt
> Sent: Monday, August 06, 2012 4:03 PM
> To: pcp@ietf.org
> Subject: Re: [pcp] Comparison of PCP authentication
> 
> On Aug 6, 2012, at 13:02 , Margaret Wasserman <mrw@lilacglade.org>
> wrote:
> >
> > Do you know what existing PANA implementations will do if the
> "Reserved" field at the start of the packet is non-zero?
> 
> A related question might be what existing NAT-PMP implementations will
> do if they receive a message containing a PANA packet. 

That is important to consider.  However, the message flows I have seen
show:

  PCP client                           PCP server
      |                                    |    
1.    |------PCP MAP request-------------->|
2.    |<---error, need authentication------|
      |                                    |
3.    |-(several authentication messages)->|
4.    |<-(several authentication messages)-|

If the PCP client is really communicating with a NAT-PMP server, it
would look like this,

  PCP client                           NAT-PMP server
      |                                    |    
1.    |------PCP MAP request-------------->|
2.    |<---error, wrong version------------|
      |                                    |    
3.    |------NAT-PMP request-------------->|
4.    |<---ok------------------------------|
      |                                    |    

So, I think we are okay -- assuming we keep the idea that the PCP 
client tries to first send a PCP request (and not to first send
a PANA request).  

However, I do worry that implementations may optimize themselves
to send a PANA request first, which would cause the problem you
describe if they send the PANA request to a NAT-PMP server.  That
is, this would be a problem:

  PCP client                           NAT-PMP server
      |                                    |    
1.    |-------(authentication message)---->|
2.    |<--NAT-PMP error--------------------|
      |                                    | 

But the PCP client doesn't speak NAT-PMP, so there isn't a way
for it to handle that case, anyway (no matter if we had PCP
authentication or not).


In summary, I think we can skate around problems with talking
to a NAT-PMP server.

-d

  

> Assuming they
> comply with I-D.cheshire-nat-pmp-03, they will interpret the first two
> octets of a PANA message as an announcement request, and they will
> reply with the announcement response message shown below.
> 
>     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
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | Vers = 0      | OP = 128 + 0  | Result Code                   |
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | Seconds Since Start of Epoch                                  |
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | External IP Address (a.b.c.d)                                 |
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
> If a PCP server needs to implement NAT-PMP too, then it can easily
> distinguish a NAT-PMP announcement request from a PANA message, but one
> wonders if a PANA client expecting to authenticate to such a server can
> deal with replies from a NAT-PMP server that knows nothing about either
> PCP or NAT-PMP.
> 
> 
> --
> james woodyatt <jhw@apple.com>
> member of technical staff, core os networking
> 
> 
> 
> _______________________________________________
> pcp mailing list
> pcp@ietf.org
> https://www.ietf.org/mailman/listinfo/pcp