Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194] helo=mx.sourceforge.net) by sfs-ml-2.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1SIR1g-0000uS-5a for bitcoin-development@lists.sourceforge.net; Thu, 12 Apr 2012 20:53:56 +0000 Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of gmail.com designates 209.85.214.175 as permitted sender) client-ip=209.85.214.175; envelope-from=sirk390@gmail.com; helo=mail-ob0-f175.google.com; Received: from mail-ob0-f175.google.com ([209.85.214.175]) by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-MD5:128) (Exim 4.76) id 1SIR1f-0002kn-HJ for bitcoin-development@lists.sourceforge.net; Thu, 12 Apr 2012 20:53:56 +0000 Received: by obbuo13 with SMTP id uo13so4297988obb.34 for ; Thu, 12 Apr 2012 13:53:50 -0700 (PDT) Received: by 10.182.51.73 with SMTP id i9mr5171355obo.17.1334264029907; Thu, 12 Apr 2012 13:53:49 -0700 (PDT) MIME-Version: 1.0 Received: by 10.182.13.103 with HTTP; Thu, 12 Apr 2012 13:53:28 -0700 (PDT) In-Reply-To: <1334251458.43194.YahooMailNeo@web121005.mail.ne1.yahoo.com> References: <1334251458.43194.YahooMailNeo@web121005.mail.ne1.yahoo.com> From: Christian Bodt Date: Thu, 12 Apr 2012 22:53:28 +0200 Message-ID: To: bitcoin-development@lists.sourceforge.net Content-Type: multipart/alternative; boundary=f46d044470db8a0b5604bd818d05 X-Spam-Score: -0.3 (/) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (sirk390[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in digit (sirk390[at]gmail.com) 1.0 HTML_MESSAGE BODY: HTML included in message -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1SIR1f-0002kn-HJ Subject: Re: [Bitcoin-development] Adding request/reply id in messages X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list Reply-To: sirk390@gmail.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Apr 2012 20:53:56 -0000 --f46d044470db8a0b5604bd818d05 Content-Type: text/plain; charset=UTF-8 On Thu, Apr 12, 2012 at 7:24 PM, Amir Taaki wrote: > Jeff elaborated the problems very well, but I just want to add this: > > Your change is essentially relying (trusting) the server to track a piece > of information (your state). No, it is more about distinguishing between replies (multiple asynchroneous request) and spontaneous notifications of the other peer. Every state would still be tracked locally on the client side. I don't understand why you say my proposal would make the protocol more stateful. I think it doesn't. Each reply is only the result of the current request only, and there is no new session information. As you see in my implementation, there is not even a new variable. Request/reply id is a very robust pattern that is compatible with stateless protocols. Indead, this change doesn't directly improve on peer that don't answer requests: it only enables to do so easily in a secondary step. This step can only be done when all peers on the network are running the modified code. --f46d044470db8a0b5604bd818d05 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On Thu, Apr 12, 2012 at 7:24 PM, Amir Taaki <zg= enjix@yahoo.com> wrote:
Jeff elaborated the problems very well, but I just want to add this:

Your change is essentially relying (trusting) the server to track a piece o= f information (your state).
=C2=A0
No, it is mor= e about distinguishing between replies (multiple asynchroneous request) and= spontaneous notifications of the other peer.
Every state would still be tracked locally on the client side.

I don't understand why you say my proposal would make= the protocol more stateful. I think it doesn't.
Each reply is only =C2=A0the result of the current request=C2=A0only, = and there is no new session information.
As you see in my impleme= ntation, there is not even a new variable.
Request/reply id = is a very=C2=A0robust pattern that is compatible with stateless protocols.= =C2=A0

Indead, this change doesn't directly improve = on peer that don't answer requests: it only enables to do so easily in = a secondary step. This step can only be done when all peers on the network = are running the modified code.



--f46d044470db8a0b5604bd818d05--