Re: KITTEN: IETF 75 - 76

Michael B Allen <miallen@ioplex.com> Wed, 02 September 2009 09:17 UTC

Return-Path: <miallen@ioplex.com>
X-Original-To: kitten@core3.amsl.com
Delivered-To: kitten@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 817463A6817 for <kitten@core3.amsl.com>; Wed, 2 Sep 2009 02:17:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.916
X-Spam-Level:
X-Spam-Status: No, score=-1.916 tagged_above=-999 required=5 tests=[AWL=0.383, BAYES_00=-2.599, MIME_8BIT_HEADER=0.3]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id def46w5zt43Q for <kitten@core3.amsl.com>; Wed, 2 Sep 2009 02:17:16 -0700 (PDT)
Received: from mail.ioplex.com (li31-113.members.linode.com [207.192.69.113]) by core3.amsl.com (Postfix) with ESMTP id 9B2E43A680E for <kitten@ietf.org>; Wed, 2 Sep 2009 02:17:16 -0700 (PDT)
Received: from proton.foo.net (pool-71-187-189-103.nwrknj.fios.verizon.net [71.187.189.103]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: miallen) by mail.ioplex.com (Postfix) with ESMTP id 1D185411DC; Wed, 2 Sep 2009 03:10:05 -0400 (EDT)
Date: Wed, 02 Sep 2009 03:10:04 -0400
From: Michael B Allen <miallen@ioplex.com>
To: Love Hörnquist Åstrand <lha@kth.se>
Subject: Re: KITTEN: IETF 75 - 76
Message-Id: <20090902031004.0ea2f93c.miallen@ioplex.com>
In-Reply-To: <E0684D5D-5177-45F9-9AFC-5A780BF31220@kth.se>
References: <4A87A69A.3050408@sun.com> <4A87E02D.7030503@isode.com> <200908180013.29152.leifj@mnt.se> <20090901131202.137bdd90.miallen@ioplex.com> <20090901173110.GL1033@Sun.COM> <396484EF-9812-40CE-9221-F1A1319FD10B@kth.se> <20090901181307.fe1d4efa.miallen@ioplex.com> <98F14484-1B48-45A1-86E7-5E78383F5109@kth.se> <20090901214059.17a309e6.miallen@ioplex.com> <E0684D5D-5177-45F9-9AFC-5A780BF31220@kth.se>
Organization: IOPLEX Software
X-Mailer: Sylpheed 2.6.0 (GTK+ 2.12.12; i386-redhat-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Cc: "kitten@ietf.org" <kitten@ietf.org>, Nicolas Williams <Nicolas.Williams@sun.com>
X-BeenThere: kitten@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Common Authentication Technologies - Next Generation <kitten.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/kitten>, <mailto:kitten-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/kitten>
List-Post: <mailto:kitten@ietf.org>
List-Help: <mailto:kitten-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/kitten>, <mailto:kitten-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 02 Sep 2009 09:17:17 -0000

On Tue, 1 Sep 2009 22:21:57 -0700
Love Hörnquist Åstrand <lha@kth.se> wrote:

> 
> 1 sep 2009 kl. 18:40 skrev Michael B Allen:
> 
> > But the caller now knows that the function needs to be called again  
> > to complete the operation.
> 
> so consumer got to poll the library, that is no got from the  
> performance view.

Actually now that I think about it I only use the NOWAIT flag technique for client oriented routines. For example, if you wanted to perform 10 HTTP requests in parallel, you could use the NOWAIT flag to initiate the requests and then not use NOWAIT when collecting the responses.

If someone wanted to use async for an event loop (a single thread / process handling an arbitrary number of contexts concurrently) then the NOWAIT flag technique by itself would indeed require polling and would be inefficient.

However, if the caller had access to the underlying polling routine (like through a "gss_process_events" function that called select or whatever), then the caller could know if the status of *any* operation had changed and thus polling would not be required. The benefit of doing this would be that a single thread / process could be used to do everything.

Mike

-- 
Michael B Allen
Java Active Directory Integration
http://www.ioplex.com/