[SAS] Frame Credit Managmeent

Bill Galloway BillG at breatech.com
Mon Nov 11 08:23:49 PST 2002


* From the T10 Reflector (t10 at t10.org), posted by:
* "Bill Galloway" <BillG at breatech.com>
*
Your definitions sound fine but I found all of the answers to your
questions in 7.16.7.

The credit is initialized to "not available" whenever the SSP link state
machine is disabled (not open).

Incrementing and decrementing are clearly defined in the SSP link layer
state machine.

I also believe all of the rules for when credit is used is also in the
SSP link layer state machine.  The short answer is that anything that
looks like a frame and gets an ACK or NAK also consumes credit at the
receiver and will get an RRDY.  If it does not look like a frame, no
SOF, EOF etc., it will not get an ACK/NAK and it will not get a RRDY.

Some of your cases are transport errors not link errors. All errors that
are detected at the transport layer are ACKed at the link layer and
tossed at the transport layer.



Bill Galloway
BREA Technologies, Inc.
P: (281) 530-3063
F: (281) 988-0358
BillG at breatech.com 

-----Original Message-----
From: owner-t10 at t10.org [mailto:owner-t10 at t10.org] On Behalf Of Seto,
Pak-lung
Sent: Friday, November 08, 2002 11:55 AM
To: 't10 at t10.org'
Subject: [SAS] Frame Credit Managmeent


* From the T10 Reflector (t10 at t10.org), posted by:
* "Seto, Pak-lung" <pak-lung.seto at intel.com>
*
It is unclear that how frame credit should be managed in SAS.

First, a couple terms may need to be defined in the standard or at least
for
this discussion.

Outstanding Credit - The number of R_RDY sent by the port minus the
number
of frame received after connection has been established
Available Credit - The number of R_RDY received minus hte number of
frame
sent after connection has been established

I don't believe there is a clause in the standard to describe all the
Frame
Credit Management issues:

- Both Outstanding Credit and Available Credit must be initialized to
zero
after connection has been established - when? After OPEN Address Frame
has
been sent? or after connection has been accepted?

- If a transmitting frame encountered an internal error within the port
and
the port will need to force the frame CRC error since partial frame has
been
sent (since we did not accept the EOFa proposal).  Does this errored
frame
used one Available Credit?

- If the receiving port received a frame with Outstanding Credit = 0,
what
should the port do, especially it has buffers to store the frame
(Missing
R_RDY?)?  Is the received frame OK if an R_RDY is sent before the EOF is
received/detected?

- When does the Outstanding Credit count should be decremented? After
EOF
has been detected?

- When should the Available Credit count be decremented? After receive a
frame SOF-EOF, valid CRC, the right destination SAS address, etc?

- If a received frame does not have the matching destination SAS
address,
does it used up one Outstanding Credit?

- If a received frame does not belong to one of the active outstanding
IO,
does it used up one Outstanding Credit?

- If a frame has more than 1024 bytes of payload, does it used up one
Outstanding Credit?

- If a frame is terminated by the receiving port, does it used up one
Outstanding Credit?

- If a frame is received with the wrong protocol (SMP frame in SSP
connection), does it used up one Outstanding Credit?

- Any errored frame with good CRC or no decoding error, does it used up
one
Outstanding Credit?

- Does any of the above conditions - especially credit unbalance -
received
a frame without outstanding credit, should it cause the connection to be
terminated?

Any other situations?

Pak 
*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org


*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org




More information about the T10 mailing list