Re: [pcp] How can I make a ~stateless forwarding PCP proxy again?

<mohamed.boucadair@orange.com> Tue, 06 May 2014 09:48 UTC

Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: pcp@ietfa.amsl.com
Delivered-To: pcp@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2C4CB1A028C for <pcp@ietfa.amsl.com>; Tue, 6 May 2014 02:48:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.549
X-Spam-Level:
X-Spam-Status: No, score=-1.549 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, HELO_EQ_FR=0.35, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SXss22vo069a for <pcp@ietfa.amsl.com>; Tue, 6 May 2014 02:48:19 -0700 (PDT)
Received: from relais-inet.francetelecom.com (relais-ias244.francetelecom.com [80.12.204.244]) by ietfa.amsl.com (Postfix) with ESMTP id C5F101A0173 for <pcp@ietf.org>; Tue, 6 May 2014 02:48:18 -0700 (PDT)
Received: from omfeda05.si.francetelecom.fr (unknown [xx.xx.xx.198]) by omfeda13.si.francetelecom.fr (ESMTP service) with ESMTP id 816A41901EB; Tue, 6 May 2014 11:48:14 +0200 (CEST)
Received: from PUEXCH81.nanterre.francetelecom.fr (unknown [10.101.44.34]) by omfeda05.si.francetelecom.fr (ESMTP service) with ESMTP id 31DCB18006E; Tue, 6 May 2014 11:48:14 +0200 (CEST)
Received: from PUEXCB1B.nanterre.francetelecom.fr ([10.101.44.13]) by PUEXCH81.nanterre.francetelecom.fr ([10.101.44.34]) with mapi; Tue, 6 May 2014 11:48:14 +0200
From: mohamed.boucadair@orange.com
To: Markus Stenberg <markus.stenberg@iki.fi>, "Reinaldo Penno (repenno)" <repenno@cisco.com>
Date: Tue, 06 May 2014 11:48:08 +0200
Thread-Topic: [pcp] How can I make a ~stateless forwarding PCP proxy again?
Thread-Index: Ac9onrxoLkBQKfPtSjiPpU5yew2H6QAcP7eg
Message-ID: <94C682931C08B048B7A8645303FDC9F36F5B63D4ED@PUEXCB1B.nanterre.francetelecom.fr>
References: <FDB45976-B7A3-4C59-B2D1-C01982D0205F@iki.fi> <45A697A8FFD7CF48BCF2BE7E106F06040B8C957D@xmb-rcd-x04.cisco.com> <2B975F36-4E46-4D93-891B-DB4E480FF190@iki.fi>
In-Reply-To: <2B975F36-4E46-4D93-891B-DB4E480FF190@iki.fi>
Accept-Language: fr-FR
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: fr-FR
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-PMX-Version: 6.0.3.2322014, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2014.5.5.221820
Archived-At: http://mailarchive.ietf.org/arch/msg/pcp/tr8XI__GealaCOkqqhUhVqLxIbk
Cc: "pcp@ietf.org" <pcp@ietf.org>
Subject: Re: [pcp] How can I make a ~stateless forwarding PCP proxy again?
X-BeenThere: pcp@ietf.org
X-Mailman-Version: 2.1.15
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: Tue, 06 May 2014 09:48:20 -0000

Hi Markus,

It seems that your design is close to what is documented in http://tools.ietf.org/html/draft-ietf-pcp-proxy-04#section-8, no?

FWIW, the heaviness of the b2b model was raised in slide 6 of http://tools.ietf.org/agenda/89/slides/slides-89-pcp-4.pdf but I don't know what was the outcome of that discussion.

Cheers,
Med

>-----Message d'origine-----
>De : pcp [mailto:pcp-bounces@ietf.org] De la part de Markus Stenberg
>Envoyé : lundi 5 mai 2014 22:15
>À : Reinaldo Penno (repenno)
>Cc : pcp@ietf.org
>Objet : Re: [pcp] How can I make a ~stateless forwarding PCP proxy again?
>
>On 5.5.2014, at 21.41, Reinaldo Penno (repenno) <repenno@cisco.com> wrote:
>> we had this discussion in the past but and I, for one, backed the idea of
>PCP being able to support stateless proxies.  So, you are not alone there
>but maybe you want to write a draft about it so the WG can discuss it.
>
>
>Nods. Personally I like to minimize the amount of state in a system, so I'm
>a fan of stateless designs. My current design for a proxy has just 3
>logical pieces of 'state' per supported remote server:
>
>- (client) source prefix + prefix length to match
>- address of the server
>- server epoch + when was it received
>
>And currently I'm trying to make sure it's actually doable to do all I want
>with just that and few hundred lines of C. After looking at how big PCP
>client libraries are, last thing I want is really PCP client glued to PCP
>server.
>
>Getting back to my previous question, now that I think of it, actually, the
>IP address of the client is in the THIRD_PARTY option. Only thing that
>isn't explicitly stored somewhere is the address client contacts the proxy
>on (it probably has 1-N addresses per M interfaces). If proxy uses same
>source address for talking with server as client used to contact it (with
>different port, obviously), it should work fine, without per-client or per-
>request state.
>
>e.g.
>
>C -> P [IntIP=C]
>P -> S [IntIP=P, TP=C]
>S -> P [TP=C]
>P -> C [no TP]
>
>Beyond that, some ANNOUNCE handling is needed, but as long as you stick to
>multicast, that can be also stateless. (Connected clients know if they have
>state with the particular proxy that spams ANNOUNCEs.)
>
>Perhaps I'll write up about it somewhere (pcp or homenet), although it's
>more of an implementation detail draft, than actual protocol change
>requiring one.
>
>Cheers,
>
>-Markus
>
>P.S. This scheme works fine with IPv4. With IPv6, it may have issues, when
>C contacts P using link-local address and I don't think there is anything
>preventing that. P is probably unable to contact S using that. Oh well. I
>guess doing other IPv6 scopes would work, and falling back to IPv4 if
>client doesn't do DHCP*/RA/something else option to learn the IPv6 GUA/ULA
>of the proxy on first hop.
>
>
>_______________________________________________
>pcp mailing list
>pcp@ietf.org
>https://www.ietf.org/mailman/listinfo/pcp