When there are multiple connections between an initiator and target, STP and SMP don't allow multiple their frames to wander across connections in the same way that SSP allows the frames for one I_T_L_Q nexus to wander.
 
An STP transport layer assumes it is talking to only one STP link layer.  The port layer (state PL_PM3) bridges the STP transport layer directly to the STP link layer (those state machines are as defined in SATA).  The STP link layer can change at times (after SATA_SYNC/SATA_SYNC, if the connection is closed), but there's only one STP link layer at a time that is associated with a given STP transport layer.  STP only allows one connection at a time between the same initiator port and target port (see 7.18.5), since that's all an STP/SATA bridge could reasonably implement.
 
An SMP transport layer assumes it is talking to only one SMP link layer.  The state machines are defined in SAS, so they do use the same Transmit Frame requests and Frame Received confirmations that SSP uses.  PL_OC2's frame transmission section discusses the 1:1 relationship.  SMP does allow multiple connections at a time between the same initiator port and target port.  Most controller SMP initiator ports and expander SMP target ports only support one at a time, though - management functionality is error-prone and usually not a performance concern.
 
The SSP transport layer assumes the port layer may be scattering its traffic across multiple SSP link layers (i.e., multiple connections).  Message arguments like Request Fence exist to handle that.
 
STP and SMP ports can certainly be wide ports with multiple connections open at a time to different destinations, though.  That just means they employ multiple transport layers.
 

---
Rob Elliott, HP Industry Standard Server Storage


 

From: Bill.Martin@Emulex.Com [mailto:Bill.Martin@Emulex.Com]
Sent: Tuesday, September 30, 2008 5:43 PM
To: Elliott, Robert (Server Storage); t10@t10.org
Subject: SAS 2 question

In SAS2r14e, figure 28, it is implied that there is only one SMP or STP port per physical SAS phy.  Is this intentional, or is it intended that there could be one STP port per logical phy (as implied in figure 38)? I cannot find any indication of what is done with a second SMP or STP request coming in to the SAS phy on a second logical link.  Should this be covered, and if so, where?

 

Thanks,

 

Bill Martin

Emulex
Office of Technology
Industry Standards
916 772-3658
916 765-6875 (Cell)
bill.martin@emulex.com