|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI: keys/parameter dependence--- "Robert D. Russell" <rdr@io.iol.unh.edu> wrote: > However, there ARE dependencies between operational > parameters that cannot be ignored, such as the one > Mike mentioned I should have been more precise. I meant "order imposing dependencies". You might say "is there any other kind?", and I would say "yes" and be very sorry for not CC-ing you on my previous post sent to the list. I'm sorry already. > -- 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 saw it. I consider it unbelievably ugly to have to look at the values in order to figure out ordering requirements. I prefer ignoring ordering completely and check for overall consistency before commit. > > "(sent) after" isn't defined. It is unclear > > whether "in higher numbered bytes within the > > same PDU" qualifies as "after" or whether only > > "in a PDU sent at a later time" would. > > I don't see this, and I agree with John Hufferd's > response > to this that "previous" is obviously "previous", > whether in > the previous PDUs (because the current PDU was > delivered > after them) or in the same PDU Just because your interpretation matches John's doesn't mean that it has been unambiguously defined and that everybody will see it that way. The suspicion that may be, just may be, "after" meant "in a later PDU" was made stronger by the sentence that talked about keys sent in the same "command" (i.e., PDU). > (because key=value > pairs > are naturally scanned from the beginning of a PDU's > data segment, Not if we don't have a C-bit and have to start from the end to see if the last pair is split or full. And natural to one might be unnatural to another. > and if nothing else, pairs had to be put into the > data segment > in that order, What order? Previous coming before after? That order only appears once I've put something in the data-segment, and I could put pairs in there in any way I want... > This is a non-issue. It's a good thing we got it clear what "after" means, now I'll just ask why is it important... > I don't see this either. Nowhere does the newly > added text > describing the C-bit say anything about doing away > with the > specific order of the key=value pairs within the > "batch". Nowhere does it say anything about the order. I may prefer to process all booleans first, for example. I may even find each pair going backwards in the PDU... > Why should it -- even if you don't process PDU by > PDU you still > have to process batch by batch, batch by batch, yes, absolutely. > a batch still has to > be scanned > to find key=value pairs, and the natural way to scan > is from the > beginning of the batch, not necessarily. > since the next key starts > after the > delimiter of the previous key in the batch. or the previous value (or pair) ends before the delimiter of the next key... > This is also a non-issue. As long as somebody doesn't impose processing order on my implementation. > > Therefore, the text about them being sent in > > "the same command" is likely irrelevant, too, > > since many implementation simply won't check that. > > "command" should simply be replaced by "batch" or, > to be more consistent with the rest of the wording > in the > standard, with "set of key=value pairs". Why does it even matter whether a key has been sent in the same "batch" or even the same PDU as another one? Either the value of one may imply the value of another, or not. But why does this sentence single out keys sent in the same "command" ("batch", whatever)? > However, see my earlier e-mail to Julian stating my > concerns over the use of the C-bit for "batching". I've seen it and still think that batching of keys is a great way to simplify their processing. > > 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. Alright. Then let's just get rid of this sentence because it does make it sound like may be, just may be, responses can be omitted when they are already implied. > This is also a non-issue. I hope so, but the sentence worries me. > 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. But what is the intent? That ordering of keys matters? I don't see it as a good feature, if so. Or that the values of some keys "imply" the values of others? They may be putting restrictions on them, but why only if in the same "command" ("batch", whatever)? Why not always? Why have this observation here and in the form that makes one doubt whether responses are always mandatory? Martins Krikis, Intel Corp. Disclaimer: these opinions are mine and may not be those of my employer __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com
Home Last updated: Tue Jun 04 11:18:37 2002 10486 messages in chronological order |