Subject: draft-ietf-ldapext-ldap-c-api-03 & timeout

From: Fan Jiao <[email-masked]>
Date: Tue, 28 Sep 1999 00:14:09 -0700

Hi,

In draft-ietf-ldapext-ldap-c-api-03, there is only

LDAP_OPT_TIMELIMIT defined for ldap search as an

LDAP option.

1. It is desirable to define a new timeout option

for ldap bind.

2. It may be desirable to define different timeout

mechanism. For example, exponential timeout is

useful for specifying bind timeout.

Comments?

---

From: Mark Wahl <[email-masked]>
Date: Tue, 28 Sep 1999 02:42:14 -0500

Do you mean as part of the ldap_result() call and the synchronous Bind calls
(e.g. ldap_sasl_bind_s), or as a control transmitted over protocol with the
requset?  

Also, I am not familiar with the term 'exponential timeout'; could you provide
an example, please? 

Mark Wahl, Directory Product Architect
Innosoft International, Inc.

---

From: Fan Jiao <[email-masked]>
Date: Tue, 28 Sep 1999 01:48:46 -0700

Mark,

See inlines.

> (e.g. ldap_sasl_bind_s), or as a control transmitted over protocol with the

At least the former - may be both.

> Also, I am not familiar with the term 'exponential timeout'; could you provide

A simple timeout has the same timeout intervals. For example, one might have
Retry=3, Timeout=3. Then if client fails to connect to Directory, it will wait for

3 secs and try again and so forth. The drawback is that the odds for a client to
get
connected to server is not usually very good in a congested network.

Exponential timeout uses different timeout intervals which are calculated by an
exponential function. One would define it using integers, Seed,
Limit, and Retry. For example, S=3, L=60, R=3, a client would wait for 3 secs
to try to connect first. If it fails, it would wait for say 12 secs, then may be
56 secs.
One would also define the meaning of Retry = 0 - try as many time as it can as
long
as calculated interval doesn't exceed the Limit.

By using such timeout mechanism with ldap bind/ldap result API, some higher level
APIs which are easy-to-use can be easily designed, for example.

---

From: [email-masked] (Mark C Smith)
Date: Tue, 28 Sep 1999 08:12:16 -0700

The timeout mechanism provided in the C API draft is very simple.  While
I agree that more complex and full featured timeouts are desirable,
applications are able to implement those themselves on top of the
defined ldap_result() interface.  Therefore, I suggest we defer this
feature for now but revive it as an API extension if there is enough
interest.

-- 
Mark Smith
iPlanet Directory Architect / Sun-Netscape Alliance
My words are my own, not my employer's.   Got LDAP?