Corrected diagram and description for SMB-Direct (RDMA) support in Samba

Stefan (metze) Metzmacher metze at
Mon May 19 15:19:46 MDT 2014

Am 19.05.2014 17:09, schrieb Richard Sharpe:
> On Mon, May 19, 2014 at 12:10 AM, Michael Adam <obnox at> wrote:
>> On 2014-05-18 at 22:58 -0700, Richard Sharpe wrote:
>>> On Sun, May 18, 2014 at 10:46 PM, Michael Adam <obnox at> wrote:
>>>> The clientGUID is already available in the
>>>> NegProt request, so we can look for the client's
>>>> smbd by clientGUID already here, and have c1 do
>>>> the session setup.
>>> Ummm, that is true. I have checked the SMB2 document. That being the
>>> case, we really should sanction the small layering violation and have
>>> the SMBDirect daemon look in the NegProt request and send the
>>> connection to the correct smbd. Why mess around with starting a
>>> temporary smbd for one request/response pair?
> OK, I made a mistake yesterday. While it is true that the ClientGUID
> is available in the NegProt, you cannot use it in this way. This issue
> came up in my talk at SDC last year.
> The problem is that the client might have multiple connections to the
> server. You have to use the sessionID in the SessionSetup to bind a
> new connection to an existing session.
> That being the case, you have to pay the cost of transferring the
> state that you have accumulated from one smbd to another.
> However, it seems to me that you can simply forward the SessionSetup
> request to the correct smbd and the amount of state accumulated with
> the NegProt is small (but there is some state, of course).

There can be we multiple session setups on a connection, so there might
be open files from a different session. The simplest solution is really to
have one smbd process per ClientGUID.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 263 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the samba-technical mailing list