Re: CLDAP issues

Simon E Spero <ses@tipper.oit.unc.edu> Mon, 13 December 1993 06:06 UTC

Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa18881; 13 Dec 93 1:06 EST
Received: from CNRI.RESTON.VA.US by IETF.CNRI.Reston.VA.US id aa18873; 13 Dec 93 1:06 EST
Received: from haig.cs.ucl.ac.uk by CNRI.Reston.VA.US id ad05839; 13 Dec 93 1:06 EST
Received: from bells.cs.ucl.ac.uk by haig.cs.ucl.ac.uk with local SMTP id <g.02253-0@haig.cs.ucl.ac.uk>; Sun, 12 Dec 1993 17:09:30 +0000
Received: from tipper.oit.unc.edu by bells.cs.ucl.ac.uk with Internet SMTP id <g.09781-0@bells.cs.ucl.ac.uk>; Sun, 12 Dec 1993 17:08:54 +0000
Received: from localhost.oit.unc.edu by tipper.oit.unc.edu (SMI4.1/FvK 1.02) id AA00869; Sun, 12 Dec 93 12:06:15 EST
Message-Id: <9312121706.AA00869@tipper.oit.unc.edu>
To: Alan Young <Alan.Young@calibre.ch>
Cc: ldap@umich.edu, osi-ds@cs.ucl.ac.uk
Subject: Re: CLDAP issues
In-Reply-To: Your message of "Sun, 12 Dec 93 11:38:12 +0100." <6434.755692692@calibre.ch>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Sun, 12 Dec 93 12:06:10 -0500
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: Simon E Spero <ses@tipper.oit.unc.edu>

I don't think I've explained myself very well; maybe an example will 
clarify  where I think the problem is.

We'll construct a hypothetical query 'Q' which has 3 matches; 'r1' 'r2' 'r3'.
At the message level, the transaction looks like this. We'll use message-id
101.

Origin				Target
------				------

{101,Q}   --------------------->
	  <--------------------- (101,r1)
	  <--------------------- (101,r2)
	  <--------------------- (101,r3)
	  <--------------------- (101,ok)

However, we're using an unreliable transport protocol; if we allow different
messages to be carried in different transport data units, then messages can be
lost, duplicated or delivered out of sequence. Here's a few examples of what
can go wrong:

1) Out of order message delivery. 

Origin				Target
------				------

{101,Q}   --------------------->
	  <--------------------- (101,ok)
	  <--------------------- (101,r1)
	  <--------------------- (101,r2)
	  <--------------------- (101,r3)

The 'ok' message  which marks the last search response appears before the first
search response. To the client it appears that no matches were 
found. 

2) Lost messages.

Origin				Target
------				------

{101,Q}   --------------------->
	  <--------------------- (101,r3)
	  <--------------------- (101,ok)

r1 and r2 are lost; only r3 is present. The client sees only one match, and 
can't detect the loss of the packets. 


Does this make things any clearer? I can't see any way around the problem
without either extending the protocol or requiring all responses to a given
request be sent in a single TPDU. 

Simon