|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI: Serial Number ArithmeticPat - Comments in text - Thanks, Julo _____________________ Julian, The draft says serial number arithmetic as defined in RFC 1982 is to be used for comparisons and arithmetic on CmdSN but but it uses operations which are inconsistant with that statement. 2.2.2.1 (bottom half of page 26) re: the processing for MaxCmdSN and ExpCmdSN - "and with a difference bounded by 2**31-1" should be deleted (3 places). The RFC 1982 Serial Number Arithmetic rules cover the meaning of addition of a positive integer of limited range and comparison (<, > and =) for serial numbers. "Only two operations are defined upon serial numbers, addition of a positive integer of limited range, and comparison with another serial number." The operation difference is not defined for Serial Numbers.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> +++ will fix - 2**31-1 is implied by serial arithmetic+++ 2.2.2.2 re: "difference is greater than 2**31-1" - The operation difference is not defined for Serial number arithmetic. Even if it was defined as the inverse of addition, addition is only defined for adding a value up to 2**31-1. Is the intent of the statement that it should cover only the value where the results of StatSN > ExpStatSN and StatSN < ExpStatSN are undefined or is the intent that it cover that value plus the values where ExpStat > StatSN? The former doesn't seem useful and the latter seems rather severe. Regards, Pat Thaler ++++ StatSN follows regular mod(2**32) arithmetic. 2**31 is meant to state the limit at which recovery action becomes mandatory Here is a new 2.2.2.2 that perhaps states this clearer+++ 1.1.1.1 Response/Status Numbering and Acknowledging Responses in transit from the target to the initiator are numbered. The StatSN (Status Sequence Number) is used for this purpose. StatSN is a counter maintained per connection. ExpStatSN is used by the initiator to acknowledge status. The status sequence number space is that of 32bit integers and the arithmetic operations are the regular mod(2**32) arithmetic. Status numbering starts with the Login response to the first Login request of the connection. The Login response includes an initial value for status numbering. To enable command recovery the target MAY maintain enough state information to enable data and status recovery after a connection failure. A target can discard all the state information maintained for recovery after the status delivery is acknowledged through ExpStatSN. A large absolute difference between StatSN and ExpStatSN may indicate a failed connection. Initiators undertake recovery actions if the difference is greater than an implementation defined constant that SHALL NOT exceed 2**31-1. Initiators and Targets MUST support the response-numbering scheme.
Home Last updated: Tue Oct 09 17:17:25 2001 7165 messages in chronological order |