Search code examples
smb

what happens when a client reaches zero credits in smb2?


I have a trace for a connection where the number of credit charged exceeds number of credits granted by the server. Also Is is possible for client to send any more requests after that, without server granting more credits?? I have some more read requests after that point where the credits for client have become zero.


Solution

  • According to MS-SMB2, the client should await the grant of new credits from the server before sending more requests. The CreditCharge field of the SMB2 header cannot be larger than the available credits in the sequence window. If more credits are needed than the client has available, the client should not send the request. A trick is to reduce the length of the requested read operation, so that you can fit it in the sequence window.