SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


    [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

    Re: Command Queue Depth (was asymmetric/Symmetric)



    Jim,
    
    I agree that FC has tried (unsuccessfully) to address this command queue
    allocation problem.
    
    However, the "login bb credit" mechanism in FC does not address the command
    queue depth issue at all.  BB credit is used to receive commands and/or data,
    and the target has no clue in advance what is coming.  BB credit is just there
    to ensure that there is a lowest layer buffer available to receive the FC frame
    (as opposed to dropping it on the floor if there is no "mac" buffer, like
    ethernet does).  It does not mean the command queue has any room for the frame.
    
    At one time, there was a big push to have "data" credits and "command" credits
    to take care of this problem, but it couldn't be made to work and be "backwards
    compatible".
    
    
    > The issue of buffer space allocation for multiple initiators has a long and
    > troubled history in SCSI.  We have never been able to come up with a good
    > answer.
    >
    > Fibre Channel tried to fix this with the notion of "login BB credit" - when
    > you login you get a minimum number of credits you are always guaranteed when
    > you start data transfers.  The problem with this is that storage devices had
    > no realistic ability to discriminate between initiators or to change the
    > login BB credit.  In addition, the expectation is that all possible
    > initiators would get these credits on login.  So storage devices vendors
    > have played it safe and kept this number low (at 0 until recently, now
    > around 2).  For iSCSI the number of initial credits you need to "prime the
    > pump" until normal data flow is established is probably large (given the
    > latencies are higher than in Fibre Channel, especially FC-AL), and the
    
    How is the latency low on FC-AL?? given that you need to arbitrate and win the
    loop, then receive bb credit, before you can send anything?
    
    -Matt
    
    >
    > number of potential initiators larger than in Fibre Channel, making this a
    > whole lot worse for the storage device.
    >
    > As soon as we allow the devices to start adjusting these credits, then you
    > have the protocol problem of making sure people know when their credits are
    > adjusted and the policy problem of how, who, and when to adjust the credits.
    > Changing everyone's credit when you add a new initiator can get into a
    > notification nightmare, although it is "fair."  Any policy brings up all
    > sorts of nasty issues regarding fairness vs efficient use of the
    > transmission media.
    >
    > Jim
    >
    > Note: the same problem has plagued other attempts to allocate device
    > resources between multiple initiators, like command queue space.  In general
    > policies with respect to multiple initiators are not really standard in the
    > SCSI world.
    >
    > -----Original Message-----
    > From: Matt Wakeley [mailto:matt_wakeley@agilent.com]
    > Sent: Wednesday, September 06, 2000 2:56 PM
    > To: ips
    > Subject: Re: Command Queue Depth (was asymmetric/Symmetric)
    >
    > Joshua Tseng wrote:
    >
    > > James,
    > >
    > > I agree with others that there may be an issue with the
    > > command windowing mechanism in the existing iSCSI spec.  It is like
    > > "TCP in reverse", in that the target determines the size of the window,
    > and
    > > not the initiator as in TCP.  Rather, I believe that everything that this
    > > windowing mechanism is attempting to achieve can be more easily obtained
    > > by having the target communicate its buffer size to the initiator at
    > > iSCSI login.  It should be the role of the initiator to determine how
    > > many commands to put in flight simultaneously, given this input on
    > available
    > > buffer size from the target.
    >
    > As more initiators connect to a target, it may need to scale back the amount
    > of
    > this buffering it has allocated to each previously logged in initiator (to
    > prevent rejecting new logins).
    >
    > >
    > >
    > > As far as multiple initiators, could this not be resolved by the target
    > > refusing additional logins beyond the number of initiators it can safely
    > > support?  Not being a storage expert, this is my best guess/suggestion
    > > at how to do it.
    >
    > I believe John already answered this...
    >
    > -Matt
    
    


Home

Last updated: Tue Sep 04 01:07:31 2001
6315 messages in chronological order