Return-Path: <owner-ips-outgoing@ece.cmu.edu>
Received: from newbox.ece.cmu.edu (localhost [127.0.0.1])
	by newbox.ece.cmu.edu (Cyrus v2.1.12) with LMTP; Sun, 27 Jul 2003 16:57:24 -0400
X-Sieve: CMU Sieve 2.2
Received: from bache.ece.cmu.edu (BACHE.ECE.CMU.EDU [128.2.129.23])
	by newbox.ece.cmu.edu (Postfix) with ESMTP id 873DB317E
	for <ipsml@ece.cmu.edu>; Sun, 27 Jul 2003 16:57:24 -0400 (EDT)
Received: by bache.ece.cmu.edu (Postfix, from userid 953)
	id 5AC5E92; Sun, 27 Jul 2003 16:57:24 -0400 (EDT)
Received: from sos.ece.cmu.edu (SOS.ECE.CMU.EDU [128.2.129.27])
	by bache.ece.cmu.edu (Postfix) with ESMTP
	id 4C73A86; Sun, 27 Jul 2003 16:57:14 -0400 (EDT)
Received: by sos.ece.cmu.edu (Postfix)
	id 6AA7789F6; Sun, 27 Jul 2003 16:56:57 -0400 (EDT)
Delivered-To: ips-outgoing@sos.ece.cmu.edu
Received: from bache.ece.cmu.edu (BACHE.ECE.CMU.EDU [128.2.129.23])
	by sos.ece.cmu.edu (Postfix) with ESMTP id 5415489F4
	for <ips-outgoing@sos.ece.cmu.edu>; Sun, 27 Jul 2003 16:56:57 -0400 (EDT)
Received: by bache.ece.cmu.edu (Postfix)
	id 3853133; Sun, 27 Jul 2003 16:56:57 -0400 (EDT)
Delivered-To: ips-outgoing@ece.cmu.edu
Received: by bache.ece.cmu.edu (Postfix, from userid 953)
	id 09DA283; Sun, 27 Jul 2003 16:56:56 -0400 (EDT)
Received: from sos.ece.cmu.edu (SOS.ECE.CMU.EDU [128.2.129.27])
	by bache.ece.cmu.edu (Postfix) with ESMTP id 6812333
	for <ips-outgoing@ece.cmu.edu>; Sun, 27 Jul 2003 16:56:53 -0400 (EDT)
Received: by sos.ece.cmu.edu (Postfix, from userid 363)
	id 5411389F8; Sun, 27 Jul 2003 16:56:53 -0400 (EDT)
X-Original-To: ips@sos.ece.cmu.edu
Delivered-To: ips@sos.ece.cmu.edu
Received: from hazard.ece.cmu.edu (HAZARD.ECE.CMU.EDU [128.2.129.24])
	by sos.ece.cmu.edu (Postfix) with ESMTP id 8B31589F4
	for <ips@sos.ece.cmu.edu>; Sun, 27 Jul 2003 16:56:51 -0400 (EDT)
Received: by hazard.ece.cmu.edu (Postfix)
	id 6F17E103; Sun, 27 Jul 2003 16:56:51 -0400 (EDT)
Delivered-To: ips@ece.cmu.edu
Received: by hazard.ece.cmu.edu (Postfix, from userid 953)
	id 4B92310D; Sun, 27 Jul 2003 16:56:51 -0400 (EDT)
Received: from thebe.your-site.com (thebe.your-site.com [140.186.45.26])
	by hazard.ece.cmu.edu (Postfix) with ESMTP id C27E1103
	for <ips@ece.cmu.edu>; Sun, 27 Jul 2003 16:56:47 -0400 (EDT)
Received: from asomi.com (64-144-5-25.client.dsl.net [64.144.5.25])
	by thebe.your-site.com (Postfix) with ESMTP
	id 597C5245170; Sun, 27 Jul 2003 16:36:29 -0400 (EDT)
Date: Sun, 27 Jul 2003 15:36:18 -0500
Subject: Re: iSCSI/iWARP drafts and flow control
Content-Type: text/plain; charset=US-ASCII; format=flowed
Mime-Version: 1.0 (Apple Message framework v552)
Cc: ips@ece.cmu.edu
To: Mike Ko <mako@almaden.ibm.com>
From: Caitlin Bestler <cait@asomi.com>
In-Reply-To: <OFB8543DEB.DFE9E2A9-ON87256D70.0066CD15@us.ibm.com>
Message-Id: <F9E47EEF-C071-11D7-902E-003065D48EE0@asomi.com>
Content-Transfer-Encoding: 7bit
X-Mailer: Apple Mail (2.552)
Sender: owner-ips@ece.cmu.edu
Precedence: bulk
X-Spam-Status: No, hits=-29.1 required=5.0
	tests=BAYES_01,EMAIL_ATTRIBUTION,IN_REP_TO,QUOTED_EMAIL_TEXT,
	      REPLY_WITH_QUOTES,USER_AGENT_APPLEMAIL
	version=2.50
X-Spam-Level: 
X-Spam-Checker-Version: SpamAssassin 2.50 (1.173-2003-02-20-exp)


On Sunday, July 27, 2003, at 02:21 PM, Mike Ko wrote:

> From sec.3.5.2.1 of the iSCSI spec, "Asychronoous Messages are used to
> carry SCSI asyncrhonous events (AEN) and iSCSI asynchronous messages."
> Sec.10.9.1 lists the codes for Asyncrhonous Messages which include 0) 
> SCSI
> Asynchronous Event, 1) target requests Logout, 2) target indicates it 
> will
> drop the connection, 3) target indicates it will drop all connections 
> of
> this session, and 4) target requests parameter negotiation.  Since the
> iSER layer can estimate the number of Asynchronous Messages needed in a
> typical situation for the AsyncEvent codes listed in the iSCSI spec, it
> can determine how much to overprovision when a dedicated receive queue 
> is
> used.  Additionally, if one is concerned about the atypical case, the
> optional features of graceful handling and the shared receive queue as 
> you
> have pointed out can be used.  So it doesn't seem to me that flow 
> control
> for Asynchronous Messages are needed.  Can you provide an example 
> where an
> unbounded number of Asynchronous Messages would need to be sent?

If it is so easy to bound the number of Asynchronous Messages without
specific knowledge of your peer, why not simply state that limit in
the iSER spec?

If you cannot agree on that limit for a spec, how are two peers supposed
to do so in the wild?

iWARP ULPs are required to take responsibility for flow control That 
means
the Data Sink must know how many untagged messages are allowed to have
in flight. Period. It does not mean that there has to be that many
buffers pre-committed.  Just that there is an agreed upon limit.

There is already an agreed-upon limit for 99.99% of the traffic, 
untagged
messages that have CmdSNs. It is almost silly to reduce the protocol 
from
being truly reliable to being statistically reliable for exceptions.

Setting limits on most of the types listed is so easy that there is no
need to negotiate the limit. It would be absurd to have two "I will drop
this connection" messages in flight on the same reliable connection.

That leaves the Asynchronous Events. As that these are dependent on the
type of target it would seem to be a bit more difficult to meaningfully
state a maximum number of in-flight messages that a future device might
need to generate. So you have to include an "in-flight" limit during 
setup,
and then you need to a way to know when the message is no longer 
"in-flight".
The obvious solution is a response to a *later* command.

