|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI minimum PDU length
Steph,
512 is a good number for full feature phase if we stay with the current 8k
during login (you have no framing anyhow during login - don't you?). The
large binaries used by the security negotiation can become an issue
otherwise.
Julo
Stephen Bailey <steph@cs.uchicago.edu>
Sent by: owner-ips@ece.cmu.edu
25-10-01 17:33
Please respond to Stephen Bailey
To: ips@ece.cmu.edu
cc:
Subject: Re: iSCSI minimum PDU length
> The minimum MSS is under 300 bytes.
As I understand it, the minimum MSS is 8 bytes. Yes, this is a
pathological case.
What you really seem to be talking about here is the minimum allowable
maximum PDU length, NOT, as the subject indicates, and JohnH points
out, the true `minimum PDU length'.
One number relevant to this discussion is the one below which you
would not expect (or desire) good performance anyway. When MSS
shrinks below this performance limit you may have to fall back to a
slow path (e.g. reassembly & copying instead of on-the-fly direct
placement) in your implementation, but you won't feel bad because you
know there's no way performance could be good at that MSS under ANY
circumstances.
The minimum allowable maximum PDU length should be NO LARGER than this
number.
I personally think that you will want to maintain performance at an
EMSS smaller than 1024. I agree with Dave that 512 is certainly
headed in the right direction.
Looking at it from the other direction, the minimum allowable maximum
PDU could definitely be smaller than this performance target number.
The lower limit is a result of the protocol design---what is the
smallest limit larger than fixed sized PDUs which also allows variable
sized PDUs to carry a minimum amount of data. There's no reason why
the minimum allowable maximum PDU size could not be chosen to exactly
fit the current iSCSI PDUs (or, within a power-of-two stones throw).
Just because the protocol allows you to scale PDUs down to a minimum
of xxx bytes and still operate does not mean that implementations
won't chose a larger value for the limit of their performance design
point. Implementations care about bounding the maximum PDU size.
They must handle the smallest PDUs the protocol can create already
anyway.
In other words, nobody is going to say `ok, you mean I can make all
the PDUs I send carry only 1 byte of data, GREAT! I'm going to do
that'.
Where you're headed, it really comes down to ensuring that all
variably sized data can be chunked, which means you have to solve the
chunking problem for text in one way or another.
Steph
Home Last updated: Fri Nov 16 03:17:33 2001 7828 messages in chronological order |