Re: [regext] Comments to the feedback about epp-over-http

Mario Loffredo <mario.loffredo@iit.cnr.it> Thu, 31 March 2022 15:38 UTC

Return-Path: <mario.loffredo@iit.cnr.it>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 17F5D3A0CCF for <regext@ietfa.amsl.com>; Thu, 31 Mar 2022 08:38:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=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 fZMKNRc6bTWl for <regext@ietfa.amsl.com>; Thu, 31 Mar 2022 08:38:41 -0700 (PDT)
Received: from smtp.iit.cnr.it (mx4.iit.cnr.it [146.48.58.11]) by ietfa.amsl.com (Postfix) with ESMTP id C8A403A0D52 for <regext@ietf.org>; Thu, 31 Mar 2022 08:38:07 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by smtp.iit.cnr.it (Postfix) with ESMTP id C43C9B80749; Thu, 31 Mar 2022 17:38:04 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at mx4.iit.cnr.it
Received: from smtp.iit.cnr.it ([127.0.0.1]) by localhost (mx4.iit.cnr.it [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kzRQZhvOuCm2; Thu, 31 Mar 2022 17:38:01 +0200 (CEST)
Received: from [192.12.193.108] (pc-loffredo.staff.nic.it [192.12.193.108]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by smtp.iit.cnr.it (Postfix) with ESMTPSA id E1B1DB80510; Thu, 31 Mar 2022 17:38:01 +0200 (CEST)
Message-ID: <759658bd-4781-a9cb-b7dd-88ba596fe2b0@iit.cnr.it>
Date: Thu, 31 Mar 2022 17:36:06 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0
To: "Thomas Corte (TANGO support)" <Thomas.Corte@knipp.de>, regext@ietf.org
Cc: support@tango-rs.com
References: <0843A6FD-79B8-45B9-BE58-0BCED21C19B0@verisign.com> <1b87995b-700b-0d16-1241-c69cf142c3f7@iit.cnr.it> <8346151e-acc1-8e9a-f8ce-ac4d2f6a8dac@knipp.de>
From: Mario Loffredo <mario.loffredo@iit.cnr.it>
In-Reply-To: <8346151e-acc1-8e9a-f8ce-ac4d2f6a8dac@knipp.de>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/GvGOTwEuQsCLN7QLXwYUAwtqfXE>
Subject: Re: [regext] Comments to the feedback about epp-over-http
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>, <mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>, <mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 31 Mar 2022 15:38:47 -0000

Hi Thomas,

thanks a lot for your interest as well as your attempt to mediate 
between James's position and mine. Very appreciated :-)

Starting an HTTP session when receiving an EPP command other than the 
Login command is in .it experience (but I can speak on behalf of .pl 
too) very inefficient because you can't immediately lock the HTTP 
session to the Registrar.

It also has some implications on security : to start a session on a 
server, in one case you need only an allowed IP address; in the other, 
you need an allowed IP address, valid credentials and you shouldn't 
exceed the limits of EPP sessions per Registrar.

In addition, while TCP client needs to establish a connection before 
sending the EPP Login command since the transport protocol is 
connection-oriented, an HTTP client doesn't need to do because the 
protocol is not connection-oriented (even if it uses connections). So 
why should an HTTP client be required to send a useless HTTP request? 
Just to operate in the same way of EPP over TCP? It's a nonsense.

With regard to the compliance with RFC5730, the only difference with the 
proposed approach is that a client MAY send an Hello via POST before 
sending a Login. Anyway, the EPP session starts after a successful Login 
as defined in RFC5730 itself.

Is this approach less compliant to RFC5730 than James's one? Maybe. For 
sure it's more efficient (at least both in .it and .pl contexts)


Best,

Mario


Il 31/03/2022 14:36, Thomas Corte (TANGO support) ha scritto:
> Hello Mario,
>
> On 3/31/22 13:52, Mario Loffredo wrote:
>
>> Hi James,
>>
>> For what I have understood, your implementation is based on the 
>> assumption that once the HTTP Connection is established, it is used 
>> for the transit of all the HTTP requests of an EPP session, starting 
>> from the Login and ending with the Logout.
>>
>> Consequently, you rely on keeping the HTTP connection alive as long 
>> as the EPP session works. Correct?
>>
>> If so, in my opinion, that is a wrong assumption.
>>
>> Clients should not be forced to keep alive the HTTP connections if 
>> HTTP allows to maintain HTTP sessions alive across a sequence of 
>> HTTP  connections.
>> ...
>
> I might be wrong (it was hard to follow the entire discussion, mostly 
> due to the lack of consistent e-mail quoting in the thread), but I 
> don't think there really any disagreement here between James and you.
>
> As James speaks of HTTP Session Cookies in many places, I don't think 
> he's suggesting that the connection management should be required to 
> make use of any HTTP keepalive features. Instead, I think that you're 
> both agreeing that the EPP "session" over HTTP is simply managed by an 
> initial cookie given to the client, which he'll need to send along 
> with any subsequent request to indicate that it belong to the same 
> session. This also means that, unlike with TCP, an EPP session over 
> HTTP can indeed survice a server restart, as long as the server can 
> retrieve sessions from permanent storage after its restart.
>
> I think the only point of contention here is when exactly the cookie 
> is supposed to be returned by the server, namely
>
> a) at the time the very first request without a session cookie is 
> received (i.e., when the EPP client sends a <hello>?) OR
> b) only after the first <login> command is received with correct 
> credentials
>
> My preference would be a) as it more closely resembles the TCP 
> transport (where the connection itself is established before the first 
> valid <login>).
>
> Best regards,
>
> Thomas
>
-- 
Dr. Mario Loffredo
Technological Unit “Digital Innovation”
Institute of Informatics and Telematics (IIT)
National Research Council (CNR)
via G. Moruzzi 1, I-56124 PISA, Italy
Phone: +39.0503153497
Web: http://www.iit.cnr.it/mario.loffredo