SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    RE: iSCSI: keys/parameter dependence



    My comments are inserted with my initials. Pat
    
    -----Original Message-----
    From: Robert D. Russell [mailto:rdr@io.iol.unh.edu]
    Sent: Sunday, June 02, 2002 12:10 PM
    To: ips@ece.cmu.edu
    Subject: Re: iSCSI: keys/parameter dependence
    
    <snip>
    However, there ARE dependencies between operational
    parameters that cannot be ignored, such as the one Mike mentioned
    -- FirstBurstSize and MaxBurstSize are dependent because of the
    requirement in section 11.15: "FirstBurstSize MUST NOT exceed
    MaxBurstSize."  See my e-mail response to Mike for details
    on that dependence.  I am also sending a following e-mail
    that details 3 other dependencies.
    
    <PAT> This is an excellent example of why it is necessary 
    to state explicitly where (if anywhere) one is required
    to send parameters in a specific order. Requiring that
    x not exceed y is equivalent to requiring y to be greater
    than or equal to x. It doesn't imply the order. In any case, 
    as long as each side independently ensures that the maximum 
    value it will accept for FirstBurstSize does not exceed
    the maximum value it will accept for MaxBurstSize, it doesn't
    matter which is negotiated first. The relationship between
    these two values does not imply an order and if we want to
    force an order it will need to be done explicitly.
    
    <snip>
    > But what's really dangerous here is that an
    > implementation that perceives some parameters
    > as dependent may take the "might imply" text
    > as an endorsement for sending back less key=value
    > pairs than was received, which could make the
    > other side never commit due to missing responses.
    > We certainly don't want to allow for such a
    > non-interoperability in the specification.
    
    
    Certainly not, and nowhere can I find anything in the standard
    that implies responses can ever be omitted.  On the contrary,
    there are several places where it says you MUST always respond.
    For example, in section 4.2 on Text Mode Negotiation it says:
    "A key not understood by the responder may be ignored by the
    responder without affecting the basic function.  However, the
    Text Response for a key not understood MUST be Key=NotUnderstood."
    And in section 4.2.2 for simple-value negotiations it says
    "For simple-value negotiations, the responding party MUST respond
    with the same key."
    The only time responses are optional are the 2 special-case
    Boolean negotiations detailed at the end of section 4.2.
    At no other time can responses be omitted.
    This is also a non-issue.
    
    <PAT> Then the sentence: "If they are sent within the same command, a
    response for a parameter might imply responses for others." should
    be altered. "A response for a parameter might imply responses for
    others" appears to some readers to say that those responses may 
    be omitted since they are already implied though to other readers
    it just means that the earlier response limits the response to
    the later key.
    
    
    > So, could we please get rid of this whole
    > paragraph?
    
    I do not see how we can get rid of this paragraph.
    However, perhaps it could be worded better to make it clearer
    without changing its intent.
    
    <PAT> If the first sentence of the paragaph is to stay, then 
    one needs to explicitly list the parameter ordering requirements
    because dependency order is not clear. The second sentence
    should be deleted as it doesn't say anything useful. It is 
    clear that the response to earlier parameters limits the range
    of responses to later parameters regardless of whether they 
    are in the same PDU or not.
    
    Regards,
    Pat
    
    


Home

Last updated: Tue Jun 04 11:18:37 2002
10486 messages in chronological order